summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2023-05-10 18:00:37 +0200
committerGuillaume Le Vaillant <glv@posteo.net>2023-05-10 18:00:37 +0200
commite2eb43f945fd467e9b55a4b3c91cd186cf32e268 (patch)
tree4286ba1b97782dfef1d469f54ad5d219c9f99d04 /gnu
parente0c35d1578c10a8fe27c8372f3a8bb5dd88b01b8 (diff)
downloadguix-e2eb43f945fd467e9b55a4b3c91cd186cf32e268.tar.gz
gnu: python-shiboken-2: Add fix for python-pyside-2.
* gnu/packages/qt.scm (python-shiboken-2)[arguments]: Add
  'workaround-importlib-error' phase.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/qt.scm15
1 files changed, 14 insertions, 1 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 913470c9d3..1e5d29d9cf 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -3955,7 +3955,20 @@ color-related widgets.")
           (add-before 'configure 'set-build-env
             (lambda _
               (let ((llvm #$(this-package-input "clang-toolchain")))
-                (setenv "CLANG_INSTALL_DIR" llvm)))))))
+                (setenv "CLANG_INSTALL_DIR" llvm))))
+          (add-before 'configure 'workaround-importlib-error
+            (lambda _
+              ;; The following hack works around the error
+              ;;   "module 'importlib' has no attribute 'machinery'"
+              ;; when building python-pyside-2, which depends on
+              ;; this package.
+              (substitute* "libshiboken/embed/signature_bootstrap.py"
+                (("import importlib" all)
+                 (string-append
+                  all
+                  "\n        import importlib.machinery as imachi"))
+                (("importlib.machinery.ModuleSpec")
+                 "imachi.ModuleSpec")))))))
     (home-page "https://wiki.qt.io/Qt_for_Python")
     (synopsis
      "Shiboken generates bindings for C++ libraries using CPython source code")