diff options
Diffstat (limited to 'app-emulation/virtualbox')
-rw-r--r-- | app-emulation/virtualbox/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox/virtualbox-4.3.28.ebuild | 419 | ||||
-rw-r--r-- | app-emulation/virtualbox/virtualbox-5.0.12.ebuild | 423 |
3 files changed, 0 insertions, 844 deletions
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest index 2192d4a7c8be..0c9f363f8fde 100644 --- a/app-emulation/virtualbox/Manifest +++ b/app-emulation/virtualbox/Manifest @@ -1,8 +1,6 @@ -DIST VirtualBox-4.3.28.tar.bz2 100092002 SHA256 e157ab76d1958ae2c56b2a3875194fbff3de82486ad0e30032fd5bd772297c31 SHA512 b6e849a1420515b6dbda8cee0ab64940dd93296ec58cde76676ac257ff3dad0459aa1fd0bda7e1d0abc751d2d59f055465b198a546fdbb4e70e934a78654a8fc WHIRLPOOL 1b739f1f989032e07829a23ffadadd49e31109d70b0effbc44126a48a165218ff3ebafa576fa0e4f2af76a404033b60e5c9804ac43db5dd3024f1eca25ca70da DIST VirtualBox-4.3.32.tar.bz2 98168101 SHA256 dc5bf4e6f9989792d31bac174d20d7fc9e638654fa5a99c02b20a60557927261 SHA512 856b36cd90647cdceb7e182d066e9e1489d2bae0b71ce8b2f6324cd2d9854806eaea0fe0aad2d4e8b84bd836c688e13258ae69e094320572729b7d886c8d35f0 WHIRLPOOL 441041947dcd190d73a9cc5007bc0001b6eeb36ba958f4a09fca775670faff690423095d334e258fc0d6dcbef01d74a085505c8549397ced5dbe75ca96724144 DIST VirtualBox-4.3.34.tar.bz2 98166680 SHA256 076507e924d3c5ae05c5e80a720b897da4a57a636a506a7d369b28f08b11d6c1 SHA512 1eeca08990d426155550d8920c159e41320bfedb53561b1752bd6816fa588588672ad364e73baf9b7b45e8352ae8feb1c649ba1748253da47586b55fe89e8fe3 WHIRLPOOL 1249e1d61aec38d439d1060457a1a0d0294a65d78dfa426026f3abe1882c429c628ea58f556bdeaf1a88d3cdd3b9095f1e4c6f1fae2176f39f8da5bb3d091809 DIST VirtualBox-4.3.36.tar.bz2 98421624 SHA256 af0776df6d03b2709cb76a69f055487bf12bdb3b4163e2a82959860300283046 SHA512 179fd8c7d3562fd6c3c6815ef56a3dbda3fcbb841171f911a923ded06e627fb2e6e33f66124303b448a05c364343ec35e2fb264f462a48e52d66277dfd77bcfc WHIRLPOOL 0419c2baac6f07d729a35a54be872d7949cb6fa99a5ce0f2317df32f27e20e42f045811697e40255f240ec84b08a3a1f36a563841a341a528c37c9e63fda2e6d -DIST VirtualBox-5.0.12.tar.bz2 111001547 SHA256 de0362b1d404d1ca0298db1984acb6f0f1c6210313aeb744fea345ad9201e86e SHA512 eef01d1a5121905d2fbfcd48081f18db06433187bfbfea6a006b3adea11cad8c8351025fd19fa115c132231592330b17bfeba033a3a168f3064176a3f7586d7a WHIRLPOOL bd73e67c83a524cb021ff92c4c3d655f6a1019e2d48f3ec97aee937543ca9da6f7ba2a1e70a6b75092dce3c8db8f3c7887300104fafa23432b94bc832c5e5447 DIST VirtualBox-5.0.14.tar.bz2 111033626 SHA256 69abac7255b2251a18fd73c0b7c200d5f8ce72a59fa019b53a5cdbf7f2843002 SHA512 5547da58b50c9cf5d096f81c005134e1f56c4fb55d4d40a6fbd1efe1fe1fbeebc0747f0903933da9238a24c63eeed2c6c15bfc5cae5ce6e3e2eb4a18511d6258 WHIRLPOOL 785e0fa7a0652825b977562a1febbd95463ce49a9257a004827725597e0fbd59f9bdf75cc31f5b04e0f04be3d0d68e90148c06dd5d03875063312f8a3cd5bc86 DIST VirtualBox-5.0.16.tar.bz2 111062984 SHA256 f5a44d33a1db911f445b2eb2d22d9293a96a535cba488b5a235577ef868fa63c SHA512 3da3a227360fb50d299e99770378f65e8cb99525377343fa8faff2360be66643d46f68323d6a8b8d4d26182082f171bb35ab2497167bf6df18827a5ea7742074 WHIRLPOOL ea709057c588f28820790c2b193decba9ee0c57e0f82aa4361ca87aef661315182e18b5ee29558e47ed92f6037eb91befa5390680661a7b9f2248c7819b4a85c DIST virtualbox-4.3.16-patches-01.tar.xz 4288 SHA256 270c4f01b2c13c4133987b3acc073dfbf78840212cf09f083dbf8fc80407ce6f SHA512 595f88c4b388b4807347c15c1750ec73aceba1c82ad993e9a05c7b78dfece7b679aff0338b3a48e2ccee7911fb5ed0dba803052332a270230078551f747052bc WHIRLPOOL 2157ee3fb9beed906cff28647c869e37d62551ad8c93801c0f0ec6893675f11786aa6d92acf11c348d30aa58b6e03a3faa879c664dddac6e5b8525035986c9ca diff --git a/app-emulation/virtualbox/virtualbox-4.3.28.ebuild b/app-emulation/virtualbox/virtualbox-4.3.28.ebuild deleted file mode 100644 index f493f13b9c24..000000000000 --- a/app-emulation/virtualbox/virtualbox-4.3.28.ebuild +++ /dev/null @@ -1,419 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -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 - https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-4.3.16-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 +udev 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:0= - dev-libs/libxml2 - media-libs/libpng:0= - media-libs/libvpx:0= - sys-libs/zlib - !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] - ) - - java? ( || ( virtual/jre:1.7 virtual/jre:1.6 ) ) - udev? ( >=virtual/udev-171 ) - vnc? ( >=net-libs/libvncserver-0.9.9 )" -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[-gnutls(-)] ) - ${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.14-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 - - MAKEJOBS=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+') - MAKELOAD=$(echo ${MAKEOPTS} | egrep -o '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+') - MAKEOPTS="${MAKEJOBS} ${MAKELOAD}" - 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_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,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.. - for each in VBoxNet{AdpCtl,DHCP,NAT} ; do - doins ${each} - fowners root:vboxusers /usr/$(get_libdir)/${PN}/${each} - fperms 4750 /usr/$(get_libdir)/${PN}/${each} - done - - # VBoxSVC and VBoxManage need to be pax-marked (bug #403453) - # VBoxXPCOMIPCD (bug #524202) - for each in VBox{Manage,SVC,XPCOMIPCD} ; do - pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/${each} || die - done - - 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 - pax-mark -m "${D}"/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 - - if use udev ; then - # New way of handling USB device nodes for VBox (bug #356215) - local udevdir="$(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 - fi - - 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 - - if use udev ; then - udevadm control --reload-rules \ - && udevadm trigger --subsystem-match=usb - fi - - 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 ! use udev ; then - elog "" - elog "WARNING!" - elog "Without USE=udev, USB devices will likely not work in ${PN}." - elif [ -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 -} diff --git a/app-emulation/virtualbox/virtualbox-5.0.12.ebuild b/app-emulation/virtualbox/virtualbox-5.0.12.ebuild deleted file mode 100644 index 6a55b8560100..000000000000 --- a/app-emulation/virtualbox/virtualbox-5.0.12.ebuild +++ /dev/null @@ -1,423 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -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 - https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.0.2-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="alsa doc headless java libressl pam pulseaudio +opengl python +qt4 +sdk +udev vboxwebsrv vnc" - -RDEPEND="!app-emulation/virtualbox-bin - ~app-emulation/virtualbox-modules-${PV} - dev-libs/libIDL - >=dev-libs/libxslt-1.1.19 - net-misc/curl - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:= ) - dev-libs/libxml2 - media-libs/libpng:0= - media-libs/libvpx:0= - sys-libs/zlib - !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] - ) - - java? ( >=virtual/jre-1.6:= ) - udev? ( >=virtual/udev-171 ) - vnc? ( >=net-libs/libvncserver-0.9.9 )" -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/jre-1.6:= ) - virtual/pkgconfig - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - !headless? ( x11-libs/libXinerama ) - pulseaudio? ( media-sound/pulseaudio ) - vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] ) - ${PYTHON_DEPS}" - -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}-5-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}-5.0.2-nopie.patch" - fi - - EPATCH_EXCLUDE="007_virtualbox-4.3.16-gsoap2813.patch" \ - 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 - - MAKEJOBS=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+') - MAKELOAD=$(echo ${MAKEOPTS} | egrep -o '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+') - MAKEOPTS="${MAKEJOBS} ${MAKELOAD}" - 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_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 rcfiles="*.rc" - if use amd64 && ! has_multilib_profile ; then - rcfiles="" - fi - - for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,ExtPackHelperApp} *so *r0 ${rcfiles} ; 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.. - for each in VBoxNet{AdpCtl,DHCP,NAT} ; do - doins ${each} - fowners root:vboxusers /usr/$(get_libdir)/${PN}/${each} - fperms 4750 /usr/$(get_libdir)/${PN}/${each} - done - - # VBoxSVC and VBoxManage need to be pax-marked (bug #403453) - # VBoxXPCOMIPCD (bug #524202) - for each in VBox{Manage,SVC,XPCOMIPCD} ; do - pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/${each} - done - - if ! use headless ; then - doins VBoxSDL - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxSDL - fperms 4750 /usr/$(get_libdir)/${PN}/VBoxSDL - pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxSDL - - if use opengl && use qt4 ; then - doins VBoxTestOGL - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxTestOGL - fperms 0750 /usr/$(get_libdir)/${PN}/VBoxTestOGL - pax-mark -m "${D}"/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 - - dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VirtualBox - - newmenu "${FILESDIR}"/${PN}-ose.desktop-2 ${PN}.desktop - fi - - pushd "${S}"/src/VBox/Artwork/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 - doicon -s scalable ${PN}.svg - popd &>/dev/null || die - fi - - 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 - - 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 - - if use udev ; then - # New way of handling USB device nodes for VBox (bug #356215) - local udevdir="$(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 - fi - - 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 - - if use udev ; then - udevadm control --reload-rules \ - && udevadm trigger --subsystem-match=usb - fi - - 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." - elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and" - elog "the \"extension\" USE flag. For installation of the guest additions ISO" - elog "image, please emerge" - elog " app-emulation/virtualbox-additions" - elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge" - elog " app-emulation/virtualbox-extpack-oracle" - if ! use udev ; then - elog "" - elog "WARNING!" - elog "Without USE=udev, USB devices will likely not work in ${PN}." - elif [ -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 -} |