diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2015-10-20 23:42:01 +0200 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2015-10-20 23:42:24 +0200 |
commit | 26d40d4304fa227c9965166f4115cbc86fb6b15c (patch) | |
tree | 9f760a631a259b27b576d7e2b1e445462fbf911f /app-emulation/virtualbox | |
parent | virtualbox packages: Bump to version 5.0.8 (diff) | |
download | gentoo-26d40d4304fa227c9965166f4115cbc86fb6b15c.tar.gz gentoo-26d40d4304fa227c9965166f4115cbc86fb6b15c.tar.bz2 gentoo-26d40d4304fa227c9965166f4115cbc86fb6b15c.zip |
virtualbox packages: Removed old.
Package-Manager: portage-2.2.23
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Diffstat (limited to 'app-emulation/virtualbox')
-rw-r--r-- | app-emulation/virtualbox/Manifest | 1 | ||||
-rw-r--r-- | app-emulation/virtualbox/virtualbox-5.0.4.ebuild | 434 | ||||
-rw-r--r-- | app-emulation/virtualbox/virtualbox-5.0.6.ebuild | 431 |
3 files changed, 0 insertions, 866 deletions
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest index 68535b7638fb..81ba2ddede7d 100644 --- a/app-emulation/virtualbox/Manifest +++ b/app-emulation/virtualbox/Manifest @@ -1,6 +1,5 @@ DIST VirtualBox-4.3.28.tar.bz2 100092002 SHA256 e157ab76d1958ae2c56b2a3875194fbff3de82486ad0e30032fd5bd772297c31 SHA512 b6e849a1420515b6dbda8cee0ab64940dd93296ec58cde76676ac257ff3dad0459aa1fd0bda7e1d0abc751d2d59f055465b198a546fdbb4e70e934a78654a8fc WHIRLPOOL 1b739f1f989032e07829a23ffadadd49e31109d70b0effbc44126a48a165218ff3ebafa576fa0e4f2af76a404033b60e5c9804ac43db5dd3024f1eca25ca70da DIST VirtualBox-4.3.30.tar.bz2 97428942 SHA256 ea9569ec16cd6202ee61bcadb2506d31ac12fd343adb91565773a05eaaea9a36 SHA512 d0817335cf4bd196da93b91ede6bc9e48ca0d471166ab2790dbf508a4574e4ace54a86053932abf3b4e804c583e80a713d2ab2e556dc15bee6ef3a62f88b95fc WHIRLPOOL 47cbd702e83cc737e04b5862cc6c52e32be244dc1dc0145f582f57b2f19bb898f0f4b200576a28f10a3290691f1ffd43c256e8c8eb5545a9723be8eefca88a38 -DIST VirtualBox-5.0.4.tar.bz2 109865904 SHA256 b19e23fc8e71f38aef7c059f44e59fcbff3bb2ce85baa8de81f1629b85f68fcf SHA512 4349792390f0a236faef0bdb06806dde604373dcccf83351f805508a2fdcae9f729a5e793ac53c4d134c50e48c0624b340328a7bb21ddcf15ed69a08365eb2b5 WHIRLPOOL cacf3193231a8500a3b475ede2d0f0458a656d87d3d97b78ccb743c1606f7f6ec58f6d56cb1bc0a40e9eb279d4cbeeab3318d1e71be3dead07fe4ccff6bdfbcf DIST VirtualBox-5.0.6.tar.bz2 109863328 SHA256 22d63f28c43165a31dcccdec1c65f376f46d7e09555c47611cfaafb5576a5843 SHA512 3e51c9476c29a3ba79adda2d3b0c0b516459f58c8aa5e7b795be1aa2468b8e61241bbe5615787d7302a5f95230a446377bd8698f801c2114b26a471ae8bbbc11 WHIRLPOOL 11603c9aa14acac87032b5d8fc1f8d0a567632ca591230e0cc5c1d9a1ae9b39ebccb1a3bb85e1845abc01b04da550a2ef889e1bf91da0bb82df1fafa384f88b4 DIST VirtualBox-5.0.8.tar.bz2 110540476 SHA256 e043518b7ab150e478c00b622360a5feb95f4e5b19e72bfcc71174356e2dacb3 SHA512 2a8e0f3e5fbb4b45786aa48cb408cf712cd968af65b25219eb39d54274612978704359b620179d751e828783950eb29d4cf330ac408a84dd65edbd0d98e25aa4 WHIRLPOOL 2b054cdb5c7c39008e876f0703e154509f4a79183aa85c4998717ae07a72e015a71bd22dc0427c8a464b3e16db92ebe9d731971f9788fbe56c8cc936669496fe DIST virtualbox-4.3.16-patches-01.tar.xz 4288 SHA256 270c4f01b2c13c4133987b3acc073dfbf78840212cf09f083dbf8fc80407ce6f SHA512 595f88c4b388b4807347c15c1750ec73aceba1c82ad993e9a05c7b78dfece7b679aff0338b3a48e2ccee7911fb5ed0dba803052332a270230078551f747052bc WHIRLPOOL 2157ee3fb9beed906cff28647c869e37d62551ad8c93801c0f0ec6893675f11786aa6d92acf11c348d30aa58b6e03a3faa879c664dddac6e5b8525035986c9ca diff --git a/app-emulation/virtualbox/virtualbox-5.0.4.ebuild b/app-emulation/virtualbox/virtualbox-5.0.4.ebuild deleted file mode 100644 index 3151d9e3878a..000000000000 --- a/app-emulation/virtualbox/virtualbox-5.0.4.ebuild +++ /dev/null @@ -1,434 +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 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 - 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_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/patches" - - # x86 build fixes (#561758) - epatch "${FILESDIR}"/${P}-x86_buildfix_{1,2}.patch - - 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 - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/${each} ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/${each}" - fi - done - - if ! use headless ; then - doins VBoxSDL - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxSDL - fperms 4750 /usr/$(get_libdir)/${PN}/VBoxSDL - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxSDL ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxSDL" - fi - - if use opengl && use qt4 ; then - doins VBoxTestOGL - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxTestOGL - fperms 0750 /usr/$(get_libdir)/${PN}/VBoxTestOGL - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxTestOGL ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxTestOGL" - fi - 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 - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VirtualBox ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VirtualBox" - fi - - 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 - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxHeadless ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxHeadless" - 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." - 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 -} diff --git a/app-emulation/virtualbox/virtualbox-5.0.6.ebuild b/app-emulation/virtualbox/virtualbox-5.0.6.ebuild deleted file mode 100644 index b10c46121722..000000000000 --- a/app-emulation/virtualbox/virtualbox-5.0.6.ebuild +++ /dev/null @@ -1,431 +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 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 - 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_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 - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/${each} ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/${each}" - fi - done - - if ! use headless ; then - doins VBoxSDL - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxSDL - fperms 4750 /usr/$(get_libdir)/${PN}/VBoxSDL - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxSDL ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxSDL" - fi - - if use opengl && use qt4 ; then - doins VBoxTestOGL - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBoxTestOGL - fperms 0750 /usr/$(get_libdir)/${PN}/VBoxTestOGL - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxTestOGL ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxTestOGL" - fi - 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 - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VirtualBox ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VirtualBox" - fi - - 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 - if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxHeadless ; then - ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxHeadless" - 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." - 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 -} |