From 803df2e214c199f42a2c88ed7412c4c8db07c882 Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner Date: Mon, 6 Apr 2020 00:41:07 +0200 Subject: [PATCH] Replace input drivers pkg_check_modules calls with manual targets All they need is one header each, allow include dir overrides. XorgLibinput - libinput-properties.h XorgServer - xserver-properties.h --- CMakeLists.txt | 7 +------ config-gentoo.cmake | 17 +++++++++++++++++ kcms/mouse/CMakeLists.txt | 3 --- kcms/touchpad/CMakeLists.txt | 6 ------ 4 files changed, 18 insertions(+), 15 deletions(-) create mode 100644 config-gentoo.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index bc1d57c12..30a893d5c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -226,16 +226,11 @@ set_package_properties(XCB PROPERTIES TYPE REQUIRED) add_feature_info("XCB-XKB" XCB_XKB_FOUND "Required for building kcm/keyboard") add_feature_info("libxft" X11_Xft_FOUND "X FreeType interface library required for font installation") -pkg_check_modules(XORGLIBINPUT xorg-libinput IMPORTED_TARGET) -pkg_check_modules(XORGSERVER xorg-server IMPORTED_TARGET) +include(config-gentoo.cmake) pkg_check_modules(XKBREGISTRY xkbregistry REQUIRED IMPORTED_TARGET) ecm_find_qmlmodule(org.kde.pipewire 0.1) -if(XORGLIBINPUT_FOUND) - set(HAVE_XORGLIBINPUT 1) -endif() - include(ConfigureChecks.cmake) find_package(PackageKitQt6) diff --git a/config-gentoo.cmake b/config-gentoo.cmake new file mode 100644 index 000000000..ac2f0c18d --- /dev/null +++ b/config-gentoo.cmake @@ -0,0 +1,17 @@ +if(BUILD_KCM_MOUSE_X11) + add_library(PkgConfig::XORGLIBINPUT INTERFACE IMPORTED) + set_property(TARGET PkgConfig::XORGLIBINPUT PROPERTY + INTERFACE_INCLUDE_DIRECTORIES "${XORGLIBINPUT_INCLUDE_DIRS}" + ) +endif() + +if(BUILD_KCM_TOUCHPAD_X11) + add_library(PkgConfig::XORGSERVER INTERFACE IMPORTED) + set_property(TARGET PkgConfig::XORGSERVER PROPERTY + INTERFACE_INCLUDE_DIRECTORIES "${XORGSERVER_INCLUDE_DIRS}" + ) +endif() + +if(BUILD_KCM_MOUSE_X11 OR BUILD_KCM_TOUCHPAD_X11) + set(HAVE_XORGLIBINPUT 1) +endif() diff --git a/kcms/mouse/CMakeLists.txt b/kcms/mouse/CMakeLists.txt index 17689e78f..364185c91 100644 --- a/kcms/mouse/CMakeLists.txt +++ b/kcms/mouse/CMakeLists.txt @@ -2,9 +2,6 @@ add_definitions(-DTRANSLATION_DOMAIN=\"kcmmouse\") if (BUILD_KCM_MOUSE_X11) - if (NOT XORGLIBINPUT_FOUND) - list(APPEND MISSING_DEPS "xorg-libinput") - endif() if (NOT X11_Xi_FOUND) list(APPEND MISSING_DEPS "X11_Xi") endif() diff --git a/kcms/touchpad/CMakeLists.txt b/kcms/touchpad/CMakeLists.txt index ced353a60..a1920c574 100644 --- a/kcms/touchpad/CMakeLists.txt +++ b/kcms/touchpad/CMakeLists.txt @@ -2,18 +2,12 @@ add_definitions(-DTRANSLATION_DOMAIN=\"kcm_touchpad\") if (BUILD_KCM_TOUCHPAD_X11) - if (NOT XORGLIBINPUT_FOUND) - list(APPEND MISSING_DEPS "xorg-libinput") - endif() if (NOT X11_XCB_FOUND) list(APPEND MISSING_DEPS "X11_XCB") endif() if (NOT X11_Xi_FOUND) list(APPEND MISSING_DEPS "X11_Xi") endif() - if (NOT XORGSERVER_FOUND) - list(APPEND MISSING_DEPS "xorg-server") - endif() if (MISSING_DEPS) message(FATAL_ERROR "Missing X11 dependencies for kcm_touchpad: ${MISSING_DEPS}. Install dependencies or set CMake option -DBUILD_KCM_TOUCHPAD_X11=OFF.") endif() -- 2.45.2