forked from jengelh/virtualbox
added file "set_noexec_stack.patch" to remove executable stack in yasm-compiled routines addwd file "fix_v7_build.patch" added file "VBoxDDR0.r0" deleted file "/vb-6.1.16-modal-dialog-parent.patch" VirtualBox 7.0.2 (released October 20 2022) This is a maintenance release. The following items were fixed and/or added: Known issue: VMs having more than one vCPU configured will not work properly on macOS Catalina due to an unknown memory corruption issue. Either lower the number of vCPUs to 1 or upgrade to BigSur or later where the issue does not occur Main: Fixed issue when VBoxSVC could become unresponsive if Extension Pack was not installed (bug #21167) Linux Guest Additions: Introduced initial support for kernel 6.1 Linux Guest Additions: Fixed issue when VBoxClient seamless service caused a crash of some X11 applications (bug #21132) GUI: Fixed a glitch in the log viewer which was causing wrong log file to be saved (bug #21156) VirtualBox 7.0.0 (released October 10 2022) This is a major update. The following major new features were added: Virtual machines can be fully encrypted now, including the VM config logs and saved states (CLI only for now) OCI: Cloud virtual machines can be added to Virtual Machine Manager and controlled as local VMs OCI: Cloud networks can now be configured via Network Manager tool same way as it is done for Host-only and NAT networks GUI: Added a new utility similar to "top" or "resource monitor" which lists peformance statistics (CPU usage, RAM usage, disk I/O rate, etc.) of running guests GUI: Reworked the new vm wizard to integrate the unattended guest OS installation and to have a more streamlined work flow GUI: Added a new help viewer widget which enables the user manual to be navigated and searched GUI: Adding new notification center unifying most of running progresses and error reporting around the GUI GUI: Improved theme support on all platforms. Linux and macOS use native engine while for Windows host it is separately implemented. GUI: Large icon update. Audio recording: Now using Vorbis as the default audio format for WebM containers. Opus is no longer being used. Audio: Added "default" host driver type to make it possible to move VMs (appliances) between different platforms without the need of changing the audio driver explicitly. When the "default" driver is selected, the best audio backend option for a platform will be used. This is the default for newly created VMs. Guest Control: Implemented initial support for automatic updating of Guest Additions for Linux guests Guest Control: Implemented ability to wait for and/or reboot the guest when updating Guest Additions via VBoxManage VBoxManage: Added Guest Control "waitrunlevel" sub-command to make it possible to wait for a guest to reach a certain run level Linux Guest Additions: Reworked guest screen re-size functionality, added basic integration with some of guest Desktop Environments Devices: Implemented new 3D support based on DirectX 11 (and DXVK on non Windows hosts) Devices: Added virtual IOMMU devices (Intel and AMD variant) OBS-URL: https://build.opensuse.org/request/show/1036720 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=663
179 lines
7.0 KiB
Diff
179 lines
7.0 KiB
Diff
Index: VirtualBox-7.0.2/src/bldprogs/scm.cpp
|
|
===================================================================
|
|
--- VirtualBox-7.0.2.orig/src/bldprogs/scm.cpp
|
|
+++ VirtualBox-7.0.2/src/bldprogs/scm.cpp
|
|
@@ -2335,7 +2335,7 @@ static int scmProcessFileInner(PSCMRWSTA
|
|
pszTreatAs = "shell";
|
|
else if ( (cchFirst >= 15 && strncmp(pchFirst, "/usr/bin/python", 15) == 0)
|
|
|| (cchFirst >= 19 && strncmp(pchFirst, "/usr/bin/env python", 19) == 0) )
|
|
- pszTreatAs = "python";
|
|
+ pszTreatAs = "python3";
|
|
else if ( (cchFirst >= 13 && strncmp(pchFirst, "/usr/bin/perl", 13) == 0)
|
|
|| (cchFirst >= 17 && strncmp(pchFirst, "/usr/bin/env perl", 17) == 0) )
|
|
pszTreatAs = "perl";
|
|
Index: VirtualBox-7.0.2/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec
|
|
===================================================================
|
|
--- VirtualBox-7.0.2.orig/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec
|
|
+++ VirtualBox-7.0.2/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec
|
|
@@ -32,6 +32,9 @@
|
|
%define VBOXDOCDIR %{_defaultdocdir}/%NAME%
|
|
%global __requires_exclude_from ^/usr/lib/virtualbox/VBoxPython.*$|^/usr/lib/python.*$|^.*\\.py$
|
|
%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
|
|
+# SUSE defines these in python-rpm-macros, not necessarily available here
|
|
+%{!?__python3:%{_bindir}/python3}}
|
|
+%{!?python3_sitelib: %define python_sitelib python3 -c "import sysconfig as s; print(s.get_paths().get('purelib'))"}
|
|
|
|
Summary: Oracle VM VirtualBox
|
|
Name: %NAME%
|
|
Index: VirtualBox-7.0.2/src/libs/libxml2-2.9.14/libxml.spec.in
|
|
===================================================================
|
|
--- VirtualBox-7.0.2.orig/src/libs/libxml2-2.9.14/libxml.spec.in
|
|
+++ VirtualBox-7.0.2/src/libs/libxml2-2.9.14/libxml.spec.in
|
|
@@ -1,3 +1,4 @@
|
|
+%global with_python2 0
|
|
%global with_python3 1
|
|
|
|
Summary: Library providing XML and HTML support
|
|
@@ -8,7 +9,9 @@ License: MIT
|
|
Group: Development/Libraries
|
|
Source: https://download.gnome.org/sources/libxml2/@LIBXML_MAJOR_VERSION@.@LIBXML_MINOR_VERSION@/libxml2-%{version}.tar.xz
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
+%if 0%{?with_python2}
|
|
BuildRequires: python-devel
|
|
+%endif
|
|
%if 0%{?with_python3}
|
|
BuildRequires: python3-devel
|
|
%endif # with_python3
|
|
@@ -75,7 +78,6 @@ to read, modify and write XML and HTML f
|
|
this includes parsing and validation even with complex DTDs, either
|
|
at parse time or later once the document has been modified.
|
|
|
|
-%if 0%{?with_python3}
|
|
%package -n python3-%{name}
|
|
Summary: Python 3 bindings for the libxml2 library
|
|
Group: Development/Libraries
|
|
@@ -92,7 +94,6 @@ This library allows to manipulate XML fi
|
|
to read, modify and write XML and HTML files. There is DTDs support
|
|
this includes parsing and validation even with complex DTDs, either
|
|
at parse time or later once the document has been modified.
|
|
-%endif # with_python3
|
|
|
|
%prep
|
|
%setup -q
|
|
@@ -110,11 +111,14 @@ find doc -type f -exec chmod 0644 \{\} \
|
|
%install
|
|
rm -fr %{buildroot}
|
|
|
|
+%if 0%{?with_python2}
|
|
+make clean
|
|
+%configure --with-python=python
|
|
make install DESTDIR=%{buildroot}
|
|
-
|
|
+%endif # with_python2
|
|
%if 0%{?with_python3}
|
|
make clean
|
|
-%configure --with-python=%{__python3}
|
|
+%configure --with-python=python3
|
|
make install DESTDIR=%{buildroot}
|
|
%endif # with_python3
|
|
|
|
@@ -177,6 +181,7 @@ rm -fr %{buildroot}
|
|
|
|
%{_libdir}/*a
|
|
|
|
+%if 0%{?with_python2}
|
|
%files -n python-%{name}
|
|
%defattr(-, root, root)
|
|
|
|
@@ -188,6 +193,7 @@ rm -fr %{buildroot}
|
|
%doc python/tests/*.py
|
|
%doc doc/*.py
|
|
%doc doc/python.html
|
|
+%endif
|
|
|
|
%if 0%{?with_python3}
|
|
%files -n python3-%{name}
|
|
Index: VirtualBox-7.0.2/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
|
|
===================================================================
|
|
--- VirtualBox-7.0.2.orig/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
|
|
+++ VirtualBox-7.0.2/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
|
|
@@ -438,7 +438,9 @@ char *PyTraceback_AsString(PyObject *exc
|
|
|
|
{ // a temp scope so I can use temp locals.
|
|
#if PY_MAJOR_VERSION <= 2
|
|
- char *tempResult = PyString_AsString(obResult);
|
|
+ char *tempResult = (char *)PyString_AsString(obResult);
|
|
+#elif PY_MINOR_VERSION <= 6
|
|
+ char *tempResult = (char *)PyUnicode_AsUTF8(obResult);
|
|
#else
|
|
/* PyUnicode_AsUTF8() is const char * as of Python 3.7, char * earlier. */
|
|
const char *tempResult = (const char *)PyUnicode_AsUTF8(obResult);
|
|
Index: VirtualBox-7.0.2/src/libs/xpcom18a4/python/src/PyGBase.cpp
|
|
===================================================================
|
|
--- VirtualBox-7.0.2.orig/src/libs/xpcom18a4/python/src/PyGBase.cpp
|
|
+++ VirtualBox-7.0.2/src/libs/xpcom18a4/python/src/PyGBase.cpp
|
|
@@ -183,7 +183,11 @@ PyG_Base::~PyG_Base()
|
|
// Get the correct interface pointer for this object given the IID.
|
|
void *PyG_Base::ThisAsIID( const nsIID &iid )
|
|
{
|
|
- if (this==NULL) return NULL;
|
|
+#if PY_MINOR_VERSION <= 6
|
|
+ if (!this) return NULL;
|
|
+#else
|
|
+ if (!this) return NULL;
|
|
+#endif
|
|
if (iid.Equals(NS_GET_IID(nsISupports)))
|
|
return (nsISupports *)(nsIInternalPython *)this;
|
|
if (iid.Equals(NS_GET_IID(nsISupportsWeakReference)))
|
|
Index: VirtualBox-7.0.2/src/libs/xpcom18a4/python/gen_python_deps.py
|
|
===================================================================
|
|
--- VirtualBox-7.0.2.orig/src/libs/xpcom18a4/python/gen_python_deps.py
|
|
+++ VirtualBox-7.0.2/src/libs/xpcom18a4/python/gen_python_deps.py
|
|
@@ -96,7 +96,7 @@ def main(argv):
|
|
else:
|
|
multi = 1
|
|
|
|
- if multi == 0:
|
|
+ if not multi:
|
|
prefixes = ["/usr"]
|
|
versions = [str(sys.version_info[0])+'.'+str(sys.version_info[1]),
|
|
str(sys.version_info[0])+'.'+str(sys.version_info[1])+'m']
|
|
@@ -124,24 +124,25 @@ def main(argv):
|
|
continue
|
|
for p in prefixes:
|
|
c = checkPair(p, v, dllpre, dllsuff, bitness_magic)
|
|
- if c is not None:
|
|
+ if c:
|
|
known[v] = c
|
|
break
|
|
- keys = list(known.keys())
|
|
- # we want default to be the lowest versioned Python
|
|
- keys.sort()
|
|
- d = None
|
|
# We need separator other than newline, to sneak through $(shell)
|
|
sep = "|"
|
|
- for k in keys:
|
|
- if d is None:
|
|
- d = k
|
|
- vers = k.replace('.', '').upper()
|
|
- print_vars(vers, known[k], sep, bitness_magic)
|
|
- if d is not None:
|
|
- print_vars("DEF", known[d], sep, bitness_magic)
|
|
+
|
|
+ if not known:
|
|
+ # this type of problem should be detected in configure
|
|
+ # print_vars("DEF", defaultpaths, sep, bitness_magic)
|
|
+ pass
|
|
else:
|
|
print(argv[0] + ": No Python development package found!", file=sys.stderr)
|
|
+ if multi:
|
|
+ for ver, paths in known.items():
|
|
+ print_vars(ver.replace('.', '').upper(), paths, sep, bitness_magic)
|
|
+ else:
|
|
+ ver = versions[0]
|
|
+ paths = known[ver]
|
|
+ print_vars(ver.replace('.', ''), paths, sep, bitness_magic)
|
|
|
|
if __name__ == '__main__':
|
|
main(sys.argv)
|