From 5ca6ef95f4299524117743974d8dfd8dde442ba5 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 14 Aug 2016 14:14:11 +0800 Subject: gnu: qtbase: Add search path specification for 'QMAKEPATH'. * gnu/packages/qt.scm (qtbase)[native-search-paths]: New field. [arguments]: Add phase to patch 'qt_config.prf'. --- gnu/packages/qt.scm | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index a35c33724a..a12c526d4a 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -445,7 +445,36 @@ developers using C++ or QML, a CSS & JavaScript like language.") "-no-avx" "-no-avx2" "-no-mips_dsp" - "-no-mips_dspr2")))))))) + "-no-mips_dspr2"))))) + (add-after 'install 'patch-qt_config.prf + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (qt_config.prf (string-append + out "/mkspecs/features/qt_config.prf"))) + ;; For each Qt module, let `qmake' uses search paths in the + ;; module directory instead of all in QT_INSTALL_PREFIX. + (substitute* qt_config.prf + (("\\$\\$\\[QT_INSTALL_HEADERS\\]") + "$$replace(dir, mkspecs/modules, include)") + (("\\$\\$\\[QT_INSTALL_LIBS\\]") + "$$replace(dir, mkspecs/modules, lib)") + (("\\$\\$\\[QT_HOST_LIBS\\]") + "$$replace(dir, mkspecs/modules, lib)") + (("\\$\\$\\[QT_INSTALL_PLUGINS\\]") + "$$replace(dir, mkspecs/modules, plugins)") + (("\\$\\$\\[QT_INSTALL_LIBEXECS\\]") + "$$replace(dir, mkspecs/modules, libexec)") + (("\\$\\$\\[QT_INSTALL_BINS\\]") + "$$replace(dir, mkspecs/modules, bin)") + (("\\$\\$\\[QT_INSTALL_IMPORTS\\]") + "$$replace(dir, mkspecs/modules, imports)") + (("\\$\\$\\[QT_INSTALL_QML\\]") + "$$replace(dir, mkspecs/modules, qml)")) + #t)))))) + (native-search-paths + (list (search-path-specification + (variable "QMAKEPATH") + (files '(""))))) (home-page "https://www.qt.io/") (synopsis "Cross-platform GUI library") (description "Qt is a cross-platform application and UI framework for -- cgit v1.2.3