diff options
Diffstat (limited to 'app-emulation/virtualbox/files')
3 files changed, 117 insertions, 0 deletions
diff --git a/app-emulation/virtualbox/files/virtualbox-7.0.8-disable-rebuild-iPxeBiosBin.patch b/app-emulation/virtualbox/files/virtualbox-7.0.8-disable-rebuild-iPxeBiosBin.patch new file mode 100644 index 000000000000..29ec3aee72c1 --- /dev/null +++ b/app-emulation/virtualbox/files/virtualbox-7.0.8-disable-rebuild-iPxeBiosBin.patch @@ -0,0 +1,18 @@ +When compiling with clang we get: + +src/VBox/Devices/PC/ipxe/src/core/settings.c:310:8: error: fields must have a constant size: 'variable length array in structure' extension will never be supported + +Apply this patch conditionally to disable rebuilding iPxeBiosBin.rom when using clang. + +--- a/src/VBox/Devices/PC/ipxe/Makefile.kmk ++++ b/src/VBox/Devices/PC/ipxe/Makefile.kmk +@@ -45,7 +45,8 @@ + iPxeBiosBin_CLEAN = \ + $(iPxeBiosBin_0_OUTDIR)/iPxeBiosBin.c \ + +-if1of ($(KBUILD_TARGET), darwin os2 solaris win) ++# Disable building on Linux if using clang ++if1of ($(KBUILD_TARGET), darwin os2 solaris win linux) + $$(iPxeBiosBin_0_OUTDIR)/iPxeBiosBin.c: $(PATH_SUB_CURRENT)/iPxeBiosBin.rom $(VBOX_BIN2C) | $$(dir $$@) + $(call MSG_TOOL,bin2c,iPxeBiosBin,$<,$@) + $(QUIET)$(VBOX_BIN2C) -min 32 -max 56 -mask 0x1ff -export NetBiosBinary $< $@ diff --git a/app-emulation/virtualbox/files/virtualbox-7.0.8-mtune-keep-size.patch b/app-emulation/virtualbox/files/virtualbox-7.0.8-mtune-keep-size.patch new file mode 100644 index 000000000000..e37d9d6dcb94 --- /dev/null +++ b/app-emulation/virtualbox/files/virtualbox-7.0.8-mtune-keep-size.patch @@ -0,0 +1,13 @@ +Force -mtune=i386. Random -mtune can lead to iPxeBiosBin.rom getting too +large (larger than 56k). This can happen because we support custom CFLAGS. + +--- a/src/VBox/Devices/PC/ipxe/Makefile.kmk ++++ b/src/VBox/Devices/PC/ipxe/Makefile.kmk +@@ -125,6 +125,7 @@ + -ffreestanding \ + -ffunction-sections \ + -march=i386 \ ++ -mtune=i386 \ + -fomit-frame-pointer \ + -fstrength-reduce \ + -falign-jumps=1 \ diff --git a/app-emulation/virtualbox/files/virtualbox-7.0.8-python3_11.patch b/app-emulation/virtualbox/files/virtualbox-7.0.8-python3_11.patch new file mode 100644 index 000000000000..02fc9c1b12fe --- /dev/null +++ b/app-emulation/virtualbox/files/virtualbox-7.0.8-python3_11.patch @@ -0,0 +1,86 @@ +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 + |