Warning, /frameworks/purpose/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 set(PURPOSE_INSTALL_INCLUDEDIR "${KDE_INSTALL_INCLUDEDIR_KF}/Purpose")
0002
0003 qt_add_resources(purpose_SRCS standard-plugin-types.qrc)
0004
0005 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake-paths.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/cmake-paths.h)
0006
0007 ecm_qt_declare_logging_category(external_process_debug_SRCS
0008 HEADER purpose_external_process_debug.h
0009 IDENTIFIER PURPOSE_EXTERNAL_PROCESS_LOG
0010 CATEGORY_NAME kf.purpose.externalprocess
0011 OLD_CATEGORY_NAMES kf5.purpose.externalprocess
0012 DESCRIPTION "purpose external process"
0013 EXPORT PURPOSE
0014 )
0015
0016 add_library(KF6Purpose)
0017 add_library(KF6::Purpose ALIAS KF6Purpose)
0018
0019 qt_extract_metatypes(KF6Purpose)
0020
0021 set_target_properties(KF6Purpose PROPERTIES
0022 VERSION ${PURPOSE_VERSION}
0023 SOVERSION ${PURPOSE_SOVERSION}
0024 EXPORT_NAME Purpose
0025 )
0026
0027 target_sources(KF6Purpose PRIVATE
0028 ${external_process_debug_SRCS}
0029 pluginbase.cpp
0030 job.cpp
0031 alternativesmodel.cpp
0032 configuration.cpp
0033 helper.cpp
0034 externalprocess/processjob.cpp
0035 jobcontroller.cpp
0036 ${purpose_SRCS}
0037 )
0038
0039 target_include_directories(KF6Purpose
0040 PUBLIC
0041 "$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>"
0042 "$<BUILD_INTERFACE:${Purpose_BINARY_DIR}>"
0043 INTERFACE
0044 "$<INSTALL_INTERFACE:${PURPOSE_INSTALL_INCLUDEDIR}>"
0045 )
0046 target_link_libraries(KF6Purpose
0047 PUBLIC
0048 KF6::CoreAddons
0049 Qt6::Gui
0050 PRIVATE
0051 Qt6::DBus
0052 Qt6::Network #QLocalSocket
0053 KF6::ConfigCore
0054 )
0055
0056 install(TARGETS KF6Purpose EXPORT KF6PurposeTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0057
0058 ecm_generate_export_header(KF6Purpose
0059 EXPORT_FILE_NAME ${Purpose_BINARY_DIR}/purpose/purpose_export.h
0060 BASE_NAME Purpose
0061 GROUP_BASE_NAME KF
0062 VERSION ${KF_VERSION}
0063 USE_VERSION_HEADER
0064 DEPRECATED_BASE_VERSION 0
0065 )
0066
0067 ecm_generate_headers(Purpose_CamelCase_HEADERS
0068 HEADER_NAMES
0069 PluginBase
0070 AlternativesModel
0071 Job
0072 Configuration
0073 REQUIRED_HEADERS Purpose_HEADERS
0074 PREFIX Purpose
0075 )
0076
0077 install(
0078 FILES ${Purpose_CamelCase_HEADERS}
0079 DESTINATION ${PURPOSE_INSTALL_INCLUDEDIR}/Purpose # C++ namespace
0080 COMPONENT Devel
0081 )
0082 install(
0083 FILES
0084 ${Purpose_BINARY_DIR}/purpose/purpose_export.h
0085 ${Purpose_HEADERS}
0086 DESTINATION ${PURPOSE_INSTALL_INCLUDEDIR}/purpose # C++ namespace
0087 COMPONENT Devel
0088 )
0089
0090 add_executable(purposeprocess externalprocess/purposeprocess_main.cpp helper.cpp ${external_process_debug_SRCS})
0091 ecm_mark_nongui_executable(purposeprocess)
0092 target_link_libraries(purposeprocess KF6::Purpose Qt6::Network Qt6::Widgets)
0093 install(TARGETS purposeprocess DESTINATION ${KDE_INSTALL_LIBEXECDIR_KF})
0094
0095 add_subdirectory(plugins)
0096 add_subdirectory(quick)
0097 add_subdirectory(widgets)
0098 add_subdirectory(fileitemactionplugin)
0099
0100 ecm_qt_install_logging_categories(
0101 EXPORT PURPOSE
0102 FILE purpose.categories
0103 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0104 )