From daf1117235fffdeb049387fbb42ebce5cafc9a48f65da2c50dfb90fdd551b496 Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Tue, 19 Jun 2018 12:44:58 +0000 Subject: [PATCH 1/7] Accepting request 617657 from home:michals:kernel-test-kmp - Use %{?linux_make_arch} when building kernel modules (boo#1098050). OBS-URL: https://build.opensuse.org/request/show/617657 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=431 --- virtualbox.changes | 5 +++++ virtualbox.spec | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/virtualbox.changes b/virtualbox.changes index 0ea79de..bc528b7 100644 --- a/virtualbox.changes +++ b/virtualbox.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Tue Jun 19 07:43:42 UTC 2018 - msuchanek@suse.com + +- Use %{?linux_make_arch} when building kernel modules (boo#1098050). + ------------------------------------------------------------------- Sat May 26 21:24:55 UTC 2018 - Larry.Finger@gmail.com diff --git a/virtualbox.spec b/virtualbox.spec index 099910b..17e9d4b 100644 --- a/virtualbox.spec +++ b/virtualbox.spec @@ -525,7 +525,7 @@ for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \ $PWD/modules_build_dir/$flavor/$module_name fi # build the module for the specific flavor - make -j2 -C %{_prefix}/src/linux-obj/%{_target_cpu}/$flavor modules \ + make -j2 -C %{_prefix}/src/linux-obj/%{_target_cpu}/$flavor %{?linux_make_arch} modules \ M=$PWD/modules_build_dir/$flavor/$module_name done done From 2ab1b7752dea4a5e433061ab569c28658e28a2c88114af7631471e8cf4bafecd Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Tue, 19 Jun 2018 17:53:58 +0000 Subject: [PATCH 2/7] - Add file "fix_32_bit_builds.patch" to fix error in 32-bit builds. Add file "switch_to_python3.6.patch" to convert to Python3. Update warning regarding the security hole in USB passthrough. The text no longer refers to an old bugzilla entry (bsc#1097248). Script vboxguestconfig.sh is fixed. OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=432 --- fix_32_bit_builds.patch | 13 ++++ fixes_for_python.patch | 4 +- switch_to_python3.6.patch | 148 ++++++++++++++++++++++++++++++++++++++ vbox-usb-warning.diff | 15 ++-- vboxguestconfig.sh | 13 ++-- virtualbox.changes | 9 +++ virtualbox.spec | 44 +++++++++--- 7 files changed, 219 insertions(+), 27 deletions(-) create mode 100644 fix_32_bit_builds.patch create mode 100644 switch_to_python3.6.patch diff --git a/fix_32_bit_builds.patch b/fix_32_bit_builds.patch new file mode 100644 index 0000000..6d39991 --- /dev/null +++ b/fix_32_bit_builds.patch @@ -0,0 +1,13 @@ +Index: VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c +=================================================================== +--- VirtualBox-5.2.12.orig/src/VBox/Additions/linux/sharedfolders/utils.c ++++ VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c +@@ -50,7 +50,7 @@ static void sf_timespec_from_ftime(RTTIM + RTTimeSpecSetNano(ts, t); + } + #else /* >= 2.6.0 */ +-static void sf_ftime_from_timespec(struct timespec *tv, RTTIMESPEC *ts) ++static void sf_ftime_from_timespec(struct timespec64 *tv, RTTIMESPEC *ts) + { + int64_t t = RTTimeSpecGetNano(ts); + int64_t nsec; diff --git a/fixes_for_python.patch b/fixes_for_python.patch index 1f6953b..4a86ae7 100644 --- a/fixes_for_python.patch +++ b/fixes_for_python.patch @@ -1,5 +1,5 @@ To eliminate an rpmlint error, the shebang for this script should be -changed to use pythin directly, rather than through env. +changed to use python directly, rather than through env. When openSUSE switches to Python3, the shebang below should be changed to "#!/usr/bin/python3". @@ -12,7 +12,7 @@ Index: VirtualBox-5.1.30/src/VBox/Frontends/VBoxShell/vboxshell.py +++ VirtualBox-5.1.30/src/VBox/Frontends/VBoxShell/vboxshell.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python -+#!/usr/bin/python ++#!/usr/bin/python3 # -*- coding: utf-8 -*- # $Id: vboxshell.py $ diff --git a/switch_to_python3.6.patch b/switch_to_python3.6.patch new file mode 100644 index 0000000..b1303c9 --- /dev/null +++ b/switch_to_python3.6.patch @@ -0,0 +1,148 @@ +Index: VirtualBox-5.2.12/configure +=================================================================== +--- VirtualBox-5.2.12.orig/configure ++++ VirtualBox-5.2.12/configure +@@ -1953,17 +1953,17 @@ extern "C" int main(void) + { + Py_Initialize(); + printf("found version %s", PY_VERSION); +-#if PY_VERSION_HEX >= 0x02060000 ++#if PY_VERSION_HEX >= 0x03060000 + printf(", OK.\n"); + return 0; + #else +- printf(", expected version 2.6 or higher\n"); ++ printf(", expected version 3.6 or higher\n"); + return 1; + #endif + } + EOF + found= +- SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m" ++ SUPPYTHONLIBS="python3.6m" + 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-5.2.12/src/VBox/Installer/linux/routines.sh +=================================================================== +--- VirtualBox-5.2.12.orig/src/VBox/Installer/linux/routines.sh ++++ VirtualBox-5.2.12/src/VBox/Installer/linux/routines.sh +@@ -367,8 +367,8 @@ terminate_proc() { + maybe_run_python_bindings_installer() { + VBOX_INSTALL_PATH="${1}" + +- PYTHON=python +- if [ "`python -c 'import sys ++ PYTHON=python3 ++ if [ "`python3 -c 'import sys + if sys.version_info >= (2, 6): + print \"test\"' 2> /dev/null`" != "test" ]; then + echo 1>&2 "Python 2.6 or later not available, skipping bindings installation." +Index: VirtualBox-5.2.12/src/bldprogs/scm.cpp +=================================================================== +--- VirtualBox-5.2.12.orig/src/bldprogs/scm.cpp ++++ VirtualBox-5.2.12/src/bldprogs/scm.cpp +@@ -2031,7 +2031,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-5.2.12/src/libs/libxml2-2.9.4/configure +=================================================================== +--- VirtualBox-5.2.12.orig/src/libs/libxml2-2.9.4/configure ++++ VirtualBox-5.2.12/src/libs/libxml2-2.9.4/configure +@@ -15153,10 +15153,10 @@ PYTHON_SITE_PACKAGES= + PYTHON_TESTS= + pythondir= + if test "$with_python" != "no" ; then +- if test -x "$with_python/bin/python" ++ if test -x "$with_python/bin/python3" + then +- echo Found python in $with_python/bin/python +- PYTHON="$with_python/bin/python" ++ echo Found python in $with_python/bin/python3 ++ PYTHON="$with_python/bin/python3" + else + if test -x "$with_python/python.exe" + then +@@ -15174,7 +15174,8 @@ if test "$with_python" != "no" ; then + with_python=`$PYTHON -c "import sys; print(sys.exec_prefix)"` + else + # Extract the first word of "python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5", so it can be a program name with args. +-set dummy python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5; ac_word=$2 ++PYTHON=python3 ++set dummy python3 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5; ac_word=$2 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 + $as_echo_n "checking for $ac_word... " >&6; } + if ${ac_cv_path_PYTHON+:} false; then : +Index: VirtualBox-5.2.12/src/VBox/ValidationKit/testboxscript/setup.sh +=================================================================== +--- VirtualBox-5.2.12.orig/src/VBox/ValidationKit/testboxscript/setup.sh ++++ VirtualBox-5.2.12/src/VBox/ValidationKit/testboxscript/setup.sh +@@ -644,7 +644,7 @@ import sys;\ + x = sys.version_info[0] == 2 and (sys.version_info[1] >= 6 or (sys.version_info[1] == 5 and sys.version_info[2] >= 1));\ + sys.exit(not x);\ + "; +- for python in python2.7 python2.6 python2.5 python; ++ for python in python3.6 python2.7 python2.6 python2.5 python; + do + python=`which ${python} 2> /dev/null` + if [ -n "${python}" -a -x "${python}" ]; then +Index: VirtualBox-5.2.12/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec +=================================================================== +--- VirtualBox-5.2.12.orig/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec ++++ VirtualBox-5.2.12/src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec +@@ -20,7 +20,7 @@ + %define %PYTHON% 1 + %define VBOXDOCDIR %{_defaultdocdir}/%NAME% + %global __requires_exclude_from ^/usr/lib/virtualbox/VBoxPython.*$ +-%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} ++%{!?python_sitelib: %define python_sitelib python3 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} + + Summary: Oracle VM VirtualBox + Name: %NAME% +@@ -82,7 +82,7 @@ install -m 755 -d $RPM_BUILD_ROOT/usr/sh + %if %{?with_python:1}%{!?with_python:0} + (export VBOX_INSTALL_PATH=/usr/lib/virtualbox && \ + cd ./sdk/installer && \ +- %{__python} ./vboxapisetup.py install --prefix %{_prefix} --root $RPM_BUILD_ROOT) ++ %{python3} ./vboxapisetup.py install --prefix %{_prefix} --root $RPM_BUILD_ROOT) + %endif + rm -rf sdk/installer + mv nls $RPM_BUILD_ROOT/usr/share/virtualbox +Index: VirtualBox-5.2.12/src/libs/libxml2-2.9.4/libxml.spec.in +=================================================================== +--- VirtualBox-5.2.12.orig/src/libs/libxml2-2.9.4/libxml.spec.in ++++ VirtualBox-5.2.12/src/libs/libxml2-2.9.4/libxml.spec.in +@@ -101,11 +101,11 @@ rm -fr %{buildroot} + + make install DESTDIR=%{buildroot} + +-%if 0%{?with_python3} ++%if 0%{?with_python} + make clean +-%configure --with-python=%{__python3} ++%configure --with-python=python3 + make install DESTDIR=%{buildroot} +-%endif # with_python3 ++%endif # with_python + + + rm -f $RPM_BUILD_ROOT%{_libdir}/*.la +Index: VirtualBox-5.2.12/src/libs/libxml2-2.9.4/libxml2.spec +=================================================================== +--- VirtualBox-5.2.12.orig/src/libs/libxml2-2.9.4/libxml2.spec ++++ VirtualBox-5.2.12/src/libs/libxml2-2.9.4/libxml2.spec +@@ -103,7 +103,7 @@ make install DESTDIR=%{buildroot} + + %if 0%{?with_python3} + make clean +-%configure --with-python=%{__python3} ++%configure --with-python=python3 + make install DESTDIR=%{buildroot} + %endif # with_python3 + diff --git a/vbox-usb-warning.diff b/vbox-usb-warning.diff index b7c9867..f598525 100644 --- a/vbox-usb-warning.diff +++ b/vbox-usb-warning.diff @@ -49,11 +49,10 @@ Index: VirtualBox-5.1.22/src/apps/VBoxUSB_DevRules/VBoxUSB_DevRules.cpp =================================================================== --- /dev/null +++ VirtualBox-5.1.22/src/apps/VBoxUSB_DevRules/VBoxUSB_DevRules.cpp -@@ -0,0 +1,26 @@ +@@ -0,0 +1,25 @@ +#include +#include -+#include -+ ++#include + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); @@ -61,13 +60,13 @@ Index: VirtualBox-5.1.22/src/apps/VBoxUSB_DevRules/VBoxUSB_DevRules.cpp + QPushButton *myYesButton = msgBox.addButton("Enable", QMessageBox::YesRole); + QPushButton *myNoButton = msgBox.addButton("Disable", QMessageBox::NoRole); + msgBox.setWindowTitle(QObject::tr("USB Rules and Permissions !")); -+ msgBox.setText(QObject::tr("USB passthrough opens a security hole. " -+ "Please read \nhttps://bugzilla.novell.com/show_bug.cgi?id=664520\n" -+ "to understand the problem.\n\nWe regard USB passthrough to be extremely useful and worth the security risk. " -+ "Thus the code defaults to enabling this feature. If you agree that the risk is acceptable, then click 'Enable'.\n" ++ msgBox.setText(QObject::tr("USB passthrough requires read/write access to USB devices. " ++ "As a result, it opens a security hole.\n\n" ++ "Nonetheless, this feature is extremely useful and it may be worth the security risk. " ++ "Thus the code defaults to enabling it.\n\nIf you agree that the risk is acceptable, then click 'Enable'.\n" + "You will not be asked this question again when VB is updated. If you later change your mind, run 'rm ~/.vbox/*'\n\n" + "If you wish to disable USB passthrough to plug the security hole, then click 'Disable'. " -+ "You will be asked for the system password, and /etc/udev/rules.d/60-vboxdrv.rules will be changed.\n" ++ "You will be asked for the system password, and /etc/udev/rules.d/60-vboxdrv.rules will be changed.\n\n" + "These changes cannot be preserved through VB updates, thus this screen will be displayed again at that time.")); + msgBox.exec(); + app.quit(); diff --git a/vboxguestconfig.sh b/vboxguestconfig.sh index 5772687..959f9fc 100644 --- a/vboxguestconfig.sh +++ b/vboxguestconfig.sh @@ -12,16 +12,19 @@ INCLUDE="/lib/modules/`uname -r`/build/include" # Test if vboxsf module loaded. If it is, skip everything else loaded=$(lsmod | grep vboxsf) if [ -n "$loaded" ] ; then - echo "Kernel modules available - exiting..." - exit 0 + echo "Kernel modules available. but we will continue..." fi # # Check if virtualbox-guest-source is installed, quit if not -if ! rpm -qf "$SOURCE/virtualbox/src/Makefile" &>/dev/null ; then +if ! rpm -qf "$SOURCE/additions/guest_src.tar.bz2" &>/dev/null ; then echo "Sources for building guest modules are not present," echo "Use 'sudo zypper install virtualbox-guest-source' to install them. Quitting .." exit 1 fi +# unpack source +pushd $SOURCE > /dev/null 2>&1 +tar jxf additions/guest_src.tar.bz2 > /dev/null 2>&1 +popd > /dev/null 2>&1 # # Check if virtualbox-guest-source version matches virtualbox version if [ "$(rpm -q virtualbox virtualbox-guest-source --queryformat='%{version}-%{release}\n' 2>/dev/null | sort -u | wc -l)" -ne "1" ] ; then @@ -29,10 +32,8 @@ if [ "$(rpm -q virtualbox virtualbox-guest-source --queryformat='%{version}-%{re echo "This situation is probably not fatal, thus we will try to continue .." fi # Prerequisites are available, start build -pushd $SOURCE > /dev/null 2>&1 +pushd $SOURCE/additions/src > /dev/null 2>&1 echo "Building kernel modules..." -tar jxf addition/guest_src.tar.bz2 > /dev/null 2>&1 -cd additions/src make > $LOGFILE 2>&1 if [ "$?" -ne 0 ] ; then echo "" diff --git a/virtualbox.changes b/virtualbox.changes index bc528b7..0dc4799 100644 --- a/virtualbox.changes +++ b/virtualbox.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Tue Jun 19 17:46:44 UTC 2018 - Larry.Finger@gmail.com + +- Add file "fix_32_bit_builds.patch" to fix error in 32-bit builds. + Add file "switch_to_python3.6.patch" to convert to Python3. + Update warning regarding the security hole in USB passthrough. The text no longer refers + to an old bugzilla entry (bsc#1097248). + Script vboxguestconfig.sh is fixed. + ------------------------------------------------------------------- Tue Jun 19 07:43:42 UTC 2018 - msuchanek@suse.com diff --git a/virtualbox.spec b/virtualbox.spec index 17e9d4b..33412e0 100644 --- a/virtualbox.spec +++ b/virtualbox.spec @@ -21,6 +21,18 @@ %define _fillupdir /var/adm/fillup-templates %endif +# Use Python3 rather than Python2 by default +%define __python /usr/bin/python3 + +# In /usr/lib/rpm/macros, py_compile is hard-wired to use the command "python". I think +# this is a bug for which the work-around is to redefine that macro to use python3. +%define py_compile(O) \ +find %1 -name '*.pyc' -exec rm -f {} \\; \ +python3 -c "import sys, os, compileall; br='%{buildroot}'; compileall.compile_dir(sys.argv[1], ddir=br and (sys.argv[1][len(os.path.abspath(br)):]+'/') or None)" %1 \ +%{-O: \ +find %1 -name '*.pyo' -exec rm -f {} \\; \ +python3 -O -c "import sys, os, compileall; br='%{buildroot}'; compileall.compile_dir(sys.argv[1], ddir=br and (sys.argv[1][len(os.path.abspath(br)):]+'/') or None)" %1 \ +} # Do not provide libGL.so symbols - they are owned by Mesa already and this could potentially confuse rpm/zypp %global __provides_exclude ^libE?GL.so.1.*$ @@ -120,6 +132,10 @@ Patch123: fixes_for_4.17.patch Patch124: gcc8-configure.patch # Fix build for Qt 5.11 Patch125: fixes_for_Qt5.11.patch +# Switch to Python 3.6 +Patch126: switch_to_python3.6.patch +# Fix 32-bit builds +Patch127: fix_32_bit_builds.patch # BuildRequires: LibVNCServer-devel BuildRequires: SDL-devel @@ -159,7 +175,7 @@ BuildRequires: libxslt-devel BuildRequires: module-init-tools BuildRequires: pam-devel BuildRequires: pulseaudio-devel -BuildRequires: python2-devel +BuildRequires: python3-devel BuildRequires: quilt BuildRequires: sed BuildRequires: update-desktop-files @@ -254,8 +270,8 @@ websrv GUI part for %{name}. %package host-KMP Summary: Host kernel module for VirtualBox -##\%kernel_module_package -t %%{_builddir}/virtualbox-kmp-template -p %%{SOURCE7} -n %%{name}-host -f %%{SOURCE5} -x kdump um xen pae xenpae pv Group: System/Emulators/PC +%kernel_module_package -t %%{_builddir}/virtualbox-kmp-template -p %%{SOURCE7} -n %%{name}-host -f %%{SOURCE5} -x kdump um xen pae xenpae pv Requires: %{kernel_module_package_buildreqs} %description host-KMP @@ -303,17 +319,21 @@ Requires(pre): net-tools-deprecated VirtualBox guest addition tools. ########################################### -%package -n python2-%{name} +%package -n python3-%{name} Summary: Python bindings for %{name} Group: Development/Libraries/Python Requires: %{name} = %{version} #rename from "ose" version: -Provides: python-%{name} = %{version}-%{release} +Provides: python3-%{name} = %{version}-%{release} Obsoletes: python-%{name} < %{version}-%{release} -Provides: python-%{name}-ose = %{version} +Obsoletes: python2-%{name} < %{version}-%{release} +Obsoletes: python3-%{name} < %{version}-%{release} +Provides: python3-%{name}-ose = %{version} Obsoletes: python-%{name}-ose < %{version} +Obsoletes: python2-%{name}-ose < %{version} +Obsoletes: python3-%{name}-ose < %{version} -%description -n python2-%{name} +%description -n python3-%{name} Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package. ########################################### @@ -321,7 +341,7 @@ Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package. Summary: Devel files for %{name} Group: Development/Libraries/Other Requires: %{name} = %{version} -Requires: python-%{name} = %{version} +Requires: python3-%{name} = %{version} #rename from "ose" version: Provides: %{name}-ose-devel = %{version} Obsoletes: %{name}-ose-devel < %{version} @@ -347,8 +367,8 @@ cd %{_prefix}/src/kernel-modules/virtualbox ; make ; make install %package guest-source Summary: Source files for %{name} guest kernel modules +#Requires: %{name} = %{version} Group: Development/Sources -Requires: %{name} = %{version} Requires: gcc Requires: make BuildArch: noarch @@ -415,6 +435,8 @@ as an "extpack" for VirtualBox. The implementation is licensed under GPL. %patch123 -p1 %patch124 -p1 %patch125 -p1 +%patch126 -p1 +%patch127 -p1 #copy user manual cp %{SOURCE1} UserManual.pdf @@ -696,7 +718,7 @@ install -m 0755 -D src/VBox/Installer/linux/VBoxCreateUSBNode.sh %{buildroot}%{_ echo "entering python-virtualbox install section" ###################################################### pushd out/linux.*/release/bin/sdk/installer -VBOX_INSTALL_PATH=%{_vbox_instdir} python vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} --record-rpm=%{_tmppath}/SITE_FILES +VBOX_INSTALL_PATH=%{_vbox_instdir} python3 vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} --record-rpm=%{_tmppath}/SITE_FILES popd install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom @@ -970,13 +992,13 @@ export DISABLE_RESTART_ON_UPDATE=yes %dir /media %endif -%files -n python2-%{name} -f %{_tmppath}/SITE_FILES +%files -n python3-%{name} -f %{_tmppath}/SITE_FILES %defattr(-, root, root) %dir %{_vbox_instdir}/sdk %dir %{_vbox_instdir}/sdk/bindings %dir %{_vbox_instdir}/sdk/bindings/xpcom %{_vbox_instdir}/sdk/bindings/xpcom/python -%attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_7.so +%attr(0755, root, root) %{_vbox_instdir}/VBoxPython3_6m.so %files devel %defattr(-,root, root) From 6a85e10633a6935c9163da51e5c6c2940fc7a8d4cc814dbfc4ec078df1b30bd9 Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Wed, 20 Jun 2018 14:53:09 +0000 Subject: [PATCH 3/7] OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=433 --- fix_32_bit_builds.patch | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/fix_32_bit_builds.patch b/fix_32_bit_builds.patch index 6d39991..c157756 100644 --- a/fix_32_bit_builds.patch +++ b/fix_32_bit_builds.patch @@ -11,3 +11,16 @@ Index: VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c { int64_t t = RTTimeSpecGetNano(ts); int64_t nsec; +Index: VirtualBox-5.2.12/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h +=================================================================== +--- VirtualBox-5.2.12.orig/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h ++++ VirtualBox-5.2.12/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h +@@ -98,7 +98,7 @@ + #include + #include + #include +-#include ++#include + #include + #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 9, 0) + # include From 147d5e0bbbee53c3dada3c5a19c8a3c6b6b6f3878afb1df2623d539b9416b985 Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Wed, 20 Jun 2018 20:07:38 +0000 Subject: [PATCH 4/7] OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=434 --- fix_32_bit_builds.patch | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/fix_32_bit_builds.patch b/fix_32_bit_builds.patch index c157756..bd8572d 100644 --- a/fix_32_bit_builds.patch +++ b/fix_32_bit_builds.patch @@ -11,6 +11,15 @@ Index: VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c { int64_t t = RTTimeSpecGetNano(ts); int64_t nsec; +@@ -60,7 +60,7 @@ static void sf_ftime_from_timespec(struc + tv->tv_nsec = nsec; + } + +-static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec *tv) ++static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec64 *tv) + { + int64_t t = (int64_t)tv->tv_nsec + (int64_t)tv->tv_sec * 1000000000; + RTTimeSpecSetNano(ts, t); Index: VirtualBox-5.2.12/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h =================================================================== --- VirtualBox-5.2.12.orig/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h From 01bfa9501df0573cda69fccc048bc6bf5f5cb46744f2c892cfd10ee555075695 Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Wed, 20 Jun 2018 21:34:22 +0000 Subject: [PATCH 5/7] OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=435 --- fix_32_bit_builds.patch | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/fix_32_bit_builds.patch b/fix_32_bit_builds.patch index bd8572d..51faec0 100644 --- a/fix_32_bit_builds.patch +++ b/fix_32_bit_builds.patch @@ -2,34 +2,27 @@ Index: VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c =================================================================== --- VirtualBox-5.2.12.orig/src/VBox/Additions/linux/sharedfolders/utils.c +++ VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c -@@ -50,7 +50,7 @@ static void sf_timespec_from_ftime(RTTIM +@@ -50,7 +50,11 @@ static void sf_timespec_from_ftime(RTTIM RTTimeSpecSetNano(ts, t); } #else /* >= 2.6.0 */ --static void sf_ftime_from_timespec(struct timespec *tv, RTTIMESPEC *ts) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0) +static void sf_ftime_from_timespec(struct timespec64 *tv, RTTIMESPEC *ts) ++#else + static void sf_ftime_from_timespec(struct timespec *tv, RTTIMESPEC *ts) ++#endif { int64_t t = RTTimeSpecGetNano(ts); int64_t nsec; -@@ -60,7 +60,7 @@ static void sf_ftime_from_timespec(struc +@@ -60,7 +64,11 @@ static void sf_ftime_from_timespec(struc tv->tv_nsec = nsec; } --static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec *tv) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0) +static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec64 *tv) ++#else + static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec *tv) ++#endif { int64_t t = (int64_t)tv->tv_nsec + (int64_t)tv->tv_sec * 1000000000; RTTimeSpecSetNano(ts, t); -Index: VirtualBox-5.2.12/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h -=================================================================== ---- VirtualBox-5.2.12.orig/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h -+++ VirtualBox-5.2.12/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h -@@ -98,7 +98,7 @@ - #include - #include - #include --#include -+#include - #include - #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 9, 0) - # include From 7668de59ea4166b57a6358109bdb197615735d9313e9fc45ba74aa1c1d0d8d38 Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Tue, 26 Jun 2018 15:12:16 +0000 Subject: [PATCH 6/7] - Fix typo in host KMP line. OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=436 --- virtualbox.changes | 5 +++++ virtualbox.spec | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/virtualbox.changes b/virtualbox.changes index 0dc4799..21bdf0e 100644 --- a/virtualbox.changes +++ b/virtualbox.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Tue Jun 26 15:11:29 UTC 2018 - Larry.Finger@gmail.com + +- Fix typo in host KMP line. + ------------------------------------------------------------------- Tue Jun 19 17:46:44 UTC 2018 - Larry.Finger@gmail.com diff --git a/virtualbox.spec b/virtualbox.spec index 33412e0..5fa1d97 100644 --- a/virtualbox.spec +++ b/virtualbox.spec @@ -271,7 +271,7 @@ websrv GUI part for %{name}. %package host-KMP Summary: Host kernel module for VirtualBox Group: System/Emulators/PC -%kernel_module_package -t %%{_builddir}/virtualbox-kmp-template -p %%{SOURCE7} -n %%{name}-host -f %%{SOURCE5} -x kdump um xen pae xenpae pv +%kernel_module_package -t %{_builddir}/virtualbox-kmp-template -p %%{SOURCE7} -n %%{name}-host -f %%{SOURCE5} -x kdump um xen pae xenpae pv Requires: %{kernel_module_package_buildreqs} %description host-KMP From 7cee74805454e90cc7c68f0b4d7e3044cde6bc1c13efcb6cf03e52150df2269b Mon Sep 17 00:00:00 2001 From: Larry Finger Date: Tue, 3 Jul 2018 01:22:43 +0000 Subject: [PATCH 7/7] - Version update to 5.2.14 (released July 02 2018 by Oracle) This is a maintenance release. The following items were fixed and/or added: User interface: fixed a segmentation fault when accessing the interface through VNC (bug #16348) User interface: X11: handle repeating keys on the host system correctly (bug #1296, previously fixed, 5.1.0 regression) VMM: Fixed emulation of the undocumented SALC instruction VMM: Fixed emulation of so-called "huge unreal mode" (bug #17744); this in practice only affected Intel CPUs with VT-x without unrestricted execution. Keyboard: The PS/2 keyboard emulation has been corrected to not queue partial scan code sequences (bug #17709); this problem was likely only visible on Linux hosts due to losing the fix for bug #1296 Storage: Fixed CUE file support to correct REM keyword parsing (bug #17783) USB: Fixed a problem where the emulated xHCI device under very rare circumstances failed to report an empty isochronous transfer ring error, causing the transfers on the corresponding endpoint to stop. Audio: fixed Linux kernel log flooding (bug #17759) Apple hosts: make kernel driver load with Mac OS Mojave pre-release (bug #17805). Linux guests: made vboxvideo driver build with kernel 4.17 (bug #17801) and with pre-3.14 and EL 7.1 kernels (bug #17771) Removed "fixes_for_4.17.patch" - fixes merged upstream. OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=437 --- UserManual.pdf | 4 +- VirtualBox-5.2.12-patched.tar.bz2 | 3 -- VirtualBox-5.2.14-patched.tar.bz2 | 3 ++ fixes_for_4.17.patch | 56 ------------------------ fixes_for_Qt5.11.patch | 16 +++---- vbox-vboxadd-init-script.diff | 72 ++++++++++++++----------------- vbox-vboxdrv-init-script.diff | 38 ++++++++++------ virtualbox-sed-params.patch | 18 ++++---- virtualbox.changes | 20 +++++++++ virtualbox.spec | 5 +-- 10 files changed, 100 insertions(+), 135 deletions(-) delete mode 100644 VirtualBox-5.2.12-patched.tar.bz2 create mode 100644 VirtualBox-5.2.14-patched.tar.bz2 delete mode 100644 fixes_for_4.17.patch diff --git a/UserManual.pdf b/UserManual.pdf index cb9c77c..bbdece8 100644 --- a/UserManual.pdf +++ b/UserManual.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:60867bb1ccbf0acfc83c717061815da22f2bea316c23f40e2193b557dd887d54 -size 4440198 +oid sha256:6b7c3072c6cec2491c4465b8463a1c0266a5a2c65c62181e76f9f244f4450b70 +size 4441987 diff --git a/VirtualBox-5.2.12-patched.tar.bz2 b/VirtualBox-5.2.12-patched.tar.bz2 deleted file mode 100644 index ca20cca..0000000 --- a/VirtualBox-5.2.12-patched.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d960a40bb60635a9a00742fab7cafbd58b0281bc9109f8474fc317755faf78f9 -size 83428187 diff --git a/VirtualBox-5.2.14-patched.tar.bz2 b/VirtualBox-5.2.14-patched.tar.bz2 new file mode 100644 index 0000000..03dddab --- /dev/null +++ b/VirtualBox-5.2.14-patched.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcc07cd3cf1b881964de18b45ac059d4eed3ee13eac6f28cb39f130f180a7f3b +size 83307632 diff --git a/fixes_for_4.17.patch b/fixes_for_4.17.patch deleted file mode 100644 index 33943b7..0000000 --- a/fixes_for_4.17.patch +++ /dev/null @@ -1,56 +0,0 @@ -In kernel 4.17, pci_get_bus_and_slot() has been removed in favor of -pci_get_domain_bus_and_slot(). It appears that VirtualBox only uses -domain number 0, thus pci_get_domain_bus_and_slot(0, bus, devfn) -is a suitable replacement for pci_get_bus_and_slot(bus, devfn). - -The resulting code compiles; however, I do not use PCI passthru, which -I think means that I have not actually tested the code. - -This patch released under a combined MIT/GPLv2 license. - -Signed-off-by: Larry Finger - -Index: VirtualBox-5.2.12/src/VBox/Additions/linux/drm/vbox_ttm.c -=================================================================== ---- VirtualBox-5.2.12.orig/src/VBox/Additions/linux/drm/vbox_ttm.c -+++ VirtualBox-5.2.12/src/VBox/Additions/linux/drm/vbox_ttm.c -@@ -208,10 +208,15 @@ static struct ttm_backend_func vbox_tt_b - .destroy = &vbox_ttm_backend_destroy, - }; - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 17, 0) -+static struct ttm_tt *vbox_ttm_tt_create(struct ttm_buffer_object *bo, -+ u32 page_flags) -+#else - static struct ttm_tt *vbox_ttm_tt_create(struct ttm_bo_device *bdev, - unsigned long size, - u32 page_flags, - struct page *dummy_read_page) -+#endif - { - struct ttm_tt *tt; - -@@ -220,7 +225,11 @@ static struct ttm_tt *vbox_ttm_tt_create - return NULL; - - tt->func = &vbox_tt_backend_func; -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 17, 0) -+ if (ttm_tt_init(tt, bo, page_flags)) { -+#else - if (ttm_tt_init(tt, bdev, size, page_flags, dummy_read_page)) { -+#endif - kfree(tt); - return NULL; - } -@@ -401,7 +410,11 @@ int vbox_bo_create(struct drm_device *de - - ret = ttm_bo_init(&vbox->ttm.bdev, &vboxbo->bo, size, - ttm_bo_type_device, &vboxbo->placement, -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 17, 0) -+ align >> PAGE_SHIFT, false, acc_size, -+#else - align >> PAGE_SHIFT, false, NULL, acc_size, -+#endif - #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 18, 0) || defined(RHEL_73) - NULL, - #endif diff --git a/fixes_for_Qt5.11.patch b/fixes_for_Qt5.11.patch index 2e4a629..0977285 100644 --- a/fixes_for_Qt5.11.patch +++ b/fixes_for_Qt5.11.patch @@ -1,7 +1,7 @@ -Index: VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h +Index: VirtualBox-5.2.14/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h =================================================================== ---- VirtualBox-5.2.12.orig/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h -+++ VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h +--- VirtualBox-5.2.14.orig/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h ++++ VirtualBox-5.2.14/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h @@ -83,6 +83,7 @@ #include #include @@ -10,13 +10,13 @@ Index: VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/precomp_vcc.h #include #include #include -Index: VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp +Index: VirtualBox-5.2.14/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp =================================================================== ---- VirtualBox-5.2.12.orig/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp -+++ VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp -@@ -21,6 +21,7 @@ - +--- VirtualBox-5.2.14.orig/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp ++++ VirtualBox-5.2.14/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp +@@ -22,6 +22,7 @@ /* Qt includes: */ + # include # include +#include diff --git a/vbox-vboxadd-init-script.diff b/vbox-vboxadd-init-script.diff index 99f10e7..86aed93 100644 --- a/vbox-vboxadd-init-script.diff +++ b/vbox-vboxadd-init-script.diff @@ -1,7 +1,7 @@ -Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh +Index: VirtualBox-5.2.14/src/VBox/Additions/linux/installer/vboxadd.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/Additions/linux/installer/vboxadd.sh -+++ VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh +--- VirtualBox-5.2.14.orig/src/VBox/Additions/linux/installer/vboxadd.sh ++++ VirtualBox-5.2.14/src/VBox/Additions/linux/installer/vboxadd.sh @@ -26,11 +26,14 @@ # Provides: vboxadd # Required-Start: @@ -18,7 +18,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh ### END INIT INFO ## @todo This file duplicates a lot of script with vboxdrv.sh. When making -@@ -130,18 +133,9 @@ log() +@@ -138,18 +141,9 @@ module_build_log() dev=/dev/vboxguest userdev=/dev/vboxuser @@ -37,7 +37,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh running_vboxguest() { lsmod | grep -q "vboxguest[^_-]" -@@ -184,12 +178,6 @@ do_vboxguest_non_udev() +@@ -192,12 +186,6 @@ do_vboxguest_non_udev() fail "Cannot create device $dev with major $maj and minor $min" } fi @@ -50,7 +50,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh if [ ! -c $userdev ]; then maj=10 -@@ -200,12 +188,6 @@ do_vboxguest_non_udev() +@@ -208,12 +196,6 @@ do_vboxguest_non_udev() rmmod vboxguest 2>/dev/null fail "Cannot create device $userdev with major $maj and minor $min" } @@ -63,7 +63,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh fi fi } -@@ -215,9 +197,8 @@ start() +@@ -223,9 +205,8 @@ start() begin "Starting." # If we got this far assume that the slow set-up has been done. QUICKSETUP=yes @@ -75,7 +75,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh no_udev=1 running_vboxguest || { rm -f $dev || { -@@ -230,7 +211,7 @@ start() +@@ -238,7 +219,7 @@ start() $MODPROBE vboxguest >/dev/null 2>&1 || { setup @@ -84,15 +84,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh fail "modprobe vboxguest failed" } case "$no_udev" in 1) -@@ -253,14 +234,15 @@ start() - fi # INSTALL_NO_MODULE_BUILDS - - # Put the X.Org driver in place. This is harmless if it is not needed. -- "${INSTALL_DIR}/init/vboxadd-x11" setup 2>> "${LOG}" -+ #/sbin/rcvboxadd-x11 setup - # Install the guest OpenGL drivers. For now we don't support - # multi-architecture installations - rm -f /etc/ld.so.conf.d/00vboxvideo.conf +@@ -269,7 +250,8 @@ start() rm -Rf /var/lib/VBoxGuestAdditions/lib if /usr/bin/VBoxClient --check3d 2>/dev/null; then mkdir -p /var/lib/VBoxGuestAdditions/lib @@ -102,7 +94,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh # SELinux for the OpenGL libraries, so that gdm can load them during the # acceleration support check. This prevents an "Oh no, something has gone # wrong!" error when starting EL7 guests. -@@ -271,6 +253,15 @@ start() +@@ -280,6 +262,15 @@ start() chcon -h -t lib_t "/var/lib/VBoxGuestAdditions/lib/libGL.so.1" fi echo "/var/lib/VBoxGuestAdditions/lib" > /etc/ld.so.conf.d/00vboxvideo.conf @@ -118,7 +110,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh fi ldconfig -@@ -403,9 +394,9 @@ create_udev_rule() +@@ -414,9 +405,9 @@ create_udev_rule() echo "KERNEL=${udev_fix}\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" >> /etc/udev/rules.d/60-vboxadd.rules fi } @@ -131,7 +123,7 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh # And a post-installation script for rebuilding modules when a new kernel # is installed. mkdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d -@@ -435,45 +426,21 @@ shared_folder_setup() +@@ -446,45 +437,21 @@ shared_folder_setup() ## @todo It would be nicer if the kernel module just parsed parameters # itself instead of needing a separate binary to do that. ln -sf "${INSTALL_DIR}/other/mount.vboxsf" /sbin @@ -182,11 +174,11 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh depmod # Remove old module sources -@@ -483,13 +450,14 @@ cleanup() +@@ -494,13 +461,14 @@ cleanup() fi # Clean-up X11-related bits -- "${INSTALL_DIR}/init/vboxadd-x11" cleanup 2>> "${LOG}" +- "${INSTALL_DIR}/init/vboxadd-x11" cleanup + #/sbin/rcvboxadd-x11 cleanup # Remove other files @@ -201,10 +193,10 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd.sh fi rm /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null } -Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd-service.sh +Index: VirtualBox-5.2.14/src/VBox/Additions/linux/installer/vboxadd-service.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh -+++ VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd-service.sh +--- VirtualBox-5.2.14.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh ++++ VirtualBox-5.2.14/src/VBox/Additions/linux/installer/vboxadd-service.sh @@ -26,7 +26,7 @@ # Provides: vboxadd-service # Required-Start: vboxadd @@ -214,10 +206,10 @@ Index: VirtualBox-5.2.8/src/VBox/Additions/linux/installer/vboxadd-service.sh # Default-Stop: 0 1 6 # X-Conflicts-With: systemd-timesyncd.service # Description: VirtualBox Additions Service -Index: VirtualBox-5.2.8/src/VBox/Installer/linux/vboxautostart-service.sh +Index: VirtualBox-5.2.14/src/VBox/Installer/linux/vboxautostart-service.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/Installer/linux/vboxautostart-service.sh -+++ VirtualBox-5.2.8/src/VBox/Installer/linux/vboxautostart-service.sh +--- VirtualBox-5.2.14.orig/src/VBox/Installer/linux/vboxautostart-service.sh ++++ VirtualBox-5.2.14/src/VBox/Installer/linux/vboxautostart-service.sh @@ -23,7 +23,7 @@ # Provides: vboxautostart-service # Required-Start: vboxdrv @@ -227,10 +219,10 @@ Index: VirtualBox-5.2.8/src/VBox/Installer/linux/vboxautostart-service.sh # Default-Stop: 0 1 6 # Description: VirtualBox autostart service ### END INIT INFO -Index: VirtualBox-5.2.8/src/VBox/Installer/linux/vboxballoonctrl-service.sh +Index: VirtualBox-5.2.14/src/VBox/Installer/linux/vboxballoonctrl-service.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh -+++ VirtualBox-5.2.8/src/VBox/Installer/linux/vboxballoonctrl-service.sh +--- VirtualBox-5.2.14.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh ++++ VirtualBox-5.2.14/src/VBox/Installer/linux/vboxballoonctrl-service.sh @@ -23,7 +23,7 @@ # Provides: vboxballoonctrl-service # Required-Start: vboxdrv @@ -240,10 +232,10 @@ Index: VirtualBox-5.2.8/src/VBox/Installer/linux/vboxballoonctrl-service.sh # Default-Stop: 0 1 6 # Description: VirtualBox watchdog daemon ### END INIT INFO -Index: VirtualBox-5.2.8/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh +Index: VirtualBox-5.2.14/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh -+++ VirtualBox-5.2.8/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh +--- VirtualBox-5.2.14.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh ++++ VirtualBox-5.2.14/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh @@ -31,7 +31,7 @@ # Provides: testboxscript-service # Required-Start: $network @@ -253,10 +245,10 @@ Index: VirtualBox-5.2.8/src/VBox/ValidationKit/testboxscript/linux/testboxscript # Default-Stop: 0 1 6 # Description: TestBoxScript service ### END INIT INFO -Index: VirtualBox-5.2.8/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh +Index: VirtualBox-5.2.14/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh -+++ VirtualBox-5.2.8/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh +--- VirtualBox-5.2.14.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh ++++ VirtualBox-5.2.14/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh @@ -31,7 +31,7 @@ # Provides: vboxtxs # Required-Start: $network @@ -266,10 +258,10 @@ Index: VirtualBox-5.2.8/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs- # Default-Stop: 0 1 6 # Description: VirtualBox Test Execution Service ### END INIT INFO -Index: VirtualBox-5.2.8/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh +Index: VirtualBox-5.2.14/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh =================================================================== ---- VirtualBox-5.2.8.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh -+++ VirtualBox-5.2.8/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh +--- VirtualBox-5.2.14.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh ++++ VirtualBox-5.2.14/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh @@ -31,7 +31,7 @@ # Provides: vboxtxs # Required-Start: $network diff --git a/vbox-vboxdrv-init-script.diff b/vbox-vboxdrv-init-script.diff index 42d8a4e..5a3f4e0 100644 --- a/vbox-vboxdrv-init-script.diff +++ b/vbox-vboxdrv-init-script.diff @@ -1,7 +1,7 @@ -Index: VirtualBox-5.2.0/src/VBox/Installer/linux/vboxdrv.sh +Index: VirtualBox-5.2.14/src/VBox/Installer/linux/vboxdrv.sh =================================================================== ---- VirtualBox-5.2.0.orig/src/VBox/Installer/linux/vboxdrv.sh -+++ VirtualBox-5.2.0/src/VBox/Installer/linux/vboxdrv.sh +--- VirtualBox-5.2.14.orig/src/VBox/Installer/linux/vboxdrv.sh ++++ VirtualBox-5.2.14/src/VBox/Installer/linux/vboxdrv.sh @@ -19,11 +19,12 @@ # ### BEGIN INIT INFO @@ -19,7 +19,7 @@ Index: VirtualBox-5.2.0/src/VBox/Installer/linux/vboxdrv.sh ### END INIT INFO ## @todo This file duplicates a lot of script with vboxadd.sh. When making -@@ -261,13 +262,6 @@ start() +@@ -285,13 +286,6 @@ start() fi fi # ensure permissions @@ -33,34 +33,46 @@ Index: VirtualBox-5.2.0/src/VBox/Installer/linux/vboxdrv.sh if ! $MODPROBE vboxnetflt > /dev/null 2>&1; then failure "modprobe vboxnetflt failed. Please use 'dmesg' to find out why" fi -@@ -396,35 +390,8 @@ cleanup() +@@ -420,47 +414,8 @@ cleanup() # setup_script setup() { - begin_msg "Building VirtualBox kernel modules" console -- if ! $BUILDINTMP \ +- log "Building the main VirtualBox module." +- if ! myerr=`$BUILDINTMP \ - --save-module-symvers /tmp/vboxdrv-Module.symvers \ - --module-source "$MODULE_SRC/vboxdrv" \ -- --no-print-directory install >> $LOG 2>&1; then +- --no-print-directory install 2>&1`; then - "${INSTALL_DIR}/check_module_dependencies.sh" || exit 1 +- log "Error building the module:" +- module_build_log "$myerr" - failure "Look at $LOG to find out what went wrong" - fi -- if ! $BUILDINTMP \ +- log "Building the net filter module." +- if ! myerr=`$BUILDINTMP \ - --use-module-symvers /tmp/vboxdrv-Module.symvers \ - --module-source "$MODULE_SRC/vboxnetflt" \ -- --no-print-directory install >> $LOG 2>&1; then +- --no-print-directory install 2>&1`; then +- log "Error building the module:" +- module_build_log "$myerr" - failure "Look at $LOG to find out what went wrong" - fi -- if ! $BUILDINTMP \ +- log "Building the net adaptor module." +- if ! myerr=`$BUILDINTMP \ - --use-module-symvers /tmp/vboxdrv-Module.symvers \ - --module-source "$MODULE_SRC/vboxnetadp" \ -- --no-print-directory install >> $LOG 2>&1; then +- --no-print-directory install 2>&1`; then +- log "Error building the module:" +- module_build_log "$myerr" - failure "Look at $LOG to find out what went wrong" - fi -- if ! $BUILDINTMP \ +- log "Building the PCI pass-through module." +- if ! myerr=`$BUILDINTMP \ - --use-module-symvers /tmp/vboxdrv-Module.symvers \ - --module-source "$MODULE_SRC/vboxpci" \ -- --no-print-directory install >> $LOG 2>&1; then +- --no-print-directory install 2>&1`; then +- log "Error building the module:" +- module_build_log "$myerr" - failure "Look at $LOG to find out what went wrong" - fi - rm -f /etc/vbox/module_not_compiled diff --git a/virtualbox-sed-params.patch b/virtualbox-sed-params.patch index 97d8ee1..9730da3 100644 --- a/virtualbox-sed-params.patch +++ b/virtualbox-sed-params.patch @@ -1,8 +1,8 @@ -Index: VirtualBox-5.2.0/src/VBox/Main/Makefile.kmk +Index: VirtualBox-5.2.14/src/VBox/Main/Makefile.kmk =================================================================== ---- VirtualBox-5.2.0.orig/src/VBox/Main/Makefile.kmk -+++ VirtualBox-5.2.0/src/VBox/Main/Makefile.kmk -@@ -1521,7 +1521,7 @@ $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \ +--- VirtualBox-5.2.14.orig/src/VBox/Main/Makefile.kmk ++++ VirtualBox-5.2.14/src/VBox/Main/Makefile.kmk +@@ -1523,7 +1523,7 @@ $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \ $(QUIET)$(VBOX_XSLTPROC) --stringparam KBUILD_HOST $(KBUILD_HOST) \ --stringparam generating "dtrace-probes" \ -o "$@" $(VBoxAPIWrap_VBOX_XSLT) $(VBOX_XIDL_FILE) @@ -11,11 +11,11 @@ Index: VirtualBox-5.2.0/src/VBox/Main/Makefile.kmk "$(VBOX_PATH_MAIN_SRC)/src-all/VBoxAPI-start.d" \ "$@" \ "$(VBOX_PATH_MAIN_SRC)/src-all/VBoxAPI-end.d" -Index: VirtualBox-5.2.0/src/VBox/Devices/Makefile.kmk +Index: VirtualBox-5.2.14/src/VBox/Devices/Makefile.kmk =================================================================== ---- VirtualBox-5.2.0.orig/src/VBox/Devices/Makefile.kmk -+++ VirtualBox-5.2.0/src/VBox/Devices/Makefile.kmk -@@ -892,8 +892,7 @@ if !defined(VBOX_ONLY_EXTPACKS) +--- VirtualBox-5.2.14.orig/src/VBox/Devices/Makefile.kmk ++++ VirtualBox-5.2.14/src/VBox/Devices/Makefile.kmk +@@ -854,8 +854,7 @@ if !defined(VBOX_ONLY_EXTPACKS) $(call MSG_TOOL,iasl,VBoxDD,$<,$@) $(QUIET)$(RM) -f $@ $@.tmp $@.pre $(QUIET)$(TOOL_$(VBOX_GCC_TOOL)_CC) -E -P -x c -o $@.pre $< @@ -24,4 +24,4 @@ Index: VirtualBox-5.2.0/src/VBox/Devices/Makefile.kmk + $(QUIET)$(SED) -e "s//\n/g" $@.pre > $@.pre1 $(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $@.pre1 $(QUIET)$(MV) -f $@ $@.tmp - $(QUIET)$(SED) -e "s/AmlCode/AmlCodeSsdtCpuHotPlug/g" \ + $(QUIET)$(SED) -e "s/AmlCode\|vboxssdt_cpuhotplug_aml_code/AmlCodeSsdtCpuHotPlug/g" \ diff --git a/virtualbox.changes b/virtualbox.changes index 21bdf0e..6b1bba9 100644 --- a/virtualbox.changes +++ b/virtualbox.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Tue Jul 3 01:17:37 UTC 2018 - Larry.Finger@gmail.com + +- Version update to 5.2.14 (released July 02 2018 by Oracle) + +This is a maintenance release. The following items were fixed and/or added: + +User interface: fixed a segmentation fault when accessing the interface through VNC (bug #16348) +User interface: X11: handle repeating keys on the host system correctly (bug #1296, previously fixed, 5.1.0 regression) +VMM: Fixed emulation of the undocumented SALC instruction +VMM: Fixed emulation of so-called "huge unreal mode" (bug #17744); this in practice only affected Intel CPUs with VT-x without unrestricted execution. +Keyboard: The PS/2 keyboard emulation has been corrected to not queue partial scan code sequences (bug #17709); this problem was likely only visible on Linux hosts due to losing the fix for bug #1296 +Storage: Fixed CUE file support to correct REM keyword parsing (bug #17783) +USB: Fixed a problem where the emulated xHCI device under very rare circumstances failed to report an empty isochronous transfer ring error, causing the transfers on the corresponding endpoint to stop. +Audio: fixed Linux kernel log flooding (bug #17759) +Apple hosts: make kernel driver load with Mac OS Mojave pre-release (bug #17805). +Linux guests: made vboxvideo driver build with kernel 4.17 (bug #17801) and with pre-3.14 and EL 7.1 kernels (bug #17771) + +Removed "fixes_for_4.17.patch" - fixes merged upstream. + ------------------------------------------------------------------- Tue Jun 26 15:11:29 UTC 2018 - Larry.Finger@gmail.com diff --git a/virtualbox.spec b/virtualbox.spec index 5fa1d97..42daff8 100644 --- a/virtualbox.spec +++ b/virtualbox.spec @@ -40,7 +40,7 @@ python3 -O -c "import sys, os, compileall; br='%{buildroot}'; compileall.compile %define _udevrulesdir %{_sysconfdir}/udev/rules.d Name: virtualbox # ********* If the VB version exceeds 5.2.x, notify the libvirt maintainer!! -Version: 5.2.12 +Version: 5.2.14 Release: 0 Summary: VirtualBox is an Emulator License: GPL-2.0-or-later @@ -127,8 +127,6 @@ Patch119: fixes_for_leap15.patch Patch120: fixes_for_python.patch # Remove vboxvideo from build Patch121: remove_vbox_video_build.patch -# Fix build for kernel 4.17 -Patch123: fixes_for_4.17.patch Patch124: gcc8-configure.patch # Fix build for Qt 5.11 Patch125: fixes_for_Qt5.11.patch @@ -432,7 +430,6 @@ as an "extpack" for VirtualBox. The implementation is licensed under GPL. %endif %patch120 -p1 %patch121 -p1 -%patch123 -p1 %patch124 -p1 %patch125 -p1 %patch126 -p1