[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/23: gnu: qtbase: Use a more standard directory layout.
From: |
Hartmut Goebel |
Subject: |
01/23: gnu: qtbase: Use a more standard directory layout. |
Date: |
Fri, 22 Sep 2017 08:55:29 -0400 (EDT) |
htgoebel pushed a commit to branch wip-qt-paths
in repository guix.
commit d3e5a23212673a624e2e4394ada10b9b3e504e8d
Author: 宋文武 <address@hidden>
Date: Fri Aug 25 22:52:41 2017 +0800
gnu: qtbase: Use a more standard directory layout.
* gnu/packages/qt.scm (qtbase)[arguments]: Pass docdir, headerdir,
archdatadir, datadir and examplesdir to 'configure'. Ajdust the
patch-qt_config.prf phase accordingly.
[native-search-paths]: Adjust accordingly.
(qtwayland)[arguments]: New field.
Co-authored-by: Hartmut Goebel <address@hidden>
---
gnu/packages/qt.scm | 43 +++++++++++++++++++++++++++----------------
1 file changed, 27 insertions(+), 16 deletions(-)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 3e3588a..80508f0 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -459,6 +459,12 @@ developers using C++ or QML, a CSS & JavaScript like
language.")
"./configure"
"-verbose"
"-prefix" out
+ "-docdir" (string-append out "/share/doc/qt5")
+ "-headerdir" (string-append out "/include/qt5")
+ "-archdatadir" (string-append out "/lib/qt5")
+ "-datadir" (string-append out "/share/qt5")
+ "-examplesdir" (string-append
+ out "/share/doc/qt5/examples")
"-opensource"
"-confirm-license"
;; Do not build examples; if desired, these could go
@@ -488,38 +494,31 @@ developers using C++ or QML, a CSS & JavaScript like
language.")
(add-after 'install 'patch-qt_config.prf
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
+ (mkspecs (string-append out "/lib/qt5/mkspecs"))
(qt_config.prf (string-append
- out "/mkspecs/features/qt_config.prf")))
+ 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)")
+ "$$clean_path($$replace(dir, mkspecs/modules,
../../include/qt5))")
(("\\$\\$\\[QT_INSTALL_LIBS\\]")
- "$$replace(dir, mkspecs/modules, lib)")
+ "$$clean_path($$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)")
+ "$$clean_path($$replace(dir, mkspecs/modules, ../../lib))")
(("\\$\\$\\[QT_INSTALL_BINS\\]")
- "$$replace(dir, mkspecs/modules, bin)")
- (("\\$\\$\\[QT_INSTALL_IMPORTS\\]")
- "$$replace(dir, mkspecs/modules, imports)")
- (("\\$\\$\\[QT_INSTALL_QML\\]")
- "$$replace(dir, mkspecs/modules, qml)"))
+ "$$clean_path($$replace(dir, mkspecs/modules, ../../bin))"))
#t))))))
(native-search-paths
(list (search-path-specification
(variable "QMAKEPATH")
- (files '("")))
+ (files '("lib/qt5")))
(search-path-specification
(variable "QML2_IMPORT_PATH")
- (files '("qml")))
+ (files '("lib/qt5/qml")))
(search-path-specification
(variable "QT_PLUGIN_PATH")
- (files '("plugins")))
+ (files '("lib/qt5/plugins")))
(search-path-specification
(variable "XDG_DATA_DIRS")
(files '("share")))
@@ -805,6 +804,18 @@ developers using C++ or QML, a CSS & JavaScript like
language.")
(snippet
;; The examples try to build and cause the build to fail
'(delete-file-recursively "examples"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments qtsvg)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'check 'set-ld-library-path
+ ;;
<https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00019.html>
+ ;;
+ ;; Make the uninstalled libQt5WaylandClient.so.5 available to the
+ ;; wayland platform plugin.
+ (lambda _
+ (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/lib"))
+ #t))))))
(native-inputs
`(("glib" ,glib)
("perl" ,perl)
- 07/23: gnu: qtkeychain: Reduce the number of warnings when configuring., (continued)
- 07/23: gnu: qtkeychain: Reduce the number of warnings when configuring., Hartmut Goebel, 2017/09/22
- 18/23: gnu: kparts: Make tests pass again., Hartmut Goebel, 2017/09/22
- 13/23: gnu: phonon: Enable building the Qt Designer plugin., Hartmut Goebel, 2017/09/22
- 17/23: gnu: bluez-qt: Add comment about status of tests., Hartmut Goebel, 2017/09/22
- 16/23: gnu: bluez-qt: Install udev-rules., Hartmut Goebel, 2017/09/22
- 12/23: gnu: kdesignerplugin: Add optional inputs., Hartmut Goebel, 2017/09/22
- 08/23: gnu: Update prison to 5.37.0., Hartmut Goebel, 2017/09/22
- 11/23: gnu: kwallet: Add optional input qgpgme., Hartmut Goebel, 2017/09/22
- 14/23: gnu: kdnssd: Enable service discovery on local network via avahi., Hartmut Goebel, 2017/09/22
- 22/23: gnu: kglobalaccel: Reduce the number of warnings when configuring., Hartmut Goebel, 2017/09/22
- 01/23: gnu: qtbase: Use a more standard directory layout.,
Hartmut Goebel <=
- 09/23: gnu: kcoreaddons: Add native-input shared-mime-info and a comment., Hartmut Goebel, 2017/09/22
- 15/23: gnu: kfilemetadata: Enable support for PDF files and audio files., Hartmut Goebel, 2017/09/22
- 19/23: gnu: kio: Remove unused input acl., Hartmut Goebel, 2017/09/22
- 20/23: gnu: kidletime: Enable fallback mode to X-Screensaver based poller., Hartmut Goebel, 2017/09/22
- 21/23: gnu: sonnet: Reduce the number of warnings when configuring., Hartmut Goebel, 2017/09/22
- 23/23: gnu: kdeclarative: Reduce the number of warnings when configuring., Hartmut Goebel, 2017/09/22