Warning, /plasma/layer-shell-qt/src/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-FileCopyrightText: 2021 Aleix Pol Gonzalez <aleixpol@kde.org>
0002 # SPDX-License-Identifier: BSD-3-Clause
0003 
0004 remove_definitions(-DQT_NO_SIGNALS_SLOTS_KEYWORDS)
0005 
0006 add_library(LayerShellQtInterface)
0007 qt6_generate_wayland_protocol_client_sources(LayerShellQtInterface FILES
0008     ${WaylandProtocols_DATADIR}/stable/xdg-shell/xdg-shell.xml
0009     ${CMAKE_CURRENT_SOURCE_DIR}/wlr-layer-shell-unstable-v1.xml
0010 )
0011 
0012 ecm_qt_declare_logging_category(LAYER_SHELL_SOURCES
0013     HEADER
0014         layershellqt_logging.h
0015     IDENTIFIER
0016         LAYERSHELLQT
0017     CATEGORY_NAME
0018         layershellqt
0019 )
0020 
0021 target_sources(LayerShellQtInterface PRIVATE qwaylandlayersurface.cpp interfaces/window.cpp interfaces/shell.cpp qwaylandlayershellintegration.cpp ${LAYER_SHELL_SOURCES})
0022 target_link_libraries(LayerShellQtInterface PUBLIC Qt::Gui)
0023 target_link_libraries(LayerShellQtInterface PRIVATE Qt::WaylandClientPrivate Wayland::Client PkgConfig::XKBCOMMON)
0024 if (TARGET Qt::XkbCommonSupportPrivate)
0025     target_link_libraries(LayerShellQtInterface PRIVATE Qt::XkbCommonSupportPrivate)
0026 endif()
0027 target_include_directories(LayerShellQtInterface PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/LayerShellQt>"
0028                                               INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR}/>"
0029 )
0030 
0031 set_target_properties(LayerShellQtInterface PROPERTIES VERSION   ${LAYERSHELLQT_VERSION}
0032                                                        SOVERSION ${LAYERSHELLQT_SOVERSION}
0033                                                        EXPORT_NAME Interface
0034 )
0035 
0036 add_library(layer-shell SHARED qwaylandlayershellintegrationplugin.cpp)
0037 target_link_libraries(layer-shell LayerShellQtInterface Qt::WaylandClient Qt::WaylandClientPrivate Wayland::Client PkgConfig::XKBCOMMON)
0038 if (TARGET Qt::XkbCommonSupportPrivate)
0039     target_link_libraries(layer-shell Qt::XkbCommonSupportPrivate)
0040 endif()
0041 
0042 ecm_generate_headers(LayerShellQt_HEADERS
0043     HEADER_NAMES
0044         Shell
0045         Window
0046     RELATIVE interfaces/
0047     REQUIRED_HEADERS LayerShellQt_HEADERS
0048 )
0049 
0050 
0051 generate_export_header(LayerShellQtInterface
0052     BASE_NAME LayerShellQtInterface
0053     EXPORT_MACRO_NAME LAYERSHELLQT_EXPORT
0054     EXPORT_FILE_NAME LayerShellQt/layershellqt_export.h
0055 )
0056 
0057 install(TARGETS layer-shell
0058         LIBRARY DESTINATION ${KDE_INSTALL_QTPLUGINDIR}/wayland-shell-integration)
0059 
0060 install(TARGETS LayerShellQtInterface EXPORT LayerShellQtTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
0061 
0062 install(FILES
0063     ${LayerShellQt_HEADERS}
0064     ${CMAKE_CURRENT_BINARY_DIR}/LayerShellQt/layershellqt_export.h
0065     DESTINATION ${KDE_INSTALL_INCLUDEDIR}/LayerShellQt COMPONENT Devel
0066 )
0067 
0068 add_subdirectory(declarative)