Warning, /pim/korganizer/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: none 0002 # SPDX-License-Identifier: BSD-3-Clause 0003 add_definitions(-DTRANSLATION_DOMAIN=\"korganizer\") 0004 0005 include_directories(${CMAKE_CURRENT_BINARY_DIR}) 0006 0007 if(BUILD_TESTING) 0008 add_subdirectory(tests) 0009 add_subdirectory(autotests) 0010 endif() 0011 add_subdirectory(interfaces) 0012 add_subdirectory(pixmaps) 0013 add_subdirectory(sounds) 0014 add_subdirectory(kontactplugin) 0015 add_subdirectory(views/collectionview) 0016 0017 ########### next target ############### 0018 0019 set(korganizer_userfeedback_LIB) 0020 if(TARGET KF6::UserFeedbackWidgets) 0021 set(korganizer_userfeedback_LIB KF6::UserFeedbackWidgets) 0022 endif() 0023 0024 set(korganizer_common_SRCS) 0025 ecm_qt_declare_logging_category(korganizer_common_SRCS HEADER korganizer_debug.h IDENTIFIER KORGANIZER_LOG CATEGORY_NAME org.kde.pim.korganizer 0026 DESCRIPTION "korganizer (korganizer)" 0027 OLD_CATEGORY_NAMES log_korganizer 0028 EXPORT KORGANIZER 0029 ) 0030 0031 set(korganizer_SRCS 0032 main.cpp 0033 korganizer.cpp 0034 koapp.cpp 0035 plugininterface/korganizerplugininterface.cpp 0036 korganizer.h 0037 koapp.h 0038 plugininterface/korganizerplugininterface.h 0039 ${korganizer_common_SRCS} 0040 ) 0041 0042 file(GLOB ICONS_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/pixmaps/*-apps-korganizer.png") 0043 ecm_add_app_icon(korganizer_SRCS ICONS ${ICONS_SRCS}) 0044 0045 add_executable(korganizer ${korganizer_SRCS}) 0046 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT) 0047 set_target_properties(korganizer PROPERTIES UNITY_BUILD ON) 0048 endif() 0049 target_link_libraries(korganizer 0050 KPim6::KontactInterface 0051 KF6::CalendarCore 0052 korganizerprivate 0053 korganizer_interfaces 0054 korganizer_core 0055 KPim6::PimCommonAkonadi 0056 KF6::Crash 0057 KF6::WindowSystem 0058 ${korganizer_userfeedback_LIB} 0059 ) 0060 0061 install(TARGETS 0062 korganizer ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} 0063 ) 0064 0065 ########### next target ############### 0066 add_library(korganizer_kcm_static STATIC widgets/kitemiconcheckcombo.cpp prefs/kprefsdialog.cpp widgets/kitemiconcheckcombo.h prefs/kprefsdialog.h ${korganizer_common_SRCS}) 0067 set_property(TARGET korganizer_kcm_static PROPERTY POSITION_INDEPENDENT_CODE ON) 0068 target_link_libraries(korganizer_kcm_static 0069 KF6::KCMUtils 0070 0071 KPim6::AkonadiCalendar 0072 KPim6::CalendarSupport 0073 KPim6::EventViews 0074 KPim6::IncidenceEditor 0075 korganizer_core 0076 korganizerprivate 0077 Qt::UiTools 0078 KF6::CalendarCore 0079 KF6::Holidays 0080 KPim6::MailTransport 0081 KPim6::PimCommon 0082 KPim6::AkonadiWidgets 0083 KF6::WindowSystem 0084 KF6::KIOWidgets 0085 ) 0086 0087 add_library(korganizer_configcolorsandfonts MODULE prefs/koprefsdialogcolorsandfonts.cpp prefs/koprefsdialogcolorsandfonts.h) 0088 target_link_libraries(korganizer_configcolorsandfonts korganizer_kcm_static) 0089 install(TARGETS korganizer_configcolorsandfonts DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0090 0091 add_library(korganizer_configdesignerfields MODULE prefs/koprefsdesignerfields.cpp kcmdesignerfields.cpp prefs/koprefsdesignerfields.h kcmdesignerfields.h) 0092 target_link_libraries(korganizer_configdesignerfields korganizer_kcm_static) 0093 install(TARGETS korganizer_configdesignerfields DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0094 0095 add_library(korganizer_configfreebusy MODULE prefs/koprefsdialoggroupwarescheduling.h prefs/koprefsdialoggroupwarescheduling.cpp) 0096 target_link_libraries(korganizer_configfreebusy korganizer_kcm_static) 0097 install(TARGETS korganizer_configfreebusy DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0098 0099 add_library(korganizer_configgroupscheduling MODULE prefs/koprefsdialogmain.h prefs/koprefsdialogmain.cpp) 0100 target_link_libraries(korganizer_configgroupscheduling korganizer_kcm_static) 0101 install(TARGETS korganizer_configgroupscheduling DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0102 0103 add_library(korganizer_configmain MODULE prefs/koprefsdialoggroupscheduling.h prefs/koprefsdialoggroupscheduling.cpp) 0104 target_link_libraries(korganizer_configmain korganizer_kcm_static) 0105 install(TARGETS korganizer_configmain DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0106 0107 add_library(korganizer_configplugins MODULE prefs/koprefsdialogplugins.cpp prefs/koprefsdialogplugins.h) 0108 target_link_libraries(korganizer_configplugins korganizer_kcm_static) 0109 install(TARGETS korganizer_configplugins DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0110 0111 add_library(korganizer_configtime MODULE prefs/koprefsdialogtime.cpp prefs/koprefsdialogtime.h) 0112 target_link_libraries(korganizer_configtime korganizer_kcm_static) 0113 install(TARGETS korganizer_configtime DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0114 0115 add_library(korganizer_configviews MODULE prefs/koprefsdialogviews.cpp prefs/koprefsdialogviews.h) 0116 target_link_libraries(korganizer_configviews korganizer_kcm_static) 0117 install(TARGETS korganizer_configviews DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0118 0119 add_library(korganizer_userfeedback MODULE prefs/koprefsuserfeedback.cpp prefs/koprefsuserfeedback.h) 0120 target_link_libraries(korganizer_userfeedback korganizer_kcm_static ${korganizer_userfeedback_LIB}) 0121 install(TARGETS korganizer_userfeedback DESTINATION ${KDE_INSTALL_PLUGINDIR}/pim6/kcms/korganizer) 0122 0123 ########### next target ############### 0124 0125 set(korganizerpart_PART_SRCS korganizer_part.cpp korganizer_part.h korganizer_debug.cpp) 0126 0127 add_library(korganizerpart MODULE ${korganizerpart_PART_SRCS}) 0128 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT) 0129 set_target_properties(korganizerpart PROPERTIES UNITY_BUILD ON) 0130 endif() 0131 0132 target_link_libraries(korganizerpart 0133 KPim6::CalendarSupport 0134 korganizer_core 0135 korganizer_interfaces 0136 korganizerprivate 0137 KPim6::AkonadiCore 0138 KF6::CalendarCore 0139 KPim6::CalendarUtils 0140 KF6::KIOWidgets 0141 ) 0142 0143 install(TARGETS 0144 korganizerpart 0145 DESTINATION ${KDE_INSTALL_PLUGINDIR} 0146 ) 0147 0148 ########### next target ############### 0149 0150 set(korganizer_core_LIB_SRCS 0151 prefs/koprefs.cpp 0152 kocore.cpp 0153 prefs/koprefs.h 0154 kocore.h 0155 ${korganizer_common_SRCS} 0156 ) 0157 0158 kconfig_add_kcfg_files(korganizer_core_LIB_SRCS settings/koprefs_base.kcfgc) 0159 0160 add_library(korganizer_core ${korganizer_core_LIB_SRCS}) 0161 generate_export_header(korganizer_core BASE_NAME korganizer_core) 0162 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT) 0163 set_target_properties(korganizer_core PROPERTIES UNITY_BUILD ON) 0164 endif() 0165 target_link_libraries(korganizer_core 0166 PUBLIC 0167 korganizer_interfaces 0168 PRIVATE 0169 KPim6::CalendarSupport 0170 KPim6::EventViews 0171 KPim6::IdentityManagementCore 0172 ) 0173 0174 target_include_directories(korganizer_core PUBLIC 0175 "$<BUILD_INTERFACE:${korganizer_SOURCE_DIR};${korganizer_BINARY_DIR}>" 0176 ) 0177 0178 set_target_properties(korganizer_core PROPERTIES 0179 VERSION ${KDEPIM_LIB_VERSION} 0180 SOVERSION ${KDEPIM_LIB_SOVERSION} 0181 ) 0182 0183 install(TARGETS 0184 korganizer_core ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} 0185 LIBRARY NAMELINK_SKIP 0186 ) 0187 0188 ########### next target ############### 0189 set(korganizerprivate_userfeedback_SRCS) 0190 if(TARGET KF6::UserFeedbackWidgets) 0191 set(korganizerprivate_userfeedback_SRCS ${korganizerprivate_userfeedback_SRCS} 0192 userfeedback/userfeedbackmanager.cpp 0193 userfeedback/korganizeruserfeedbackprovider.cpp 0194 userfeedback/userfeedbackmanager.h 0195 userfeedback/korganizeruserfeedbackprovider.h 0196 ) 0197 endif() 0198 0199 set(korganizerprivate_LIB_SRCS 0200 ${korganizer_common_SRCS} 0201 ${korganizerprivate_userfeedback_SRCS} 0202 manageshowcollectionproperties.cpp 0203 collectiongeneralpage.cpp 0204 aboutdata.cpp 0205 actionmanager.cpp 0206 akonadicollectionview.cpp 0207 views/collectionview/reparentingmodel.cpp 0208 views/collectionview/calendardelegate.cpp 0209 views/collectionview/quickview.cpp 0210 calendarview.cpp 0211 datechecker.cpp 0212 datenavigator.cpp 0213 datenavigatorcontainer.cpp 0214 dialog/filtereditdialog.cpp 0215 widgets/kdatenavigator.cpp 0216 kocorehelper.cpp 0217 kodaymatrix.cpp 0218 kodialogmanager.cpp 0219 koeventpopupmenu.cpp 0220 koeventview.cpp 0221 dialog/koeventviewerdialog.cpp 0222 koglobals.cpp 0223 kohelper.cpp 0224 impl/korganizerifaceimpl.cpp 0225 koviewmanager.cpp 0226 kowindowlist.cpp 0227 widgets/navigatorbar.cpp 0228 dialog/searchdialog.cpp 0229 views/agendaview/koagendaview.cpp 0230 views/journalview/kojournalview.cpp 0231 views/listview/kolistview.cpp 0232 views/monthview/monthview.cpp 0233 views/multiagendaview/multiagendaview.cpp 0234 views/timelineview/kotimelineview.cpp 0235 views/todoview/kotodoview.cpp 0236 views/whatsnextview/kowhatsnextview.cpp 0237 pimmessagebox.cpp 0238 korganizer.qrc 0239 agendaitem_pixmaps/agendaitemtheme.qrc 0240 0241 manageshowcollectionproperties.h 0242 collectiongeneralpage.h 0243 aboutdata.h 0244 actionmanager.h 0245 akonadicollectionview.h 0246 views/collectionview/reparentingmodel.h 0247 views/collectionview/calendardelegate.h 0248 views/collectionview/quickview.h 0249 calendarview.h 0250 datechecker.h 0251 datenavigator.h 0252 datenavigatorcontainer.h 0253 dialog/filtereditdialog.h 0254 widgets/kdatenavigator.h 0255 kocorehelper.h 0256 kodaymatrix.h 0257 kodialogmanager.h 0258 koeventpopupmenu.h 0259 koeventview.h 0260 dialog/koeventviewerdialog.h 0261 koglobals.h 0262 kohelper.h 0263 impl/korganizerifaceimpl.h 0264 koviewmanager.h 0265 kowindowlist.h 0266 widgets/navigatorbar.h 0267 dialog/searchdialog.h 0268 views/agendaview/koagendaview.h 0269 views/journalview/kojournalview.h 0270 views/listview/kolistview.h 0271 views/monthview/monthview.h 0272 views/multiagendaview/multiagendaview.h 0273 views/timelineview/kotimelineview.h 0274 views/todoview/kotodoview.h 0275 views/whatsnextview/kowhatsnextview.h 0276 pimmessagebox.h 0277 ) 0278 0279 set_property(SOURCE ${CMAKE_CURRENT_BINARY_DIR}/qrc_korganizer.cpp PROPERTY SKIP_AUTOMOC ON) 0280 set_property(SOURCE ${CMAKE_CURRENT_BINARY_DIR}/qrc_agendaitemtheme.cpp PROPERTY SKIP_AUTOMOC ON) 0281 0282 0283 ki18n_wrap_ui(korganizerprivate_LIB_SRCS 0284 ui/filteredit_base.ui 0285 ui/kogroupwareprefspage.ui 0286 views/multiagendaview/multiagendaviewconfigwidget.ui 0287 ui/searchdialog_base.ui 0288 views/collectionview/quickview.ui 0289 ) 0290 0291 qt_add_dbus_adaptor(korganizerprivate_LIB_SRCS 0292 data/org.kde.korganizer.Korganizer.xml impl/korganizerifaceimpl.h 0293 KOrganizerIfaceImpl 0294 ) 0295 0296 qt_add_dbus_adaptor(korganizerprivate_LIB_SRCS 0297 data/org.kde.Korganizer.Calendar.xml actionmanager.h 0298 ActionManager calendaradaptor KOrgCalendarAdaptor 0299 ) 0300 qt_add_dbus_adaptor(korganizerprivate_LIB_SRCS 0301 data/org.kde.calendar.Calendar.xml actionmanager.h 0302 ActionManager calendarinterfaceadaptor CalendarInterfaceAdaptor 0303 ) 0304 0305 qt_add_dbus_interfaces(korganizerprivate_LIB_SRCS 0306 data/org.kde.korganizer.Korganizer.xml 0307 ) 0308 0309 qt_add_dbus_interfaces(korganizerprivate_LIB_SRCS 0310 ${korganizer_SOURCE_DIR}/src/data/org.kde.korganizer.Korganizer.xml 0311 ) 0312 0313 add_library(korganizerprivate ${korganizerprivate_LIB_SRCS}) 0314 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT) 0315 set_target_properties(korganizerprivate PROPERTIES UNITY_BUILD ON) 0316 set_source_files_properties( 0317 ${CMAKE_CURRENT_BINARY_DIR}/qrc_korganizer.cpp 0318 ${CMAKE_CURRENT_BINARY_DIR}/qrc_agendaitemtheme.cpp 0319 PROPERTIES SKIP_UNITY_BUILD_INCLUSION ON) 0320 endif() 0321 0322 generate_export_header(korganizerprivate BASE_NAME korganizerprivate) 0323 0324 target_link_libraries(korganizerprivate 0325 PUBLIC 0326 KPim6::PimCommonAkonadi 0327 PRIVATE 0328 KPim6::CalendarSupport 0329 KPim6::EventViews 0330 KPim6::IncidenceEditor 0331 korganizer_core 0332 korganizer_interfaces 0333 KPim6::AkonadiCore 0334 KPim6::AkonadiCalendar 0335 KPim6::AkonadiNotes 0336 KF6::Contacts 0337 KF6::CalendarCore 0338 KPim6::CalendarUtils 0339 KF6::Holidays 0340 KPim6::Mime 0341 KPim6::IdentityManagementCore 0342 KF6::KCMUtils 0343 KF6::NewStuffWidgets 0344 KPim6::LdapWidgets 0345 KPim6::AkonadiWidgets 0346 KF6::IconThemes 0347 KF6::IconWidgets 0348 KF6::WindowSystem 0349 KF6::ItemViews 0350 KF6::JobWidgets 0351 KF6::KIOGui 0352 ${korganizer_userfeedback_LIB} 0353 ) 0354 0355 target_include_directories(korganizerprivate PUBLIC 0356 "$<BUILD_INTERFACE:${korganizer_SOURCE_DIR};${korganizer_BINARY_DIR}>" 0357 ) 0358 0359 set_target_properties(korganizerprivate PROPERTIES 0360 VERSION ${KDEPIM_LIB_VERSION} 0361 SOVERSION ${KDEPIM_LIB_SOVERSION} 0362 ) 0363 0364 install(TARGETS 0365 korganizerprivate ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} 0366 LIBRARY NAMELINK_SKIP 0367 ) 0368 0369 ########### install files ############### 0370 0371 install(FILES 0372 settings/korganizer.kcfg 0373 DESTINATION ${KDE_INSTALL_KCFGDIR} 0374 ) 0375 0376 install(FILES 0377 data/org.kde.Korganizer.Calendar.xml data/org.kde.korganizer.Korganizer.xml 0378 DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR} 0379 ) 0380 0381 install(FILES 0382 data/korganizer.knsrc 0383 DESTINATION ${KDE_INSTALL_KNSRCDIR} 0384 ) 0385 0386 install(PROGRAMS 0387 org.kde.korganizer.desktop korganizer-import.desktop korganizer-view.desktop 0388 DESTINATION ${KDE_INSTALL_APPDIR} 0389 ) 0390 0391 install(FILES 0392 org.kde.korganizer.appdata.xml 0393 DESTINATION ${KDE_INSTALL_METAINFODIR} 0394 ) 0395 0396 configure_file(data/org.kde.korganizer.service.in org.kde.korganizer.service) 0397 install(FILES 0398 ${CMAKE_CURRENT_BINARY_DIR}/org.kde.korganizer.service 0399 DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR} 0400 ) 0401