[arch-commits] Commit in virtualbox/trunk (4 files)

Christian Hesse eworm at archlinux.org
Thu Nov 17 15:46:16 UTC 2016


    Date: Thursday, November 17, 2016 @ 15:46:16
  Author: eworm
Revision: 196245

upgpkg: virtualbox 5.1.8-2

* prepare for linux 4.9 (fix compilation of module)
* drop legacy xorg driver, make it use KMS

Added:
  virtualbox/trunk/008-no-legacy-xorg.patch
  virtualbox/trunk/009-linux-4-9.patch
Modified:
  virtualbox/trunk/LocalConfig.kmk
  virtualbox/trunk/PKGBUILD

--------------------------+
 008-no-legacy-xorg.patch |   52 +++++++++++++++++++++++++++++++++++++++++++++
 009-linux-4-9.patch      |   37 ++++++++++++++++++++++++++++++++
 LocalConfig.kmk          |    4 +++
 PKGBUILD                 |   15 +++++++-----
 4 files changed, 102 insertions(+), 6 deletions(-)

Added: 008-no-legacy-xorg.patch
===================================================================
--- 008-no-legacy-xorg.patch	                        (rev 0)
+++ 008-no-legacy-xorg.patch	2016-11-17 15:46:16 UTC (rev 196245)
@@ -0,0 +1,52 @@
+diff --git a/Config.kmk b/Config.kmk
+index 94b1dc8..1062da7 100644
+--- a/Config.kmk
++++ b/Config.kmk
+@@ -2365,15 +2365,15 @@ ifdef VBOX_WITH_CROGL
+  endif
+ 
+  if1of ($(KBUILD_TARGET), freebsd linux solaris)
+- # VBOX_PATH_MESA_SOURCE = $(PATH_ROOT)/src/libs/mesa-7.2
+-  VBOX_PATH_MESA_SOURCE = $(VBOX_PATH_X11_ROOT)/mesa-7.2
+-  VBOX_MESA_INCS = \
++  ifndef VBOX_USE_SYSTEM_GL_HEADERS
++   VBOX_GL_INCS = \
+         $(VBOX_PATH_MESA_SOURCE) \
+         $(VBOX_PATH_MESA_SOURCE)/include \
+         $(VBOX_PATH_MESA_SOURCE)/src/mesa/ \
+         $(VBOX_PATH_MESA_SOURCE)/src/mesa/glapi \
+         $(VBOX_PATH_MESA_SOURCE)/src/mesa/main \
+         $(VBOX_PATH_MESA_SOURCE)/src/mesa/drivers/dri/common
++  endif
+  endif
+ 
+  VBOX_DARWIN_OPENGL_INST     = obj/VBoxOGL/GL/
+diff --git a/src/VBox/Additions/x11/Makefile.kmk b/src/VBox/Additions/x11/Makefile.kmk
+index 75197f9..5d2167e 100644
+--- a/src/VBox/Additions/x11/Makefile.kmk
++++ b/src/VBox/Additions/x11/Makefile.kmk
+@@ -20,12 +20,18 @@ include $(KBUILD_PATH)/subheader.kmk
+ # Include sub-makefiles.
+ if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
+  include $(PATH_SUB_CURRENT)/VBoxClient/Makefile.kmk
+- include $(PATH_SUB_CURRENT)/vboxvideo/Makefile.kmk
+- ifneq ($(KBUILD_TARGET), solaris)
+-  include $(PATH_SUB_CURRENT)/vboxmouse/Makefile.kmk
+- endif
+- ifndef VBOX_USE_SYSTEM_XORG_HEADERS
+-  include $(PATH_SUB_CURRENT)/x11stubs/Makefile.kmk
++ ifndef VBOX_NO_LEGACY_XORG_X11
++  include $(PATH_SUB_CURRENT)/vboxvideo/Makefile.kmk
++  ifneq ($(KBUILD_TARGET), solaris)
++   include $(PATH_SUB_CURRENT)/vboxmouse/Makefile.kmk
++  endif
++  # This should logically only be controlled by VBOX_NO_LEGACY_XORG_X11,
++  # as it is not used for drivers at all, but rather to build X11 clients
++  # on systems missing needed libraries.
++  ## @todo fix at some later point when it will not break people's workflows.
++  ifndef VBOX_USE_SYSTEM_XORG_HEADERS
++   include $(PATH_SUB_CURRENT)/x11stubs/Makefile.kmk
++  endif
+  endif
+ endif
+ 

Added: 009-linux-4-9.patch
===================================================================
--- 009-linux-4-9.patch	                        (rev 0)
+++ 009-linux-4-9.patch	2016-11-17 15:46:16 UTC (rev 196245)
@@ -0,0 +1,37 @@
+diff --git a/src/VBox/HostDrivers/Support/SUPDrvInternal.h b/src/VBox/HostDrivers/Support/SUPDrvInternal.h
+index aadaa71..d45cdef 100644
+--- a/src/VBox/HostDrivers/Support/SUPDrvInternal.h
++++ b/src/VBox/HostDrivers/Support/SUPDrvInternal.h
+@@ -65,7 +65,7 @@
+ #           include <linux/modversions.h>
+ #       endif
+ #   endif
+-#   if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 0)
++#   if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 0) && LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
+ #       undef ALIGN
+ #   endif
+ #   ifndef KBUILD_STR
+diff --git a/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c b/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
+index 4cf93c6..c7f932f 100644
+--- a/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
++++ b/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
+@@ -1050,7 +1050,9 @@ DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3P
+             rc = get_user_pages(R3Ptr,                  /* Where from. */
+                                 cPages,                 /* How many pages. */
+                                 fWrite,                 /* Write to memory. */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
+                                 fWrite,                 /* force write access. */
++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0) */
+                                 &pMemLnx->apPages[0],   /* Page array. */
+                                 papVMAs);               /* vmas */
+         /*
+@@ -1064,7 +1066,9 @@ DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3P
+                                 R3Ptr,                  /* Where from. */
+                                 cPages,                 /* How many pages. */
+                                 fWrite,                 /* Write to memory. */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
+                                 fWrite,                 /* force write access. */
++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0) */
+                                 &pMemLnx->apPages[0],   /* Page array. */
+                                 papVMAs);               /* vmas */
+ #else /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) */

Modified: LocalConfig.kmk
===================================================================
--- LocalConfig.kmk	2016-11-17 15:03:51 UTC (rev 196244)
+++ LocalConfig.kmk	2016-11-17 15:46:16 UTC (rev 196245)
@@ -3,6 +3,10 @@
 VBOX_WITH_TESTSUITE :=
 VBOX_WITH_VALIDATIONKIT :=
 
+# no legacy X.org - use KMS
+VBOX_USE_SYSTEM_XORG_HEADERS = 1
+VBOX_NO_LEGACY_XORG_X11 = 1
+
 # archlinux path
 VBOX_WITH_ORIGIN :=
 VBOX_PATH_APP_PRIVATE_ARCH := /usr/lib/virtualbox

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2016-11-17 15:03:51 UTC (rev 196244)
+++ PKGBUILD	2016-11-17 15:46:16 UTC (rev 196245)
@@ -11,7 +11,7 @@
          'virtualbox-guest-utils-nox'
          'virtualbox-ext-vnc')
 pkgver=5.1.8
-pkgrel=1
+pkgrel=2
 arch=('i686' 'x86_64')
 url='http://virtualbox.org'
 license=('GPL' 'custom')
@@ -69,6 +69,8 @@
         '005-gsoap-build.patch'
         '006-rdesktop-vrdp-keymap-path.patch'
         '007-python2-path.patch'
+        '008-no-legacy-xorg.patch'
+        '009-linux-4-9.patch'
         )
 md5sums=('6a294ccb318cd605ca99df5dc2c20477'
          'a19774e8c56f2c4d12c528992525c444'
@@ -77,7 +79,7 @@
          '4833c8e0524fd2272b24ba0d94aef006'
          '6e2722bfd7013c1b0174382626ac1b8d'
          'ed1341881437455d9735875ddf455fbe'
-         '043c9dc0e403f1be8d57737d64141d00'
+         'a69d4b994ea858fc4382770efafc2e2c'
          '8ba9179c4a3516904417d773816dd992'
          'fcf6bcef98b16849d5c9f048592739c0'
          'bc9efed88e0469cd7fc460d5a5cd7b4b'
@@ -86,7 +88,10 @@
          '9e49bbaa2192b141c27ee43cef8cbab7'
          'e8a0b47e61ddcffdeed71086585a1ef3'
          'd82a6f19be739341ed7f1cf4ee8070ca'
-         '188ea65918309f737ce28216c2b07c3b')
+         '188ea65918309f737ce28216c2b07c3b'
+         'f028345dd4b4c9f9f5eda0084eb2acee'
+         '5cfe16b62cf685423c56927ac61b329d'
+         )
 
 prepare() {
     cd "VirtualBox-$pkgver"
@@ -314,7 +319,7 @@
     pkgdesc='VirtualBox Guest userspace utilities'
     depends=('glibc' 'pam' 'libx11' 'libxcomposite'
              'libxdamage' 'libxext' 'libxfixes' 'libxmu' 'libxt' 'xorg-xrandr'
-             'VIRTUALBOX-GUEST-MODULES' 'X-ABI-VIDEODRV_VERSION=20')
+             'VIRTUALBOX-GUEST-MODULES')
     replaces=('virtualbox-archlinux-additions' 'virtualbox-guest-additions')
     conflicts=('virtualbox-archlinux-additions' 'virtualbox-guest-additions' 'virtualbox-guest-utils-nox')
     install=virtualbox-guest-utils.install
@@ -327,8 +332,6 @@
         "$pkgdir"/usr/bin/VBoxClient-all
     install -m644 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/vboxclient.desktop \
         "$pkgdir"/etc/xdg/autostart/vboxclient.desktop
-    install -D vboxvideo_drv_system.so \
-        "$pkgdir/usr/lib/xorg/modules/drivers/vboxvideo.so"
     install -d "$pkgdir/usr/lib/xorg/modules/dri"
     install -m755 VBoxOGL*.so "$pkgdir/usr/lib"
     ln -s /usr/lib/VBoxOGL.so "$pkgdir/usr/lib/xorg/modules/dri/vboxvideo_dri.so"



More information about the arch-commits mailing list