summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/python-sip-include-dirs.patch20
-rw-r--r--gnu/packages/qt.scm7
3 files changed, 25 insertions, 3 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index d211db22c9..525deeae68 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1648,6 +1648,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-random2-getrandbits-test.patch		\
   %D%/packages/patches/python-poppler-qt5-fix-build.patch	\
   %D%/packages/patches/python-pypdf-annotate-tests-appropriately.patch	\
+  %D%/packages/patches/python-sip-include-dirs.patch	\
   %D%/packages/patches/python-sgmllib3k-assertions.patch	\
   %D%/packages/patches/python-telingo-fix-comparison.patch	\
   %D%/packages/patches/python-typeguard-python3.10.patch	\
diff --git a/gnu/packages/patches/python-sip-include-dirs.patch b/gnu/packages/patches/python-sip-include-dirs.patch
new file mode 100644
index 0000000000..f2ef8fc1b2
--- /dev/null
+++ b/gnu/packages/patches/python-sip-include-dirs.patch
@@ -0,0 +1,20 @@
+Add an environment variable to python-sip that extends its search
+directories for .sip files.
+
+It seems that we cannot easily change the destination folder of these
+files though, so this variable must be set on a per-package basis (and
+non through search-path).
+
+--- sip/sipbuild/builder.py	2023-03-22 09:06:37.588792878 +0100
++++ sip/sipbuild/builder.py	2023-03-22 09:10:35.830181134 +0100
+@@ -254,6 +254,10 @@
+                     os.path.join(project.target_dir,
+                             project.get_bindings_dir()))
+ 
++            # Add extra bindings from environment for GNU Guix.
++            if 'SIP_INCLUDE_DIRS' in os.environ:
++                sip_include_dirs.extend(os.environ['SIP_INCLUDE_DIRS'].split(os.pathsep))
++
+             # Generate the sip.h file for the shared sip module.
+             copy_sip_h(abi_major_version, project.build_dir,
+                     project.sip_module, version_info=project.version_info)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index eaedf97371..d06ef6bccc 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -3196,7 +3196,7 @@ instances.")
 (define-public python-sip
   (package
     (name "python-sip")
-    (version "5.5.0")
+    (version "6.7.7")
     (source
       (origin
         (method url-fetch)
@@ -3206,12 +3206,13 @@ instances.")
                                   "/sip-" version ".tar.gz")))
         (sha256
          (base32
-          "1idaivamp1jvbbai9yzv471c62xbqxhaawccvskaizihkd0lq0jx"))))
+          "1qm9q9lhfky5zvxxkssf4zdfv5k1zikji4hz80d48vdfm1pw1sfy"))
+        (patches (search-patches "python-sip-include-dirs.patch"))))
     (build-system python-build-system)
     (native-inputs
      (list python-wrapper))
     (propagated-inputs
-     (list python-toml python-packaging))
+     (list python-toml python-packaging python-ply))
     (home-page "https://www.riverbankcomputing.com/software/sip/intro")
     (synopsis "Python binding creator for C and C++ libraries")
     (description