Warning, /pim/akonadi-calendar/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 
0004 add_definitions(-DTRANSLATION_DOMAIN=\"libakonadi-calendar6\")
0005 
0006 add_library(KPim6AkonadiCalendar)
0007 add_library(KPim6::AkonadiCalendar ALIAS KPim6AkonadiCalendar)
0008 
0009 target_sources(KPim6AkonadiCalendar PRIVATE
0010     blockalarmsattribute.cpp
0011     blockalarmsattribute.h
0012     calendarbase.cpp
0013     calendarbase.h
0014     calendarbase_p.h
0015     calendarclipboard.cpp
0016     calendarclipboard.h
0017     calendarclipboard_p.h
0018     calendarmodel.cpp
0019     calendarmodel_p.h
0020     calendarutils.cpp
0021     calendarutils.h
0022     calfilterpartstatusproxymodel_p.cpp
0023     calfilterpartstatusproxymodel_p.h
0024     calfilterproxymodel_p.cpp
0025     calfilterproxymodel_p.h
0026     collectioncalendar.cpp
0027     collectioncalendar.h
0028     etmcalendar.cpp
0029     etmcalendar.h
0030     etmcalendar_p.h
0031     fetchjobcalendar.cpp
0032     fetchjobcalendar.h
0033     fetchjobcalendar_p.h
0034     freebusydownloadjob_p.cpp
0035     freebusydownloadjob_p.h
0036     freebusymanager.cpp
0037     freebusymanager.h
0038     freebusymanager_p.h
0039     freebusyproviderbase.cpp
0040     freebusyproviderbase.h
0041     freebusyproviderbase_p.h
0042     history.cpp
0043     history.h
0044     history_p.cpp
0045     history_p.h
0046     icalimporter.cpp
0047     icalimporter.h
0048     icalimporter_p.h
0049     incidencechanger.cpp
0050     incidencechanger.h
0051     incidencechanger_p.cpp
0052     incidencechanger_p.h
0053     incidencefetchjob_p.cpp
0054     incidencefetchjob_p.h
0055     incidencetreemodel.cpp
0056     incidencetreemodel.h
0057     incidencetreemodel_p.h
0058     itiphandler.cpp
0059     itiphandler.h
0060     itiphandlerhelper_p.cpp
0061     itiphandlerhelper_p.h
0062     itiphandler_p.cpp
0063     itiphandler_p.h
0064     kcolumnfilterproxymodel.cpp
0065     kcolumnfilterproxymodel_p.h
0066     mailclient_p.cpp
0067     mailclient_p.h
0068     mailscheduler_p.cpp
0069     mailscheduler_p.h
0070     publishdialog.cpp
0071     publishdialog.h
0072     publishdialog_p.cpp
0073     publishdialog_p.h
0074     scheduler_p.cpp
0075     scheduler_p.h
0076     searchcollectionhelper.cpp
0077     searchcollectionhelper.h
0078     standardcalendaractionmanager.cpp
0079     standardcalendaractionmanager.h
0080     todomodel.cpp
0081     todomodel.h
0082     todopurger.cpp
0083     todopurger.h
0084     todopurger_p.h
0085     utils_p.cpp
0086     utils_p.h
0087 )
0088 
0089 ecm_qt_declare_logging_category(KPim6AkonadiCalendar HEADER akonadicalendar_debug.h IDENTIFIER AKONADICALENDAR_LOG CATEGORY_NAME org.kde.pim.akonadicalendar
0090         DESCRIPTION "akonadicalendar (pim lib)"
0091         OLD_CATEGORY_NAMES log_akonadicalendar
0092         EXPORT AKONADI-CALENDAR
0093     )
0094 
0095 kconfig_add_kcfg_files(KPim6AkonadiCalendar GENERATE_MOC calendarsettings.kcfgc)
0096 ki18n_wrap_ui(akonadicalendar_LIB_SRC publishdialog_base.ui)
0097 
0098 qt_add_dbus_adaptor( akonadicalendar_LIB_SRC interfaces/org.freedesktop.Akonadi.Resource.FreeBusyProvider.xml freebusyproviderbase_p.h Akonadi::FreeBusyProviderBasePrivate freebusyprovideradaptor  Akonadi__FreeBusyProviderAdaptor )
0099 target_sources(KPim6AkonadiCalendar PRIVATE ${akonadicalendar_LIB_SRC})
0100 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT)
0101     set_target_properties(KPim6AkonadiCalendar PROPERTIES UNITY_BUILD ON)
0102 endif()
0103 ecm_generate_export_header(KPim6AkonadiCalendar
0104     VERSION ${PIM_VERSION}
0105     BASE_NAME akonadi_calendar
0106     EXPORT_FILE_NAME akonadi-calendar_export.h
0107 )
0108 
0109 
0110 target_include_directories(KPim6AkonadiCalendar INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR}/KPim6/AkonadiCalendar>")
0111 target_include_directories(KPim6AkonadiCalendar PUBLIC "$<BUILD_INTERFACE:${Akonadi-Calendar_SOURCE_DIR}/src;${Akonadi-Calendar_BINARY_DIR}/src>")
0112 
0113 target_link_libraries(KPim6AkonadiCalendar
0114 PUBLIC
0115     KPim6::AkonadiCore
0116     KF6::CalendarCore
0117     KF6::WidgetsAddons
0118     KF6::I18n
0119     KF6::ConfigWidgets
0120     KPim6::IdentityManagementCore
0121 PRIVATE
0122     KF6::Codecs
0123     KF6::KIOCore
0124     KF6::JobWidgets
0125     KF6::XmlGui
0126     KPim6::AkonadiContactCore
0127     KPim6::AkonadiMime
0128     KPim6::CalendarUtils
0129     KPim6::AkonadiWidgets
0130     KPim6::MailTransport
0131     KPim6::Mime
0132     KPim6::MessageCore
0133     KPim6::MessageComposer
0134     KPim6::Libkleo
0135     KF6::Codecs
0136 )
0137 
0138 set_target_properties(KPim6AkonadiCalendar PROPERTIES
0139     VERSION ${AKONADICALENDAR_VERSION}
0140     SOVERSION ${AKONADICALENDAR_SOVERSION}
0141     EXPORT_NAME AkonadiCalendar
0142 )
0143 
0144 install(TARGETS
0145     KPim6AkonadiCalendar
0146     EXPORT KPim6AkonadiCalendarTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}
0147 )
0148 
0149 ecm_generate_headers(AkonadiCalendar_CamelCase_HEADERS
0150   HEADER_NAMES
0151   BlockAlarmsAttribute
0152   CalendarBase
0153   CalendarClipboard
0154   CalendarUtils
0155   CollectionCalendar
0156   ETMCalendar
0157   FetchJobCalendar
0158   FreeBusyManager
0159   FreeBusyProviderBase
0160   History
0161   ICalImporter
0162   IncidenceChanger
0163   IncidenceTreeModel
0164   ITIPHandler
0165   PublishDialog
0166   StandardCalendarActionManager
0167   SearchCollectionHelper
0168   TodoModel
0169   TodoPurger
0170   REQUIRED_HEADERS AkonadiCalendar_HEADERS
0171   PREFIX Akonadi
0172 )
0173 
0174 install( FILES
0175   ${AkonadiCalendar_CamelCase_HEADERS}
0176   DESTINATION ${KDE_INSTALL_INCLUDEDIR}/KPim6/AkonadiCalendar/Akonadi COMPONENT Devel
0177 )
0178 install( FILES
0179   ${CMAKE_CURRENT_BINARY_DIR}/akonadi-calendar_export.h
0180   ${AkonadiCalendar_HEADERS}
0181   ${CMAKE_CURRENT_BINARY_DIR}/calendarsettings.h
0182   DESTINATION ${KDE_INSTALL_INCLUDEDIR}/KPim6/AkonadiCalendar/akonadi COMPONENT Devel
0183 )
0184 
0185 
0186 if (BUILD_QCH)
0187     ecm_add_qch(
0188         KPim6AkonadiCalendar_QCH
0189         NAME AkonadiCalendar
0190         BASE_NAME KPim6AkonadiCalendar
0191         VERSION ${PIM_VERSION}
0192         ORG_DOMAIN org.kde
0193         SOURCES # using only public headers, to cover only public API
0194             ${AkonadiCalendar_HEADERS}
0195         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0196         #IMAGE_DIRS "${CMAKE_SOURCE_DIR}/docs/pics"
0197         LINK_QCHS
0198             Qt6Core_QCH
0199         INCLUDE_DIRS
0200             ${CMAKE_CURRENT_BINARY_DIR}
0201         BLANK_MACROS
0202             AKONADI_CALENDAR_EXPORT
0203         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0204         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0205         COMPONENT Devel
0206     )
0207 endif()