diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2016-03-07 15:31:59 +0100 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2016-03-07 15:51:40 +0100 |
commit | ecac0a7b35d333d48ecb88491b578959fc0cb681 (patch) | |
tree | 2e6b4f0e6caaad967f760dcbf9a143ecb25e163b /app-emulation/virtualbox | |
parent | dev-lang/go: Add ~arm keyword for #575510 (diff) | |
download | gentoo-ecac0a7b35d333d48ecb88491b578959fc0cb681.tar.gz gentoo-ecac0a7b35d333d48ecb88491b578959fc0cb681.tar.bz2 gentoo-ecac0a7b35d333d48ecb88491b578959fc0cb681.zip |
app-emulation/virtualbox: Bumped ebuild to EAPI-6.
Did some ebuild overhaul.
Package-Manager: portage-2.2.27
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.16.ebuild | 162 |
2 files changed, 79 insertions, 84 deletions
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest index 0c9f363f8fde..e29ebbceb70a 100644 --- a/app-emulation/virtualbox/Manifest +++ b/app-emulation/virtualbox/Manifest @@ -4,4 +4,5 @@ DIST VirtualBox-4.3.36.tar.bz2 98421624 SHA256 af0776df6d03b2709cb76a69f055487bf 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 +DIST virtualbox-5.0.16-patches-01.tar.xz 4024 SHA256 200eb980a12323a61d0fa6dbf61ed64ee1e2bb5e18e16eabdf8668d8fd8be3e4 SHA512 4eed117253754abee9088d4c320b4a6f0b3e1c8313b98f354cb727001156fe68d553a677073d40b921437f4cc073420866d1533aad4e61a79607d8360abbfd4a WHIRLPOOL ab40851873d55ae873ca8ff88670a17476c0d502116f4abda7b766064a2daa71929eb69b4b68c64c3d2d0762134fe85d07044bdedde4bf15924520a604972aaa DIST virtualbox-5.0.2-patches-01.tar.xz 4556 SHA256 8fcfa7972b0942f3e65bda73a35a6feb234aad770016fb4caafba105757d7ada SHA512 14ce8f0b17e593b2de676e0beaab688f29606aaea330151038fbb9259d3f5e4c22f254d1fa6cc45f968d81cf9f7d71deb9a7a32f565d07c1d9fa615431472ca9 WHIRLPOOL be73fd5576732f70f6ebb33a9d604d46a8fabdbdb0e187af3435f75412e21f62c0774130a9a6315e6b87ecf96d02398ffce828b3ab8f584716ed9a12e06d7cde diff --git a/app-emulation/virtualbox/virtualbox-5.0.16.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16.ebuild index 4c09818cfd57..6dca89bb4b4d 100644 --- a/app-emulation/virtualbox/virtualbox-5.0.16.ebuild +++ b/app-emulation/virtualbox/virtualbox-5.0.16.ebuild @@ -2,16 +2,16 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -EAPI=5 +EAPI=6 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 +inherit eutils fdo-mime flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 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" + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.0.16-patches-01.tar.xz" S="${WORKDIR}/${MY_P}" DESCRIPTION="Family of powerful x86 virtualization products for enterprise as well as home use" @@ -27,38 +27,38 @@ RDEPEND="!app-emulation/virtualbox-bin 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? ( + media-libs/libsdl:0[X,video] + x11-libs/libX11 + x11-libs/libXcursor + x11-libs/libXext + x11-libs/libXmu + x11-libs/libXt + opengl? ( virtual/opengl media-libs/freeglut ) 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:= ) + libressl? ( dev-libs/libressl:= ) + !libressl? ( dev-libs/openssl:0= ) 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 + sys-power/iasl + virtual/pkgconfig + alsa? ( >=media-libs/alsa-lib-1.0.13 ) doc? ( dev-texlive/texlive-basic dev-texlive/texlive-latex @@ -67,10 +67,9 @@ DEPEND="${RDEPEND} 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 ) + java? ( >=virtual/jre-1.6:= ) + pam? ( sys-libs/pam ) pulseaudio? ( media-sound/pulseaudio ) vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] ) ${PYTHON_DEPS}" @@ -101,9 +100,6 @@ QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.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 @@ -112,9 +108,7 @@ QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so REQUIRED_USE=" java? ( sdk ) - python? ( - ( sdk ) - ) + python? ( sdk ) vboxwebsrv? ( java ) ${PYTHON_REQUIRED_USE} " @@ -142,7 +136,7 @@ pkg_setup() { src_prepare() { # Remove shipped binaries (kBuild,yasm), see bug #232775 - rm -rf kBuild/bin tools + rm -r kBuild/bin tools || die # Disable things unused or split into separate ebuilds sed -e "s@MY_LIBDIR@$(get_libdir)@" \ @@ -168,34 +162,31 @@ src_prepare() { fi if ! gcc-specs-pie ; then - EPATCH_EXCLUDE="050_${PN}-5.0.2-nopie.patch" + rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die fi - EPATCH_EXCLUDE="007_virtualbox-4.3.16-gsoap2813.patch" \ - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/patches" + eapply "${WORKDIR}/patches" - epatch_user + eapply_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" + 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" + use qt4 || myconf+=( --disable-qt4 ) else - myconf+=" --build-headless --disable-opengl" + myconf+=( --build-headless --disable-opengl ) fi if use amd64 && ! has_multilib_profile ; then - myconf+=" --disable-vmmraw" + myconf+=( --disable-vmmraw ) fi # not an autoconf script ./configure \ @@ -204,12 +195,12 @@ src_configure() { --disable-kmods \ --disable-dbus \ --disable-devmapper \ - ${myconf} \ + ${myconf[@]} \ || die "configure failed" } src_compile() { - source ./env.sh + source ./env.sh || die # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529) # and strip all flags @@ -232,6 +223,22 @@ src_compile() { src_install() { cd "${S}"/out/linux.${ARCH}/release/bin || die + local vbox_inst_path="/usr/$(get_libdir)/${PN}" + + vbox_inst() { + local binary="${1}" + local perms="${2:-0750}" + local path="${3:-${vbox_inst_path}}" + + [[ -n "${binary}" ]] || die "vbox_inst: No binray given!" + [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits." + + insinto ${path} + doins ${binary} + fowners root:vboxusers ${path}/${binary} + fperms ${perms} ${path}/${binary} + } + # Create configuration files insinto /etc/vbox newins "${FILESDIR}/${PN}-4-config" vbox.cfg @@ -242,10 +249,10 @@ src_install() { "${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed" # Symlink binaries to the shipped wrapper - exeinto /usr/$(get_libdir)/${PN} + exeinto ${vbox_inst_path} newexe "${FILESDIR}/${PN}-ose-3-wrapper" "VBox" - fowners root:vboxusers /usr/$(get_libdir)/${PN}/VBox - fperms 0750 /usr/$(get_libdir)/${PN}/VBox + fowners root:vboxusers ${vbox_inst_path}/VBox + fperms 0750 ${vbox_inst_path}/VBox dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxManage dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxVRDP @@ -253,7 +260,7 @@ src_install() { dosym /usr/$(get_libdir)/${PN}/VBoxTunctl /usr/bin/VBoxTunctl # Install binaries and libraries - insinto /usr/$(get_libdir)/${PN} + insinto ${vbox_inst_path} doins -r components if use sdk ; then @@ -261,60 +268,49 @@ src_install() { 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 + vbox_inst vboxwebsrv + dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv fi + # *.rc files for x86_64 are only available on multilib systems 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} + vbox_inst ${each} done - # VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case.. + # 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} + vbox_inst ${each} 4750 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} + pax-mark -m "${D}"${vbox_inst_path}/${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 + vbox_inst VBoxSDL 4750 + pax-mark -m "${D}"${vbox_inst_path}/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 + vbox_inst VBoxTestOGL + pax-mark -m "${D}"${vbox_inst_path}/VBoxTestOGL fi - dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxSDL + dosym ${vbox_inst_path}/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 + vbox_inst VirtualBox 4750 + pax-mark -m "${D}"${vbox_inst_path}/VirtualBox - dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VirtualBox + dosym ${vbox_inst_path}/VBox /usr/bin/VirtualBox newmenu "${FILESDIR}"/${PN}-ose.desktop-2 ${PN}.desktop fi @@ -328,17 +324,15 @@ src_install() { 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 + vbox_inst VBoxHeadless 4750 + pax-mark -m "${D}"${vbox_inst_path}/VBoxHeadless - insinto /usr/$(get_libdir)/${PN} + insinto ${vbox_inst_path} # 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} + fowners root:vboxusers ${vbox_inst_path}/${fwfile} done popd &>/dev/null || die @@ -361,15 +355,15 @@ src_install() { fi # VRDPAuth only works with this (bug #351949) - dosym VBoxAuth.so /usr/$(get_libdir)/${PN}/VRDPAuth.so + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so # set an env-variable for 3rd party tools - echo -n "VBOX_APP_HOME=/usr/$(get_libdir)/${PN}" > "${T}/90virtualbox" + echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${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" + java-pkg_regjar "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar" + java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so" fi } |