mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-08-05 21:37:15 +02:00
community/py3-wxpython: rebuild against wxwidgets
This regenerates the sip bindings for wxwidgets as part of the build process, fixing a segfault when using kikit from py3-kikit for panelization: 0 0x00007ff4a9d551e0 in _PyInterpreterState_GET () at ./Include/internal/pycore_pystate.h:133 1 get_state () at Objects/obmalloc.c:866 2 _PyObject_Free (ctx=<optimized out>, p=0x7ff40fd0e160) at Objects/obmalloc.c:1850 3 0x00007ff40fd2416f in ??? () at /usr/lib/python3.12/site-packages/wx/siplib.cpython-312-x86_64-linux-musl.so 4 0x00007ff4a9cb195b in call_ll_exitfuncs (runtime=0x7ff4aa159ac0 <_PyRuntime>) at Python/pylifecycle.c:2999 5 Py_FinalizeEx () at Python/pylifecycle.c:2005 6 0x00007ff4a9e36488 in Py_Exit (sts=0) at Python/pylifecycle.c:3011 7 0x00007ff4a9e2b759 in handle_system_exit () at Python/pythonrun.c:756 8 0x00007ff4a9e2b5b5 in _PyErr_PrintEx (tstate=0x7ff4aa1c9e38 <_PyRuntime+459640>, set_sys_last_vars=1) at Python/pythonrun.c:765 9 0x00007ff4a9cbc8ea in PyErr_PrintEx (set_sys_last_vars=1) at Python/pythonrun.c:845 10 PyErr_Print () at Python/pythonrun.c:851 11 _PyRun_SimpleFileObject (fp=<optimized out>, filename=<optimized out>, closeit=<optimized out>, flags=0x7ffcdf91b890) at Python/pythonrun.c:439 12 0x00007ff4a9e29ee4 in _PyRun_AnyFileObject (fp=0x7ff4a9b2e020, filename=0x7ff4aa2e14f0, closeit=1, flags=0x7ffcdf91b890) at Python/pythonrun.c:78 13 0x00007ff4a9e23681 in pymain_run_file_obj (program_name=0x7ff4aa2e14b0, filename=0x7ff4aa2e14f0, skip_source_first_line=0) at Modules/main.c:360 14 pymain_run_file (config=0x7ff4aa16ca18 <_PyRuntime+77656>) at Modules/main.c:379 15 pymain_run_python (exitcode=0x7ffcdf91b864) at Modules/main.c:633 16 Py_RunMain () at Modules/main.c:713 17 0x00007ff4a9ddabd7 in Py_BytesMain (argc=<optimized out>, argv=<optimized out>) at Modules/main.c:767 18 0x00007ff4aa32c496 in libc_start_main_stage2 (main=0x55a284c2f180 <main>, argc=7, argv=0x7ffcdf91ba18) at src/env/__libc_start_main.c:95 19 0x000055a284c2f046 in _start ()
This commit is contained in:
parent
08250d4f1c
commit
d173f61502
@ -3,7 +3,7 @@
|
|||||||
_pkgname=wxPython
|
_pkgname=wxPython
|
||||||
pkgname=py3-wxpython
|
pkgname=py3-wxpython
|
||||||
pkgver=4.2.1
|
pkgver=4.2.1
|
||||||
pkgrel=3
|
pkgrel=4
|
||||||
pkgdesc="Cross-platform GUI toolkit for the Python language"
|
pkgdesc="Cross-platform GUI toolkit for the Python language"
|
||||||
url="https://wxpython.org/"
|
url="https://wxpython.org/"
|
||||||
arch="all"
|
arch="all"
|
||||||
@ -18,6 +18,7 @@ makedepends="
|
|||||||
py3-setuptools
|
py3-setuptools
|
||||||
py3-sip
|
py3-sip
|
||||||
python3-dev
|
python3-dev
|
||||||
|
waf
|
||||||
wxwidgets-dev
|
wxwidgets-dev
|
||||||
"
|
"
|
||||||
checkdepends="py3-pytest py3-pytest-xdist xvfb-run"
|
checkdepends="py3-pytest py3-pytest-xdist xvfb-run"
|
||||||
@ -25,7 +26,7 @@ subpackages="$pkgname-doc $pkgname-lang $pkgname-pyc"
|
|||||||
source="https://files.pythonhosted.org/packages/source/w/wxPython/wxPython-$pkgver.tar.gz
|
source="https://files.pythonhosted.org/packages/source/w/wxPython/wxPython-$pkgver.tar.gz
|
||||||
no-attrdict.patch
|
no-attrdict.patch
|
||||||
no-stacktrace.patch
|
no-stacktrace.patch
|
||||||
gcc14.patch
|
sip-bool.patch
|
||||||
"
|
"
|
||||||
builddir="$srcdir"/$_pkgname-$pkgver
|
builddir="$srcdir"/$_pkgname-$pkgver
|
||||||
# Not all unit tests are passing. Some due to missing features of xvfb where the
|
# Not all unit tests are passing. Some due to missing features of xvfb where the
|
||||||
@ -36,7 +37,9 @@ options="!check !spdx"
|
|||||||
|
|
||||||
build() {
|
build() {
|
||||||
export CPPFLAGS="$CPPFLAGS -flto=auto"
|
export CPPFLAGS="$CPPFLAGS -flto=auto"
|
||||||
python3 build.py build --use_syswx --release -j${JOBS:-1}
|
# regenerating sip bindings first to match local wxwidgets version,
|
||||||
|
# then run build
|
||||||
|
python3 build.py sip build --use_syswx --release -j${JOBS:-1}
|
||||||
}
|
}
|
||||||
|
|
||||||
check() {
|
check() {
|
||||||
@ -60,5 +63,5 @@ sha512sums="
|
|||||||
ee9ab8effb3c71de004c3d61ec583b9980c6b75fe9bb04cf2c76025ea70afc206bc3073c44d1c83c7ba604afed9fd38c01b9ef506617ba279a4ac58e3cf34438 wxPython-4.2.1.tar.gz
|
ee9ab8effb3c71de004c3d61ec583b9980c6b75fe9bb04cf2c76025ea70afc206bc3073c44d1c83c7ba604afed9fd38c01b9ef506617ba279a4ac58e3cf34438 wxPython-4.2.1.tar.gz
|
||||||
461bc59bad6120f64e112688914c9e8ddf0dc34d789244025cd05210b098fe671e2b10ee37067c48a822b3e528380998935eb0d70c5aa5bf3993f6c6ad50bb43 no-attrdict.patch
|
461bc59bad6120f64e112688914c9e8ddf0dc34d789244025cd05210b098fe671e2b10ee37067c48a822b3e528380998935eb0d70c5aa5bf3993f6c6ad50bb43 no-attrdict.patch
|
||||||
ebd45621684603ca5e481d2a32e9ddf7de8dcd8c9f49745bd1e8509f6c118361d59d092032a541d56cbbe69f00f307dd507d511b425f14c733379e1f4b627719 no-stacktrace.patch
|
ebd45621684603ca5e481d2a32e9ddf7de8dcd8c9f49745bd1e8509f6c118361d59d092032a541d56cbbe69f00f307dd507d511b425f14c733379e1f4b627719 no-stacktrace.patch
|
||||||
fa4e4482281f308029d046ca08498a563215b271a38538b9727722ef0c57b5fcd1335d81b937564f8158fdf5c275c276035e3ca95905a4b594623d91c2a01e5c gcc14.patch
|
38f624e08abd270717c3d8db67fe384871fbdc0dd0f35541563d2ce262b24b321d411641d0218c2301d6ebe37a7ec2d3c0e1501ea75e2043a4971f8ada60c4ed sip-bool.patch
|
||||||
"
|
"
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
Fix -Wincompatible-pointer-types error in bundled sip with gcc 14.
|
|
||||||
|
|
||||||
Source: https://bugs.gentoo.org/show_bug.cgi?id=919000#c1
|
|
||||||
Upstream issue: https://github.com/wxWidgets/Phoenix/issues/2493
|
|
||||||
|
|
||||||
The fix is in upstream sip but the py3-wxpython release bundles an older
|
|
||||||
version at the moment.
|
|
||||||
|
|
||||||
Error:
|
|
||||||
|
|
||||||
```
|
|
||||||
../../../../sip/siplib/siplib.c: In function 'parsePass1':
|
|
||||||
../../../../sip/siplib/siplib.c:3900:20: error: assignment to 'sipSimpleWrapper
|
|
||||||
*' {aka 'struct _sipSimpleWrapper *'} from incompatible pointer type 'PyObject
|
|
||||||
*' {aka 'struct _object *'} [-Wincompatible-pointer-types]
|
|
||||||
3900 | *selfp = va_arg(va, PyObject *);
|
|
||||||
| ^
|
|
||||||
```
|
|
||||||
|
|
||||||
--- wxPython-4.2.1-origin/sip/siplib/siplib.c
|
|
||||||
+++ wxPython-4.2.1/sip/siplib/siplib.c
|
|
||||||
@@ -3897,7 +3897,7 @@
|
|
||||||
{
|
|
||||||
case '#':
|
|
||||||
/* A ctor has an argument with the /Transfer/ annotation. */
|
|
||||||
- *selfp = va_arg(va, PyObject *);
|
|
||||||
+ *selfp = (sipSimpleWrapper *) va_arg(va, PyObject *);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'B':
|
|
11
community/py3-wxpython/sip-bool.patch
Normal file
11
community/py3-wxpython/sip-bool.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
When regenerating the bindings, bool.cpp is not generated anymore
|
||||||
|
--- a/wscript 2023-06-07 03:31:16.000000000 +0200
|
||||||
|
+++ b/wscript 2024-09-02 16:31:16.176552571 +0200
|
||||||
|
@@ -570,7 +570,6 @@ def build(bld):
|
||||||
|
features = 'c cxx cshlib cxxshlib pyext',
|
||||||
|
target = makeTargetName(bld, 'siplib'),
|
||||||
|
source = ['sip/siplib/apiversions.c',
|
||||||
|
- 'sip/siplib/bool.cpp',
|
||||||
|
'sip/siplib/descriptors.c',
|
||||||
|
'sip/siplib/int_convertors.c',
|
||||||
|
'sip/siplib/objmap.c',
|
Loading…
Reference in New Issue
Block a user