[arch-commits] Commit in shiboken2/trunk (PKGBUILD python310.patch)
Antonio Rojas
arojas at gemini.archlinux.org
Fri Jan 14 08:24:36 UTC 2022
Date: Friday, January 14, 2022 @ 08:24:35
Author: arojas
Revision: 434435
Update to 5.15.2.1
Modified:
shiboken2/trunk/PKGBUILD
shiboken2/trunk/python310.patch
-----------------+
PKGBUILD | 24 +++++-----
python310.patch | 118 ++----------------------------------------------------
2 files changed, 17 insertions(+), 125 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2022-01-14 08:22:00 UTC (rev 434434)
+++ PKGBUILD 2022-01-14 08:24:35 UTC (rev 434435)
@@ -3,7 +3,7 @@
pkgbase=shiboken2
pkgname=(shiboken2 python-shiboken2)
-_qtver=5.15.2
+_qtver=5.15.2.1
_clangver=13.0.0
pkgver=${_qtver/-/}
pkgrel=13
@@ -11,21 +11,15 @@
url='https://www.qt.io'
license=(GPL2 LGPL)
pkgdesc='Generates bindings for C++ libraries using CPython source code'
-makedepends=(clang llvm cmake libxslt qt5-xmlpatterns python-sphinx
- python-wheel)
+makedepends=(clang llvm cmake libxslt qt5-xmlpatterns python-sphinx python-wheel)
_pkgfqn=pyside-setup-opensource-src-$_qtver
-source=("https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-$pkgver-src/${_pkgfqn}.tar.xz"
+source=(https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-$pkgver-src/${_pkgfqn}.tar.gz
python310.patch)
-sha256sums=('b306504b0b8037079a8eab772ee774b9e877a2d84bab2dbefbe4fa6f83941418'
- '04d4a4205e9a03d31032bf9979855d7644402466b83dccd53d4239d745c42f54')
+sha256sums=('91e78e4e3b31ebb0053c2e4f1029703e578615695450c0dd03072248d713b391'
+ '20da52cf2a17da606a2d3aa82eb5ff3ccdb2367b7415289e1e33ac071a73d35b')
-prepare() {
- cd ${_pkgfqn}
- patch -Np1 -i ../python310.patch
-}
-
build() {
- cmake -B build -S ${_pkgfqn}/sources/shiboken2 \
+ cmake -B build -S ${_pkgfqn%.*}/sources/shiboken2 \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_TESTS=OFF \
-DUSE_PYTHON_VERSION=3
@@ -32,6 +26,10 @@
cmake --build build
}
+prepare() {
+ patch -d ${_pkgfqn%.*} -p1 -i ../python310.patch # Fix build with Python 3.10
+}
+
package_shiboken2() {
depends=(clang=$_clangver llvm libxslt qt5-xmlpatterns)
@@ -50,7 +48,7 @@
rm -r "$pkgdir"/usr/{bin,include,lib/{cmake,pkgconfig}}
# Install egg-info
- cd $_pkgfqn
+ cd ${_pkgfqn%.*}
python setup.py egg_info --build-type=shiboken2
_pythonpath=`python -c "from sysconfig import get_path; print(get_path('platlib'))"`
cp -r shiboken2.egg-info "$pkgdir"/$_pythonpath
Modified: python310.patch
===================================================================
--- python310.patch 2022-01-14 08:22:00 UTC (rev 434434)
+++ python310.patch 2022-01-14 08:24:35 UTC (rev 434435)
@@ -1,119 +1,13 @@
-# Based on:
-# https://github.com/pyside/pyside-setup/commit/81e9cff884d6
-# https://github.com/pyside/pyside-setup/commit/2530cb3f165a
-
-diff -upr pyside-setup-opensource-src-5.15.2.orig/build_scripts/config.py pyside-setup-opensource-src-5.15.2/build_scripts/config.py
---- pyside-setup-opensource-src-5.15.2.orig/build_scripts/config.py 2020-11-11 14:51:30.000000000 +0200
-+++ pyside-setup-opensource-src-5.15.2/build_scripts/config.py 2021-12-01 15:15:52.323808457 +0200
-@@ -93,6 +93,7 @@ class Config(object):
- 'Programming Language :: Python :: 3.7',
- 'Programming Language :: Python :: 3.8',
- 'Programming Language :: Python :: 3.9',
-+ 'Programming Language :: Python :: 3.10',
- ]
-
- self.setup_script_dir = None
diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.cpp pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.cpp
--- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.cpp 2020-11-11 14:51:30.000000000 +0200
+++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.cpp 2021-12-01 15:17:21.444888977 +0200
-@@ -751,14 +751,14 @@ _Pep_PrivateMangle(PyObject *self, PyObj
+@@ -751,7 +751,7 @@ _Pep_PrivateMangle(PyObject *self, PyObj
#endif // IS_PY2
Shiboken::AutoDecRef privateobj(PyObject_GetAttr(
reinterpret_cast<PyObject *>(Py_TYPE(self)), Shiboken::PyMagicName::name()));
-#ifndef Py_LIMITED_API
-- return _Py_Mangle(privateobj, name);
--#else
-- // For some reason, _Py_Mangle is not in the Limited API. Why?
-- size_t plen = PyUnicode_GET_LENGTH(privateobj);
-+
-+ // PYSIDE-1436: _Py_Mangle is no longer exposed; implement it always.
-+ // The rest of this function is our own implementation of _Py_Mangle.
-+ // Please compare the original function in compile.c .
-+ size_t plen = PyUnicode_GET_LENGTH(privateobj.object());
- /* Strip leading underscores from class name */
- size_t ipriv = 0;
-- while (PyUnicode_READ_CHAR(privateobj, ipriv) == '_')
-+ while (PyUnicode_READ_CHAR(privateobj.object(), ipriv) == '_')
- ipriv++;
- if (ipriv == plen) {
- Py_INCREF(name);
-@@ -787,7 +787,6 @@ _Pep_PrivateMangle(PyObject *self, PyObj
- if (amount > big_stack)
- free(resbuf);
- return result;
--#endif // else Py_LIMITED_API
- }
-
- /*****************************************************************************
-diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.h pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.h
---- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/pep384impl.h 2020-11-11 14:51:30.000000000 +0200
-+++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/pep384impl.h 2021-12-01 15:13:58.899521842 +0200
-@@ -40,6 +40,11 @@
- #ifndef PEP384IMPL_H
- #define PEP384IMPL_H
-
-+// PYSIDE-1436: Adapt to Python 3.10
-+#if PY_VERSION_HEX < 0x030900A4
-+# define Py_SET_REFCNT(obj, refcnt) ((Py_REFCNT(obj) = (refcnt)), (void)0)
-+#endif
-+
- extern "C"
- {
-
-@@ -327,7 +332,7 @@ LIBSHIBOKEN_API PyObject *PyRun_String(c
- // But this is no problem as we check it's validity for every version.
-
- #define PYTHON_BUFFER_VERSION_COMPATIBLE (PY_VERSION_HEX >= 0x03030000 && \
-- PY_VERSION_HEX < 0x0309FFFF)
-+ PY_VERSION_HEX < 0x030AFFFF)
- #if !PYTHON_BUFFER_VERSION_COMPATIBLE
- # error Please check the buffer compatibility for this python version!
- #endif
-diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/sbkstring.cpp pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/sbkstring.cpp
---- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/libshiboken/sbkstring.cpp 2020-11-11 14:51:30.000000000 +0200
-+++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/libshiboken/sbkstring.cpp 2021-12-01 15:14:47.703201473 +0200
-@@ -247,7 +247,7 @@ static void finalizeStaticStrings()
- {
- auto &set = staticStrings();
- for (PyObject *ob : set) {
-- Py_REFCNT(ob) = 1;
-+ Py_SET_REFCNT(ob, 1);
- Py_DECREF(ob);
- }
- set.clear();
-diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py
---- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py 2020-11-11 14:51:30.000000000 +0200
-+++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/mapping.py 2021-12-01 15:15:14.560100869 +0200
-@@ -300,6 +300,7 @@ type_map.update({
- "zero(object)": None,
- "zero(str)": "",
- "zero(typing.Any)": None,
-+ "zero(Any)": None,
- })
-
- type_map.update({
-diff -upr pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py
---- pyside-setup-opensource-src-5.15.2.orig/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py 2020-11-11 14:51:30.000000000 +0200
-+++ pyside-setup-opensource-src-5.15.2/sources/shiboken2/shibokenmodule/files.dir/shibokensupport/signature/parser.py 2021-12-01 15:25:43.267843740 +0200
-@@ -43,10 +43,11 @@ import sys
- import re
- import warnings
- import types
-+import typing
- import keyword
- import functools
- from shibokensupport.signature.mapping import (type_map, update_mapping,
-- namespace, typing, _NotCalled, ResultVariable, ArrayLikeVariable)
-+ namespace, _NotCalled, ResultVariable, ArrayLikeVariable)
- from shibokensupport.signature.lib.tool import (SimpleNamespace,
- build_brace_pattern)
-
-@@ -222,7 +223,7 @@ def _resolve_arraytype(thing, line):
- def to_string(thing):
- if isinstance(thing, str):
- return thing
-- if hasattr(thing, "__name__"):
-+ if hasattr(thing, "__name__") and thing.__module__ != "typing":
- dot = "." in str(thing)
- name = get_name(thing)
- return thing.__module__ + "." + name if dot else name
++#if 0
+ return _Py_Mangle(privateobj, name);
+ #else
+ // PYSIDE-1436: _Py_Mangle is no longer exposed; implement it always.
+
More information about the arch-commits
mailing list