commit:     c2a8232bc2413a5fa14e94d76f857a886efc0def
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 15 12:45:05 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Sep 15 13:01:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2a8232b

app-emulation/virtualbox: drop 7.1.0_beta2

Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                  |   2 -
 .../virtualbox-7.1.0_beta1-link-with-mold.patch    |  13 -
 .../virtualbox/virtualbox-7.1.0_beta2.ebuild       | 739 ---------------------
 3 files changed, 754 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest 
b/app-emulation/virtualbox/Manifest
index dc8bd9848169..bbf061a40605 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,11 +2,9 @@ DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B 
e244c4fa2ffe86216664104473e27e8
 DIST VirtualBox-7.0.18.tar.bz2 173295159 BLAKE2B 
1371d54d648aafbad3814d55d495836ce7a6f9ca955aeb71e24c57a27ed8acae8c020b8094ca7386d341d5e7460b9b0823cc01e7e69dd3cdadaadee1bc608bd1
 SHA512 
e78a18fa808152cbdc1d407751acf3f57a8202bf238ad3432c4f0b0f97ab203e915a6cd11619e64f4aca5b907eb72be67bab146869af0e73414144addf0d76b4
 DIST VirtualBox-7.0.20.tar.bz2 173300021 BLAKE2B 
23a1553578c8b89c3bea65fd9a451ef5abf419ce8a05524f2afc15b8d9a378a22ffb01c0c792d258320aeddb330b74f8f769180863041e333512d0eed2f4449c
 SHA512 
7682e24d60c1896c661f2689af6820ae67b6bd8d9faaf18c58e8159bc7694ef80722f8e9611d6272da5b46eb2f3a44fc637b277e6801b7a8bf53aad045a81fe9
 DIST VirtualBox-7.1.0.tar.bz2 205966296 BLAKE2B 
135805119d1710adbb17164d80a67f9b40fcc72d966af3b6d687b7f742a7bb487e76afc1ec45e31fe880a99a291ecdac3ee3dacdd342dbbe2dcec0eab32c8121
 SHA512 
d0fc27195b859fb537d57229d60a8895ced24b04c0f703c5862982de01d4787d20a3acb9cee4af29d18c56cd8c7ad846fd0eacc14af0c419e738953ca488463b
-DIST VirtualBox-7.1.0_BETA2.tar.bz2 208790183 BLAKE2B 
30d1fb0a37463ab4bf8673414cc56c51f618755fe4ec23720379df2519af7af3664c51c0b49955ee03ffdba0a55e67ec75df6af6d2ff79cd611b50c16048df3e
 SHA512 
730c9728e9bdf46e6846c423c13e8e438716eff518f30b102ef29eb71b6c88aa70fc786f1e8b63f9641ef0f90dd6c9768c4fbf002db9fc15ceb22865b4182b1e
 DIST virtualbox-help-7.0.18.tar.xz 3948116 BLAKE2B 
5715a7e609297387b5fccce0951c62e5969fd68adeecb869712e69f5e90daef97384bd3ff3c39de40903a1fabe7ac6d2f8ecdbb40de16abe955d40e49b962eec
 SHA512 
ec0f915b7221bc40d02f5f1675eb0defb5506b2f2bd96c063a96a9346e1c82428ccdda8b3adac43238c451ae185ac31af4a186da17ffe091469e14e696388b3a
 DIST virtualbox-help-7.0.20.tar.xz 3949292 BLAKE2B 
c56f736606fdedfb59bd1f4446a457587dcbe018d1be3162d94eca780cacfa45b49ba5a9c6b25970d28e5a428904bdfd34d2f229c1e24b567fd1b1959cbdc9ea
 SHA512 
e73e448b8aa875d0f6ae1fb398082fa7183e198191a9b509b63592b5df3a19069b805dcdc11d98da3971a14fd6670d8b0a777e5a6d6b63358f7a4f263ca8d31e
 DIST virtualbox-help-7.1.0.tar.xz 1631644 BLAKE2B 
408748619d1e981b9d5b5e615baca75ff297e9b7e745751767361b7b9c74345a3db1980734439f3868c412fe28a6b687b417adc3cc148d2e2b8a9fa60e48463b
 SHA512 
513b8474d4fbf7cdb83624dc8d344122c524d92f9f84b32784161c8e1cac8ddc2c265447621d7cd3cf105d555a044e6abf42155f413ba89d507eba7ce3b2da89
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B 
dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87
 SHA512 
1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
 DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B 
d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577
 SHA512 
a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992
 DIST virtualbox-patches-7.1.0.tar.bz2 5952 BLAKE2B 
cb024f36249d7d312c9d0f9231c22a9609d45de1d4c82ca36672fea703765d437d7a414d810adb5eb5f2db92018b669c3b5d0c32372c5ced90f5e13f82344ffa
 SHA512 
c6ef54b7d60f01f5f2b89c6fd7f8b7b509bc62bca0502114cedcbaaf9643445ea413bba481dcf43fb96b5b4d94d64395965682c1ee160d889213615c9272184c
-DIST virtualbox-patches-7.1.0_beta1.tar.bz2 5287 BLAKE2B 
5286b5ad2a8c54150f58e2675383ed611b385b9758e1ed6bf81c7551f01724f5132591b3f173b9605c226a200cf70bf3b170ab6c174554b34ed57ada7e35a12b
 SHA512 
d1599d990dd3341393c4be5f5d947b15de9345b6f1d7201fb44c2506d299479564ca7bf5a0c45ade14998e7a48c300e4514da626a248c0447fd31f3cb31e6715

diff --git 
a/app-emulation/virtualbox/files/virtualbox-7.1.0_beta1-link-with-mold.patch 
b/app-emulation/virtualbox/files/virtualbox-7.1.0_beta1-link-with-mold.patch
deleted file mode 100644
index 71e3edb26b3c..000000000000
--- a/app-emulation/virtualbox/files/virtualbox-7.1.0_beta1-link-with-mold.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-https://bugs.gentoo.org/925347
-
---- a/src/VBox/Frontends/VirtualBox/Makefile.kmk
-+++ b/src/VBox/Frontends/VirtualBox/Makefile.kmk
-@@ -1669,7 +1669,7 @@
- # The Qt modules we're using.
- # (The include directory and lib/framework for each module will be added by 
the Qt unit.)
- #
--UICommon_QT_MODULES = Core Gui Widgets Help StateMachine
-+UICommon_QT_MODULES = Core Gui Widgets Help PrintSupport StateMachine
- ifdef VBOX_WITH_SCREENSAVER_CONTROL
-  UICommon_QT_MODULES.linux    += DBus
-  UICommon_QT_MODULES.linux    += Xml

diff --git a/app-emulation/virtualbox/virtualbox-7.1.0_beta2.ebuild 
b/app-emulation/virtualbox/virtualbox-7.1.0_beta2.ebuild
deleted file mode 100644
index 19e72e29a5e4..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.1.0_beta2.ebuild
+++ /dev/null
@@ -1,739 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# USE=doc does not work for now.
-#
-#
-# To add a new Python here:
-# 1. Patch src/libs/xpcom18a4/python/Makefile.kmk (copy the previous impl's 
logic)
-#    Do NOT skip this part. It'll end up silently not-building the Python 
extension
-#    or otherwise misbehaving if you do.
-#
-# 2. Then update PYTHON_COMPAT & set PYTHON_SINGLE_TARGET for testing w/ 
USE=python.
-#
-#  May need to look at other distros (e.g. Arch Linux) to find patches for 
newer
-#  Python versions as upstream tends to lag. Upstream may have patches on their
-#  trunk branch but not release branch.
-#
-#  See bug #785835, bug #856121.
-PYTHON_COMPAT=( python3_{10..11} )
-
-inherit desktop edo flag-o-matic java-pkg-opt-2 linux-info multilib optfeature 
pax-utils \
-       python-single-r1 tmpfiles toolchain-funcs udev xdg
-
-MY_PN="VirtualBox"
-MY_PV=${PV^^}
-MY_P=${MY_PN}-${MY_PV}
-HELP_PV=7.0.20
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and 
home use"
-HOMEPAGE="https://www.virtualbox.org/";
-SRC_URI="
-       https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
-       
https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0_beta1.tar.bz2
-       gui? ( !doc? ( 
https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${HELP_PV}.tar.xz ) 
)
-"
-S="${WORKDIR}/${MY_PN}-${MY_PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-# Beta version
-#KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl 
python +sdk +sdl +udev vboxwebsrv vde +vmmraw vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-       acct-group/vboxusers
-       app-arch/xz-utils
-       ~app-emulation/virtualbox-modules-${PV}
-       dev-libs/libtpms
-       dev-libs/libxml2
-       dev-libs/openssl:0=
-       media-libs/libpng:0=
-       media-libs/libvpx:0=
-       net-misc/curl
-       sys-libs/zlib
-       dbus? ( sys-apps/dbus )
-       gui? (
-               dev-qt/qtbase:6[widgets]
-               dev-qt/qtscxml:6
-               dev-qt/qttools:6[assistant]
-               x11-libs/libX11
-               x11-libs/libXt
-       )
-       lvm? ( sys-fs/lvm2 )
-       opengl? (
-               media-libs/libglvnd[X]
-               media-libs/vulkan-loader
-               x11-libs/libX11
-               x11-libs/libXt
-       )
-       pam? ( sys-libs/pam )
-       python? ( ${PYTHON_DEPS} )
-       sdl? (
-               media-libs/libsdl2[X,video]
-               x11-libs/libX11
-               x11-libs/libXt
-       )
-       vboxwebsrv? ( net-libs/gsoap[-gnutls(-),debug?] )
-       vde? ( net-misc/vde )
-       vnc? ( >=net-libs/libvncserver-0.9.9 )
-"
-# We're stuck on JDK (and JRE, I guess?) 1.8 because of need for wsimport
-# with USE="vboxwebsrv java". Note that we have to put things in DEPEND,
-# not (only, anyway) BDEPEND, as the eclass magic to set the environment 
variables
-# based on *DEPEND doesn't work for BDEPEND at least right now.
-#
-# There's a comment in Config.kmk about it
-# ("With Java 11 wsimport was removed, usually part of a separate install 
now.")
-# but it needs more investigation.
-#
-# See bug #878299 to track this issue.
-DEPEND="
-       ${COMMON_DEPEND}
-       >=dev-libs/libxslt-1.1.19
-       virtual/libcrypt:=
-       x11-libs/libXt
-       alsa? ( >=media-libs/alsa-lib-1.0.13 )
-       gui? (
-               x11-base/xorg-proto
-               x11-libs/libxcb:=
-               x11-libs/libXcursor
-               x11-libs/libXext
-               x11-libs/libXinerama
-               x11-libs/libXmu
-               x11-libs/libXrandr
-       )
-       java? ( virtual/jdk:1.8 )
-       opengl? (
-               x11-base/xorg-proto
-               x11-libs/libXcursor
-               x11-libs/libXinerama
-               x11-libs/libXmu
-               x11-libs/libXrandr
-               virtual/glu
-       )
-       sdl? (
-               x11-libs/libXcursor
-               x11-libs/libXinerama
-       )
-       pulseaudio? ( media-libs/libpulse )
-       udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-       ${COMMON_DEPEND}
-       gui? ( x11-libs/libxcb:= )
-       java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-       >=app-arch/tar-1.34-r2
-       >=dev-lang/yasm-0.6.2
-       dev-libs/libIDL
-       dev-util/glslang
-       >=dev-build/kbuild-0.1.9998.3592
-       sys-apps/which
-       sys-devel/bin86
-       sys-libs/libcap
-       sys-power/iasl
-       virtual/pkgconfig
-       doc? (
-               app-text/docbook-sgml-dtd:4.4
-               app-text/docbook-xsl-ns-stylesheets
-               dev-texlive/texlive-basic
-               dev-texlive/texlive-latex
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-fontsextra
-               dev-qt/qthelp:5
-       )
-       gui? ( dev-qt/qttools:6[linguist] )
-       nls? ( dev-qt/qttools:6[linguist] )
-       java? ( virtual/jdk:1.8 )
-       python? ( ${PYTHON_DEPS} )
-"
-
-QA_FLAGS_IGNORED="
-       usr/lib64/virtualbox/VBoxDDR0.r0
-       usr/lib64/virtualbox/VMMR0.r0
-       
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
-       
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug
-"
-
-QA_TEXTRELS="
-       usr/lib64/virtualbox/VMMR0.r0
-       
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
-"
-
-QA_EXECSTACK="
-       usr/lib64/virtualbox/iPxeBaseBin
-       usr/lib64/virtualbox/VMMR0.r0
-       usr/lib64/virtualbox/VBoxDDR0.r0
-       
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
-       
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug
-"
-
-QA_WX_LOAD="
-       usr/lib64/virtualbox/iPxeBaseBin
-"
-
-QA_PRESTRIPPED="
-       usr/lib64/virtualbox/VMMR0.r0
-       usr/lib64/virtualbox/VBoxDDR0.r0
-       
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
-"
-
-REQUIRED_USE="
-       java? ( sdk )
-       python? ( sdk ${PYTHON_REQUIRED_USE} )
-       vboxwebsrv? ( java )
-"
-
-PATCHES=(
-       # Downloaded patchset
-       "${WORKDIR}"/virtualbox-patches-7.1.0_beta1/patches
-       "${FILESDIR}"/${PN}-7.1.0_beta1-link-with-mold.patch
-)
-
-DOCS=()        # Don't install the default README file during einstalldocs
-
-pkg_pretend() {
-       if ! use gui; then
-               einfo "No USE=\"gui\" selected, this build will not include any 
Qt frontend."
-       fi
-
-       if ! use opengl; then
-               einfo "No USE=\"opengl\" selected, this build will lack"
-               einfo "the OpenGL feature."
-       fi
-       if ! use nls && use gui; then
-               einfo "USE=\"gui\" also selects USE=\"nls\".  This build"
-               einfo "will have NLS support."
-       fi
-
-       # 749273
-       local d=${ROOT}
-       for i in usr "$(get_libdir)"; do
-               d="${d}/$i"
-               if [[ "$(stat -L -c "%g %u" "${d}")" != "0 0" ]]; then
-                       die "${d} should be owned by root, VirtualBox will not 
start otherwise"
-               fi
-       done
-}
-
-pkg_setup() {
-       java-pkg-opt-2_pkg_setup
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       default
-
-       # Only add nopie patch when we're on hardened
-       if gcc-specs-pie; then
-               eapply "${FILESDIR}"/050_virtualbox-5.2.8-nopie.patch
-       fi
-
-       # Remove shipped binaries (kBuild, yasm) and tools, see bug #232775
-       rm -r kBuild/bin || die
-       # Remove everything in tools except kBuildUnits
-       find tools -mindepth 1 -maxdepth 1 -name kBuildUnits -prune -o -exec rm 
-r {} \+ || die
-
-       # Disable things unused or split into separate ebuilds
-       sed -e "s@MY_LIBDIR@$(get_libdir)@" \
-               "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
-
-       if ! use pch; then
-               # bug #753323
-               printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \
-                       >> LocalConfig.kmk || die
-       fi
-
-       # bug #916002, #488176, #925347
-       tc-ld-is-mold || tc-ld-force-bfd
-
-       # Respect LDFLAGS
-       sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
-               -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
-
-       # Do not use hard-coded ld (related to bug #488176)
-       sed -e '/QUIET)ld /s@ld @$(LD) @' \
-               -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
-
-       # Use PAM only when pam USE flag is enbaled (bug #376531)
-       if ! use pam; then
-               einfo "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
-               echo -e "\nIPRT_WITHOUT_PAM=1" >> LocalConfig.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
-
-       # bug #908814
-       filter-lto
-
-       # bug #843437
-       cat >> LocalConfig.kmk <<-EOF || die
-               CXXFLAGS=${CXXFLAGS}
-               CFLAGS=${CFLAGS}
-       EOF
-
-       if use sdl; then
-               sed -i 's/sdl-config/sdl2-config/' configure || die
-               echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die
-       fi
-
-       #443830
-       echo -e "\nVBOX_WITH_VBOX_IMG=1" >> LocalConfig.kmk || die
-
-       if tc-is-clang; then
-               # clang assembler chokes on comments starting with /
-               sed -i -e '/^\//d' 
src/libs/xpcom18a4/nsprpub/pr/src/md/unix/os_Linux_x86_64.s || die
-
-               # clang does not support this extension
-               eapply 
"${FILESDIR}"/${PN}-7.0.8-disable-rebuild-iPxeBiosBin.patch
-       fi
-
-       # fix doc generation
-       echo -e 
"\nVBOX_PATH_DOCBOOK=/usr/share/sgml/docbook/xsl-ns-stylesheets" >> 
LocalConfig.kmk || die
-       # replace xhtml names with numeric equivalents
-       find doc/manual -name \*.xml -exec sed -i \
-               -e 's/&nbsp;/\&#160;/g' \
-               -e 's/&ndash;/\&#8211;/g' \
-               -e 's/&larr;/\&#8592;/g' \
-               -e 's/&rarr;/\&#8594;/g' \
-               -e 's/&harr;/\&#8596;/g' {} \+ || die
-
-       # fix help path #891879
-       echo -e "\nVBOX_PATH_PACKAGE_DOCS=/usr/share/doc/${PF}" >> 
LocalConfig.kmk || die
-
-       # 489208
-       # Cannot patch the whole text, many translations.  Use sed instead to 
replace the command
-       find src/VBox/Frontends/VirtualBox/nls -name \*.ts -exec sed -i \
-               's/&apos;[^&]*\(vboxdrv setup\|vboxconfig\)&apos;/\&apos;emerge 
-1 virtualbox-modules\&apos;/' {} \+ || die
-       sed -i "s:'/sbin/vboxconfig':'emerge -1 virtualbox-modules':" \
-               src/VBox/Frontends/VirtualBox/src/main.cpp \
-               src/VBox/VMM/VMMR3/VM.cpp || die
-
-       # 890561
-       echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
-
-       if ! use nls && ! use gui; then
-               cat >> LocalConfig.kmk <<-EOF || die
-                       VBOX_WITH_NLS :=
-                       VBOX_WITH_MAIN_NLS :=
-                       VBOX_WITH_PUEL_NLS :=
-                       VBOX_WITH_VBOXMANAGE_NLS :=
-               EOF
-       fi
-}
-
-src_configure() {
-       tc-export AR CC CXX LD RANLIB
-       export HOST_CC="$(tc-getBUILD_CC)"
-
-       local myconf=(
-               --with-gcc="$(tc-getCC)"
-               --with-g++="$(tc-getCXX)"
-
-               --disable-kmods
-
-               $(usev !alsa --disable-alsa)
-               $(usev !dbus --disable-dbus)
-               $(usev debug --build-debug)
-               $(usev !doc --disable-docs)
-               $(usev !java --disable-java)
-               $(usev !lvm --disable-devmapper)
-               $(usev !pulseaudio --disable-pulse)
-               $(usev !python --disable-python)
-               $(usev vboxwebsrv --enable-webservice)
-               $(usev vde --enable-vde)
-               $(usev !vmmraw --disable-vmmraw)
-               $(usev vnc --enable-vnc)
-       )
-
-       if use gui || use sdl || use opengl; then
-               myconf+=(
-                       $(usev !opengl --disable-opengl)
-                       $(usev !gui --disable-qt)
-                       $(usev !sdl --disable-sdl)
-               )
-       else
-               myconf+=(
-                       --build-headless
-               )
-       fi
-
-       if use amd64 && ! has_multilib_profile; then
-               myconf+=( --disable-vmmraw )
-       fi
-
-       # not an autoconf script
-       edo ./configure "${myconf[@]}"
-
-       # Force usage of chosen Python implementation
-       # bug #856121, bug #785835
-       sed -i \
-               -e '/VBOX_WITH_PYTHON.*=/d' \
-               -e '/VBOX_PATH_PYTHON_INC.*=/d' \
-               -e '/VBOX_LIB_PYTHON.*=/d' \
-               AutoConfig.kmk || die
-
-       if use python; then
-               cat >> AutoConfig.kmk <<-EOF || die
-                       VBOX_WITH_PYTHON=$(usev python 1)
-                       VBOX_PATH_PYTHON_INC=$(python_get_includedir)
-                       VBOX_LIB_PYTHON=$(python_get_library_path)
-               EOF
-
-               local mangled_python="${EPYTHON#python}"
-               mangled_python="${mangled_python/.}"
-
-               # Stub out the script which defines what the Makefile ends up
-               # building for. gen_python_deps.py gets called by the Makefile
-               # with some args and it spits out a bunch of paths for a 
hardcoded
-               # list of Pythons. We just override it with what we're actually 
using.
-               # This minimises the amount of patching we have to do for new 
Pythons.
-               cat > src/libs/xpcom18a4/python/gen_python_deps.py <<-EOF || die
-                       
print("VBOX_PYTHON${mangled_python}_INC=$(python_get_includedir)")
-                       
print("VBOX_PYTHON${mangled_python}_LIB=$(python_get_library_path)")
-                       print("VBOX_PYTHONDEF_INC=$(python_get_includedir)")
-                       print("VBOX_PYTHONDEF_LIB=$(python_get_library_path)")
-               EOF
-
-               chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die
-       else
-               cat >> AutoConfig.kmk <<-EOF || die
-                       VBOX_WITH_PYTHON:=
-               EOF
-       fi
-}
-
-src_compile() {
-       source ./env.sh || die
-
-       # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
-       MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< 
${MAKEOPTS})
-       MAKELOAD=$(grep -Eo 
'(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
-       MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
-
-       local myemakeargs=(
-               VBOX_BUILD_PUBLISHER=_Gentoo
-               VBOX_WITH_VBOXIMGMOUNT=1
-
-               KBUILD_VERBOSE=2
-
-               AS="$(tc-getCC)"
-               CC="$(tc-getCC)"
-               CXX="$(tc-getCXX)"
-
-               TOOL_GCC3_CC="$(tc-getCC)"
-               TOOL_GCC3_LD="$(tc-getCC)"
-               TOOL_GCC3_AS="$(tc-getCC)"
-               TOOL_GCC3_AR="$(tc-getAR)"
-               TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
-
-               TOOL_GXX3_CC="$(tc-getCC)"
-               TOOL_GXX3_CXX="$(tc-getCXX)"
-               TOOL_GXX3_LD="$(tc-getCXX)"
-               TOOL_GXX3_AS="$(tc-getCXX)"
-               TOOL_GXX3_AR="$(tc-getAR)"
-               TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)"
-
-               TOOL_GCC3_CFLAGS="${CFLAGS}"
-               TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
-               VBOX_GCC_OPT="${CXXFLAGS}"
-               VBOX_NM="$(tc-getNM)"
-
-               TOOL_YASM_AS=yasm
-       )
-
-       if use amd64 && has_multilib_profile; then
-               myemakeargs+=(
-                       CC32="$(tc-getCC) -m32"
-                       CXX32="$(tc-getCXX) -m32"
-
-                       TOOL_GCC32_CC="$(tc-getCC) -m32"
-                       TOOL_GCC32_CXX="$(tc-getCXX) -m32"
-                       TOOL_GCC32_LD="$(tc-getCC) -m32"
-                       TOOL_GCC32_AS="$(tc-getCC) -m32"
-                       TOOL_GCC32_AR="$(tc-getAR)"
-                       TOOL_GCC32_OBJCOPY="$(tc-getOBJCOPY)"
-
-                       TOOL_GXX32_CC="$(tc-getCC) -m32"
-                       TOOL_GXX32_CXX="$(tc-getCXX) -m32"
-                       TOOL_GXX32_LD="$(tc-getCXX) -m32"
-                       TOOL_GXX32_AS="$(tc-getCXX) -m32"
-                       TOOL_GXX32_AR="$(tc-getAR)"
-                       TOOL_GXX32_OBJCOPY="$(tc-getOBJCOPY)"
-               )
-       fi
-
-       MAKE="kmk" emake "${myemakeargs[@]}" all
-}
-
-src_install() {
-       cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
-
-       local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
-
-       vbox_inst() {
-               local binary="${1}"
-               local perms="${2:-0750}"
-               local path="${3:-${vbox_inst_path}}"
-
-               [[ -n "${binary}" ]] || die "vbox_inst: No binary 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
-
-       # Set the correct libdir
-       sed \
-               -e "s@MY_LIBDIR@$(get_libdir)@" \
-               -i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
-
-       # Install the wrapper script
-       exeinto ${vbox_inst_path}
-       newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
-       fowners root:vboxusers ${vbox_inst_path}/VBox
-       fperms 0750 ${vbox_inst_path}/VBox
-
-       # Install binaries and libraries
-       insinto ${vbox_inst_path}
-       doins -r components
-
-       for each in 
VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload}
 \
-               vboximg-mount vbox-img *so *r0; do
-               vbox_inst ${each}
-       done
-
-       # These binaries need to be suid root.
-       for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
-               vbox_inst ${each} 4750
-       done
-
-       # Install EFI Firmware files (bug #320757)
-       for each in VBoxEFI{32,64}.fd ; do
-               vbox_inst ${each} 0644
-       done
-
-       # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
-       # VBoxXPCOMIPCD (bug #524202)
-       for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
-               pax-mark -m "${ED}"${vbox_inst_path}/${each}
-       done
-
-       # Symlink binaries to the shipped wrapper
-       for each in vbox{autostart,balloonctrl,bugreport,headless,manage} \
-               VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
-                       dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-       done
-       dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
-       dosym ${vbox_inst_path}/vbox-img /usr/bin/vbox-img
-
-       if use pam; then
-               # VRDPAuth only works with this (bug #351949)
-               dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
-       fi
-
-       # set an env-variable for 3rd party tools
-       echo "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-       # environment variables used during SDK binding installation
-       echo "VBOX_SDK_PATH=${vbox_inst_path}/sdk" >> "${T}/90virtualbox"
-       echo "VBOX_INSTALL_PATH=${vbox_inst_path}" >> "${T}/90virtualbox"
-       doenvd "${T}/90virtualbox"
-
-       if use sdl; then
-               vbox_inst VBoxSDL 4750
-               pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
-
-               for each in vboxsdl VBoxSDL ; do
-                       dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-               done
-       fi
-
-       if use gui; then
-               vbox_inst VirtualBox
-               vbox_inst VirtualBoxVM 4750
-               for each in VirtualBox{,VM} ; do
-                       pax-mark -m "${ED}"${vbox_inst_path}/${each}
-               done
-
-               for each in virtualbox{,vm} VirtualBox{,VM} ; do
-                       dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-               done
-
-               insinto /usr/share/${PN}
-               doins -r nls
-               doins -r UnattendedTemplates
-
-               domenu ${PN}.desktop
-
-               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
-               pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
-               for size in 16 24 32 48 64 72 96 128 256 512 ; do
-                       for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
-                               icofile="${PN}-${ico}-${size}px.png"
-                               if [[ -f "${icofile}" ]]; then
-                                       newicon -s ${size} ${icofile} 
${PN}-${ico}.png
-                               fi
-                       done
-               done
-               popd &>/dev/null || die
-       fi
-
-       if use lvm; then
-               vbox_inst VBoxVolInfo 4750
-               dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
-       fi
-
-       if use sdk; then
-               insinto ${vbox_inst_path}
-               doins -r sdk
-
-               if use java; then
-                       java-pkg_regjar 
"${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
-                       java-pkg_regso 
"${ED}/${vbox_inst_path}/libvboxjxpcom.so"
-               fi
-       fi
-
-       if use udev; then
-               local udevdir="$(get_udevdir)"
-               local udev_file="VBoxCreateUSBNode.sh"
-               local rules_file="10-virtualbox.rules"
-
-               insinto ${udevdir}
-               doins ${udev_file}
-               fowners root:vboxusers ${udevdir}/${udev_file}
-               fperms 0750 ${udevdir}/${udev_file}
-
-               insinto ${udevdir}/rules.d
-               sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/${rules_file} \
-                       > "${T}"/${rules_file} || die
-               doins "${T}"/${rules_file}
-       fi
-
-       if use vboxwebsrv; then
-               vbox_inst vboxwebsrv
-               dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
-               newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
-               newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
-       fi
-
-       # Remove dead symlinks (bug #715338)
-       find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
-
-       # Fix version string in extensions or else they don't get accepted
-       # by the virtualbox host process (see bug #438930)
-       find ExtensionPacks -type f -name "ExtPack.xml" -exec sed -i 
'/Version/s@_Gentoo@@' {} \+ || die
-
-       local extensions_dir="${vbox_inst_path}/ExtensionPacks"
-
-       if use vnc; then
-               insinto ${extensions_dir}
-               doins -r ExtensionPacks/VNC
-       fi
-
-       if use dtrace; then
-               insinto ${extensions_dir}
-               doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
-       fi
-
-       if use doc; then
-               dodoc UserManual.pdf UserManual.q{ch,hc}
-               docompress -x /usr/share/doc/${PF}
-       elif use gui; then
-               dodoc "${WORKDIR}"/${PN}-help-${HELP_PV}/UserManual.q{ch,hc}
-               docompress -x /usr/share/doc/${PF}
-       fi
-
-       if use python; then
-               local 
python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython3.so"
-               if [[ ! -x "${python_path_ext}" ]]; then
-                       eerror "Couldn't find ${python_path_ext}! Bindings were 
requested with USE=python"
-                       eerror "but none were installed. This may happen if 
support for a Python target"
-                       eerror "(listed in PYTHON_COMPAT in the ebuild) is 
incomplete within the Makefiles."
-                       die "Incomplete installation of Python bindings! File a 
bug with Gentoo!"
-               fi
-
-               # 378871
-               local 
installer_dir="${ED}/usr/$(get_libdir)/virtualbox/sdk/installer/python/vboxapi/src"
-               pushd "${installer_dir}" &> /dev/null || die
-               sed -e "s;%VBOX_INSTALL_PATH%;${vbox_inst_path};" \
-                       -e "s;%VBOX_SDK_PATH%;${vbox_inst_path}/sdk;" \
-                       -i vboxapi/__init__.py || die
-               # insert shebang, the files come without one
-               find vboxapi -name \*.py -exec sed -e "1 i\#! ${PYTHON}" -i {} 
\+ || die
-               python_domodule vboxapi
-               popd &> /dev/null || die
-
-               # upstream added a /bin/sh stub here
-               # use /usr/bin/python3, python_doscript will take care of it
-               sed -e '1 i #! /usr/bin/python3' -i vboxshell.py
-               python_doscript vboxshell.py
-
-               # do not install the installer
-               rm -r "${installer_dir%vboxapi*}" || die
-       fi
-
-       newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
-}
-
-pkg_postinst() {
-       xdg_pkg_postinst
-
-       if use udev; then
-               udev_reload
-               udevadm trigger --subsystem-match=usb
-       fi
-
-       tmpfiles_process virtualbox-vboxusb.conf
-
-       if use gui; 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 
"https://download.virtualbox.org/virtualbox/${MY_PV}/UserManual.pdf";
-       elog ""
-
-       optfeature "Advanced networking setups" net-misc/bridge-utils 
sys-apps/usermode-utilities
-       optfeature "USB2, USB3, PXE boot, and VRDP support" 
app-emulation/virtualbox-extpack-oracle
-       optfeature "Guest additions ISO" app-emulation/virtualbox-additions
-
-       if ! use udev; then
-               ewarn "Without USE=udev, USB devices will likely not work in 
${PN}."
-       fi
-}
-
-pkg_postrm() {
-       xdg_pkg_postrm
-
-       use udev && udev_reload
-}

Reply via email to