gnu: python-pyside-2: Fix detection of Qt modules.
* gnu/packages/qt.scm (python-pyside-2)[inputs]: Add qtdeclarative, qtquickcontrols2 and qtwebengine. [arguments]: Add 'fix-qt-module-detection' phase.
This commit is contained in:
parent
73e4660020
commit
176354c2f8
@ -21,7 +21,7 @@
|
|||||||
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
|
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
|
||||||
;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
|
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
|
||||||
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
|
;;; Copyright © 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
|
||||||
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
|
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
@ -2878,15 +2878,18 @@ color-related widgets.")
|
|||||||
clang-toolchain
|
clang-toolchain
|
||||||
qtbase-5
|
qtbase-5
|
||||||
qtdatavis3d
|
qtdatavis3d
|
||||||
|
qtdeclarative
|
||||||
qtlocation
|
qtlocation
|
||||||
qtmultimedia
|
qtmultimedia
|
||||||
qtquickcontrols
|
qtquickcontrols
|
||||||
|
qtquickcontrols2
|
||||||
qtscript
|
qtscript
|
||||||
qtscxml
|
qtscxml
|
||||||
qtsensors
|
qtsensors
|
||||||
qtspeech
|
qtspeech
|
||||||
qtsvg
|
qtsvg
|
||||||
qtwebchannel
|
qtwebchannel
|
||||||
|
qtwebengine
|
||||||
qtwebsockets
|
qtwebsockets
|
||||||
qtx11extras
|
qtx11extras
|
||||||
qtxmlpatterns))
|
qtxmlpatterns))
|
||||||
@ -2905,10 +2908,51 @@ color-related widgets.")
|
|||||||
(string-append "-DPYTHON_EXECUTABLE="
|
(string-append "-DPYTHON_EXECUTABLE="
|
||||||
(assoc-ref %build-inputs "python")
|
(assoc-ref %build-inputs "python")
|
||||||
"/bin/python"))
|
"/bin/python"))
|
||||||
|
#:modules ((guix build cmake-build-system)
|
||||||
|
(guix build utils)
|
||||||
|
(srfi srfi-1))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'go-to-source-dir
|
(add-after 'unpack 'go-to-source-dir
|
||||||
(lambda _ (chdir "sources/pyside2") #t))
|
(lambda _ (chdir "sources/pyside2") #t))
|
||||||
|
(add-after 'go-to-source-dir 'fix-qt-module-detection
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
;; Activate qt module support even if it not in the same
|
||||||
|
;; directory as qtbase.
|
||||||
|
(substitute* "../cmake_helpers/helpers.cmake"
|
||||||
|
(("\\(\"\\$\\{found_basepath\\}\" GREATER \"0\"\\)")
|
||||||
|
"true"))
|
||||||
|
;; Add include directories for qt modules.
|
||||||
|
(let ((dirs (map (lambda (name)
|
||||||
|
(string-append (assoc-ref inputs name)
|
||||||
|
"/include/qt5"))
|
||||||
|
'("qtdatavis3d"
|
||||||
|
"qtdeclarative"
|
||||||
|
"qtlocation"
|
||||||
|
"qtmultimedia"
|
||||||
|
"qtquickcontrols"
|
||||||
|
"qtquickcontrols2"
|
||||||
|
"qtscript"
|
||||||
|
"qtscxml"
|
||||||
|
"qtsensors"
|
||||||
|
"qtspeech"
|
||||||
|
"qtsvg"
|
||||||
|
"qttools"
|
||||||
|
"qtwebchannel"
|
||||||
|
"qtwebengine"
|
||||||
|
"qtwebsockets"
|
||||||
|
"qtx11extras"
|
||||||
|
"qtxmlpatterns"))))
|
||||||
|
(substitute* "cmake/Macros/PySideModules.cmake"
|
||||||
|
(("\\$\\{PATH_SEP\\}\\$\\{core_includes\\}" all)
|
||||||
|
(fold (lambda (dir paths)
|
||||||
|
(string-append paths "${PATH_SEP}" dir))
|
||||||
|
all
|
||||||
|
dirs)))
|
||||||
|
(setenv "CXXFLAGS" (fold (lambda (dir paths)
|
||||||
|
(string-append paths " -I" dir))
|
||||||
|
""
|
||||||
|
dirs)))))
|
||||||
(add-before 'configure 'set-clang-dir
|
(add-before 'configure 'set-clang-dir
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let ((clang (assoc-ref inputs "clang-toolchain")))
|
(let ((clang (assoc-ref inputs "clang-toolchain")))
|
||||||
|
Loading…
Reference in New Issue
Block a user