You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
3.1 KiB
87 lines
3.1 KiB
Add support for python 3.11
|
|
|
|
Virtualbox 7.0.0 will only build a lib named VBoxPython3.so, regardless of the
|
|
actual python version used when compiling. Remove VBoxPython3m.so, we don't
|
|
use it.
|
|
|
|
--- a/src/libs/xpcom18a4/python/Makefile.kmk
|
|
+++ b/src/libs/xpcom18a4/python/Makefile.kmk
|
|
@@ -30,7 +30,7 @@
|
|
|
|
#
|
|
# List of supported Python versions, defining a number of
|
|
-# VBOX_PYTHON[26|27|31|32|32M|33|33M|34|34M|35|35M|36|36M|37|37M|38|38M|39|39M|310|310M|DEF]_[INC|LIB] variables
|
|
+# VBOX_PYTHON[26|27|31|32|32M|33|33M|34|34M|35|35M|36|36M|37|37M|38|38M|39|39M|310|310M|311|311M|DEF]_[INC|LIB] variables
|
|
# which get picked up below.
|
|
#
|
|
ifeq ($(KBUILD_TARGET),darwin) # Relatively predictable, don't script.
|
|
@@ -665,6 +665,48 @@
|
|
endif
|
|
endif
|
|
|
|
+ ifdef VBOX_PYTHON311_INC
|
|
+ #
|
|
+ # Python 3.11 version
|
|
+ #
|
|
+ DLLS += VBoxPython3_11
|
|
+ VBoxPython3_11_EXTENDS = VBoxPythonBase
|
|
+ VBoxPython3_11_EXTENDS_BY = appending
|
|
+ VBoxPython3_11_INCS = $(VBOX_PYTHON311_INC)
|
|
+ VBoxPython3_11_LIBS = $(VBOX_PYTHON311_LIB)
|
|
+
|
|
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
|
|
+ ifdef VBOX_PYTHON311_LIB_X86
|
|
+ DLLS += VBoxPython3_11_x86
|
|
+ VBoxPython3_11_x86_EXTENDS = VBoxPythonBase_x86
|
|
+ VBoxPython3_11_x86_EXTENDS_BY = appending
|
|
+ VBoxPython3_11_x86_INCS = $(VBOX_PYTHON311_INC)
|
|
+ VBoxPython3_11_x86_LIBS = $(VBOX_PYTHON311_LIB_X86)
|
|
+ endif
|
|
+ endif
|
|
+ endif
|
|
+
|
|
+ ifdef VBOX_PYTHON311M_INC
|
|
+ #
|
|
+ # Python 3.11 version with pymalloc
|
|
+ #
|
|
+ DLLS += VBoxPython3_11m
|
|
+ VBoxPython3_11m_EXTENDS = VBoxPythonBase_m
|
|
+ VBoxPython3_11m_EXTENDS_BY = appending
|
|
+ VBoxPython3_11m_INCS = $(VBOX_PYTHON311M_INC)
|
|
+ VBoxPython3_11m_LIBS = $(VBOX_PYTHON311M_LIB)
|
|
+
|
|
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
|
|
+ ifdef VBOX_PYTHON311M_LIB_X86
|
|
+ DLLS += VBoxPython3_11m_x86
|
|
+ VBoxPython3_11m_x86_EXTENDS = VBoxPythonBase_x86_m
|
|
+ VBoxPython3_11m_x86_EXTENDS_BY = appending
|
|
+ VBoxPython3_11m_x86_INCS = $(VBOX_PYTHON311M_INC)
|
|
+ VBoxPython3_11m_x86_LIBS = $(VBOX_PYTHON311M_LIB_X86)
|
|
+ endif
|
|
+ endif
|
|
+ endif
|
|
+
|
|
ifdef VBOX_PYTHONDEF_INC
|
|
#
|
|
# Python without versioning
|
|
@@ -707,18 +749,13 @@
|
|
# 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 38 39 310 34 33 \
|
|
+ VBOX_PYTHON_LIMITED_API_VER := $(firstword $(foreach ver, 35 36 38 39 310 311 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
|
|
VBoxPython3_EXTENDS = VBoxPythonBase
|
|
VBoxPython3_DEFS = $(filter-out VBOX_PYXPCOM_VERSIONED,$(VBoxPythonBase_DEFS)) Py_LIMITED_API=0x03030000
|
|
VBoxPython3_INCS = $(VBoxPythonBase_INCS) $(VBOX_PYTHON$(VBOX_PYTHON_LIMITED_API_VER)_INC)
|
|
-
|
|
- DLLS += VBoxPython3m
|
|
- VBoxPython3m_EXTENDS = VBoxPythonBase_m
|
|
- VBoxPython3m_DEFS = $(filter-out VBOX_PYXPCOM_VERSIONED,$(VBoxPythonBase_m_DEFS)) Py_LIMITED_API=0x03030000
|
|
- VBoxPython3m_INCS = $(VBoxPythonBase_m_INCS) $(VBOX_PYTHON$(VBOX_PYTHON_LIMITED_API_VER)_INC)
|
|
endif
|
|
endif # VBOX_WITH_PYTHON_LIMITED_API
|
|
|