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

0001 add_library(KF6ConfigCore)
0002 add_library(KF6::ConfigCore ALIAS KF6ConfigCore)
0003 
0004 qt_extract_metatypes(KF6ConfigCore)
0005 
0006 set_target_properties(KF6ConfigCore PROPERTIES
0007     VERSION     ${KCONFIG_VERSION}
0008     SOVERSION   ${KCONFIG_SOVERSION}
0009     EXPORT_NAME ConfigCore
0010 )
0011 
0012 target_sources(KF6ConfigCore PRIVATE
0013    kconfig.cpp
0014    kconfigbase.cpp
0015    kconfigdata.cpp
0016    kconfiggroup.cpp
0017    kconfigbackend.cpp
0018    kconfigini.cpp
0019    kdesktopfile.cpp
0020    kdesktopfileaction.cpp
0021    ksharedconfig.cpp
0022    kcoreconfigskeleton.cpp
0023    kauthorized.cpp
0024    kemailsettings.cpp
0025    kconfigwatcher.cpp
0026 )
0027 
0028 ecm_qt_declare_logging_category(KF6ConfigCore
0029     HEADER kconfig_core_log_settings.h
0030     IDENTIFIER KCONFIG_CORE_LOG
0031     CATEGORY_NAME kf.config.core
0032     OLD_CATEGORY_NAMES kf5.kconfig.core
0033     DESCRIPTION "KConfig Core"
0034     EXPORT KCONFIG
0035 )
0036 
0037 configure_file(config-kconfig.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kconfig.h )
0038 
0039 ecm_generate_export_header(KF6ConfigCore
0040     BASE_NAME KConfigCore
0041     GROUP_BASE_NAME KF
0042     VERSION ${KF_VERSION}
0043     USE_VERSION_HEADER
0044     VERSION_BASE_NAME KConfig
0045     DEPRECATED_BASE_VERSION 0
0046     DEPRECATION_VERSIONS
0047     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0048 )
0049 
0050 target_compile_definitions(KF6ConfigCore
0051     PRIVATE
0052         KCONF_UPDATE_INSTALL_LOCATION="${KDE_INSTALL_FULL_LIBEXECDIR_KF}/$<TARGET_FILE_NAME:KF6::kconf_update>"
0053 )
0054 
0055 target_include_directories(KF6ConfigCore
0056     INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KConfig;${KDE_INSTALL_INCLUDEDIR_KF}/KConfigCore>"
0057 )
0058 
0059 target_link_libraries(KF6ConfigCore PUBLIC Qt6::Core)
0060 
0061 if(KCONFIG_USE_DBUS)
0062     target_link_libraries(KF6ConfigCore PRIVATE Qt6::DBus)
0063 endif()
0064 
0065 ecm_generate_headers(KConfigCore_HEADERS
0066   HEADER_NAMES
0067   KAuthorized
0068   KConfig
0069   KConfigBase
0070   KConfigGroup
0071   KDesktopFile
0072   KDesktopFileAction
0073   KSharedConfig
0074   KCoreConfigSkeleton
0075   KEMailSettings
0076   KConfigWatcher
0077 
0078   REQUIRED_HEADERS KConfigCore_HEADERS
0079 )
0080 
0081 list(APPEND KConfigCore_HEADERS
0082   ${CMAKE_CURRENT_SOURCE_DIR}/kconfigconversioncheck_p.h # helper header included by kconfiggroup.h
0083 )
0084 
0085 install(TARGETS KF6ConfigCore EXPORT KF6ConfigTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0086 
0087 install(FILES
0088   ${CMAKE_CURRENT_BINARY_DIR}/kconfigcore_export.h
0089   ${KConfigCore_HEADERS}
0090   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KConfigCore COMPONENT Devel
0091 )
0092 
0093 # make available to ecm_add_qch in parent folder
0094 set(KConfigCore_APIDOX_SRCS ${KConfigCore_HEADERS} PARENT_SCOPE)
0095 set(KConfigCore_APIDOX_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} PARENT_SCOPE)
0096