set(kpimtextedit_SRCS
  emailquotehighlighter.cpp
  emoticontexteditaction.cpp
  emoticontexteditselector.cpp
  htmlhighlighter.cpp
  inserthtmldialog.cpp
  insertimagedialog.cpp
  insertimagewidget.cpp
  inserttabledialog.cpp
  selectspecialchardialog.cpp
  tableactionmenu.cpp
  tablecellformatdialog.cpp
  tableformatdialog.cpp
  textedit.cpp
  textutils.cpp
  inserttablewidget.cpp
  emailquotedecorator.cpp
  syntaxhighlighterbase.cpp
  texteditorcompleter.cpp
)

add_library(KF5PimTextEdit ${kpimtextedit_SRCS})

generate_export_header(KF5PimTextEdit BASE_NAME kpimtextedit)

add_library(KF5::PimTextEdit ALIAS KF5PimTextEdit)

target_include_directories(KF5PimTextEdit INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF5}/KPIMTextEdit>")
target_include_directories(KF5PimTextEdit PUBLIC "$<BUILD_INTERFACE:${KPimTextEdit_SOURCE_DIR}/src;${KPimTextEdit_BINARY_DIR}/src>")


target_link_libraries(KF5PimTextEdit
PUBLIC
  KF5::TextWidgets
PRIVATE
  KF5::Emoticons
  KF5::Codecs
  KF5::SonnetUi
  KF5::WidgetsAddons
  KF5::KIOWidgets
)

set_target_properties(KF5PimTextEdit PROPERTIES
    VERSION ${KPIMTEXTEDIT_VERSION_STRING}
    SOVERSION ${KPIMTEXTEDIT_SOVERSION}
    EXPORT_NAME PimTextEdit
)

install(TARGETS KF5PimTextEdit EXPORT KF5PimTextEditTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS})

########### Generate Headers ###############
ecm_generate_headers(KPimTextEdit_CamelCase_HEADERS
  HEADER_NAMES
  EMailQuoteHighlighter
  EmailQuoteDecorator
  EmoticonTextEditAction
  HtmlHighlighter
  InsertHtmlDialog
  InsertImageDialog
  InsertImageWidget
  InsertTableDialog
  InsertTableWidget 
  SelectSpecialCharDialog
  SyntaxHighlighterBase
  TableCellFormatDialog
  TableFormatDialog
  TableActionMenu
  TextEdit
  TextEditorCompleter
  TextUtils

  PREFIX KPIMTextEdit
  REQUIRED_HEADERS kpimtextedit_HEADERS
)

########### install files ###############

install(FILES
  ${CMAKE_CURRENT_BINARY_DIR}/kpimtextedit_export.h
  ${kpimtextedit_HEADERS}
  DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/KPIMTextEdit/kpimtextedit
  COMPONENT Devel
)

install(FILES
  ${KPimTextEdit_CamelCase_HEADERS}
  DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/KPIMTextEdit/KPIMTextEdit/
  COMPONENT Devel
)

ecm_generate_pri_file(BASE_NAME KPIMTextEdit LIB_NAME KF5PIMTextEdit DEPS "" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF5}/KPIMTextEdit/)
install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})
