summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/qtbase-find-tools-in-PATH.patch
diff options
context:
space:
mode:
authorZheng Junjie <zhengjunjie@iscas.ac.cn>2024-03-13 16:57:55 +0800
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2024-04-03 18:05:06 -0400
commit074ddc321c00cfb1bd1a784ce6ee60a20e518bcd (patch)
treec51ec5b8270b8282abc18207c1245fd3a519da80 /gnu/packages/patches/qtbase-find-tools-in-PATH.patch
parent629614c7a3f9283306939402f1ff46914f327c21 (diff)
gnu: qtbase: Update to 6.6.2.
* gnu/packages/qt.scm (qtbase): Update to 6.6.2. [source]: Unbundle pcre2, md4c. Remove qtbase-use-TZDIR.patch. Add qtbase-find-tools-in-PATH.patch, qtbase-qmake-fix-includedir.patch, [arguments]<#:phases>: Adjust 'patch-more-paths phase, skip tst_selftests test. [inputs]: Add libb2 * gnu/packages/patches/qtbase-use-TZDIR.patch: Remove this. * gnu/packages/patches/qtbase-find-tools-in-PATH.patch: New file. * gnu/packages/patches/qtbase-qmake-fix-includedir.patch: New file. * gnu/local.mk (dist_patch_DATA): Remove qtbase-use-TZDIR.patch. Register qtbase-find-tools-in-PATH.patch, qtbase-qmake-fix-includedir.patch. Change-Id: I72af9c8f2e930bcae18f36ceca18a0a53f5c3e15 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Diffstat (limited to 'gnu/packages/patches/qtbase-find-tools-in-PATH.patch')
-rw-r--r--gnu/packages/patches/qtbase-find-tools-in-PATH.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/gnu/packages/patches/qtbase-find-tools-in-PATH.patch b/gnu/packages/patches/qtbase-find-tools-in-PATH.patch
new file mode 100644
index 0000000000..d5e38b09be
--- /dev/null
+++ b/gnu/packages/patches/qtbase-find-tools-in-PATH.patch
@@ -0,0 +1,49 @@
+Patch retrieved from NixOS
+
+https://github.com/NixOS/nixpkgs/blob/93ecdaa1f34354c9476062dc4fe323b442c087d5/pkgs/development/libraries/qt-6/patches/0006-qtbase-find-tools-in-PATH.patch
+
+From a8b9fae710a2bd5e743f5e16364eaa8c38dbd784 Mon Sep 17 00:00:00 2001
+From: rewine <luhongxu@deepin.org>
+Date: Wed, 29 Mar 2023 11:51:33 +0800
+Subject: [PATCH 06/11] qtbase-find-tools-in-PATH
+
+1. find qt's tools in `QTTOOLSPATH` env
+ qt assumes that all components use the same install prefix
+ we can't get the real prefix for qttools when build qtbase
+ we will add /libexec to `QTTOOLSPATH` in qtToolsHook
+ find_path will also search in 'PATH' by default
+ see `CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH`
+
+2. disable tool_dependencies_enabled
+ We can guarantee the build order of qt components in nixpkgs
+ tools in qttools always build before qtdoc
+ qdoc_bin is not a build target now, since we find it in `QTTOOLSPATH`
+---
+ cmake/QtDocsHelpers.cmake | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/cmake/QtDocsHelpers.cmake b/cmake/QtDocsHelpers.cmake
+index 48ed5a324bf..91d8d41fb1f 100644
+--- a/cmake/QtDocsHelpers.cmake
++++ b/cmake/QtDocsHelpers.cmake
+@@ -47,9 +47,14 @@ function(qt_internal_add_docs)
+ set(doc_tools_libexec "${QT_BUILD_INTERNALS_RELOCATABLE_INSTALL_PREFIX}/${INSTALL_LIBEXECDIR}")
+ endif()
+
+- set(qdoc_bin "${doc_tools_bin}/qdoc${CMAKE_EXECUTABLE_SUFFIX}")
+- set(qtattributionsscanner_bin "${doc_tools_libexec}/qtattributionsscanner${CMAKE_EXECUTABLE_SUFFIX}")
+- set(qhelpgenerator_bin "${doc_tools_libexec}/qhelpgenerator${CMAKE_EXECUTABLE_SUFFIX}")
++ set(tool_dependencies_enabled FALSE)
++
++ find_path(qdoc_path name qdoc PATHS ENV QTTOOLSPATH)
++ find_path(qtattributionsscanner_path name qtattributionsscanner PATHS ENV QTTOOLSPATH)
++ find_path(qhelpgenerator_path name qhelpgenerator PATHS ENV QTTOOLSPATH)
++ set(qdoc_bin "${qdoc_path}/qdoc${CMAKE_EXECUTABLE_SUFFIX}")
++ set(qtattributionsscanner_bin "${qtattributionsscanner_path}/qtattributionsscanner${CMAKE_EXECUTABLE_SUFFIX}")
++ set(qhelpgenerator_bin "${qhelpgenerator_path}/qhelpgenerator${CMAKE_EXECUTABLE_SUFFIX}")
+
+ get_target_property(target_type ${target} TYPE)
+ if (NOT target_type STREQUAL "INTERFACE_LIBRARY")
+--
+2.42.0
+