1
0
forked from jengelh/virtualbox

2 Commits

Author SHA256 Message Date
57db7db36d Patch to build with python3.13
NOT BUILDING
2025-08-26 12:15:57 +02:00
2d6eb3f435 Build python bindings for python313 2025-08-25 14:08:04 +02:00
3 changed files with 87 additions and 1 deletions

79
python313.patch Normal file
View File

@@ -0,0 +1,79 @@
Index: VirtualBox-7.2.0/configure
===================================================================
--- VirtualBox-7.2.0.orig/configure
+++ VirtualBox-7.2.0/configure
@@ -2116,7 +2116,7 @@ extern "C" int main(void)
}
EOF
found=
- SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m python3.6 python3.6m python3.7 python3.7m python3.8 python3.9 python3.10 python3.11 python3.12"
+ SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m python3.6 python3.6m python3.7 python3.7m python3.8 python3.9 python3.10 python3.11 python3.12 python3.13"
for p in $PYTHONDIR; do
for d in $SUPPYTHONLIBS; do
for b in lib/x86_64-linux-gnu lib/i386-linux-gnu lib64 lib/64 lib; do
Index: VirtualBox-7.2.0/src/VBox/Installer/linux/routines.sh
===================================================================
--- VirtualBox-7.2.0.orig/src/VBox/Installer/linux/routines.sh
+++ VirtualBox-7.2.0/src/VBox/Installer/linux/routines.sh
@@ -483,6 +483,7 @@ maybe_run_python_bindings_installer() {
python3.10 \
python3.11 \
python3.12 \
+ python3.13 \
python3 \
python"
Index: VirtualBox-7.2.0/src/libs/xpcom18a4/python/Makefile.kmk
===================================================================
--- VirtualBox-7.2.0.orig/src/libs/xpcom18a4/python/Makefile.kmk
+++ VirtualBox-7.2.0/src/libs/xpcom18a4/python/Makefile.kmk
@@ -658,6 +658,27 @@ ifndef VBOX_ONLY_SDK
endif
endif
+ ifdef VBOX_PYTHON313_INC
+ #
+ # Python 3.13 version (implicitly with pymalloc)
+ #
+ DLLS += VBoxPython3_13
+ VBoxPython3_13_EXTENDS = VBoxPythonBase
+ VBoxPython3_13_EXTENDS_BY = appending
+ VBoxPython3_13_INCS = $(VBOX_PYTHON313_INC)
+ VBoxPython3_13_LIBS = $(VBOX_PYTHON313_LIB)
+
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
+ ifdef VBOX_PYTHON313_LIB_X86
+ DLLS += VBoxPython3_13_x86
+ VBoxPython3_13_x86_EXTENDS = VBoxPythonBase_x86
+ VBoxPython3_13_x86_EXTENDS_BY = appending
+ VBoxPython3_13_x86_INCS = $(VBOX_PYTHON313_INC)
+ VBoxPython3_13_x86_LIBS = $(VBOX_PYTHON313_LIB_X86)
+ endif
+ endif
+ endif
+
ifdef VBOX_PYTHONDEF_INC
#
# Python without versioning
@@ -700,7 +721,7 @@ ifndef VBOX_ONLY_SDK
# TODO: ASSUMING that we don't need a different headers for pymalloc
# ('m' builds < 3.8) and CRT malloc.
#
- VBOX_PYTHON_LIMITED_API_VER := $(firstword $(foreach ver, 35 36 37 38 39 310 311 312 34 33 \
+ VBOX_PYTHON_LIMITED_API_VER := $(firstword $(foreach ver, 35 36 37 38 39 310 311 312 313 34 33 \
,$(if-expr defined(VBOX_PYTHON$(ver)_INC),$(ver),)$(if-expr defined(VBOX_PYTHON$(ver)M_INC),$(ver)M,)))
ifneq ($(VBOX_PYTHON_LIMITED_API_VER),)
DLLS += VBoxPython3
Index: VirtualBox-7.2.0/src/libs/xpcom18a4/python/gen_python_deps.py
===================================================================
--- VirtualBox-7.2.0.orig/src/libs/xpcom18a4/python/gen_python_deps.py
+++ VirtualBox-7.2.0/src/libs/xpcom18a4/python/gen_python_deps.py
@@ -29,7 +29,7 @@ if sys.version_info >= (3, 10):
else:
from distutils.version import StrictVersion as Version
-versions = ["2.6", "2.7", "3.1", "3.2", "3.2m", "3.3", "3.3m", "3.4", "3.4m", "3.5", "3.5m", "3.6", "3.6m", "3.7", "3.7m", "3.8", "3.9", "3.10", "3.11", "3.12" ]
+versions = ["2.6", "2.7", "3.1", "3.2", "3.2m", "3.3", "3.3m", "3.4", "3.4m", "3.5", "3.5m", "3.6", "3.6m", "3.7", "3.7m", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13" ]
prefixes = ["/usr", "/usr/local", "/opt", "/opt/local"]
known = {}

View File

@@ -1,3 +1,8 @@
-------------------------------------------------------------------
Mon Aug 25 11:50:21 UTC 2025 - Daniel Garcia <daniel.garcia@suse.com>
- Build python bindings for python313
-------------------------------------------------------------------
Fri Aug 15 14:46:51 UTC 2025 - Jan Engelhardt <jengelh@inai.de>

View File

@@ -55,7 +55,7 @@
%endif
# If you want to disable building Python parts, just set this to %%nil
%global mypython python311
%global mypython python313
%if "%mypython" != ""
%global __mypython %{expand:%%__%{mypython}}
%global mypython_sitelib %{expand:%%%{mypython}_sitelib}
@@ -127,6 +127,8 @@ Patch10: fix_for_leap15.5.patch
Patch11: cxx17.patch
Patch12: host-source.patch
Patch20: gentoo-C23.patch
# Build python bindings for python 3.13
Patch21: python313.patch
#
# Common BuildRequires for both virtualbox and virtualbox-kmp
BuildRequires: %{kernel_module_package_buildreqs}