59 lines
1.8 KiB
CMake
59 lines
1.8 KiB
CMake
|
cmake_minimum_required(VERSION 3.16)
|
||
|
|
||
|
project(layershellqt)
|
||
|
set(PROJECT_VERSION "5.21.80")
|
||
|
set(PROJECT_VERSION_MAJOR 5)
|
||
|
|
||
|
set(QT_MIN_VERSION "5.15.0")
|
||
|
set(KF5_MIN_VERSION "5.78")
|
||
|
|
||
|
set(CMAKE_CXX_STANDARD 17)
|
||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||
|
|
||
|
find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS WaylandClient Qml)
|
||
|
find_package(Qt5XkbCommonSupport REQUIRED PRIVATE)
|
||
|
find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
|
||
|
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${ECM_MODULE_PATH} )
|
||
|
|
||
|
include(KDEInstallDirs)
|
||
|
include(KDECMakeSettings)
|
||
|
include(KDECompilerSettings NO_POLICY_SCOPE)
|
||
|
include(ECMSetupVersion)
|
||
|
include(ECMGenerateHeaders)
|
||
|
include(CheckIncludeFiles)
|
||
|
include(CMakePackageConfigHelpers)
|
||
|
include(FeatureSummary)
|
||
|
include(GenerateExportHeader)
|
||
|
include(KDEClangFormat)
|
||
|
|
||
|
find_package(WaylandScanner)
|
||
|
find_package(QtWaylandScanner)
|
||
|
find_package(Wayland 1.3 COMPONENTS Client Server)
|
||
|
find_package(WaylandProtocols)
|
||
|
|
||
|
set_package_properties(Wayland PROPERTIES
|
||
|
TYPE REQUIRED)
|
||
|
# adjusting CMAKE_C_FLAGS to get wayland protocols to compile
|
||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu90")
|
||
|
|
||
|
ecm_setup_version(${PROJECT_VERSION} VARIABLE_PREFIX LAYERSHELL_QT
|
||
|
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/layershellqt_version.h"
|
||
|
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/LayerShellQtConfigVersion.cmake"
|
||
|
SOVERSION 5)
|
||
|
|
||
|
include(ECMQtDeclareLoggingCategory)
|
||
|
add_subdirectory(src)
|
||
|
add_subdirectory(tests)
|
||
|
|
||
|
ecm_qt_declare_logging_category(ksld_SRCS
|
||
|
HEADER
|
||
|
layershellqt_logging.h
|
||
|
IDENTIFIER
|
||
|
LAYERSHELL_QT
|
||
|
CATEGORY_NAME
|
||
|
layershellqt
|
||
|
DEFAULT_SEVERITY
|
||
|
Critical
|
||
|
)
|
||
|
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
|