Warning, /frameworks/kcalendarcore/src/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 add_library(KF6CalendarCore)
0002 add_library(KF6::CalendarCore ALIAS KF6CalendarCore)
0003 
0004 set_target_properties(KF6CalendarCore PROPERTIES
0005     VERSION     ${KCALENDARCORE_VERSION}
0006     SOVERSION   ${KCALENDARCORE_SOVERSION}
0007     EXPORT_NAME CalendarCore
0008 )
0009 
0010 target_sources(KF6CalendarCore PRIVATE
0011     alarm.cpp
0012     alarm.h
0013     attachment.cpp
0014     attachment.h
0015     attendee.cpp
0016     attendee.h
0017     calendar.cpp
0018     calendar.h
0019     calendar_p.h
0020     calendarplugin.cpp
0021     calendarplugin.h
0022     calendarpluginloader.cpp
0023     calendarpluginloader.h
0024     calfilter.cpp
0025     calfilter.h
0026     calformat.cpp
0027     calformat.h
0028     calstorage.cpp
0029     calstorage.h
0030     compat.cpp
0031     compat_p.h
0032     conference.cpp
0033     conference.h
0034     customproperties.cpp
0035     customproperties.h
0036     duration.cpp
0037     duration.h
0038     event.cpp
0039     event.h
0040     exceptions.cpp
0041     exceptions.h
0042     filestorage.cpp
0043     filestorage.h
0044     freebusycache.cpp
0045     freebusycache.h
0046     freebusy.cpp
0047     freebusy.h
0048     freebusyperiod.cpp
0049     freebusyperiod.h
0050     icalformat.cpp
0051     icalformat.h
0052     icalformat_p.cpp
0053     icalformat_p.h
0054     icaltimezones.cpp
0055     icaltimezones_p.h
0056     incidencebase.cpp
0057     incidencebase.h
0058     incidencebase_p.h
0059     incidence.cpp
0060     incidence.h
0061     incidence_p.h
0062     journal.cpp
0063     journal.h
0064     memorycalendar.cpp
0065     memorycalendar.h
0066     occurrenceiterator.cpp
0067     occurrenceiterator.h
0068     period.cpp
0069     period.h
0070     person.cpp
0071     person.h
0072     person_p.h
0073     recurrence.cpp
0074     recurrence.h
0075     recurrencehelper_p.h
0076     recurrencerule.cpp
0077     recurrencerule.h
0078     schedulemessage.cpp
0079     schedulemessage.h
0080     sorting.cpp
0081     sorting.h
0082     todo.cpp
0083     todo.h
0084     utils.cpp
0085     utils_p.h
0086     vcalformat.cpp
0087     vcalformat.h
0088     visitor.cpp
0089     visitor.h
0090 
0091 )
0092 ecm_qt_declare_logging_category(KF6CalendarCore
0093     HEADER kcalendarcore_debug.h
0094     IDENTIFIER KCALCORE_LOG
0095     CATEGORY_NAME kf.calendarcore
0096     OLD_CATEGORY_NAMES log_kcalcore org.kde.pim.kcalcore
0097     DESCRIPTION "KCalendarCore"
0098     EXPORT KCALENDARCORE
0099 )
0100 
0101 ecm_generate_export_header(KF6CalendarCore
0102     BASE_NAME kcalendarcore
0103     GROUP_BASE_NAME KF
0104     VERSION ${KF_VERSION}
0105     USE_VERSION_HEADER
0106     DEPRECATED_BASE_VERSION 0
0107     DEPRECATION_VERSIONS
0108     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0109 )
0110 
0111 target_include_directories(KF6CalendarCore INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KCalendarCore>")
0112 target_include_directories(KF6CalendarCore PUBLIC "$<BUILD_INTERFACE:${KCalendarCore_SOURCE_DIR}/src;${KCalendarCore_BINARY_DIR}/src>")
0113 
0114 target_link_libraries(KF6CalendarCore
0115 PUBLIC
0116     Qt6::Core
0117     Qt6::Gui
0118 PRIVATE
0119     LibIcal
0120 )
0121 
0122 install(TARGETS KF6CalendarCore EXPORT KF6CalendarCoreTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0123 
0124 ########### Generate Headers ###############
0125 set(kcalendarcore_headers
0126   Alarm
0127   Attachment
0128   Attendee
0129   CalFilter
0130   CalFormat
0131   CalStorage
0132   Calendar
0133   CalendarPlugin
0134   CalendarPluginLoader
0135   Conference
0136   CustomProperties
0137   Duration
0138   Event
0139   Exceptions
0140   FileStorage
0141   FreeBusy
0142   FreeBusyCache
0143   FreeBusyPeriod
0144   ICalFormat
0145   Incidence
0146   IncidenceBase
0147   Journal
0148   MemoryCalendar
0149   OccurrenceIterator
0150   Period
0151   Person
0152   Recurrence
0153   RecurrenceRule
0154   ScheduleMessage
0155   Sorting
0156   Todo
0157   VCalFormat
0158   Visitor
0159 )
0160 
0161 ecm_generate_headers(KCalendarCore_CamelCase_HEADERS
0162   HEADER_NAMES
0163     ${kcalendarcore_headers}
0164   PREFIX KCalendarCore
0165   REQUIRED_HEADERS KCalendarCore_HEADERS
0166 )
0167 
0168 ########### install files ###############
0169 
0170 install(FILES
0171   ${CMAKE_CURRENT_BINARY_DIR}/kcalendarcore_export.h
0172   ${KCalendarCore_HEADERS}
0173   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KCalendarCore/kcalendarcore
0174   COMPONENT Devel
0175 )
0176 
0177 install(FILES
0178   ${KCalendarCore_CamelCase_HEADERS}
0179   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KCalendarCore/KCalendarCore
0180   COMPONENT Devel
0181 )
0182 
0183 ecm_qt_install_logging_categories(
0184     EXPORT KCALENDARCORE
0185     FILE kcalendarcore.categories
0186     DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0187 )
0188 
0189 if(BUILD_QCH)
0190     ecm_add_qch(
0191         KF6CalendarCore_QCH
0192         NAME KCalendarCore
0193         BASE_NAME KF6CalendarCore
0194         VERSION ${KCalendarCore_VERSION}
0195         ORG_DOMAIN org.kde
0196         SOURCES # using only public headers, to cover only public API
0197             ${KCalendarCore_HEADERS}
0198         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0199         LINK_QCHS
0200             Qt6Core_QCH
0201             Qt6Gui_QCH
0202         INCLUDE_DIRS
0203             ${CMAKE_CURRENT_BINARY_DIR}
0204         BLANK_MACROS
0205             KCALENDARCORE_EXPORT
0206             "KCALENDARCORE_DEPRECATED_VERSION(x, y, t)"
0207         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0208         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0209         COMPONENT Devel
0210     )
0211 endif()