summaryrefslogtreecommitdiff
path: root/kde-apps/ktouch
diff options
context:
space:
mode:
Diffstat (limited to 'kde-apps/ktouch')
-rw-r--r--kde-apps/ktouch/Manifest3
-rw-r--r--kde-apps/ktouch/files/ktouch-22.07.90-without_x11.patch97
-rw-r--r--kde-apps/ktouch/ktouch-22.08.0.ebuild65
3 files changed, 165 insertions, 0 deletions
diff --git a/kde-apps/ktouch/Manifest b/kde-apps/ktouch/Manifest
index bc9ee661587b..1b33b760d63d 100644
--- a/kde-apps/ktouch/Manifest
+++ b/kde-apps/ktouch/Manifest
@@ -1,4 +1,7 @@
AUX ktouch-22.04.3-without_x11.patch 3375 BLAKE2B 01d94894fafed1f2a51be2130431cbc3164856d528143610085b04d8f91a4beab172e79ade29c37dc2897443e36b4fe33a30c8bb583af1f15505278501e74f7a SHA512 9ac5b3035c89b08e968d3c4851571cf437a8d641137308d1f8ac56f2cf66ad8e39caa60a9b3ffe44f73c02234d4ddf7ece14bbdf305117da73c155f6ab09ad35
+AUX ktouch-22.07.90-without_x11.patch 3493 BLAKE2B 69afe1bc7cf5762c8716cc6552e47da359a97f26c4b3d62028964d238155b7f080ec1b9fb9c8fad5c15ed22b8b9a2138de5dedb2aa6981b75558becc8b14d3c8 SHA512 f3af93f068bafde01d7fda016f7993802aeae9da91b4acb742c91212efb14fa4f642ac540bd036c3888377a7f6d4e753b995f662c939ad02d7b5f963ed483123
DIST ktouch-22.04.3.tar.xz 4978228 BLAKE2B 05622b751970819b51de6118fcaf2040cacfed115b4958a8b3cee1f2842a32f415e6565701df56e7f1a296fd72f7fda6a960f9f4322175168487ebea3ace7c36 SHA512 a26955cb6235525961e59a1158067748a8ad3dfa51b1072604229e01dce2c92fbe9745b04efb955d000691998435130b27a867d1354aac06ed834c798f59ea13
+DIST ktouch-22.08.0.tar.xz 4989876 BLAKE2B 67342edd679346bbc0f274f9adc5640e8f2bcc3ba6de649b427ecfbbdd0503b5263f9fbbc5dda1d48529d58fa165780ce6baa6b07f446cc4b7b1725e3d4896e3 SHA512 23dec8d0b2be342c15cf6bc384ced005ee8aa1c78bb84208799bae95cfdcaefb943d564ccce64ae4808991d3566c2114dbd8c426becb0f162e3b6dacb87dbb30
EBUILD ktouch-22.04.3.ebuild 1601 BLAKE2B b58881bd083d9590f52480377ecd35ff5b9e7864cfdf732ede959bdbcf250b3ed3a302a0a0b233a0525d58845afc767e2f0333dfab2d1c44ee6f9bdcb2f888a6 SHA512 bfeaaaa9b64a1fd721e6617092a5dffab9d7c35cc8d18445279626e2ccb6df73b737c8e47d1b171b9281a23b51cde94e7db10fc03314eae41455dfc24eaf1e49
+EBUILD ktouch-22.08.0.ebuild 1614 BLAKE2B 6451bd7b6572dfd9c1c30c25b1eebb3927048e76856207af70b9fb4eb60573ad0f4620d6dc89d0f143a1085cfd30e7d40d53fc16fe1c623ec963f9061b27eda8 SHA512 819dab2f38c80108143759b56e0859c54bee5f4ea2d47a00462d5f34c878067e4855d4e3c8851d4425af875efefdf43dafd8fc3e6bdc5f37996041af4dbf3b10
MISC metadata.xml 406 BLAKE2B 515e93940c5d57cc66d5ab4c567b5f4a0ba0768561f3a83e5b99ac610c8a89d28282ec1812e8225fb8da2e0f51318956c386b4dbcf5346d94c76f42a655645cf SHA512 c8c3e7a26162e1e1b7211beeefd0949cdc3cb74e97aede8f0ac1f660d5b557e2514d52242a6ef1b6539c2e7ad3d7a463f5c24d1b47ecbb00722ff66e9109f07a
diff --git a/kde-apps/ktouch/files/ktouch-22.07.90-without_x11.patch b/kde-apps/ktouch/files/ktouch-22.07.90-without_x11.patch
new file mode 100644
index 000000000000..dbfc2d94987b
--- /dev/null
+++ b/kde-apps/ktouch/files/ktouch-22.07.90-without_x11.patch
@@ -0,0 +1,97 @@
+From d290b2a51d5aa4694ec746ce5cc9456977efde71 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 31 Jul 2022 16:17:30 +0200
+Subject: [PATCH] Add CMake option to build WITHOUT_X11
+
+We want to be able to build without X11 support even if some of the used
+libraries may not work w/o X11 themselves yet or need to be built with
+X11 support for other reverse dependencies.
+
+KTOUCH_BUILD_WITH_X11 already exists and is set automagically so far,
+but using -DCMAKE_DISABLE_FIND_PACKAGE_X11 will break if any
+dependencies list X11 as required in their cmake config.
+
+Introducing this option means there is no behavior change by default,
+cmake will just skip finding X11 or adding unwanted features if the
+option is enabled.
+
+- Move the checks to root CMakeLists.txt
+- Move finding Qt5X11Extras behind "NOT WITHOUT_X11" too
+- x11_helper is conditional on KTOUCH_BUILD_WITH_X11
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ CMakeLists.txt | 18 +++++++++++++++---
+ src/CMakeLists.txt | 13 +------------
+ 2 files changed, 16 insertions(+), 15 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9ec74a5..a05231b 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -39,9 +39,6 @@ find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} REQUIRED COMPONENTS
+ Xml
+ XmlPatterns
+ )
+-if (QT_MAJOR_VERSION STREQUAL "5")
+-find_package(Qt5X11Extras)
+-endif()
+ find_package(Qt${QT_MAJOR_VERSION} CONFIG QUIET OPTIONAL_COMPONENTS QuickCompiler)
+
+ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
+@@ -62,6 +59,21 @@ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
+
+
+ option(COMPILE_QML "Precompile QML code" OFF)
++option(WITHOUT_X11 "Build without X11 Keyboard Layout Detection (skips finding X11)" OFF)
++
++if (NOT WITHOUT_X11)
++ find_package(X11)
++ find_package(XCB OPTIONAL_COMPONENTS XCB XKB)
++ if (QT_MAJOR_VERSION STREQUAL "5")
++ find_package(Qt5X11Extras ${QT_MIN_VERSION} CONFIG)
++ endif()
++
++ if (Qt5X11Extras_FOUND AND X11_FOUND AND X11_Xkbfile_FOUND AND X11_Xkb_FOUND AND XCB_FOUND AND XCB_XKB_FOUND)
++ set(KTOUCH_BUILD_WITH_X11 TRUE)
++ endif()
++
++ add_feature_info ("Keyboard Layout Detection" KTOUCH_BUILD_WITH_X11 "needs Qt5X11Extras, libX11, libxkb, libxkbfile, libxcb, and libxcb-xkb")
++endif()
+
+ # enable QML debugging for debug builds
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_QML_DEBUG")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index cb6f3f5..9dd2a5f 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -4,15 +4,6 @@ ecm_setup_version(${RELEASE_SERVICE_VERSION}
+ PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KTouchConfigVersion.cmake"
+ )
+
+-find_package(X11)
+-find_package(XCB OPTIONAL_COMPONENTS XCB XKB)
+-
+-if (Qt5X11Extras_FOUND AND X11_FOUND AND X11_Xkbfile_FOUND AND X11_Xkb_FOUND AND XCB_FOUND AND XCB_XKB_FOUND)
+- set(KTOUCH_BUILD_WITH_X11 TRUE)
+-endif()
+-
+-add_feature_info ("Keyboard Layout Detection" KTOUCH_BUILD_WITH_X11 "needs Qt5X11Extras, libX11, libxkb, libxkbfile, libxcb, and libxcb-xkb")
+-
+ ecm_optional_add_subdirectory(schemata)
+
+ # set include directories
+@@ -137,9 +128,7 @@ set(ktouch_SRCS
+ undocommands/coursecommands.cpp
+ undocommands/coursecommands.h
+ undocommands/keyboardlayoutcommands.cpp
+- undocommands/keyboardlayoutcommands.h
+- x11_helper.cpp
+- x11_helper.h)
++ undocommands/keyboardlayoutcommands.h)
+
+ qt_add_resources(ktouch_imgs_SRCS images/images.qrc)
+
+--
+GitLab
+
diff --git a/kde-apps/ktouch/ktouch-22.08.0.ebuild b/kde-apps/ktouch/ktouch-22.08.0.ebuild
new file mode 100644
index 000000000000..328f04d9fc22
--- /dev/null
+++ b/kde-apps/ktouch/ktouch-22.08.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="forceoptional"
+PVCUT=$(ver_cut 1-3)
+KFMIN=5.96.0
+QTMIN=5.15.5
+inherit ecm gear.kde.org
+
+DESCRIPTION="Program that helps to learn and practice touch typing"
+HOMEPAGE="https://apps.kde.org/ktouch/"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="X"
+
+COMMON_DEPEND="
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtquickcontrols2-${QTMIN}:5
+ >=dev-qt/qtsql-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=dev-qt/qtxmlpatterns-${QTMIN}:5
+ >=kde-frameworks/kcmutils-${KFMIN}:5
+ >=kde-frameworks/kcompletion-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kitemviews-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/ktextwidgets-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ X? (
+ >=dev-qt/qtx11extras-${QTMIN}:5
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libxcb[xkb]
+ x11-libs/libxkbfile
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+"
+RDEPEND="${COMMON_DEPEND}
+ >=dev-qt/qtgraphicaleffects-${QTMIN}:5
+ >=kde-apps/kqtquickcharts-${PVCUT}:5
+"
+
+PATCHES=( "${FILESDIR}/${PN}-22.07.90-without_x11.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ -DCOMPILE_QML=OFF
+ -DWITHOUT_X11=$(usex !X)
+ )
+ ecm_src_configure
+}