Warning, /libraries/kcgroups/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 set(libkcgroups_SRCS
0002 kapplicationscope.cpp
0003 kapplicationscopelister.cpp
0004 kapplicationscopelistmodel.cpp)
0005
0006 ecm_qt_declare_logging_category(libkcgroups_SRCS
0007 HEADER kcgroups_debug.h
0008 IDENTIFIER KCGROUPS_LOG
0009 CATEGORY_NAME kf.cgroups
0010 OLD_CATEGORY_NAMES kf5.kcgroups
0011 DESCRIPTION "KCGroups"
0012 EXPORT KCGROUPS
0013 )
0014
0015 set(DBUS_INTERFACE_XML_FILES
0016 dbus/org.freedesktop.DBus.Properties.xml
0017 dbus/org.freedesktop.systemd1.Manager.xml
0018 dbus/org.freedesktop.systemd1.Unit.xml)
0019
0020 set_property(SOURCE ${DBUS_INTERFACE_XML_FILES} PROPERTY INCLUDE dbustypes_p.h)
0021
0022 qt_add_dbus_interfaces(libkcgroups_SRCS ${DBUS_INTERFACE_XML_FILES})
0023
0024 add_library(KF5CGroups ${libkcgroups_SRCS})
0025 generate_export_header(KF5CGroups BASE_NAME KCGroups)
0026 add_library(KF5::CGroups ALIAS KF5CGroups)
0027
0028 target_include_directories(
0029 KF5CGroups
0030 INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF5}/KCGroups>")
0031
0032 CHECK_INCLUDE_FILE_CXX("optional" _stdOptionalAvailable)
0033 target_compile_definitions(KF5CGroups PRIVATE $<${_stdOptionalAvailable}:STD_OPTIONAL_AVAILABLE>)
0034
0035 target_compile_features(KF5CGroups PUBLIC cxx_std_14)
0036
0037 target_link_libraries(
0038 KF5CGroups
0039 PUBLIC Qt${QT_MAJOR_VERSION}::Core
0040 PRIVATE Qt${QT_MAJOR_VERSION}::DBus)
0041
0042 set_target_properties(
0043 KF5CGroups
0044 PROPERTIES VERSION ${KCGROUPS_VERSION_STRING}
0045 SOVERSION ${KCGROUPS_SOVERSION}
0046 EXPORT_NAME CGroups)
0047
0048 ecm_generate_headers(
0049 KCGroups_HEADERS
0050 HEADER_NAMES
0051 KApplicationScope
0052 KApplicationScopeLister
0053 KApplicationScopeListModel
0054 REQUIRED_HEADERS KCGroups_HEADERS)
0055
0056 list(APPEND
0057 KCGroups_HEADERS
0058 optional.h
0059 optionalgadget.h
0060 ${CMAKE_CURRENT_BINARY_DIR}/kcgroups_export.h)
0061
0062 install(
0063 TARGETS KF5CGroups
0064 EXPORT KF5CGroupsTargets
0065 ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0066
0067 install(
0068 FILES ${KCGroups_HEADERS}
0069 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KCGroups
0070 COMPONENT Devel)
0071
0072 ecm_qt_install_logging_categories(
0073 EXPORT KCGROUPS
0074 FILE kcgroups.categories
0075 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0076 )
0077
0078 if(BUILD_QCH)
0079 ecm_add_qch(
0080 KF5CGroups_QCH
0081 NAME KCGroups
0082 BASE_NAME KF5CGroups
0083 VERSION ${KF5_VERSION}
0084 ORG_DOMAIN org.kde
0085 SOURCES ${KCGroups_HEADERS}
0086 MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0087 LINK_QCHS
0088 Qt${QT_MAJOR_VERSION}DBus_QCH
0089 Qt${QT_MAJOR_VERSION}Core_QCH
0090 INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}
0091 BLANK_MACROS
0092 KCGROUPS_EXPORT
0093 KCGROUPS_DEPRECATED
0094 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0095 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0096 COMPONENT Devel
0097 CONFIG_TEMPLATE ${CMAKE_SOURCE_DIR}/Doxyfile.in)
0098 endif()
0099
0100 include(ECMGeneratePriFile)
0101 ecm_generate_pri_file(
0102 BASE_NAME
0103 KCGroups
0104 LIB_NAME
0105 KF5CGroups
0106 DEPS
0107 "dbus"
0108 FILENAME_VAR
0109 PRI_FILENAME
0110 INCLUDE_INSTALL_DIR
0111 ${KDE_INSTALL_INCLUDEDIR_KF5}/KCGroups)
0112 install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})