diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2010-05-10 13:21:17 +0000 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2010-05-10 13:21:17 +0000 |
commit | 117369e6ddd60ffce3d06dc47c961fb78212bebe (patch) | |
tree | 1b7ddc9a29754563b92780ec1c7ce0da6642b2a6 /app-emulation | |
parent | x86 stable wrt bug #317629 (diff) | |
download | historical-117369e6ddd60ffce3d06dc47c961fb78212bebe.tar.gz historical-117369e6ddd60ffce3d06dc47c961fb78212bebe.tar.bz2 historical-117369e6ddd60ffce3d06dc47c961fb78212bebe.zip |
version bump
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'app-emulation')
6 files changed, 618 insertions, 3 deletions
diff --git a/app-emulation/virtualbox-bin/ChangeLog b/app-emulation/virtualbox-bin/ChangeLog index a8c8adc9355a..5d862a1ea1f7 100644 --- a/app-emulation/virtualbox-bin/ChangeLog +++ b/app-emulation/virtualbox-bin/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/virtualbox-bin # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog,v 1.76 2010/03/28 13:42:57 patrick Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog,v 1.77 2010/05/10 13:21:17 polynomial-c Exp $ + +*virtualbox-bin-3.1.8 (10 May 2010) + + 10 May 2010; Lars Wendler <polynomial-c@gentoo.org> + +virtualbox-bin-3.1.8.ebuild: + version bump *virtualbox-bin-3.1.6 (28 Mar 2010) diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-3.1.8.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-3.1.8.ebuild new file mode 100644 index 000000000000..c0e1970c6acb --- /dev/null +++ b/app-emulation/virtualbox-bin/virtualbox-bin-3.1.8.ebuild @@ -0,0 +1,296 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/virtualbox-bin-3.1.8.ebuild,v 1.1 2010/05/10 13:21:17 polynomial-c Exp $ + +EAPI=2 + +inherit eutils fdo-mime pax-utils + +MY_PV=${PV}-61349 +MY_P=VirtualBox-${MY_PV}-Linux + +DESCRIPTION="Family of powerful x86 virtualization products for enterprise as well as home use" +HOMEPAGE="http://www.virtualbox.org/" +SRC_URI="amd64? ( http://download.virtualbox.org/virtualbox/${PV}/${MY_P}_amd64.run ) + x86? ( http://download.virtualbox.org/virtualbox/${PV}/${MY_P}_x86.run ) + sdk? ( http://download.virtualbox.org/virtualbox/${PV}/VirtualBoxSDK-${MY_PV}.zip )" + +LICENSE="PUEL" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+additions +chm headless python sdk vboxwebsrv rdesktop-vrdp" +RESTRICT="mirror" +PROPERTIES="interactive" + +DEPEND="app-arch/unzip" + +RDEPEND="!!app-emulation/virtualbox-ose + !app-emulation/virtualbox-ose-additions + ~app-emulation/virtualbox-modules-${PV} + !headless? ( + x11-libs/libXcursor + media-libs/libsdl[X] + x11-libs/libXrender + x11-libs/libXfixes + media-libs/libpng + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXinerama + x11-libs/libXft + media-libs/freetype + media-libs/fontconfig + x11-libs/libXext + dev-libs/glib + chm? ( dev-libs/expat ) + ) + x11-libs/libXt + dev-libs/libxml2 + x11-libs/libXau + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libSM + x11-libs/libICE + x11-libs/libXdmcp + python? ( dev-lang/python )" + +S=${WORKDIR} + +QA_TEXTRELS_amd64="opt/VirtualBox/VBoxVMM.so" +QA_TEXTRELS_x86="opt/VirtualBox/VBoxGuestPropSvc.so + opt/VirtualBox/VBoxSDL.so + opt/VirtualBox/VBoxPython2_4.so + opt/VirtualBox/VBoxPython2_6.so + opt/VirtualBox/VBoxDbg.so + opt/VirtualBox/VBoxSharedFolders.so + opt/VirtualBox/VBoxDD2.so + opt/VirtualBox/VBoxOGLrenderspu.so + opt/VirtualBox/VBoxPython.so + opt/VirtualBox/VBoxPython2_3.so + opt/VirtualBox/VBoxDD.so + opt/VirtualBox/VBoxVRDP.so + opt/VirtualBox/VBoxDDU.so + opt/VirtualBox/VBoxREM64.so + opt/VirtualBox/VBoxSharedClipboard.so + opt/VirtualBox/VBoxHeadless.so + opt/VirtualBox/VBoxRT.so + opt/VirtualBox/VRDPAuth.so + opt/VirtualBox/VBoxREM.so + opt/VirtualBox/VBoxSettings.so + opt/VirtualBox/VBoxKeyboard.so + opt/VirtualBox/VBoxSharedCrOpenGL.so + opt/VirtualBox/VBoxVMM.so + opt/VirtualBox/VirtualBox.so + opt/VirtualBox/VBoxOGLhosterrorspu.so + opt/VirtualBox/components/VBoxC.so + opt/VirtualBox/components/VBoxSVCM.so + opt/VirtualBox/VBoxREM32.so + opt/VirtualBox/VBoxPython2_5.so + opt/VirtualBox/VBoxXPCOMC.so + opt/VirtualBox/VBoxOGLhostcrutil.so + opt/VirtualBox/VBoxNetDHCP.so" +QA_PRESTRIPPED="opt/VirtualBox/VBoxDD.so + opt/VirtualBox/VBoxDD2.so + opt/VirtualBox/VBoxDDU.so + opt/VirtualBox/VBoxDbg.so + opt/VirtualBox/VBoxGuestPropSvc.so + opt/VirtualBox/VBoxHeadless + opt/VirtualBox/VBoxHeadless.so + opt/VirtualBox/VBoxKeyboard.so + opt/VirtualBox/VBoxManage + opt/VirtualBox/VBoxNetAdpCtl + opt/VirtualBox/VBoxNetDHCP + opt/VirtualBox/VBoxNetDHCP.so + opt/VirtualBox/VBoxOGLhostcrutil.so + opt/VirtualBox/VBoxOGLhosterrorspu.so + opt/VirtualBox/VBoxOGLrenderspu.so + opt/VirtualBox/VBoxPython.so + opt/VirtualBox/VBoxPython2_3.so + opt/VirtualBox/VBoxPython2_4.so + opt/VirtualBox/VBoxPython2_5.so + opt/VirtualBox/VBoxPython2_6.so + opt/VirtualBox/VBoxREM.so + opt/VirtualBox/VBoxREM32.so + opt/VirtualBox/VBoxREM64.so + opt/VirtualBox/VBoxRT.so + opt/VirtualBox/VBoxSDL + opt/VirtualBox/VBoxSDL.so + opt/VirtualBox/VBoxSVC + opt/VirtualBox/VBoxSettings.so + opt/VirtualBox/VBoxSharedClipboard.so + opt/VirtualBox/VBoxSharedCrOpenGL.so + opt/VirtualBox/VBoxSharedFolders.so + opt/VirtualBox/VBoxTestOGL + opt/VirtualBox/VBoxTunctl + opt/VirtualBox/VBoxVMM.so + opt/VirtualBox/VBoxVRDP.so + opt/VirtualBox/VBoxXPCOM.so + opt/VirtualBox/VBoxXPCOMC.so + opt/VirtualBox/VBoxXPCOMIPCD + opt/VirtualBox/VRDPAuth.so + opt/VirtualBox/VirtualBox + opt/VirtualBox/VirtualBox.so + opt/VirtualBox/accessible/libqtaccessiblewidgets.so + opt/VirtualBox/components/VBoxC.so + opt/VirtualBox/components/VBoxSVCM.so + opt/VirtualBox/components/VBoxXPCOMIPCC.so + opt/VirtualBox/kchmviewer + opt/VirtualBox/libQtCoreVBox.so.4 + opt/VirtualBox/libQtGuiVBox.so.4 + opt/VirtualBox/libQtNetworkVBox.so.4 + opt/VirtualBox/libQtOpenGLVBox.so.4 + opt/VirtualBox/vboxwebsrv" + +pkg_setup() { + # We cannot mirror VirtualBox PUEL licensed files see: + # http://www.virtualbox.org/wiki/Licensing_FAQ + check_license +} + +src_unpack() { + unpack_makeself ${MY_P}_${ARCH}.run + unpack ./VirtualBox.tar.bz2 + + if use sdk; then + unpack VirtualBoxSDK-${MY_PV}.zip + fi +} + +src_install() { + # create virtualbox configurations files + insinto /etc/vbox + newins "${FILESDIR}/${PN}-config" vbox.cfg + + if ! use headless ; then + newicon VBox.png ${PN}.png + newmenu "${FILESDIR}"/${PN}.desktop ${PN}.desktop + fi + + insinto /opt/VirtualBox + dodir /opt/bin + + doins UserManual.pdf + + if use sdk ; then + doins -r sdk || die + fi + + if use additions; then + doins -r additions || die + fi + + if use vboxwebsrv; then + doins vboxwebsrv || die + fowners root:vboxusers /opt/VirtualBox/vboxwebsrv + fperms 0750 /opt/VirtualBox/vboxwebsrv + dosym /opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv + fi + + if use rdesktop-vrdp; then + doins rdesktop-vrdp || die + doins -r rdesktop-vrdp-keymaps || die + fperms 0750 /opt/VirtualBox/rdesktop-vrdp + fi + + if ! use headless && use chm; then + doins kchmviewer VirtualBox.chm || die + fowners root:vboxusers /opt/VirtualBox/kchmviewer + fperms 0750 /opt/VirtualBox/kchmviewer + fi + + if use python; then + if has_version "=dev-lang/python-2.4*"; then + doins VBoxPython2_4.so || die + fi + + if has_version "=dev-lang/python-2.5*"; then + doins VBoxPython2_5.so || die + fi + + if has_version "=dev-lang/python-2.6*"; then + doins VBoxPython2_6.so || die + fi + fi + + rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \ + vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \ + VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \ + webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \ + 90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \ + VBoxPython2_*.so + + if use headless ; then + rm -rf VBoxSDL VirtualBox VBoxKeyboard.so + fi + + doins -r * || die + + # create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid) + dosym /opt/VirtualBox/VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so + dosym /opt/VirtualBox/VBoxREM.so /opt/VirtualBox/components/VBoxREM.so + dosym /opt/VirtualBox/VBoxRT.so /opt/VirtualBox/components/VBoxRT.so + dosym /opt/VirtualBox/VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so + dosym /opt/VirtualBox/VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so + + local each + for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,NetAdpCtl,NetDHCP,TestOGL}; do + fowners root:vboxusers /opt/VirtualBox/${each} + fperms 0750 /opt/VirtualBox/${each} + pax-mark -m "${D}"/opt/VirtualBox/${each} + done + # VBoxNetAdpCtl binary needs to be suid root in any case.. + fperms 4750 /opt/VirtualBox/VBoxNetAdpCtl + + if ! use headless ; then + # Hardened build: Mark selected binaries set-user-ID-on-execution + for each in VBox{SDL,Headless} VirtualBox; do + fowners root:vboxusers /opt/VirtualBox/${each} + fperms 4510 /opt/VirtualBox/${each} + pax-mark -m "${D}"/opt/VirtualBox/${each} + done + + dosym /opt/VirtualBox/VBox.sh /opt/bin/VirtualBox + dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxSDL + else + # Hardened build: Mark selected binaries set-user-ID-on-execution + fowners root:vboxusers /opt/VirtualBox/VBoxHeadless + fperms 4510 /opt/VirtualBox/VBoxHeadless + pax-mark -m "${D}"/opt/VirtualBox/VBoxHeadless + fi + + if use rdesktop-vrdp; then + dosym /opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp + fi + + exeinto /opt/VirtualBox + newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh" || die + fowners root:vboxusers /opt/VirtualBox/VBox.sh + fperms 0750 /opt/VirtualBox/VBox.sh + + dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxManage + dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxVRDP + dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxHeadless + dosym /opt/VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl + + # set an env-variable for 3rd party tools + echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox" + doenvd "${T}/90virtualbox" +} + +pkg_postinst() { + fdo-mime_desktop_database_update + elog "" + if ! use headless ; then + elog "To launch VirtualBox just type: \"VirtualBox\"" + elog "" + fi + elog "You must be in the vboxusers group to use VirtualBox." + elog "" + elog "For advanced networking setups you should emerge:" + elog "net-misc/bridge-utils and sys-apps/usermode-utilities" +} + +pkg_postrm() { + fdo-mime_desktop_database_update +} diff --git a/app-emulation/virtualbox-ose-additions/ChangeLog b/app-emulation/virtualbox-ose-additions/ChangeLog index dc86d7cfa5d6..33d9d537b614 100644 --- a/app-emulation/virtualbox-ose-additions/ChangeLog +++ b/app-emulation/virtualbox-ose-additions/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/virtualbox-ose-additions # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-ose-additions/ChangeLog,v 1.36 2010/03/28 13:44:32 patrick Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-ose-additions/ChangeLog,v 1.37 2010/05/10 13:18:45 polynomial-c Exp $ + +*virtualbox-ose-additions-3.1.8 (10 May 2010) + + 10 May 2010; Lars Wendler <polynomial-c@gentoo.org> + +virtualbox-ose-additions-3.1.8.ebuild: + version bump *virtualbox-ose-additions-3.1.6 (28 Mar 2010) diff --git a/app-emulation/virtualbox-ose-additions/virtualbox-ose-additions-3.1.8.ebuild b/app-emulation/virtualbox-ose-additions/virtualbox-ose-additions-3.1.8.ebuild new file mode 100644 index 000000000000..6bc18bd1f094 --- /dev/null +++ b/app-emulation/virtualbox-ose-additions/virtualbox-ose-additions-3.1.8.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-ose-additions/virtualbox-ose-additions-3.1.8.ebuild,v 1.1 2010/05/10 13:18:45 polynomial-c Exp $ + +EAPI=2 + +inherit eutils + +MY_PN=VBoxGuestAdditions +MY_P=${MY_PN}_${PV} + +DESCRIPTION="Guest additions for VirtualBox" +HOMEPAGE="http://www.virtualbox.org/" +SRC_URI="http://download.virtualbox.org/virtualbox/${PV}/${MY_P}.iso" + +LICENSE="PUEL" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" +RESTRICT="mirror" +PROPERTIES="interactive" + +RDEPEND="!app-emulation/virtualbox-bin + !=app-emulation/virtualbox-ose-9999" + +pkg_setup() { + # We cannot mirror VirtualBox PUEL licensed files see: + # http://www.virtualbox.org/wiki/Licensing_FAQ + check_license +} + +src_unpack() { + return 0 +} + +src_install() { + insinto /usr/share/${PN/-additions} + newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso +} diff --git a/app-emulation/virtualbox-ose/ChangeLog b/app-emulation/virtualbox-ose/ChangeLog index 43b8c805034d..eef61390d14d 100644 --- a/app-emulation/virtualbox-ose/ChangeLog +++ b/app-emulation/virtualbox-ose/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/virtualbox-ose # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-ose/ChangeLog,v 1.49 2010/03/28 13:44:08 patrick Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-ose/ChangeLog,v 1.50 2010/05/10 13:20:23 polynomial-c Exp $ + +*virtualbox-ose-3.1.8 (10 May 2010) + + 10 May 2010; Lars Wendler <polynomial-c@gentoo.org> + +virtualbox-ose-3.1.8.ebuild: + version bump *virtualbox-ose-3.1.6 (28 Mar 2010) diff --git a/app-emulation/virtualbox-ose/virtualbox-ose-3.1.8.ebuild b/app-emulation/virtualbox-ose/virtualbox-ose-3.1.8.ebuild new file mode 100644 index 000000000000..bc4e11a19bd0 --- /dev/null +++ b/app-emulation/virtualbox-ose/virtualbox-ose-3.1.8.ebuild @@ -0,0 +1,262 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-ose/virtualbox-ose-3.1.8.ebuild,v 1.1 2010/05/10 13:20:23 polynomial-c Exp $ + +EAPI=2 + +inherit eutils fdo-mime flag-o-matic linux-info pax-utils qt4 toolchain-funcs + +if [[ ${PV} == "9999" ]] ; then + # XXX: should finish merging the -9999 ebuild into this one ... + ESVN_REPO_URI="http://www.virtualbox.org/svn/vbox/trunk" + inherit linux-mod subversion +else + MY_P=VirtualBox-${PV}-OSE + SRC_URI="http://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2" + S=${WORKDIR}/${MY_P/-OSE/_OSE} +fi + +DESCRIPTION="Software family of powerful x86 virtualization" +HOMEPAGE="http://www.virtualbox.org/" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+additions alsa +hal headless pulseaudio +opengl python +qt4 sdk vboxwebsrv" + +RDEPEND="!app-emulation/virtualbox-bin + ~app-emulation/virtualbox-modules-${PV} + dev-libs/libIDL + >=dev-libs/libxslt-1.1.19 + net-misc/curl + !headless? ( + qt4? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 opengl? ( x11-libs/qt-opengl:4 ) ) + opengl? ( virtual/opengl virtual/glut ) + x11-libs/libXcursor + media-libs/libsdl[X,video] + x11-libs/libXt + )" +DEPEND="${RDEPEND} + >=dev-util/kbuild-0.1.5-r1 + >=dev-lang/yasm-0.6.2 + sys-devel/bin86 + sys-devel/dev86 + sys-power/iasl + media-libs/libpng + sys-libs/libcap + dev-util/pkgconfig + alsa? ( >=media-libs/alsa-lib-1.0.13 ) + hal? ( sys-apps/hal ) + pulseaudio? ( media-sound/pulseaudio ) + python? ( >=dev-lang/python-2.3 ) + vboxwebsrv? ( >=net-libs/gsoap-2.7.13 )" +RDEPEND="${RDEPEND} + additions? ( ~app-emulation/virtualbox-ose-additions-${PV} )" + +QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so + usr/lib/virtualbox-ose/VBoxSDL.so + usr/lib/virtualbox-ose/VBoxSharedFolders.so + usr/lib/virtualbox-ose/VBoxDD2.so + usr/lib/virtualbox-ose/VBoxOGLrenderspu.so + usr/lib/virtualbox-ose/VBoxPython.so + usr/lib/virtualbox-ose/VBoxDD.so + usr/lib/virtualbox-ose/VBoxDDU.so + usr/lib/virtualbox-ose/VBoxREM64.so + usr/lib/virtualbox-ose/VBoxSharedClipboard.so + usr/lib/virtualbox-ose/VBoxHeadless.so + usr/lib/virtualbox-ose/VBoxRT.so + usr/lib/virtualbox-ose/VBoxREM.so + usr/lib/virtualbox-ose/VBoxSettings.so + usr/lib/virtualbox-ose/VBoxKeyboard.so + usr/lib/virtualbox-ose/VBoxSharedCrOpenGL.so + usr/lib/virtualbox-ose/VBoxVMM.so + usr/lib/virtualbox-ose/VirtualBox.so + usr/lib/virtualbox-ose/VBoxOGLhosterrorspu.so + usr/lib/virtualbox-ose/components/VBoxC.so + usr/lib/virtualbox-ose/components/VBoxSVCM.so + usr/lib/virtualbox-ose/components/VBoxDDU.so + usr/lib/virtualbox-ose/components/VBoxRT.so + usr/lib/virtualbox-ose/components/VBoxREM.so + usr/lib/virtualbox-ose/components/VBoxVMM.so + usr/lib/virtualbox-ose/VBoxREM32.so + usr/lib/virtualbox-ose/VBoxPython2_4.so + usr/lib/virtualbox-ose/VBoxPython2_5.so + usr/lib/virtualbox-ose/VBoxPython2_6.so + usr/lib/virtualbox-ose/VBoxXPCOMC.so + usr/lib/virtualbox-ose/VBoxOGLhostcrutil.so + usr/lib/virtualbox-ose/VBoxNetDHCP.so" + +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 +} + +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}-3-localconfig > LocalConfig.kmk || die + + # unset useless/problematic mesa checks in configure + epatch "${FILESDIR}/${PN}-3.0.0-mesa-check.patch" +} + +src_configure() { + local myconf + use alsa || myconf="${myconf} --disable-alsa" + use opengl || myconf="${myconf} --disable-opengl" + use pulseaudio || myconf="${myconf} --disable-pulse" + use python || myconf="${myconf} --disable-python" + use hal || myconf="${myconf} --disable-dbus" + use vboxwebsrv && myconf="${myconf} --enable-webservice" + if ! use headless ; then + use qt4 || myconf="${myconf} --disable-qt4" + else + myconf="${myconf} --build-headless --disable-opengl" + fi + # not an autoconf script + ./configure \ + --with-gcc="$(tc-getCC)" \ + --with-g++="$(tc-getCXX)" \ + --disable-kmods \ + ${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 \ + 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}" \ + TOOL_YASM_AS=yasm KBUILD_PATH="${S}/kBuild" \ + all || die "kmk failed" +} + +src_install() { + cd "${S}"/out/linux.*/release/bin || die + + # Create configuration files + insinto /etc/vbox + newins "${FILESDIR}/${PN}-3-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}-3-wrapper" "VBox" || die + 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 || die + + if use sdk ; then + doins -r sdk || die + fi + + if use vboxwebsrv ; then + doins vboxwebsrv || die + 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 + + for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,NetAdpCtl,NetDHCP} *so *r0 *gc ; do + doins $each || die + fowners root:vboxusers /usr/$(get_libdir)/${PN}/${each} + fperms 0750 /usr/$(get_libdir)/${PN}/${each} + done + # VBoxNetAdpCtl binary needs to be suid root in any case.. + fperms 4750 /usr/$(get_libdir)/${PN}/VBoxNetAdpCtl + + if ! use headless ; then + for each in VBox{SDL,Headless} ; do + doins $each || die + 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 ; then + doins VBoxTestOGL || die + 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 || die + fowners root:vboxusers /usr/$(get_libdir)/${PN}/VirtualBox + fperms 4750 /usr/$(get_libdir)/${PN}/VirtualBox + pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VirtualBox + + dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VirtualBox + fi + + newicon "${S}"/src/VBox/Frontends/VirtualBox/images/OSE/VirtualBox_32px.png ${PN}.png + domenu "${FILESDIR}"/${PN}.desktop + else + doins VBoxHeadless || die + fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxHeadless + fperms 4750 /usr/$(get_libdir)/${PN}/VBoxHeadless + pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxHeadless + fi + + insinto /usr/share/${PN} + if ! use headless && use qt4 ; then + doins -r nls + fi + + # set an env-variable for 3rd party tools + echo -n "VBOX_APP_HOME=/usr/$(get_libdir)/${PN}" > "${T}/90virtualbox" + doenvd "${T}/90virtualbox" +} + +pkg_postinst() { + fdo-mime_desktop_database_update + 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" +} + +pkg_postrm() { + fdo-mime_desktop_database_update +} |