Warning, /plasma/libkscreen/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 add_subdirectory(backendlauncher) 0002 add_subdirectory(doctor) 0003 add_subdirectory(libdpms) 0004 set(libkscreen_SRCS 0005 abstractbackend.cpp 0006 backendmanager.cpp 0007 config.cpp 0008 configoperation.cpp 0009 getconfigoperation.cpp 0010 setconfigoperation.cpp 0011 configmonitor.cpp 0012 configserializer.cpp 0013 screen.cpp 0014 output.cpp 0015 edid.cpp 0016 mode.cpp 0017 log.cpp 0018 ) 0019 0020 qt_add_dbus_interface(libkscreen_SRCS ${CMAKE_SOURCE_DIR}/interfaces/org.kde.KScreen.Backend.xml backendinterface) 0021 0022 ecm_qt_declare_logging_category(libkscreen_SRCS 0023 HEADER kscreen_debug.h 0024 IDENTIFIER KSCREEN 0025 CATEGORY_NAME org.kde.kscreen 0026 ) 0027 0028 ecm_qt_declare_logging_category(libkscreen_SRCS 0029 HEADER kscreen_debug_edid.h 0030 IDENTIFIER KSCREEN_EDID 0031 CATEGORY_NAME org.kde.kscreen.edid 0032 ) 0033 0034 0035 add_library(KF6Screen SHARED ${libkscreen_SRCS}) 0036 generate_export_header(KF6Screen BASE_NAME KScreen) 0037 0038 ecm_create_qm_loader(KF6Screen libkscreen6_qt) 0039 0040 target_link_libraries(KF6Screen 0041 PUBLIC 0042 Qt::Core 0043 Qt::Gui 0044 PRIVATE 0045 Qt::DBus 0046 Qt::GuiPrivate # for QX11Info 0047 ) 0048 0049 set_target_properties(KF6Screen PROPERTIES 0050 VERSION "${KSCREEN_VERSION}" 0051 SOVERSION "${KSCREEN_SOVERSION}" 0052 EXPORT_NAME Screen 0053 ) 0054 0055 target_include_directories(KF6Screen PUBLIC "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KScreen>") 0056 0057 install(TARGETS KF6Screen EXPORT KF6ScreenTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) 0058 add_library(KF6::Screen ALIAS KF6Screen) 0059 0060 ecm_generate_headers(KScreen_HEADERS 0061 HEADER_NAMES 0062 Log 0063 Mode 0064 Output 0065 EDID 0066 Screen 0067 Config 0068 ConfigMonitor 0069 ConfigOperation 0070 GetConfigOperation 0071 SetConfigOperation 0072 Types 0073 PREFIX KScreen 0074 REQUIRED_HEADERS KScreen_REQ_HEADERS 0075 ) 0076 0077 install(FILES ${KScreen_HEADERS} 0078 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KScreen/KScreen 0079 COMPONENT Devel) 0080 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kscreen_export.h 0081 backendmanager_p.h # needed for unit-tests in KScreen 0082 ${KScreen_REQ_HEADERS} 0083 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KScreen/kscreen) 0084 0085 if(NOT WIN32) 0086 ecm_generate_pkgconfig_file(BASE_NAME KF6Screen 0087 LIB_NAME KF6Screen 0088 INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF}/KScreen 0089 DEPS Qt6Core Qt6Gui 0090 DESCRIPTION "Qt Based library to manage screens with backends (xrandr, whatevercomesnext)" 0091 INSTALL 0092 ) 0093 endif(NOT WIN32) 0094 0095 if(BUILD_QCH) 0096 ecm_add_qch( 0097 KF6Screen_QCH 0098 NAME KScreen 0099 BASE_NAME KF6Screen 0100 VERSION ${PROJECT_VERSION} 0101 ORG_DOMAIN org.kde 0102 SOURCES # using only public headers, to cover only public API 0103 ${KScreen_REQ_HEADERS} 0104 # MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md" 0105 LINK_QCHS 0106 Qt6Core_QCH 0107 Qt6Gui_QCH 0108 BLANK_MACROS 0109 KSCREEN_EXPORT 0110 KSCREEN_DEPRECATED 0111 KSCREEN_DEPRECATED_EXPORT 0112 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0113 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0114 COMPONENT Devel 0115 ) 0116 endif()