summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-emulation/virtualbox-guest-additions/Manifest2
-rw-r--r--app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig30
-rw-r--r--app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.14.ebuild (renamed from app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.8.ebuild)13
-rw-r--r--app-emulation/virtualbox-modules/Manifest2
-rwxr-xr-xapp-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh29
-rw-r--r--app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch48
-rw-r--r--app-emulation/virtualbox-modules/files/virtualbox-modules-5.1.10-ALIGN-backport.patch12
-rw-r--r--app-emulation/virtualbox-modules/virtualbox-modules-5.1.14.ebuild (renamed from app-emulation/virtualbox-modules/virtualbox-modules-5.1.8.ebuild)5
-rw-r--r--app-emulation/virtualbox/Manifest2
-rw-r--r--app-emulation/virtualbox/virtualbox-5.1.14.ebuild (renamed from app-emulation/virtualbox/virtualbox-5.1.8.ebuild)6
-rw-r--r--sys-kernel/virtualbox-guest-dkms/Manifest2
-rw-r--r--sys-kernel/virtualbox-guest-dkms/files/dkms.patch4
-rw-r--r--sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.14.ebuild (renamed from sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.8.ebuild)2
-rw-r--r--sys-kernel/virtualbox-modules-dkms/Manifest2
-rw-r--r--sys-kernel/virtualbox-modules-dkms/files/dkms.conf2
-rw-r--r--sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.14.ebuild (renamed from sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.8.ebuild)0
-rw-r--r--x11-drivers/xf86-video-virtualbox/Manifest2
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-localconfig30
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile240
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3.2.8-mesa-check.patch36
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-makeself-check.patch10
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-mkisofs-check.patch10
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4.3.8-vboxvideo_compilefixes.patch31
-rw-r--r--x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.20-Makefile.module.kms.patch11
-rw-r--r--x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild (renamed from x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.8.ebuild)32
25 files changed, 523 insertions, 40 deletions
diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
index c8bd71b8..0e370c01 100644
--- a/app-emulation/virtualbox-guest-additions/Manifest
+++ b/app-emulation/virtualbox-guest-additions/Manifest
@@ -1 +1 @@
-DIST VirtualBox-5.1.8.tar.bz2 114688166 SHA256 e447031de468aee746529b2cf60768922f9beff22a13c54284aa430f5e925933 SHA512 178299173ee0062e23aee779faa893a42815d17163eab9ba2ed8b46be63a7110fe1690792de21514dc05ccd5a1752ea0f11357220e0e6f91f101dea3416e819c WHIRLPOOL 20ea8d253d177fd11c4349656aaa0f87f0fb76018511b345e85800d4dd8ab1e2e05c300a1f932670e5f5fac6ea547bfaa0a52b8526c4f363358911c770444a81
+DIST VirtualBox-5.1.14.tar.bz2 115042132 SHA256 8267bb026717c6e55237eb798210767d9c703cfcdf01224d9bc26f7dac9f228a SHA512 ab0646c587fa1b573a9332ca0f1959660adc02f2ecf63ac808f4a7e3ceb9b2c58adab8e309aec4630ff7fa447f47d7487e7e8d0a1f718a42d39ce71e96067fae WHIRLPOOL 915b3ac0d50def86e92b662c7fe32e1390c9dab73efb9fc9595465c45818b86b4380be93a7075d17e33f9b70d92dbbbf6063ce0dad6448c9a592648a10f2409b
diff --git a/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig
new file mode 100644
index 00000000..aeea54d6
--- /dev/null
+++ b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig
@@ -0,0 +1,30 @@
+# -*- Makefile -*-
+#
+# Overwrite some default kBuild settings
+#
+
+#
+# Copyright (C) 2006-2008 Sun Microsystems, Inc.
+#
+# This file is part of VirtualBox Open Source Edition (OSE), as
+# available from http://www.virtualbox.org. This file is free software;
+# you can redistribute it and/or modify it under the terms of the GNU
+# General Public License as published by the Free Software Foundation,
+# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
+# distribution. VirtualBox OSE is distributed in the hope that it will
+# be useful, but WITHOUT ANY WARRANTY of any kind.
+#
+
+# don't build testcases to save time, they are not needed for the package
+VBOX_WITH_TESTCASES :=
+VBOX_WITH_TESTSUITE :=
+
+KBUILD_MSG_STYLE := brief
+
+## paths, origin, hardening
+VBOX_WITH_HARDENING := 2
+VBOX_WITH_ORIGIN :=
+VBOX_ONLY_ADDITIONS := 1
+
+## don't build with -Werror
+VBOX_WITH_WARNINGS_AS_ERRORS :=
diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.8.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.14.ebuild
index ba46d57d..be06590d 100644
--- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.8.ebuild
+++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -9,7 +9,7 @@ inherit eutils systemd user toolchain-funcs
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P=VirtualBox-${MY_PV}
-DESCRIPTION="VirtualBox user-space tools for Gentoo guests"
+DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
HOMEPAGE="http://www.virtualbox.org/"
SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2"
@@ -18,8 +18,7 @@ SLOT="0"
KEYWORDS="amd64 x86"
IUSE="X"
-RDEPEND="X? ( ~x11-drivers/xf86-video-virtualbox-${PV}
- x11-apps/xrandr
+RDEPEND="X? ( x11-apps/xrandr
x11-apps/xrefresh
x11-libs/libXmu
x11-libs/libX11
@@ -31,7 +30,6 @@ RDEPEND="X? ( ~x11-drivers/xf86-video-virtualbox-${PV}
x11-libs/libICE
x11-proto/glproto )
sys-apps/dbus
- =sys-kernel/virtualbox-guest-dkms-${PV}
!!x11-drivers/xf86-input-virtualbox"
DEPEND="${RDEPEND}
>=dev-util/kbuild-0.1.9998_pre20131130
@@ -41,6 +39,10 @@ DEPEND="${RDEPEND}
sys-power/iasl
X? ( x11-proto/renderproto )
!X? ( x11-proto/xproto )"
+PDEPEND="X? ( ~x11-drivers/xf86-video-virtualbox-${PV} )"
+
+BUILD_TARGETS="all"
+BUILD_TARGET_ARCH="${ARCH}"
S="${WORKDIR}/${MY_P}"
@@ -154,6 +156,7 @@ src_install() {
}
pkg_postinst() {
+ linux-mod_pkg_postinst
if ! use X ; then
elog "use flag X is off, enable it to install the"
elog "X Window System video driver."
diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest
index 76141d3a..4128a06c 100644
--- a/app-emulation/virtualbox-modules/Manifest
+++ b/app-emulation/virtualbox-modules/Manifest
@@ -1 +1 @@
-DIST vbox-kernel-module-src-5.1.8.tar.xz 612740 SHA256 a9448ae2cb0468b9dbc94cbcdafc7d8c49787bc6246e69d9cc905dfe61d0f3c8 SHA512 56ebaaab238d1a4b9b632cea9a9653849c88af23fff64bf6fb7b96b9a0890108f83fca33562abbad51358dd5757c57b619beb466f703bb2bf1d103631655ec45 WHIRLPOOL 396a44167f337e9a0acd1cee2cd325d493486786976ce9a34f44eee7fb2443730fc57a07a7e89f0f190a8cc6f5bc89692066af44a34a86a61b63a5c20e112cba
+DIST vbox-kernel-module-src-5.1.14.tar.xz 613508 SHA256 7409f0cdb4de7358aa5c1265bb6cc71802d37a28ac0156daa3c4c8c9c6d49551 SHA512 fad7c4d12a2afc1c112ee620fe748ecb0bacdcbf6db9d3c1375ac35f610dc017c8b0a62221b8401935ea7b266b2126191bf1c3fe96613b0a0bf779341df5d147 WHIRLPOOL c0ea8f4ab1b73cd04c20a095875beec4cd3b43630c0c3b17e884f59ed0ee7d12e3d6c102419d954b9f0dd27bc6e5fd1f0bcbf14aa605d0ebfc70eb5b703c03d8
diff --git a/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh b/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh
new file mode 100755
index 00000000..756d2435
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+# Create a virtualbox modules tarball from a VirtualBox binary package.
+# We cannot download the package by this script because of the unpredictable
+# build number being in the filename.
+#
+# usage: create_vbox_modules_tarball.sh VirtualBox-4.1.18-78361-Linux_amd64.run
+
+[ -f "$1" ] || exit 1
+
+VBOX_PACKAGE="$1"
+VERSION_SUFFIX=""
+
+if [[ ${VBOX_PACKAGE} = *_BETA* ]] || [[ ${VBOX_PACKAGE} = *_RC* ]] ; then
+ VERSION_SUFFIX="$(echo ${VBOX_PACKAGE} | sed 's@.*VirtualBox-[[:digit:]\.]\+\(_[[:alpha:]]\+[[:digit:]]\).*@\L\1@')"
+
+fi
+
+VBOX_VER="$(echo ${VBOX_PACKAGE} | sed 's@.*VirtualBox-\([[:digit:]\.]\+\).*@\1@')${VERSION_SUFFIX}"
+
+
+sh ${VBOX_PACKAGE} --noexec --keep --nox11 || exit 2
+cd install || exit 3
+tar -xaf VirtualBox.tar.bz2 || exit 4
+cd src/vboxhost || exit 5
+tar -cvJf ../../../vbox-kernel-module-src-${VBOX_VER}.tar.xz . || exit 6
+cd ../../.. && rm install -rf
+
+exit 0
diff --git a/app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch b/app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch
new file mode 100644
index 00000000..4e4cde06
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch
@@ -0,0 +1,48 @@
+diff -urp vboxdrv.orig/SUPDrvIDC.h vboxdrv/SUPDrvIDC.h
+--- vboxdrv.orig/SUPDrvIDC.h 2011-09-06 15:53:27.852567531 +0200
++++ vboxdrv/SUPDrvIDC.h 2011-09-06 15:54:05.420565524 +0200
+@@ -160,7 +160,7 @@ typedef struct SUPDRVIDCREQGETSYM
+ {
+ /** The symbol address. */
+ PFNRT pfnSymbol;
+- } Out;
++ } __no_const Out;
+ } u;
+ } SUPDRVIDCREQGETSYM;
+ /** Pointer to a SUPDRV IDC get symbol request. */
+diff -urp vboxnetflt.orig/include/VBox/intnet.h vboxnetflt/include/VBox/intnet.h
+--- vboxnetflt.orig/include/VBox/intnet.h 2011-09-06 15:53:27.852567531 +0200
++++ vboxnetflt/include/VBox/intnet.h 2011-09-06 15:54:05.424565524 +0200
+@@ -783,7 +783,7 @@ typedef struct INTNETTRUNKFACTORY
+ DECLR0CALLBACKMEMBER(int, pfnCreateAndConnect,(struct INTNETTRUNKFACTORY *pIfFactory, const char *pszName,
+ PINTNETTRUNKSWPORT pSwitchPort, uint32_t fFlags,
+ PINTNETTRUNKIFPORT *ppIfPort));
+-} INTNETTRUNKFACTORY;
++} __no_const INTNETTRUNKFACTORY;
+ /** Pointer to the trunk factory. */
+ typedef INTNETTRUNKFACTORY *PINTNETTRUNKFACTORY;
+
+diff -urp vboxnetflt.orig/linux/VBoxNetFlt-linux.c vboxnetflt/linux/VBoxNetFlt-linux.c
+--- vboxnetflt.orig/linux/VBoxNetFlt-linux.c 2011-07-19 12:15:22.000000000 +0200
++++ vboxnetflt/linux/VBoxNetFlt-linux.c 2011-09-06 15:56:00.516559379 +0200
+@@ -840,7 +840,7 @@ typedef struct ethtool_ops OVR_OPSTYPE;
+
+ # else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) */
+
+-typedef struct net_device_ops OVR_OPSTYPE;
++typedef net_device_ops_no_const OVR_OPSTYPE;
+ # define OVR_OPS netdev_ops
+ # define OVR_XMIT pOrgOps->ndo_start_xmit
+
+diff -urp vboxpci.orig/include/VBox/rawpci.h vboxpci/include/VBox/rawpci.h
+--- vboxpci.orig/include/VBox/rawpci.h 2011-04-18 17:01:12.000000000 +0200
++++ vboxpci/include/VBox/rawpci.h 2011-09-06 15:57:17.340555277 +0200
+@@ -545,7 +545,7 @@ typedef struct RAWPCIFACTORY
+ DECLR0CALLBACKMEMBER(void, pfnDeinitVm,(PRAWPCIFACTORY pFactory,
+ PVM pVM,
+ PRAWPCIPERVM pPciData));
+-} RAWPCIFACTORY;
++} __no_const RAWPCIFACTORY;
+
+ #define RAWPCIFACTORY_UUID_STR "ea089839-4171-476f-adfb-9e7ab1cbd0fb"
+
diff --git a/app-emulation/virtualbox-modules/files/virtualbox-modules-5.1.10-ALIGN-backport.patch b/app-emulation/virtualbox-modules/files/virtualbox-modules-5.1.10-ALIGN-backport.patch
new file mode 100644
index 00000000..1bc3fddd
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/virtualbox-modules-5.1.10-ALIGN-backport.patch
@@ -0,0 +1,12 @@
+Index: trunk/src/VBox/HostDrivers/Support/SUPDrvInternal.h
+===================================================================
+--- a/vboxdrv/SUPDrvInternal.h
++++ b/vboxdrv/SUPDrvInternal.h
+@@ -65,7 +65,4 @@
+ # include <linux/modversions.h>
+ # endif
+-# endif
+-# if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 0)
+-# undef ALIGN
+ # endif
+ # ifndef KBUILD_STR
diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-5.1.8.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-5.1.14.ebuild
index f7b579d4..e8b50e38 100644
--- a/app-emulation/virtualbox-modules/virtualbox-modules-5.1.8.ebuild
+++ b/app-emulation/virtualbox-modules/virtualbox-modules-5.1.14.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
-EAPI=5
+EAPI=6
inherit eutils user
@@ -22,7 +22,6 @@ RDEPEND="${DEPEND}
S=${WORKDIR}
-
pkg_setup() {
enewgroup vboxusers
}
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 1cb020f0..237da10d 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,2 +1,2 @@
-DIST VirtualBox-5.1.8.tar.bz2 114688166 SHA256 e447031de468aee746529b2cf60768922f9beff22a13c54284aa430f5e925933 SHA512 178299173ee0062e23aee779faa893a42815d17163eab9ba2ed8b46be63a7110fe1690792de21514dc05ccd5a1752ea0f11357220e0e6f91f101dea3416e819c WHIRLPOOL 20ea8d253d177fd11c4349656aaa0f87f0fb76018511b345e85800d4dd8ab1e2e05c300a1f932670e5f5fac6ea547bfaa0a52b8526c4f363358911c770444a81
+DIST VirtualBox-5.1.14.tar.bz2 115042132 SHA256 8267bb026717c6e55237eb798210767d9c703cfcdf01224d9bc26f7dac9f228a SHA512 ab0646c587fa1b573a9332ca0f1959660adc02f2ecf63ac808f4a7e3ceb9b2c58adab8e309aec4630ff7fa447f47d7487e7e8d0a1f718a42d39ce71e96067fae WHIRLPOOL 915b3ac0d50def86e92b662c7fe32e1390c9dab73efb9fc9595465c45818b86b4380be93a7075d17e33f9b70d92dbbbf6063ce0dad6448c9a592648a10f2409b
DIST virtualbox-5.1.6-patches-01.tar.xz 4268 SHA256 5bfae08bc53fee06aea501e77b7998348adba43792149248d217ab03dea8c04f SHA512 2401df42ac8c2fd1f4bbc795713b185d5e65c2a36c763fa1d7274686599808aecdc28aaa6443c9efc9842f7b3eeb928818c95d1e7ad3b86239c2ace441a5e116 WHIRLPOOL 25505eaff2eeb820a09a2c8807c2d5cec48cbfe98fcd30b04daf86c4cd7c506f09c67b80d5ecc221ded08af6e48297e0161bae16862e5a1d3204b27945c511b0
diff --git a/app-emulation/virtualbox/virtualbox-5.1.8.ebuild b/app-emulation/virtualbox/virtualbox-5.1.14.ebuild
index 396fb664..496e3a16 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.8.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -20,7 +20,7 @@ HOMEPAGE="http://www.virtualbox.org/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE="alsa debug doc headless java libressl +lvm pam pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc headless java libressl lvm pam pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
RDEPEND="!app-emulation/virtualbox-bin
~app-emulation/virtualbox-modules-${PV}
@@ -188,7 +188,7 @@ src_prepare() {
}
src_configure() {
- local myconf
+ local myconf=()
use alsa || myconf+=( --disable-alsa )
use debug && myconf+=( --build-debug )
use doc || myconf+=( --disable-docs )
diff --git a/sys-kernel/virtualbox-guest-dkms/Manifest b/sys-kernel/virtualbox-guest-dkms/Manifest
index 9c9f17b7..efecd6c9 100644
--- a/sys-kernel/virtualbox-guest-dkms/Manifest
+++ b/sys-kernel/virtualbox-guest-dkms/Manifest
@@ -1 +1 @@
-DIST virtualbox-guest-dkms-5.1.8-1-x86_64.pkg.tar.xz 571900 SHA256 62282a1eca7937aea4547fe879dd6ad13cef6e9c60420f3711dc6e3bdfe65fd8 SHA512 bb54f5b6bc02c4d1e3997bf9e2c72eec44dd709ad89693bccbca40fa9932d8174e7f8b10ef113173167212496d7f24e0140289179c0f46aa739a17baefdb37ae WHIRLPOOL cdcca8ff95a8477744b1cdba1a3043f6dd2a8e31138a6a4a1b164fb91b33e3eabe718c67f98cd93e0b6206150411f677e8186ba6a08faa650f2c967f7cb8839d
+DIST virtualbox-guest-dkms-5.1.14-1-x86_64.pkg.tar.xz 573084 SHA256 c4a532821afe639d440e3ff787abb757a2240429570b7668aa5b16d5d1eaff7e SHA512 f0e8470803170090a8355ada28888fcf274e5d26cc92dd20c8d32abafb7ccd09e775aa5fcb5bbc92326f161a084fca2f8bc189773c7836d89b0b365d105f8de4 WHIRLPOOL 3d32b029d36d3d18e41db6598e95aef4a0a7e0b27bd1ea903545eb989e7b3712ca4e4d485f4fa0f248e8dc36311139d453b0dc8b981a36f383cd2d633febc26f
diff --git a/sys-kernel/virtualbox-guest-dkms/files/dkms.patch b/sys-kernel/virtualbox-guest-dkms/files/dkms.patch
index 538f7754..7b6d82f5 100644
--- a/sys-kernel/virtualbox-guest-dkms/files/dkms.patch
+++ b/sys-kernel/virtualbox-guest-dkms/files/dkms.patch
@@ -6,9 +6,9 @@ diff -Nur a/dkms.conf b/dkms.conf
#
-PACKAGE_NAME="vboxguest"
--PACKAGE_VERSION=5.1.8_OSE
+-PACKAGE_VERSION=5.1.14_OSE
+PACKAGE_NAME="virtualbox-guest-dkms"
-+PACKAGE_VERSION=5.1.8
++PACKAGE_VERSION=5.1.14
AUTOINSTALL=yes
BUILT_MODULE_NAME[0]="vboxguest"
diff --git a/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.8.ebuild b/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.14.ebuild
index c4823e9c..9680eebd 100644
--- a/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.8.ebuild
+++ b/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.14.ebuild
@@ -8,7 +8,7 @@ inherit eutils
DESCRIPTION="Kernel Modules (guest) source for Virtualbox"
HOMEPAGE="http://www.virtualbox.org/"
-SRC_URI="http://mirror.archlinux.ro/archlinux/community/os/x86_64/${P}-1-x86_64.pkg.tar.xz"
+SRC_URI="http://mirror.archlinux.ro/archlinux/community-testing/os/x86_64/${P}-1-x86_64.pkg.tar.xz"
LICENSE="GPL-2"
SLOT="0"
diff --git a/sys-kernel/virtualbox-modules-dkms/Manifest b/sys-kernel/virtualbox-modules-dkms/Manifest
index 76141d3a..4128a06c 100644
--- a/sys-kernel/virtualbox-modules-dkms/Manifest
+++ b/sys-kernel/virtualbox-modules-dkms/Manifest
@@ -1 +1 @@
-DIST vbox-kernel-module-src-5.1.8.tar.xz 612740 SHA256 a9448ae2cb0468b9dbc94cbcdafc7d8c49787bc6246e69d9cc905dfe61d0f3c8 SHA512 56ebaaab238d1a4b9b632cea9a9653849c88af23fff64bf6fb7b96b9a0890108f83fca33562abbad51358dd5757c57b619beb466f703bb2bf1d103631655ec45 WHIRLPOOL 396a44167f337e9a0acd1cee2cd325d493486786976ce9a34f44eee7fb2443730fc57a07a7e89f0f190a8cc6f5bc89692066af44a34a86a61b63a5c20e112cba
+DIST vbox-kernel-module-src-5.1.14.tar.xz 613508 SHA256 7409f0cdb4de7358aa5c1265bb6cc71802d37a28ac0156daa3c4c8c9c6d49551 SHA512 fad7c4d12a2afc1c112ee620fe748ecb0bacdcbf6db9d3c1375ac35f610dc017c8b0a62221b8401935ea7b266b2126191bf1c3fe96613b0a0bf779341df5d147 WHIRLPOOL c0ea8f4ab1b73cd04c20a095875beec4cd3b43630c0c3b17e884f59ed0ee7d12e3d6c102419d954b9f0dd27bc6e5fd1f0bcbf14aa605d0ebfc70eb5b703c03d8
diff --git a/sys-kernel/virtualbox-modules-dkms/files/dkms.conf b/sys-kernel/virtualbox-modules-dkms/files/dkms.conf
index 428afdb1..7ffdf456 100644
--- a/sys-kernel/virtualbox-modules-dkms/files/dkms.conf
+++ b/sys-kernel/virtualbox-modules-dkms/files/dkms.conf
@@ -1,5 +1,5 @@
PACKAGE_NAME="virtualbox-drivers-dkms"
-PACKAGE_VERSION="5.1.8"
+PACKAGE_VERSION="5.1.14"
AUTOINSTALL="yes"
MAKE[0]="'make' -j`nproc` KERNEL_UNAME=${kernelver}"
diff --git a/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.8.ebuild b/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.14.ebuild
index 00923566..00923566 100644
--- a/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.8.ebuild
+++ b/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.14.ebuild
diff --git a/x11-drivers/xf86-video-virtualbox/Manifest b/x11-drivers/xf86-video-virtualbox/Manifest
index c8bd71b8..0e370c01 100644
--- a/x11-drivers/xf86-video-virtualbox/Manifest
+++ b/x11-drivers/xf86-video-virtualbox/Manifest
@@ -1 +1 @@
-DIST VirtualBox-5.1.8.tar.bz2 114688166 SHA256 e447031de468aee746529b2cf60768922f9beff22a13c54284aa430f5e925933 SHA512 178299173ee0062e23aee779faa893a42815d17163eab9ba2ed8b46be63a7110fe1690792de21514dc05ccd5a1752ea0f11357220e0e6f91f101dea3416e819c WHIRLPOOL 20ea8d253d177fd11c4349656aaa0f87f0fb76018511b345e85800d4dd8ab1e2e05c300a1f932670e5f5fac6ea547bfaa0a52b8526c4f363358911c770444a81
+DIST VirtualBox-5.1.14.tar.bz2 115042132 SHA256 8267bb026717c6e55237eb798210767d9c703cfcdf01224d9bc26f7dac9f228a SHA512 ab0646c587fa1b573a9332ca0f1959660adc02f2ecf63ac808f4a7e3ceb9b2c58adab8e309aec4630ff7fa447f47d7487e7e8d0a1f718a42d39ce71e96067fae WHIRLPOOL 915b3ac0d50def86e92b662c7fe32e1390c9dab73efb9fc9595465c45818b86b4380be93a7075d17e33f9b70d92dbbbf6063ce0dad6448c9a592648a10f2409b
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-localconfig b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-localconfig
new file mode 100644
index 00000000..535c3f91
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-localconfig
@@ -0,0 +1,30 @@
+# -*- Makefile -*-
+#
+# Overwrite some default kBuild settings
+#
+
+#
+# Copyright (C) 2006-2008 Sun Microsystems, Inc.
+#
+# This file is part of VirtualBox Open Source Edition (OSE), as
+# available from http://www.virtualbox.org. This file is free software;
+# you can redistribute it and/or modify it under the terms of the GNU
+# General Public License as published by the Free Software Foundation,
+# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
+# distribution. VirtualBox OSE is distributed in the hope that it will
+# be useful, but WITHOUT ANY WARRANTY of any kind.
+#
+
+# don't build testcases to save time, they are not needed for the package
+VBOX_WITH_TESTCASES :=
+VBOX_WITH_TESTSUITE :=
+
+KBUILD_MSG_STYLE := brief
+
+## paths, origin, hardening
+VBOX_WITH_HARDENING := 2
+VBOX_WITH_ORIGIN :=
+VBOX_ONLY_ADDITIONS := 1
+
+TEMPLATE_VBOXGUESTR3XF86MOD_LDFLAGS.release =
+TEMPLATE_VBOXGUESTR3XORGMOD_LDFLAGS = $(TEMPLATE_VBOXGUESTR3DLL_LDFLAGS)
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile
new file mode 100644
index 00000000..a09e58c0
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile
@@ -0,0 +1,240 @@
+#
+# VirtualBox Guest Additions Module Makefile.
+#
+# (For 2.6.x this file must be 'Makefile'!)
+#
+# Copyright (C) 2006-2007 Sun Microsystems, Inc.
+#
+# This file is part of VirtualBox Open Source Edition (OSE), as
+# available from http://www.virtualbox.org. This file is free software;
+# you can redistribute it and/or modify it under the terms of the GNU
+# General Public License (GPL) as published by the Free Software
+# Foundation, in version 2 as it comes in the "COPYING" file of the
+# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
+# Clara, CA 95054 USA or visit http://www.sun.com if you need
+# additional information or have any questions.
+#
+
+## @todo We must make this into a common template *soon*.
+
+#
+# First, figure out which architecture we're targeting and the build type.
+# (We have to support basic cross building (ARCH=i386|x86_64).)
+# While at it, warn about BUILD_* vars found to help with user problems.
+#
+ifeq ($(filter-out x86_64 amd64 AMD64,$(shell uname -m)),)
+ BUILD_TARGET_ARCH_DEF := amd64
+else
+ BUILD_TARGET_ARCH_DEF := x86
+endif
+ifneq ($(filter-out amd64 x86,$(BUILD_TARGET_ARCH)),)
+ $(warning Ignoring unknown BUILD_TARGET_ARCH value '$(BUILD_TARGET_ARCH)'.)
+ BUILD_TARGET_ARCH :=
+endif
+ifeq ($(BUILD_TARGET_ARCH),)
+ ifeq ($(ARCH),x86_64)
+ BUILD_TARGET_ARCH := amd64
+ else
+ ifeq ($(ARCH),i386)
+ BUILD_TARGET_ARCH := x86
+ else
+ BUILD_TARGET_ARCH := $(BUILD_TARGET_ARCH_DEF)
+ endif
+ endif
+else
+ ifneq ($(BUILD_TARGET_ARCH),$(BUILD_TARGET_ARCH_DEF))
+ $(warning Using BUILD_TARGET_ARCH='$(BUILD_TARGET_ARCH)' from the $(origin BUILD_TARGET_ARCH).)
+ endif
+endif
+
+ifneq ($(filter-out release profile debug strict,$(BUILD_TYPE)),)
+ $(warning Ignoring unknown BUILD_TYPE value '$(BUILD_TYPE)'.)
+ BUILD_TYPE :=
+endif
+ifeq ($(BUILD_TYPE),)
+ BUILD_TYPE := release
+else
+ ifneq ($(BUILD_TYPE),release)
+ $(warning Using BUILD_TYPE='$(BUILD_TYPE)' from the $(origin BUILD_TYPE).)
+ endif
+endif
+
+EXTRA_CFLAGS = -fshort-wchar
+
+ifneq ($(MAKECMDGOALS),clean)
+
+ifeq ($(KERNELRELEASE),)
+
+ #
+ # building from this directory
+ #
+
+ # kernel base directory
+ ifndef KERN_DIR
+ KERN_DIR := /lib/modules/$(shell uname -r)/build
+ ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
+ KERN_DIR := /usr/src/linux
+ ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
+ $(error Error: unable to find the sources of your current Linux kernel. \
+ Specify KERN_DIR=<directory> and run Make again)
+ endif
+ $(warning Warning: using /usr/src/linux as the source directory of your \
+ Linux kernel. If this is not correct, specify \
+ KERN_DIR=<directory> and run Make again.)
+ endif
+ else
+ ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes)
+ $(error Error: KERN_DIR does not point to a directory)
+ endif
+ endif
+
+ # includes
+ ifndef KERN_INCL
+ KERN_INCL = $(KERN_DIR)/include
+ endif
+ ifneq ($(shell if test -d $(KERN_INCL); then echo yes; fi),yes)
+ $(error Error: unable to find the include directory for your current Linux \
+ kernel. Specify KERN_INCL=<directory> and run Make again)
+ endif
+
+ # module install dir.
+ ifneq ($(filter install install_rpm,$(MAKECMDGOALS)),)
+ ifndef MODULE_DIR
+ MODULE_DIR_TST := /lib/modules/$(shell uname -r)
+ ifeq ($(shell if test -d $(MODULE_DIR_TST); then echo yes; fi),yes)
+ MODULE_DIR := $(MODULE_DIR_TST)/misc
+ else
+ $(error Unable to find the folder to install the DRM driver to)
+ endif
+ endif # MODULE_DIR unspecified
+ endif
+
+ # guess kernel version (24 or 26)
+ ifeq ($(shell if grep '"2\.4\.' $(KERN_INCL)/linux/version.h > /dev/null; then echo yes; fi),yes)
+ KERN_VERSION := 24
+ else
+ KERN_VERSION := 26
+ endif
+
+else # neq($(KERNELRELEASE),)
+
+ #
+ # building from kbuild (make -C <kernel_directory> M=`pwd`)
+ #
+
+ # guess kernel version (24 or 26)
+ ifeq ($(shell if echo "$(VERSION).$(PATCHLEVEL)." | grep '2\.4\.' > /dev/null; then echo yes; fi),yes)
+ KERN_VERSION := 24
+ else
+ KERN_VERSION := 26
+ endif
+
+endif # neq($(KERNELRELEASE),)
+
+# debug - show guesses.
+ifdef DEBUG
+$(warning dbg: KERN_DIR = $(KERN_DIR))
+$(warning dbg: KERN_INCL = $(KERN_INCL))
+$(warning dbg: MODULE_DIR = $(MODULE_DIR))
+$(warning dbg: KERN_VERSION = $(KERN_VERSION))
+endif
+
+KBUILD_VERBOSE ?= 1
+
+#
+# Compiler options
+#
+ifndef INCL
+ INCL := $(addprefix -I,$(KERN_INCL) $(EXTRA_INCL))
+ ifndef KBUILD_EXTMOD
+ KBUILD_EXTMOD := $(shell pwd)
+ endif
+ INCL += $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux)
+ export INCL
+endif
+KFLAGS := -D__KERNEL__ -DMODULE -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 \
+ -DIN_SUP_R0 -DVBOX -DVBOX_WITH_HGCM -DLOG_TO_BACKDOOR -DIN_MODULE \
+ -DIN_GUEST_R0
+ifeq ($(BUILD_TARGET_ARCH),amd64)
+ KFLAGS += -DRT_ARCH_AMD64 -DVBOX_WITH_64_BITS_GUESTS
+else
+ KFLAGS += -DRT_ARCH_X86
+endif
+ifeq ($(BUILD_TYPE),debug)
+KFLAGS += -DDEBUG
+endif
+
+# override is required by the Debian guys
+override MODULE = vboxvideo
+OBJS = vboxvideo_drm.o
+
+ifeq ($(KERN_VERSION), 24)
+#
+# 2.4
+#
+
+CFLAGS := -O2 -DVBOX_LINUX_2_4 $(INCL) $(KFLAGS) $(KDEBUG)
+MODULE_EXT := o
+
+# 2.4 Module linking
+$(MODULE).o: $(OBJS)
+ $(LD) -o $@ -r $(OBJS)
+
+.PHONY: $(MODULE)
+all: $(MODULE)
+$(MODULE): $(MODULE).o
+
+else
+#
+# 2.6 and later
+#
+
+MODULE_EXT := ko
+
+$(MODULE)-y := $(OBJS)
+
+# special hack for Fedora Core 6 2.6.18 (fc6), rhel5 2.6.18 (el5),
+# ClarkConnect 4.3 (cc4) and ClarkConnect 5 (v5)
+ifeq ($(KERNELRELEASE),)
+ KFLAGS += $(foreach inc,$(KERN_INCL),\
+ $(if $(wildcard $(inc)/linux/utsrelease.h),\
+ $(if $(shell grep '"2.6.18.*fc6.*"' $(inc)/linux/utsrelease.h; \
+ grep '"2.6.18.*el5.*"' $(inc)/linux/utsrelease.h; \
+ grep '"2.6.18.*v5.*"' $(inc)/linux/utsrelease.h; \
+ grep '"2.6.18.*cc4.*"' $(inc)/linux/utsrelease.h),\
+ -DKERNEL_FC6,),))
+else
+ KFLAGS += $(if $(shell echo "$(KERNELRELEASE)"|grep '2.6.18.*fc6.*';\
+ echo "$(KERNELRELEASE)"|grep '2.6.18.*el5.*';\
+ echo "$(KERNELRELEASE)"|grep '2.6.18.*v5.*';\
+ echo "$(KERNELRELEASE)"|grep '2.6.18.*cc4.*'),\
+ -DKERNEL_FC6,)
+endif
+
+# build defs
+EXTRA_CFLAGS += $(INCL) $(KFLAGS) $(KDEBUG)
+
+all: $(MODULE)
+
+obj-m += $(MODULE).o
+
+$(MODULE):
+ $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C $(KERN_DIR) SUBDIRS=$(CURDIR) SRCROOT=$(CURDIR) modules
+
+endif
+
+install: $(MODULE)
+ @mkdir -p $(MODULE_DIR); \
+ install -m 0664 -o root -g root $(MODULE).$(MODULE_EXT) $(MODULE_DIR); \
+ PATH="$(PATH):/bin:/sbin" depmod -ae;
+
+endif # eq($(MAKECMDGOALS),clean)
+
+# important: Don't remove Module.symvers! DKMS does 'make clean' before building ...
+clean:
+ for f in . linux r0drv r0drv/linux; do rm -f $$f/*.o $$f/.*.cmd $$f/.*.flags; done
+ rm -rf .vboxvideo* .tmp_ver* vboxvideo.* Modules.symvers modules.order
+
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3.2.8-mesa-check.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3.2.8-mesa-check.patch
new file mode 100644
index 00000000..6813a174
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3.2.8-mesa-check.patch
@@ -0,0 +1,36 @@
+--- configure
++++ configure
+@@ -1225,10 +1225,7 @@
+ XCloseDisplay(dpy);
+ }
+ EOF
+- [ -n "$INCX11" ] && I_INCX11=`prefix_I "$INCX11"`
+- if test_compile "$LIBX11 $I_INCX11" Xlibs Xlibs; then
+- log_success "found"
+- fi
++ test_compile "$LIBX11 $I_INCX11" Xlibs Xlibs
+ }
+
+
+@@ -1382,21 +1379,6 @@
+ #include <GL/glu.h>
+ extern "C" int main(void)
+ {
+- Display *dpy;
+- int major, minor;
+-
+- dpy = XOpenDisplay(NULL);
+- if (dpy)
+- {
+- Bool glx_version = glXQueryVersion(dpy, &major, &minor);
+- XCloseDisplay(dpy);
+- if (glx_version)
+- {
+- printf("found version %u.%u, OK.\n", major, minor);
+- return 0;
+- }
+- }
+- printf("found (inactive), OK.\n");
+ return 0;
+ }
+ EOF
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-makeself-check.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-makeself-check.patch
new file mode 100644
index 00000000..e1fcb8c2
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-makeself-check.patch
@@ -0,0 +1,10 @@
+--- VirtualBox-4.0.0_OSE/configure
++++ VirtualBox-4.0.0_OSE/configure
+@@ -2527,7 +2527,6 @@
+ check_compiler_h
+ [ "$BUILD_MACHINE" = "amd64" -a $WITH_VMMRAW -eq 1 ] && check_32bit
+ # tools/common/makeself*
+- [ $OSE -ge 1 ] && check_makeself
+ fi
+
+ [ -n "$SETUP_WINE" ] && setup_wine
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-mkisofs-check.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-mkisofs-check.patch
new file mode 100644
index 00000000..8b0d5912
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4-mkisofs-check.patch
@@ -0,0 +1,10 @@
+--- VirtualBox-4.0.0_OSE/configure
++++ VirtualBox-4.0.0_OSE/configure
+@@ -2499,7 +2499,6 @@
+ # don't check for yasm for the time beeing as 0.40 and 0.50 both have known bugs
+ # [ "$OS" != "darwin" ] && check_yasm
+ [ "$OS" != "darwin" ] && check_xsltproc
+-[ "$OS" != "darwin" ] && check_mkisofs
+
+ # the libraries
+ [ "$OS" != "darwin" ] && check_pthread
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4.3.8-vboxvideo_compilefixes.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4.3.8-vboxvideo_compilefixes.patch
new file mode 100644
index 00000000..23be8a5c
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-4.3.8-vboxvideo_compilefixes.patch
@@ -0,0 +1,31 @@
+--- VirtualBox-4.3.8/src/VBox/Additions/x11/vboxvideo/vboxvideo.h
++++ VirtualBox-4.3.8/src/VBox/Additions/x11/vboxvideo/vboxvideo.h
+@@ -105,7 +105,6 @@
+ #define VBOX_NAME "VBoxVideo"
+ #define VBOX_DRIVER_NAME "vboxvideo"
+
+-#ifdef VBOX_DRI_OLD
+ /* DRI support */
+ #define _XF86DRI_SERVER_
+ /* Hack to work around a libdrm header which is broken on Solaris */
+@@ -120,7 +119,6 @@
+ /* For some reason this is not in the header files. */
+ extern void GlxSetVisualConfigs(int nconfigs, __GLXvisualConfig *configs,
+ void **configprivs);
+-#endif
+
+ #define VBOX_VIDEO_MAJOR 1
+ #define VBOX_VIDEO_MINOR 0
+@@ -191,12 +189,10 @@
+ Bool fAnyX;
+ #ifdef VBOX_DRI
+ Bool useDRI;
+-#ifdef VBOX_DRI_OLD
+ int cVisualConfigs;
+ __GLXvisualConfig *pVisualConfigs;
+ DRIInfoRec *pDRIInfo;
+ int drmFD;
+-# endif
+ #endif
+ } VBOXRec, *VBOXPtr;
+
diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.20-Makefile.module.kms.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.20-Makefile.module.kms.patch
new file mode 100644
index 00000000..dd05a4a7
--- /dev/null
+++ b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.20-Makefile.module.kms.patch
@@ -0,0 +1,11 @@
+--- a/src/VBox/Additions/linux/drm/Makefile.module.kms 2016-04-28 09:08:06.000000000 -0400
++++ b/src/VBox/Additions/linux/drm/Makefile.module.kms 2016-05-03 15:11:22.134971872 -0400
+@@ -38,7 +38,7 @@
+ MANGLING := $(KBUILD_EXTMOD)/include/VBox/VBoxGuestMangling.h
+ endif
+ MOD_CFLAGS = -Wno-declaration-after-statement -fshort-wchar -include $(MANGLING)
+-MOD_INCL = $(addprefix -I$(KBUILD_EXTMOD),/ /include)
++MOD_INCL = $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux)
+ # What on earth is this?
+ MOD_INCL += $(addprefix -I$(KBUILD_EXTMOD)/vboxvideo,/ /include)
+ MOD_INCL += -Iinclude/drm
diff --git a/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.8.ebuild b/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild
index 8fa24a5e..b1e6a1a6 100644
--- a/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.8.ebuild
+++ b/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -10,23 +10,22 @@ inherit eutils multilib python-single-r1 versionator toolchain-funcs
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P=VirtualBox-${MY_PV}
-DESCRIPTION="VirtualBox video driver"
+DESCRIPTION="VirtualBox X11 video driver for Gentoo guest"
HOMEPAGE="http://www.virtualbox.org/"
SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE="dri"
+IUSE="+dri"
RDEPEND="=sys-kernel/virtualbox-guest-dkms-${PV}
>=x11-base/xorg-server-1.7:=[-minimal]
x11-libs/libXcomposite"
DEPEND="${RDEPEND}
- >=dev-util/kbuild-0.1.9998_pre20131130
${PYTHON_DEPS}
>=dev-lang/yasm-0.6.2
- >=sys-devel/gcc-4.9.0
+ >=dev-util/kbuild-0.1.9998_pre20131130
sys-power/iasl
x11-proto/fontsproto
x11-proto/randrproto
@@ -43,10 +42,14 @@ DEPEND="${RDEPEND}
x11-libs/libXext
dri? ( x11-proto/xf86driproto
>=x11-libs/libdrm-2.4.5 )"
+PDEPEND="dri? ( ~app-emulation/virtualbox-guest-additions-${PV} )"
REQUIRED_USE=( "${PYTHON_REQUIRED_USE}" )
+BUILD_TARGETS="all"
+BUILD_TARGET_ARCH="${ARCH}"
S="${WORKDIR}/${MY_P}"
+MODULES_SRC_DIR="${S}/src/VBox/Additions/linux/drm"
PATCHES=(
# Ugly hack to build the opengl part of the video driver
@@ -115,7 +118,7 @@ src_compile() {
use dri && targets+=( Additions/linux/drm )
for each in ${targets[@]} ; do
- pushd "${S}"/src/VBox/${each} $>/dev/null || die
+ pushd "${S}"/src/VBox/${each} &>/dev/null || die
MAKE="kmk" \
emake TOOL_YASM_AS=yasm \
VBOX_USE_SYSTEM_XORG_HEADERS=1 \
@@ -126,6 +129,7 @@ src_compile() {
if use dri; then
local objdir="out/linux.${ARCH}/release/obj/vboxvideo_drm"
+ ln -s Makefile.module.kms "${MODULES_SRC_DIR}"/Makefile || die
targets=(
include
src/VBox/Runtime/r0drv
@@ -135,6 +139,8 @@ src_compile() {
for each in ${targets[@]} ; do
:
done
+ # see the vboxvideo_drm_SOURCES list in Makefile.kmk for the below,
+ # and replace '..' with 'dt'
targets=(
dt/dt/common/VBoxVideo/HGSMIBase.o
dt/dt/common/VBoxVideo/Modesetting.o
@@ -146,12 +152,11 @@ src_compile() {
for each in ${targets[@]} ; do
:
done
-
fi
}
src_install() {
- if use dri; then
+ if use dri ; then
:
fi
@@ -174,15 +179,4 @@ pkg_postinst() {
elog " Driver \"vboxvideo\""
elog ""
elog "in the Graphics device section (Section \"Device\")"
- elog ""
- if use dri; then
- elog "To use the kernel drm video driver, please add:"
- elog "\"${MODULE_NAMES%(*}\" to:"
- if has_version sys-apps/openrc ; then
- elog "/etc/conf.d/modules"
- else
- elog "/etc/modules.autoload.d/kernel-${KV_MAJOR}.${KV_MINOR}"
- fi
- elog ""
- fi
}