Warning, /frameworks/kholidays/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 add_library(KF6Holidays)
0002 add_library(KF6::Holidays ALIAS KF6Holidays)
0003
0004 set_target_properties(KF6Holidays PROPERTIES
0005 VERSION ${KHOLIDAYS_VERSION}
0006 SOVERSION ${KHOLIDAYS_SOVERSION}
0007 EXPORT_NAME Holidays
0008 )
0009
0010 target_sources(KF6Holidays PRIVATE
0011 astroseasons.cpp
0012 astroseasons.h
0013 holiday.cpp
0014 holiday.h
0015 holiday_p.h
0016 holidayregion.cpp
0017 holidayregion.h
0018 lunarphase.cpp
0019 lunarphase.h
0020 parsers/holidayparserdriver.cpp
0021 parsers/holidayparserdriver_p.h
0022 parsers/plan2/FlexLexer.h
0023 parsers/plan2/holidayparserdriverplan.cpp
0024 parsers/plan2/holidayparserdriverplan_p.h
0025 parsers/plan2/holidayparserplan.cpp
0026 parsers/plan2/holidayscannerplan.cpp
0027 parsers/plan2/holidayscannerplan_p.h
0028 parsers/qcalendarsystem.cpp
0029 parsers/qcalendarsystem_p.h
0030 sunriseset.cpp
0031 sunriseset.h
0032 util.h
0033 zodiac.cpp
0034 zodiac.h
0035
0036 ../holidays/holidays.qrc
0037 )
0038
0039 ecm_create_qm_loader(KF6Holidays libkholidays6_qt)
0040
0041 ecm_qt_declare_logging_category(KF6Holidays
0042 HEADER kholidays_debug.h
0043 IDENTIFIER KHOLIDAYS_LOG
0044 CATEGORY_NAME kf.holidays
0045 DESCRIPTION "KHolidays"
0046 EXPORT KHOLIDAYS
0047 )
0048
0049 ecm_generate_export_header(KF6Holidays
0050 VERSION ${KF_VERSION}
0051 USE_VERSION_HEADER
0052 BASE_NAME KHolidays
0053 GROUP_BASE_NAME KF
0054 DEPRECATED_BASE_VERSION 0
0055 DEPRECATION_VERSIONS
0056 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0057 )
0058
0059 target_include_directories(KF6Holidays INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KHolidays>")
0060 target_include_directories(KF6Holidays PUBLIC "$<BUILD_INTERFACE:${KHolidays_SOURCE_DIR}/src;${KHolidays_BINARY_DIR}/src>")
0061 target_include_directories(KF6Holidays PUBLIC "$<BUILD_INTERFACE:${KHolidays_SOURCE_DIR}/src/parsers/plan2>")
0062
0063 target_link_libraries(KF6Holidays PUBLIC Qt6::Core)
0064
0065 ecm_generate_headers(KHolidays_CamelCase_HEADERS
0066 HEADER_NAMES
0067 AstroSeasons
0068 Holiday
0069 HolidayRegion
0070 LunarPhase
0071 SunRiseSet
0072 Zodiac
0073 PREFIX KHolidays
0074 REQUIRED_HEADERS KHolidays_HEADERS
0075 )
0076
0077 install(TARGETS KF6Holidays EXPORT KF6HolidaysTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0078
0079 ########### install files ###############
0080 install(FILES
0081 ${CMAKE_CURRENT_BINARY_DIR}/kholidays_export.h
0082 ${KHolidays_HEADERS}
0083 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KHolidays/kholidays
0084 COMPONENT Devel
0085 )
0086
0087 install(FILES
0088 ${KHolidays_CamelCase_HEADERS}
0089 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KHolidays/KHolidays
0090 COMPONENT Devel
0091 )
0092
0093 if(BUILD_QCH)
0094 ecm_add_qch(
0095 KF6Holidays_QCH
0096 NAME KHolidays
0097 BASE_NAME KF6Holidays
0098 VERSION ${KF_VERSION}
0099 ORG_DOMAIN org.kde
0100 SOURCES # using only public headers, to cover only public API
0101 ${KHolidays_HEADERS}
0102 MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0103 LINK_QCHS
0104 Qt6Core_QCH
0105 INCLUDE_DIRS
0106 ${CMAKE_CURRENT_BINARY_DIR}
0107 BLANK_MACROS
0108 KHOLIDAYS_EXPORT
0109 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0110 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0111 COMPONENT Devel
0112 )
0113 endif()
0114
0115 add_subdirectory(declarative)
0116
0117 ecm_qt_install_logging_categories(
0118 EXPORT KHOLIDAYS
0119 FILE kholidays.categories
0120 DESTINATION "${KDE_INSTALL_LOGGINGCATEGORIESDIR}"
0121 )