VirtualBox 4.3.10 added

This commit is contained in:
Kolan Sh 2014-03-28 11:39:49 +04:00
parent ab5c0447c8
commit 7846e88564
11 changed files with 623 additions and 10 deletions

View File

@ -0,0 +1 @@
DIST VBoxGuestAdditions_4.3.10.iso 64647168 SHA256 247e15e9a205dcd4761f6cb547ceca2a61e8d6905c1930870939fd323f4cd1ae SHA512 9af8e01abb8f29e1cd165ad73918b83c681b902636e608d49d2264d30be58d8fe3d2e3a1ad28bd37b644bc54b1a08b3fad32b3d55d7ec9f6b7c018c0ba64c866 WHIRLPOOL f9b3b6af97224ce2ff093f9ed23c465303d695140383bb599c52392fe2f03093f22431c975334bad962c32706832e2e5240a0317eb4bf403931b7ce9b4a0b172

View File

@ -0,0 +1,36 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-additions/virtualbox-additions-4.3.10-r1.ebuild,v 1.1 2014/03/27 12:34:03 polynomial-c Exp $
EAPI=5
inherit eutils
MY_PN=VBoxGuestAdditions
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P=${MY_PN}_${MY_PV}
DESCRIPTION="CD image containing guest additions for VirtualBox"
HOMEPAGE="http://www.virtualbox.org/"
SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RESTRICT="mirror"
RDEPEND="!app-emulation/virtualbox-bin
!=app-emulation/virtualbox-9999"
S="${WORKDIR}"
src_unpack() {
return 0
}
src_install() {
insinto /usr/share/${PN/-additions}
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
}

View File

@ -0,0 +1 @@
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.10-93012.tar.gz 10432166 SHA256 ec3f2a98373d5e228acb4756ac07f44212c4d53f6b83deee81b791abb0d2608a SHA512 cb4551caf296f51ea2a11cac340335333fc7e7b56caa22dd354bbacf041c9c228e8b5262bc585033196b1381389e664c798197654049a334814fd94faeac3e56 WHIRLPOOL a4902e5d6fe3c156ca26607d2cde5ac5ff3ac6deeb520ad83293b4d1eae7f5ec46b7053195739b66bb39b4837aa22ec9c84f2bf627b7176de253cb8cd6c508bf

View File

@ -0,0 +1,41 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-4.3.10.93012.ebuild,v 1.1 2014/03/27 12:21:26 polynomial-c Exp $
EAPI=5
inherit eutils multilib versionator
MAIN_PV="$(get_version_component_range 1-3)"
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
MY_PV="${MAIN_PV}_$(get_version_componen_range 5)"
MY_PV="${MY_PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
else
MY_PV="${MAIN_PV}"
fi
VBOX_BUILD_ID="$(get_version_component_range 4)"
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
DESCRIPTION="PUEL extensions for VirtualBox"
HOMEPAGE="http://www.virtualbox.org/"
SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
LICENSE="PUEL"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RESTRICT="mirror strip"
RDEPEND="~app-emulation/virtualbox-${MAIN_PV}"
S="${WORKDIR}"
QA_PREBUILT="/usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}/.*"
src_install() {
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
doins -r linux.${ARCH}
doins ExtPack* PXE-Intel.rom
}

View File

@ -0,0 +1 @@
DIST vbox-kernel-module-src-4.3.10.tar.xz 517568 SHA256 96fd82c79820fd099ddb970f281b86c070b6176c40fc65c61aa8e072bff8485f SHA512 d7d26d34a97ff4a90acb04b5969e2273b709d8857c2c163289b50d83d170aa191e337f07393b4088c4343a28e0fe8596f603de7db3ea7e28baaec578ab025b02 WHIRLPOOL df2e636945ba085d11f29430b8a2bbbf7a165f245a87a00fa504e6b04db9bc0220cce75ca36315009af10df6cca513e2956dc9ed544ec35daf231e1e2150eb93

View File

@ -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

View File

@ -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"

View File

@ -0,0 +1,3 @@
vboxnetflt
vboxnetadp
vboxdrv

View File

@ -0,0 +1,59 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-modules/virtualbox-modules-4.3.10.ebuild,v 1.1 2014/03/26 10:10:13 polynomial-c Exp $
# XXX: the tarball here is just the kernel modules split out of the binary
# package that comes from virtualbox-bin
EAPI=5
inherit eutils linux-mod user
MY_P=vbox-kernel-module-src-${PV}
DESCRIPTION="Kernel Modules for Virtualbox"
HOMEPAGE="http://www.virtualbox.org/"
SRC_URI="http://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="pax_kernel"
RDEPEND="!=app-emulation/virtualbox-9999"
S=${WORKDIR}
BUILD_TARGETS="all"
BUILD_TARGET_ARCH="${ARCH}"
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S}) vboxpci(misc:${S})"
pkg_setup() {
linux-mod_pkg_setup
BUILD_PARAMS="KERN_DIR=${KV_DIR} KERNOUT=${KV_OUT_DIR}"
enewgroup vboxusers
}
src_prepare() {
if kernel_is -ge 2 6 33 ; then
# evil patch for new kernels - header moved
grep -lR linux/autoconf.h * | xargs sed -i -e 's:<linux/autoconf.h>:<generated/autoconf.h>:'
fi
if use pax_kernel && kernel_is -ge 3 0 0 ; then
epatch "${FILESDIR}"/${PN}-4.1.4-pax-const.patch
fi
}
src_install() {
linux-mod_src_install
insinto /usr/lib/modules-load.d/
doins "${FILESDIR}"/virtualbox.conf
}
pkg_postinst() {
linux-mod_pkg_postinst
elog "If you are using openRC, please add \"vboxdrv\", \"vboxnetflt\""
elog "and \"vboxnetadp\" to:"
elog "/etc/conf.d/modules"
}

View File

@ -1,12 +1,4 @@
AUX 10-virtualbox.rules 576 SHA256 12d1900c59fc92db58d6c32d15130d5b909853e4bc8205898439fd0510d15050 SHA512 12128375244e0fb090674e5a11cc70178f3c6208040830c009284addb91db7dc0a2d3cbd5d1056944782e936a63b0bcef03be0135683646c41d540413805f0ba WHIRLPOOL 489b5221a143f2f5f84f9695d1d3679b75e86b90502706a248e7f20b812709100a86713ca36a5266aae397a588876643f68084b1fdc872f9587571c6b07daaa5
AUX vboxwebsrv-confd 683 SHA256 57d15be05b11a5d2df838e144f3e91c6443b6afb6ea2c105254947be72759bc8 SHA512 cc1bfe93733cc06fcab5384f6fc6b0e88cfff93b07b6ea3ef5f8226bab24249ecf9c0f857568527ebd257d4e5be987b5699d26e09940dc221917daf58492b184 WHIRLPOOL d7cec4f07dfa53623106bc47100068b2552a99c2114e166fb33e32b0e4c8f9b3517c87d31e83c7cadb8375a1584a2c3a653bca0f4339955af6fc610f0d1ec88f
AUX vboxwebsrv-initd 797 SHA256 51cafb25408343650ddcd8401ef0226c2df3cb5020a5ccdfd85e2de821a2ccf5 SHA512 60d2d1ad58e8f887d6a9b6a47a520ca84aa0e2e043571176bdc887ce76be063e443a980ea8f1b941394d533d69a434a1ca6a5c0cb8bd6b9cd4f38c1af2e10bbe WHIRLPOOL 3d22cef4e224738c504313a26e2c78915f49b42f4498309157e351805ceb8f6f9c25cea40dc51d4e58d6741b60c0206dc16ab9b48e26145ba2e6d5e41a91f266
AUX virtualbox-4-config 38 SHA256 cc3cd896be49a421b06665683a22edb0fe17d6588fc259140b139c3d8a8581b5 SHA512 5455b70b8ac6f25365bae776b78c3ef5710ae2d5a9e939c7013d72c35f65f178268966ebd291a42666913e45f43c7196f8953331be0b0cc88eba66df39205b08 WHIRLPOOL c7f76904207198a77703c0a3866e10b1c646cf8b802ce2e01fc194f076d8ddcbe9862f55c376a385e6d81fa467fa867c08e1619046d27aa78fecf35398ce6db2
AUX virtualbox-4-localconfig 1434 SHA256 e7d23a6c15b5982f7132c38ee5d660bae111a46c6a5603c2212488637cdcfe20 SHA512 0cac0eba680957a75e12544cc7e8e6074d4764c5d10b5ad8f0060ac36d1d03675a9132210c0f6894ec889163f8bf546913370c6f50da43c798141c094a589e4d WHIRLPOOL cde0d2cbd3e7411c7211c19f51998a0cc5c53b3b37b281270483a55b3a46135475ce003ee294573d5cbd5f8d73108e9b9f48a0548613f0ecffa8b7579dc3f82d
AUX virtualbox-ose-3-config 38 SHA256 cc3cd896be49a421b06665683a22edb0fe17d6588fc259140b139c3d8a8581b5 SHA512 5455b70b8ac6f25365bae776b78c3ef5710ae2d5a9e939c7013d72c35f65f178268966ebd291a42666913e45f43c7196f8953331be0b0cc88eba66df39205b08 WHIRLPOOL c7f76904207198a77703c0a3866e10b1c646cf8b802ce2e01fc194f076d8ddcbe9862f55c376a385e6d81fa467fa867c08e1619046d27aa78fecf35398ce6db2
AUX virtualbox-ose-3-wrapper 2931 SHA256 7ed4834ece201cb6a9da57e36a1a9b47bd054057d2ac4a46343a9966ff460644 SHA512 adb6ba2b3252b19b4c0331c10a025d05fd2399642530ba9aec2efa2dc8dbea4188a95806935532ad8229db29f0767c3098ef7646204f5e540e291ceb350b76ac WHIRLPOOL b7d7e454cd5642e59bdf973bbfb7f7d52597b32b440630ec4ba08b8b89f91e4e5296a723429e1c9c5c72e6760264d0477e1232559631e54c85c98351cf170db5
AUX virtualbox-ose.desktop-2 201 SHA256 fa7fc3dae940e768560559db944289c578acb691db2dcb51c8c85bfaf3298a25 SHA512 a678e237ad0451e8785f242ebf822b4f3b03d2e2280a62f71728f79bdcfc84d3465ee60cad90db75e64b2c89a1b0b224de00519728fb605df67ca7c9aee0874c WHIRLPOOL 080fc09f951f621976499e7721e1edaa6e89d6a3632c63d14806a23d1369ce1a7d3408a6375f8658f00603fccf69cef3b2f587e1861b02a09646262f365aee2c
DIST VirtualBox-4.2.8.tar.bz2 76412088 SHA256 f336af12244db74e6564dc22e438bbcba70f994aaf0d117fdf70caca9fab1b78 SHA512 70eab0aa0c760937a99d4d199be81cd828bc37d656a796a5cdd25fd3869b6873d2bfac4fa1c719a9a79431312524c21bba995b9a6be8a8bcb8eb2444cca32c08 WHIRLPOOL 54642eaf1c495f46338c348e6f5abb29bf6e17b85d2dae1fd4b4988eebec7dda8a8dad903060b2ef3fa65c4e1aaecdc43bd384f7b993b16f59be86e4fb8d0355
DIST VirtualBox-4.3.10.tar.bz2 90336343 SHA256 8152fcc959565fee63855dffb9731a1585563f01b4756def0a644de1223af37e SHA512 639ad7585d7459373156489ec2a229cf6323202045e14f41ffdaa80cdc38e8b376be84fdbb398dda04b85d5d68247bdfae51d4695a14805fb91adbb5d6f61b3f WHIRLPOOL fe22aaeef2066408bf172ffbd554d421bd1ff4512d7a81eac871ad1675954b16923640aa08868114300de4a839f2cd3a5116ca63cacb37fe68bfb2b890a2f911
DIST virtualbox-4.2.8-patches-01.tar.xz 11140 SHA256 6f738d7e7b0da7bdf284c9429b5db81433fa09977a46d7a27f049118d47dfd97 SHA512 868e9b5feeb26dca647f0f614a7e06eef961081b32a36f4d0a1e6648fb4a2603767d7b536ba913334cfa75c02133186dd5f825a37a7dff9676ef4d65a6cca1b0 WHIRLPOOL 29d6e5d38e02804ad9d7b58e18ad15d5ccee5bda14b71f9ccfd5d6c1447008d889b0f943fb85e5b493ba2ef5aa6848cd895fb947328ecc7075238fb8d4299ccf
EBUILD virtualbox-4.2.8-r1.ebuild 12663 SHA256 30e835fa76e14b5367a38fe0957cfb2d08c34978a176f15fccf31b792301fb4a SHA512 b2840f2086b91c052cbfa9727f73ad8a0d1cf123ba3af010dff0cc4016d62c360b8c1f2c6d54866774a57e8b2fd871854159811ba8bde1c83f2da356d137a2b4 WHIRLPOOL 47b67fdf4ba83ec707bdaf1fb3c271912515689d80f7e9ef06f12cce4deeb9b2abf85800884f230d14c3a2c5d1724a18fe20b10642450582647d2623f2775bfd
EBUILD virtualbox-4.2.8-r2.ebuild 12654 SHA256 50147a0df24e2294897d764ec15567cd673c8d59d0740891d8e5b4e28723a6d3 SHA512 da2b0a76a9643b0f36342c5d26056811403fc01d44fd6379dfb7e3eb4c24d800f4762c4afdb4068a87f1645458ce5ce66b6306038f8d4c4d6d8941c2b7503ad9 WHIRLPOOL 8c7b7d28cc5f7b8d7a2eef3931c61314b8b3f2ada745089b4edd5ea46341c6cdfe1ce1142815e3c9e243c647ca3f1963110f580afcd2ec85f14226a5e2589f51
DIST virtualbox-4.3.4-patches-01.tar.xz 3512 SHA256 92602471590278f42db4e13aeb3975620ce0b8f1f883b82a534b6998bb4fc2e3 SHA512 3a487283066b96fb8abc765d446dbc3d3b34ed93a12d932e843b7ecdf644a02fc185f47764cfb3e4b996e104da8e1fc07432892ea126229c174e00f748468496 WHIRLPOOL 19b344f784e866b87c1f7583081746776da5203737bbb284a32b8bcb48a8546286cd209b6749c6c77c08ee02039afcf3838d49d179ae4cc1592ca1fbd5fd5b12

View File

@ -0,0 +1,402 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox/virtualbox-4.3.10.ebuild,v 1.2 2014/03/27 12:31:16 polynomial-c Exp $
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit eutils fdo-mime flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 qt4-r2 toolchain-funcs udev
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P=VirtualBox-${MY_PV}
SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
http://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-4.3.4-patches-01.tar.xz"
S="${WORKDIR}/${MY_P}"
DESCRIPTION="Family of powerful x86 virtualization products for enterprise as well as home use"
HOMEPAGE="http://www.virtualbox.org/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+additions alsa doc extensions headless java pam pulseaudio +opengl python +qt4 +sdk vboxwebsrv vnc"
RDEPEND="!app-emulation/virtualbox-bin
~app-emulation/virtualbox-modules-${PV}
dev-libs/libIDL
>=dev-libs/libxslt-1.1.19
net-misc/curl
dev-libs/openssl
dev-libs/libxml2
media-libs/libpng
media-libs/libvpx
sys-libs/zlib
>=virtual/udev-171
!headless? (
qt4? (
dev-qt/qtgui:4
dev-qt/qtcore:4
opengl? ( dev-qt/qtopengl:4 )
x11-libs/libXinerama
)
opengl? ( virtual/opengl media-libs/freeglut )
x11-libs/libX11
x11-libs/libXcursor
x11-libs/libXext
x11-libs/libXmu
x11-libs/libXt
media-libs/libsdl:0[X,video]
)
vnc? ( >=net-libs/libvncserver-0.9.9 )
java? ( || ( virtual/jre:1.7 virtual/jre:1.6 ) )"
DEPEND="${RDEPEND}
>=dev-util/kbuild-0.1.9998_pre20131130
>=dev-lang/yasm-0.6.2
sys-devel/bin86
sys-power/iasl
pam? ( sys-libs/pam )
sys-libs/libcap
doc? (
dev-texlive/texlive-basic
dev-texlive/texlive-latex
dev-texlive/texlive-latexrecommended
dev-texlive/texlive-latexextra
dev-texlive/texlive-fontsrecommended
dev-texlive/texlive-fontsextra
)
java? ( || ( virtual/jdk:1.7 virtual/jdk:1.6 ) )
virtual/pkgconfig
alsa? ( >=media-libs/alsa-lib-1.0.13 )
!headless? ( x11-libs/libXinerama )
pulseaudio? ( media-sound/pulseaudio )
vboxwebsrv? ( <net-libs/gsoap-2.8.13 )
${PYTHON_DEPS}"
PDEPEND="additions? ( ~app-emulation/virtualbox-additions-${PV} )
extensions? ( =app-emulation/virtualbox-extpack-oracle-${PV}* )"
QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
usr/lib/virtualbox/VBoxSDL.so
usr/lib/virtualbox/VBoxSharedFolders.so
usr/lib/virtualbox/VBoxDD2.so
usr/lib/virtualbox/VBoxOGLrenderspu.so
usr/lib/virtualbox/VBoxPython.so
usr/lib/virtualbox/VBoxDD.so
usr/lib/virtualbox/VBoxDDU.so
usr/lib/virtualbox/VBoxREM64.so
usr/lib/virtualbox/VBoxSharedClipboard.so
usr/lib/virtualbox/VBoxHeadless.so
usr/lib/virtualbox/VBoxRT.so
usr/lib/virtualbox/VBoxREM.so
usr/lib/virtualbox/VBoxSettings.so
usr/lib/virtualbox/VBoxKeyboard.so
usr/lib/virtualbox/VBoxSharedCrOpenGL.so
usr/lib/virtualbox/VBoxVMM.so
usr/lib/virtualbox/VirtualBox.so
usr/lib/virtualbox/VBoxOGLhosterrorspu.so
usr/lib/virtualbox/components/VBoxC.so
usr/lib/virtualbox/components/VBoxSVCM.so
usr/lib/virtualbox/components/VBoxDDU.so
usr/lib/virtualbox/components/VBoxRT.so
usr/lib/virtualbox/components/VBoxREM.so
usr/lib/virtualbox/components/VBoxVMM.so
usr/lib/virtualbox/VBoxREM32.so
usr/lib/virtualbox/VBoxPython2_4.so
usr/lib/virtualbox/VBoxPython2_5.so
usr/lib/virtualbox/VBoxPython2_6.so
usr/lib/virtualbox/VBoxPython2_7.so
usr/lib/virtualbox/VBoxXPCOMC.so
usr/lib/virtualbox/VBoxOGLhostcrutil.so
usr/lib/virtualbox/VBoxNetDHCP.so
usr/lib/virtualbox/VBoxNetNAT.so"
REQUIRED_USE="
java? ( sdk )
python? (
( sdk )
)
vboxwebsrv? ( java )
${PYTHON_REQUIRED_USE}
"
pkg_setup() {
if ! use headless && ! use qt4 ; then
einfo "No USE=\"qt4\" selected, this build will not include"
einfo "any Qt frontend."
elif use headless && use qt4 ; then
einfo "You selected USE=\"headless qt4\", defaulting to"
einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
fi
if ! use opengl ; then
einfo "No USE=\"opengl\" selected, this build will lack"
einfo "the OpenGL feature."
fi
if ! use python ; then
einfo "You have disabled the \"python\" USE flag. This will only"
einfo "disable the python bindings being installed."
fi
java-pkg-opt-2_pkg_setup
python-single-r1_pkg_setup
}
src_prepare() {
# Remove shipped binaries (kBuild,yasm), see bug #232775
rm -rf kBuild/bin tools
# Disable things unused or split into separate ebuilds
sed -e "s@MY_LIBDIR@$(get_libdir)@" \
"${FILESDIR}"/${PN}-4-localconfig > LocalConfig.kmk || die
# Respect LDFLAGS
sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
# Use PAM only when pam USE flag is enbaled (bug #376531)
if ! use pam ; then
elog "Disabling PAM removes the possibility to use the VRDP features."
sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
src/VBox/HostServices/Makefile.kmk || die
fi
# add correct java path
if use java ; then
sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
-i "${S}"/Config.kmk || die
java-pkg-opt-2_src_prepare
fi
if ! gcc-specs-pie ; then
EPATCH_EXCLUDE="050_${PN}-4.3.4-nopie.patch"
fi
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
epatch "${WORKDIR}/patches"
epatch_user
}
src_configure() {
local myconf
use alsa || myconf+=" --disable-alsa"
use doc || myconf+=" --disable-docs"
use java || myconf+=" --disable-java"
use opengl || myconf+=" --disable-opengl"
use pulseaudio || myconf+=" --disable-pulse"
use python || myconf+=" --disable-python"
use vboxwebsrv && myconf+=" --enable-webservice"
use vnc && myconf+=" --enable-vnc"
if ! use headless ; then
use qt4 || myconf+=" --disable-qt4"
else
myconf+=" --build-headless --disable-opengl"
fi
if use amd64 && ! has_multilib_profile ; then
myconf+=" --disable-vmmraw"
fi
# not an autoconf script
./configure \
--with-gcc="$(tc-getCC)" \
--with-g++="$(tc-getCXX)" \
--disable-kmods \
--disable-dbus \
--disable-devmapper \
${myconf} \
|| die "configure failed"
}
src_compile() {
source ./env.sh
# Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
# and strip all flags
# strip-flags
MAKE="kmk" emake \
VBOX_BUILD_PUBLISHER=_Gentoo \
TOOL_GCC3_CC="$(tc-getCC)" TOOL_GCC3_CXX="$(tc-getCXX)" \
TOOL_GCC3_AS="$(tc-getCC)" TOOL_GCC3_AR="$(tc-getAR)" \
TOOL_GCC3_LD="$(tc-getCXX)" TOOL_GCC3_LD_SYSMOD="$(tc-getLD)" \
TOOL_GCC3_CFLAGS="${CFLAGS}" TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" \
VBOX_GCC_OPT="${CXXFLAGS}" \
TOOL_YASM_AS=yasm KBUILD_PATH="${S}/kBuild" \
KBUILD_VERBOSE=2 \
all
}
src_install() {
cd "${S}"/out/linux.${ARCH}/release/bin || die
# Create configuration files
insinto /etc/vbox
newins "${FILESDIR}/${PN}-4-config" vbox.cfg
# Set the right libdir
sed -i \
-e "s@MY_LIBDIR@$(get_libdir)@" \
"${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
# Symlink binaries to the shipped wrapper
exeinto /usr/$(get_libdir)/${PN}
newexe "${FILESDIR}/${PN}-ose-3-wrapper" "VBox"
fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBox
fperms 0750 /usr/$(get_libdir)/${PN}/VBox
dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxManage
dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxVRDP
dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxHeadless
dosym /usr/$(get_libdir)/${PN}/VBoxTunctl /usr/bin/VBoxTunctl
# Install binaries and libraries
insinto /usr/$(get_libdir)/${PN}
doins -r components
if use sdk ; then
doins -r sdk
fi
if use vboxwebsrv ; then
doins vboxwebsrv
fowners root:vboxusers /usr/$(get_libdir)/${PN}/vboxwebsrv
fperms 0750 /usr/$(get_libdir)/${PN}/vboxwebsrv
dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/vboxwebsrv
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
fi
local gcfiles="*gc"
if use amd64 && ! has_multilib_profile ; then
gcfiles=""
fi
for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,NetAdpCtl,NetDHCP,NetNAT,ExtPackHelperApp} *so *r0 ${gcfiles} ; do
doins ${each}
fowners root:vboxusers /usr/$(get_libdir)/${PN}/${each}
fperms 0750 /usr/$(get_libdir)/${PN}/${each}
done
# VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
fperms 4750 /usr/$(get_libdir)/${PN}/VBoxNetAdpCtl
fperms 4750 /usr/$(get_libdir)/${PN}/VBoxNetDHCP
fperms 4750 /usr/$(get_libdir)/${PN}/VBoxNetNAT
# VBoxSVC needs to be pax-marked (bug #403453)
pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxSVC || die
pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxManage || die
if ! use headless ; then
for each in VBox{SDL,Headless} ; do
doins ${each}
fowners root:vboxusers /usr/$(get_libdir)/${PN}/${each}
fperms 4750 /usr/$(get_libdir)/${PN}/${each}
pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/${each}
done
if use opengl && use qt4 ; then
doins VBoxTestOGL
fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxTestOGL
fperms 0750 /usr/$(get_libdir)/${PN}/VBoxTestOGL
fi
dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxSDL
if use qt4 ; then
doins VirtualBox
fowners root:vboxusers /usr/$(get_libdir)/${PN}/VirtualBox
fperms 4750 /usr/$(get_libdir)/${PN}/VirtualBox
pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VirtualBox \
|| die
dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VirtualBox
newmenu "${FILESDIR}"/${PN}-ose.desktop-2 ${PN}.desktop
fi
pushd "${S}"/src/VBox/Resources/OSE &>/dev/null || die
for size in 16 32 48 64 128 ; do
newicon -s ${size} ${PN}-${size}px.png ${PN}.png
done
newicon ${PN}-48px.png ${PN}.png
popd &>/dev/null || die
else
doins VBoxHeadless
fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxHeadless
fperms 4750 /usr/$(get_libdir)/${PN}/VBoxHeadless
pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxHeadless || die
fi
insinto /usr/$(get_libdir)/${PN}
# Install EFI Firmware files (bug #320757)
pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
for fwfile in VBoxEFI{32,64}.fd ; do
doins ${fwfile}
fowners root:vboxusers /usr/$(get_libdir)/${PN}/${fwfile}
done
popd &>/dev/null || die
# New way of handling USB device nodes for VBox (bug #356215)
local udevdir="$(udev_get_udevdir)"
insinto ${udevdir}
doins VBoxCreateUSBNode.sh
fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
insinto ${udevdir}/rules.d
doins "${FILESDIR}"/10-virtualbox.rules
sed "s@%UDEVDIR%@${udevdir}@" \
-i "${D}"${udevdir}/rules.d/10-virtualbox.rules || die
insinto /usr/share/${PN}
if ! use headless && use qt4 ; then
doins -r nls
fi
# VRDPAuth only works with this (bug #351949)
dosym VBoxAuth.so /usr/$(get_libdir)/${PN}/VRDPAuth.so
# set an env-variable for 3rd party tools
echo -n "VBOX_APP_HOME=/usr/$(get_libdir)/${PN}" > "${T}/90virtualbox"
doenvd "${T}/90virtualbox"
if use java ; then
java-pkg_regjar "${D}/usr/$(get_libdir)/${PN}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
java-pkg_regso "${D}/usr/$(get_libdir)/${PN}/libvboxjxpcom.so"
fi
}
pkg_postinst() {
fdo-mime_desktop_database_update
udevadm control --reload-rules && udevadm trigger --subsystem-match=usb
if ! use headless && use qt4 ; then
elog "To launch VirtualBox just type: \"VirtualBox\"."
fi
elog "You must be in the vboxusers group to use VirtualBox."
elog ""
elog "The latest user manual is available for download at:"
elog "http://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf"
elog ""
elog "For advanced networking setups you should emerge:"
elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
elog ""
elog "IMPORTANT!"
elog "If you upgrade from app-emulation/virtualbox-ose make sure to run"
elog "\"env-update\" as root and logout and relogin as the user you wish"
elog "to run ${PN} as."
elog ""
elog "Starting with version 4.0.0, ${PN} has USB-1 support."
elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
elog " app-emulation/virtualbox-extpack-oracle"
elog "package."
if [ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ] ; then
elog ""
elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
elog "or else USB in ${PN} won't work."
fi
}
pkg_postrm() {
fdo-mime_desktop_database_update
}