summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-04-19 23:21:46 +0200
committerLudovic Courtès <ludo@gnu.org>2023-04-19 23:21:46 +0200
commit0e2e7c7554ca5dc6b4f547e61d97e2d5b07f7799 (patch)
tree5ac56b81e420aa61751ea47f430ba0bba81eb390
parent3d1b93db65423eb51e37c81d4bcc1243251ce3ae (diff)
gnu: python-shiboken-2: Fix compilation with Python 3.10.
* gnu/packages/patches/python-shiboken-2-compat.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/qt.scm (python-shiboken-2): Use it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/python-shiboken-2-compat.patch16
-rw-r--r--gnu/packages/qt.scm5
3 files changed, 20 insertions, 2 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 486adca929..dd4b0e890e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1667,6 +1667,7 @@ dist_patch_DATA = \
%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-shiboken-2-compat.patch \
%D%/packages/patches/python-telingo-fix-comparison.patch \
%D%/packages/patches/python-typeguard-python3.10.patch \
%D%/packages/patches/python-w3lib-fix-test-failure.patch \
diff --git a/gnu/packages/patches/python-shiboken-2-compat.patch b/gnu/packages/patches/python-shiboken-2-compat.patch
new file mode 100644
index 0000000000..0c7de64395
--- /dev/null
+++ b/gnu/packages/patches/python-shiboken-2-compat.patch
@@ -0,0 +1,16 @@
+Provide a declaration that's missing in Python 3.10.
+
+--- pyside-setup-opensource-src-5.15.8/sources/shiboken2/libshiboken/sbkpython.h 2023-04-19 23:14:11.415337435 +0200
++++ pyside-setup-opensource-src-5.15.8/sources/shiboken2/libshiboken/sbkpython.h 2023-04-19 23:18:09.055605606 +0200
+@@ -108,6 +108,11 @@ extern "C" {
+ #if PY_MAJOR_VERSION >= 3
+ #define IS_PY3K
+
++extern "C" {
++ /* In Python 3.10 this declaration is not provided by <Python.h>. */
++ extern PyObject* _Py_Mangle(PyObject *p, PyObject *name);
++}
++
+ #define PyInt_Type PyLong_Type
+ #define PyInt_Check PyLong_Check
+ #define PyInt_CheckExact PyLong_CheckExact
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 205cacc580..61a81a12df 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
-;;; Copyright © 2015, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2018, 2019, 2020, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
@@ -3921,7 +3921,8 @@ color-related widgets.")
version ".tar.xz"))
(sha256
(base32
- "0pbbdypwkn3vrgy8ww207fl8pqq4jv80bck9qz5v9dfyr0166hr3"))))
+ "0pbbdypwkn3vrgy8ww207fl8pqq4jv80bck9qz5v9dfyr0166hr3"))
+ (patches (search-patches "python-shiboken-2-compat.patch"))))
(build-system cmake-build-system)
(inputs
(list clang-toolchain