Fix Bug 358845 - Incorrect alignment of string with drop-down list
[kdepim.git] / messagelist / src / CMakeLists.txt
blob6c7b14a6bb0272e17b789d410928f7fba49b8629
2 add_definitions("-DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII")
4 option(KDEPIM_FOLDEROPEN_PROFILE "Enable debug output for timing folder loading" FALSE)
5 configure_file(config-messagelist.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-messagelist.h)
7 add_definitions(-DTRANSLATION_DOMAIN=\"libmessagelist\")
9 add_subdirectory(pics)
11 set(libmessagelist_SRCS
12   core/aggregation.cpp
13   core/delegate.cpp
14   core/filter.cpp
15   core/item.cpp
16   core/groupheaderitem.cpp
17   core/manager.cpp
18   core/messageitem.cpp
19   core/messageitemsetmanager.cpp
20   core/model.cpp
21   core/modelinvariantindex.cpp
22   core/modelinvariantrowmapper.cpp
23   core/optionset.cpp
24   core/theme.cpp
25   core/themedelegate.cpp
26   core/storagemodelbase.cpp
27   core/sortorder.cpp
28   core/view.cpp
29   core/widgetbase.cpp
30   core/widgets/quicksearchline.cpp
31   core/widgets/quicksearchwarning.cpp
33   utils/aggregationcombobox.cpp
34   utils/aggregationconfigbutton.cpp
35   utils/aggregationeditor.cpp
36   utils/comboboxutils.cpp
37   utils/configureaggregationsdialog.cpp
38   utils/configurethemesdialog.cpp
39   utils/optionseteditor.cpp
40   utils/themecombobox.cpp
41   utils/themeconfigbutton.cpp
42   utils/themeeditor.cpp
44   pane.cpp
45   storagemodel.cpp
46   widget.cpp
47   messagelistutil.cpp
49 ecm_qt_declare_logging_category(libmessagelist_SRCS HEADER messagelist_debug.h IDENTIFIER MESSAGELIST_LOG CATEGORY_NAME log_messagelist)
51 kconfig_add_kcfg_files(libmessagelist_SRCS
52   core/messagelistsettings.kcfgc
55 add_library(KF5MessageList ${libmessagelist_SRCS})
56 generate_export_header(KF5MessageList BASE_NAME messagelist)
57 add_library(KF5::MessageList ALIAS KF5MessageList)
59 target_include_directories(KF5MessageList INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF5}/MessageList/;${KDE_INSTALL_INCLUDEDIR_KF5}/messagelist>")
60 target_include_directories(KF5MessageList PUBLIC "$<BUILD_INTERFACE:${MessageList_SOURCE_DIR}/src;${MessageList_BINARY_DIR}/src>")
63 target_link_libraries(KF5MessageList
64  PUBLIC
65   KF5::AkonadiCore
66   KF5::AkonadiMime
67   KF5::Mime
68  PRIVATE
69   KF5::KIOCore
70   KF5::MessageCore
71   KF5::PimCommon
72   KF5::AkonadiSearchPIM
73   KF5::XmlGui
74   KF5::IconThemes
75   KF5::Completion
78 set_target_properties(KF5MessageList PROPERTIES
79     VERSION ${MESSAGELIST_VERSION_STRING}
80     SOVERSION ${MESSAGELIST_SOVERSION}
81     EXPORT_NAME MessageList
84 install(TARGETS
85     KF5MessageList
86     EXPORT KF5MessageListTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS} ${LIBRARY_NAMELINK}
89 ecm_generate_headers(MessageList_Camelcasecore_HEADERS
90   HEADER_NAMES
91   View
92   Enums
93   StorageModelBase
94   REQUIRED_HEADERS MessageList_core_HEADERS
95   RELATIVE core
96   PREFIX MessageList
100 ecm_generate_headers(MessageList_Camelcaseutil_HEADERS
101   HEADER_NAMES
102   AggregationComboBox
103   ThemeComboBox
104   AggregationConfigButton
105   ThemeConfigButton
106   REQUIRED_HEADERS MessageList_util_HEADERS
107   RELATIVE utils
108   PREFIX MessageList
112 ecm_generate_headers(MessageList_Camelcasewidgets_HEADERS
113   HEADER_NAMES
114   QuickSearchLine
115   REQUIRED_HEADERS MessageList_widgets_HEADERS
116   RELATIVE core/widgets
117   PREFIX MessageList
122 ecm_generate_headers(MessageList_CamelCase_HEADERS
123   HEADER_NAMES
124   Pane
125   StorageModel
126   MessageListUtil
127   REQUIRED_HEADERS MessageList_HEADERS
128   PREFIX MessageList
131 ecm_generate_pri_file(BASE_NAME MessageList
132     LIB_NAME KF5MessageList
133     DEPS "AkonadiCore AkonadiMime Mime" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF5}/MessageList
136 if(${CMAKE_SOURCE_DIR} STREQUAL ${MessageList_SOURCE_DIR})
137 install(FILES
138     ${MessageList_Camelcasewidgets_HEADERS}
139     ${MessageList_CamelCase_HEADERS}
140     ${MessageList_Camelcasecore_HEADERS}
141     ${MessageList_Camelcaseutil_HEADERS}
142     DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/MessageList
143     COMPONENT Devel
146 install(FILES
147     ${MessageList_HEADERS}
148     ${MessageList_widgets_HEADERS}
149     ${CMAKE_CURRENT_BINARY_DIR}/messagelist_export.h
150     ${CMAKE_CURRENT_BINARY_DIR}/messagelistsettings.h
151     ${MessageList_core_HEADERS}
152     ${MessageList_util_HEADERS}
153     DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/messagelist
154     COMPONENT Devel
156 install(FILES
157     ${PRI_FILENAME}
158     DESTINATION ${ECM_MKSPECS_INSTALL_DIR})
160 endif()