public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-08-16 13:53 Patrice Clement
  0 siblings, 0 replies; 198+ messages in thread
From: Patrice Clement @ 2015-08-16 13:53 UTC (permalink / raw
  To: gentoo-commits

commit:     12a4bee5575e673c108f532617df5f16088e0910
Author:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 16 14:52:59 2015 +0000
Commit:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Sun Aug 16 14:53:30 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12a4bee5

app-emulation/virtualbox: remove hard dependency on {jre,jdk}-1.7 and set {jre,jdk}-1.6 as a minimum requirement. Fixes bug 556424.

Package-Manager: portage-2.2.18
Signed-off-by: Patrice Clement <monsieurp <AT> gentoo.org>

 .../virtualbox/virtualbox-5.0.0-r1.ebuild          | 425 +++++++++++++++++++++
 1 file changed, 425 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.0-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.0-r1.ebuild
new file mode 100644
index 0000000..c7f848e
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-5.0.0-r1.ebuild
@@ -0,0 +1,425 @@
+# 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
+	http://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.0.0_beta3-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}-4.3.14-nopie.patch"
+	fi
+
+	EPATCH_SUFFIX="patch" \
+	EPATCH_FORCE="yes" \
+	epatch "${WORKDIR}/patches"
+
+	#epatch "${FILESDIR}/${PN}-5.0.0_beta1-dont_build_validationkit.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 gcfiles="*gc"
+	#if use amd64 && ! has_multilib_profile ; then
+	#	gcfiles=""
+	#fi
+
+	for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,ExtPackHelperApp} *so *r0 *.rc ; 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."
+	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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-08-30 11:32 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2015-08-30 11:32 UTC (permalink / raw
  To: gentoo-commits

commit:     0c47a8b7329b0c71443d382b203bd96c67b84764
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 30 11:32:10 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Aug 30 11:32:10 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c47a8b7

app-emulation/virtualbox: Warn on pax-mark failure (bug #558510)

instead of failing. Added subslot dependencies to the virtual/jre dep.

Package-Manager: portage-2.2.20.1

 app-emulation/virtualbox/virtualbox-5.0.2.ebuild | 25 ++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.2.ebuild b/app-emulation/virtualbox/virtualbox-5.0.2.ebuild
index 3b49c09..ffd4b84 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.2.ebuild
@@ -48,7 +48,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 		media-libs/libsdl:0[X,video]
 	)
 
-	java? ( >=virtual/jre-1.6 )
+	java? ( >=virtual/jre-1.6:= )
 	udev? ( >=virtual/udev-171 )
 	vnc? ( >=net-libs/libvncserver-0.9.9 )"
 DEPEND="${RDEPEND}
@@ -66,7 +66,7 @@ DEPEND="${RDEPEND}
 		dev-texlive/texlive-fontsrecommended
 		dev-texlive/texlive-fontsextra
 	)
-	java? ( >=virtual/jre-1.6 )
+	java? ( >=virtual/jre-1.6:= )
 	virtual/pkgconfig
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
 	!headless? ( x11-libs/libXinerama )
@@ -288,20 +288,26 @@ src_install() {
 	# 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
+		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
-		pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxSDL || die
+		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
-			pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxTestOGL || die
+			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
@@ -310,8 +316,9 @@ src_install() {
 			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
+			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
 
@@ -330,7 +337,9 @@ src_install() {
 	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
+	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)


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-09-10 21:01 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2015-09-10 21:01 UTC (permalink / raw
  To: gentoo-commits

commit:     7c492cff119474a7200ba3fd884a348570a112b7
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 10 21:00:52 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Sep 10 21:01:38 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c492cff

app-emulation/virtualbox: Attempt to fix bug #555370

It seems on no-multilib systems some files are not generated.

Package-Manager: portage-2.2.20.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.0.4.ebuild | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.4.ebuild b/app-emulation/virtualbox/virtualbox-5.0.4.ebuild
index ffd4b84..b10c461 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.4.ebuild
@@ -267,12 +267,12 @@ src_install() {
 		newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
 	fi
 
-	#local gcfiles="*gc"
-	#if use amd64 && ! has_multilib_profile ; then
-	#	gcfiles=""
-	#fi
+	local rcfiles="*.rc"
+	if use amd64 && ! has_multilib_profile ; then
+		rcfiles=""
+	fi
 
-	for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,ExtPackHelperApp} *so *r0 *.rc ; do
+	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}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-10-06 10:26 Julian Ospald
  0 siblings, 0 replies; 198+ messages in thread
From: Julian Ospald @ 2015-10-06 10:26 UTC (permalink / raw
  To: gentoo-commits

commit:     068a16463b2cb57a5ba9d80fce431fee8436a4fa
Author:     Julian Ospald <hasufell <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  6 09:58:51 2015 +0000
Commit:     Julian Ospald <hasufell <AT> gentoo <DOT> org>
CommitDate: Tue Oct  6 10:25:43 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=068a1646

app-emulation/virtualbox: add libressl support

 .../virtualbox/virtualbox-5.0.6-r1.ebuild          | 432 +++++++++++++++++++++
 1 file changed, 432 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.6-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.6-r1.ebuild
new file mode 100644
index 0000000..7619b88
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-5.0.6-r1.ebuild
@@ -0,0 +1,432 @@
+# 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
+	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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-10-21  6:40 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2015-10-21  6:40 UTC (permalink / raw
  To: gentoo-commits

commit:     fa388a0782efe62d5ff60d6f527226b11a241982
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 21 06:39:37 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Oct 21 06:39:59 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa388a07

app-emulation/virtualbox: Removed useless warning when pax-mark fails.

Package-Manager: portage-2.2.23
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.0.8.ebuild | 20 +++++---------------
 1 file changed, 5 insertions(+), 15 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.8.ebuild b/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
index eab9aeb..a3e23f6 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
@@ -290,26 +290,20 @@ src_install() {
 	# 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
+		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
-		if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxSDL ; then
-			ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxSDL"
-		fi
+		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
-			if ! pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxTestOGL ; then
-				ewarn "Couldn't pax-mark /usr/$(get_libdir)/${PN}/VBoxTestOGL"
-			fi
+			pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxTestOGL
 		fi
 
 		dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VBoxSDL
@@ -318,9 +312,7 @@ src_install() {
 			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
+			pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VirtualBox
 
 			dosym /usr/$(get_libdir)/${PN}/VBox /usr/bin/VirtualBox
 
@@ -339,9 +331,7 @@ src_install() {
 	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
+	pax-mark -m "${D}"/usr/$(get_libdir)/${PN}/VBoxHeadless
 
 	insinto /usr/$(get_libdir)/${PN}
 	# Install EFI Firmware files (bug #320757)


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-11-06  8:46 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2015-11-06  8:46 UTC (permalink / raw
  To: gentoo-commits

commit:     f6892c9a38c2caa63e4185686b1cc651c0e3e956
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  6 08:40:16 2015 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Fri Nov  6 08:40:16 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6892c9a

app-emulation/virtualbox: amd64 stable wrt bug #564156

Package-Manager: portage-2.2.20.1

 app-emulation/virtualbox/virtualbox-4.3.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
index 0ad1eb4..d745767 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="+additions alsa doc extensions headless java libressl pam pulseaudio +opengl python +qt4 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2015-11-19 21:28 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2015-11-19 21:28 UTC (permalink / raw
  To: gentoo-commits

commit:     bd2be6bf0d0c8682fdff4b43ff2c2217722a7214
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 19 21:27:47 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Nov 19 21:28:03 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd2be6bf

app-emulation/virtualbox: Added subslot dependency for media-libs/libvpx.

Package-Manager: portage-2.2.25
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-4.3.28.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-4.3.32.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-4.3.34.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-5.0.10.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-5.0.8.ebuild  | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-4.3.28.ebuild b/app-emulation/virtualbox/virtualbox-4.3.28.ebuild
index 78d1f76..f493f13 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.28.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.28.ebuild
@@ -30,7 +30,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 	dev-libs/openssl:0=
 	dev-libs/libxml2
 	media-libs/libpng:0=
-	media-libs/libvpx
+	media-libs/libvpx:0=
 	sys-libs/zlib
 	!headless? (
 		qt4? (

diff --git a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
index d745767..d9527e4 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
@@ -31,7 +31,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 	libressl? ( dev-libs/libressl:= )
 	dev-libs/libxml2
 	media-libs/libpng:0=
-	media-libs/libvpx
+	media-libs/libvpx:0=
 	sys-libs/zlib
 	!headless? (
 		qt4? (

diff --git a/app-emulation/virtualbox/virtualbox-4.3.34.ebuild b/app-emulation/virtualbox/virtualbox-4.3.34.ebuild
index 0ad1eb4..118b333 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.34.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.34.ebuild
@@ -31,7 +31,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 	libressl? ( dev-libs/libressl:= )
 	dev-libs/libxml2
 	media-libs/libpng:0=
-	media-libs/libvpx
+	media-libs/libvpx:0=
 	sys-libs/zlib
 	!headless? (
 		qt4? (

diff --git a/app-emulation/virtualbox/virtualbox-5.0.10.ebuild b/app-emulation/virtualbox/virtualbox-5.0.10.ebuild
index a3e23f6..6a55b85 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.10.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.10.ebuild
@@ -31,7 +31,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 	libressl? ( dev-libs/libressl:= )
 	dev-libs/libxml2
 	media-libs/libpng:0=
-	media-libs/libvpx
+	media-libs/libvpx:0=
 	sys-libs/zlib
 	!headless? (
 		qt4? (

diff --git a/app-emulation/virtualbox/virtualbox-5.0.8.ebuild b/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
index a3e23f6..6a55b85 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
@@ -31,7 +31,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 	libressl? ( dev-libs/libressl:= )
 	dev-libs/libxml2
 	media-libs/libpng:0=
-	media-libs/libvpx
+	media-libs/libvpx:0=
 	sys-libs/zlib
 	!headless? (
 		qt4? (


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-02-22  8:42 Patrick Lauer
  0 siblings, 0 replies; 198+ messages in thread
From: Patrick Lauer @ 2016-02-22  8:42 UTC (permalink / raw
  To: gentoo-commits

commit:     96d84150fa522ef1fd218c047fd9ea8f00514205
Author:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 22 08:35:11 2016 +0000
Commit:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
CommitDate: Mon Feb 22 08:41:44 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=96d84150

app-emulation/virtualbox: Remove myself from metadata

Package-Manager: portage-2.2.27

 app-emulation/virtualbox/metadata.xml | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index 2e30fb8..3dd12a5 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -5,10 +5,6 @@
     <email>polynomial-c@gentoo.org</email>
     <name>Lars Wendler</name>
   </maintainer>
-  <maintainer type="person">
-    <email>patrick@gentoo.org</email>
-    <name>Patrick Lauer</name>
-  </maintainer>
 <use>
 	<flag name="additions">Install Guest System Tools ISO</flag>
 	<flag name="extensions">Install extension module packages</flag>


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-03-05 22:38 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2016-03-05 22:38 UTC (permalink / raw
  To: gentoo-commits

commit:     b5be2457c02f8a7141a020201a6c2cc48ce4b20c
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Mar  5 22:33:20 2016 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Mar  5 22:34:56 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b5be2457

app-emulation/virtualbox: x86 stable wrt bug #564156

Package-Manager: portage-2.2.26

 app-emulation/virtualbox/virtualbox-4.3.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
index d9527e4..0d7f103 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
 IUSE="+additions alsa doc extensions headless java libressl pam pulseaudio +opengl python +qt4 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-03-07 14:51 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-03-07 14:51 UTC (permalink / raw
  To: gentoo-commits

commit:     82049238b1004c9715b574014e1c257924fe0f72
Author:     PPed72 <paolo.pedroni <AT> iol <DOT> it>
AuthorDate: Mon Mar  7 13:39:26 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Mar  7 14:51:43 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82049238

app-emulation/virtualbox: force usage of ld.bfd for virtualbox-5

See Gentoo bug #488176

 app-emulation/virtualbox/virtualbox-5.0.16.ebuild | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16.ebuild
index 6dca89b..f08a021 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.16.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.16.ebuild
@@ -132,6 +132,10 @@ pkg_setup() {
 	fi
 	java-pkg-opt-2_pkg_setup
 	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
 }
 
 src_prepare() {
@@ -146,6 +150,10 @@ src_prepare() {
 	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
 		elog "Disabling PAM removes the possibility to use the VRDP features."


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-03-07 14:51 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-03-07 14:51 UTC (permalink / raw
  To: gentoo-commits

commit:     ecac0a7b35d333d48ecb88491b578959fc0cb681
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Mar  7 14:31:59 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Mar  7 14:51:40 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecac0a7b

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 <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   1 +
 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 0c9f363..e29ebbc 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 4c09818..6dca89b 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
 }
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-03-11 21:50 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-03-11 21:50 UTC (permalink / raw
  To: gentoo-commits

commit:     4d14c9f62d34eac09789cb2857d89975dcb5d909
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 11 21:50:31 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Mar 11 21:50:53 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d14c9f6

app-emulation/virtualbox: Fixed USE="java" installation (bug #577080).

Package-Manager: portage-2.2.28
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
index c842c91..52335e1 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
@@ -343,10 +343,6 @@ src_install() {
 		popd &>/dev/null || die
 	fi
 
-	if use java ; then
-		java-pkg_regjar "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
-		java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so"
-	fi
 
 	if use lvm ; then
 		vbox_inst VBoxVolInfo 4750
@@ -356,6 +352,11 @@ src_install() {
 	if use sdk ; then
 		insinto ${vbox_inst_path}
 		doins -r sdk
+
+		if use java ; then
+			java-pkg_regjar "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
+			java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so"
+		fi
 	fi
 
 	if use udev ; then


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-03-21 10:59 Patrick Lauer
  0 siblings, 0 replies; 198+ messages in thread
From: Patrick Lauer @ 2016-03-21 10:59 UTC (permalink / raw
  To: gentoo-commits

commit:     35bb2ab3c6ad7dde3c8c1ad0579aa36a6b295c9a
Author:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 21 10:55:51 2016 +0000
Commit:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
CommitDate: Mon Mar 21 10:58:07 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=35bb2ab3

app-emulation/virtualbox: Whitespace, fix description

Package-Manager: portage-2.2.28

 app-emulation/virtualbox/virtualbox-4.3.32.ebuild    | 2 +-
 app-emulation/virtualbox/virtualbox-4.3.34.ebuild    | 2 +-
 app-emulation/virtualbox/virtualbox-4.3.36.ebuild    | 2 +-
 app-emulation/virtualbox/virtualbox-5.0.14.ebuild    | 2 +-
 app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild | 3 +--
 app-emulation/virtualbox/virtualbox-5.0.16.ebuild    | 2 +-
 6 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
index 0d7f103..07cd32e 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.32.ebuild
@@ -14,7 +14,7 @@ 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"
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"

diff --git a/app-emulation/virtualbox/virtualbox-4.3.34.ebuild b/app-emulation/virtualbox/virtualbox-4.3.34.ebuild
index 118b333..6d93580 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.34.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.34.ebuild
@@ -14,7 +14,7 @@ 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"
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"

diff --git a/app-emulation/virtualbox/virtualbox-4.3.36.ebuild b/app-emulation/virtualbox/virtualbox-4.3.36.ebuild
index f1f5859..0b79d12 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.36.ebuild
@@ -14,7 +14,7 @@ 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"
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"

diff --git a/app-emulation/virtualbox/virtualbox-5.0.14.ebuild b/app-emulation/virtualbox/virtualbox-5.0.14.ebuild
index 4c09818..8491f2c 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.14.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.14.ebuild
@@ -14,7 +14,7 @@ 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"
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
index 52335e1..bf4cc33 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
@@ -14,7 +14,7 @@ SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 	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"
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"
@@ -343,7 +343,6 @@ src_install() {
 		popd &>/dev/null || die
 	fi
 
-
 	if use lvm ; then
 		vbox_inst VBoxVolInfo 4750
 		dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16.ebuild
index f08a021..2ce9873 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.16.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.16.ebuild
@@ -14,7 +14,7 @@ SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 	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"
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-05-15 19:36 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-05-15 19:36 UTC (permalink / raw
  To: gentoo-commits

commit:     93b660ef48ae9a57161da4f53bc9879cd7fcb6c2
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun May 15 19:36:22 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun May 15 19:36:52 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93b660ef

app-emulation/virtualbox: Added debug USE flag (bug #583052).

Package-Manager: portage-2.2.28
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.0.20.ebuild | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.20.ebuild b/app-emulation/virtualbox/virtualbox-5.0.20.ebuild
index bf4cc33..6b54510 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.20.ebuild
@@ -20,7 +20,7 @@ HOMEPAGE="http://www.virtualbox.org/"
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="alsa doc headless java libressl lvm pam pulseaudio +opengl python +qt4 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc headless java libressl lvm pam pulseaudio +opengl python +qt4 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin
 	~app-emulation/virtualbox-modules-${PV}
@@ -182,6 +182,7 @@ src_prepare() {
 src_configure() {
 	local myconf
 	use alsa       || myconf+=( --disable-alsa )
+	use debug      && myconf+=( --build-debug )
 	use doc        || myconf+=( --disable-docs )
 	use java       || myconf+=( --disable-java )
 	use lvm        || myconf+=( --disable-devmapper )
@@ -230,7 +231,9 @@ src_compile() {
 }
 
 src_install() {
-	cd "${S}"/out/linux.${ARCH}/release/bin || die
+	local binpath="release"
+	use debug && binpath="debug"
+	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
 
 	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-06-13 14:23 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-06-13 14:23 UTC (permalink / raw
  To: gentoo-commits

commit:     f83513963afe06880885c2def91b267ccb6bc4e7
Author:     Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
AuthorDate: Sat Jun 11 18:02:20 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jun 13 14:23:18 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8351396

app-emulation/virtualbox: Remove pointless GCC limitations

Fixes configure w/ >=GCC-5.4 and >=GCC-6.1

Package-Manager: portage-2.2.28
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild | 4 ++++
 app-emulation/virtualbox/virtualbox-5.0.20.ebuild    | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
index bf4cc33..3d25bf9 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
@@ -143,6 +143,10 @@ src_prepare() {
 	# Remove shipped binaries (kBuild,yasm), see bug #232775
 	rm -r kBuild/bin tools || die
 
+	# Remove pointless GCC version limitations in check_gcc()
+	sed -e "/\s*-o\s*\\\(\s*\$cc_maj\s*-eq\s*[5-9]\s*-a\s*\$cc_min\s*-gt\s*[0-5]\s*\\\)\s*\\\/d" \
+		-i configure || die
+
 	# Disable things unused or split into separate ebuilds
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die

diff --git a/app-emulation/virtualbox/virtualbox-5.0.20.ebuild b/app-emulation/virtualbox/virtualbox-5.0.20.ebuild
index 6b54510..7f3c4a3 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.20.ebuild
@@ -143,6 +143,10 @@ src_prepare() {
 	# Remove shipped binaries (kBuild,yasm), see bug #232775
 	rm -r kBuild/bin tools || die
 
+	# Remove pointless GCC version limitations in check_gcc()
+	sed -e "/\s*-o\s*\\\(\s*\$cc_maj\s*-eq\s*[5-9]\s*-a\s*\$cc_min\s*-gt\s*[0-5]\s*\\\)\s*\\\/d" \
+		-i configure || die
+
 	# Disable things unused or split into separate ebuilds
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-07-13 10:16 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-07-13 10:16 UTC (permalink / raw
  To: gentoo-commits

commit:     e3bf261d91ef041f3b5b1ca6282180bfbdc73482
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 13 10:13:10 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jul 13 10:16:45 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3bf261d

app-emulation/virtualbox: Bump to versions 5.0.24 and 5.1.0

bug #586630

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   2 +
 app-emulation/virtualbox/virtualbox-5.0.24.ebuild | 436 +++++++++++++++++++++
 app-emulation/virtualbox/virtualbox-5.1.0.ebuild  | 438 ++++++++++++++++++++++
 3 files changed, 876 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 1a97f8d..b464140 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,5 +2,7 @@ DIST VirtualBox-4.3.32.tar.bz2 98168101 SHA256 dc5bf4e6f9989792d31bac174d20d7fc9
 DIST VirtualBox-4.3.36.tar.bz2 98421624 SHA256 af0776df6d03b2709cb76a69f055487bf12bdb3b4163e2a82959860300283046 SHA512 179fd8c7d3562fd6c3c6815ef56a3dbda3fcbb841171f911a923ded06e627fb2e6e33f66124303b448a05c364343ec35e2fb264f462a48e52d66277dfd77bcfc WHIRLPOOL 0419c2baac6f07d729a35a54be872d7949cb6fa99a5ce0f2317df32f27e20e42f045811697e40255f240ec84b08a3a1f36a563841a341a528c37c9e63fda2e6d
 DIST VirtualBox-5.0.16.tar.bz2 111062984 SHA256 f5a44d33a1db911f445b2eb2d22d9293a96a535cba488b5a235577ef868fa63c SHA512 3da3a227360fb50d299e99770378f65e8cb99525377343fa8faff2360be66643d46f68323d6a8b8d4d26182082f171bb35ab2497167bf6df18827a5ea7742074 WHIRLPOOL ea709057c588f28820790c2b193decba9ee0c57e0f82aa4361ca87aef661315182e18b5ee29558e47ed92f6037eb91befa5390680661a7b9f2248c7819b4a85c
 DIST VirtualBox-5.0.20.tar.bz2 111231246 SHA256 af9c0787aae22964a1192cefbf9aa91a40c1d41e5fea485adebf09ab922d4c2b SHA512 a039455eed3715b9aa42e2dc6b65ea68b27899c0bcf0065a93c53d1093cce56ebf8a6982cd804208ef9e51794eab9c5c4f3b20550d41532fd4addbd7afda0f8e WHIRLPOOL f74f0a910e5e3f7b1704f57e9831f88b1036efbc61e3b97779f5b2a337ad70d55638b59f356c769d4b6bfd5955348d490f5080b04a3f494f25eb176944756cfd
+DIST VirtualBox-5.0.24.tar.bz2 111252724 SHA256 9134b04ca21ca23534e2300aab5ab7ff60d21b56bfd2e21504316bfee73afa87 SHA512 81a40c8c76fda02260ff6bbfdc464dcdb1f95155725772cc1edbafe813ca96955714d5bfe0418e2db60c6983b7fa0eb8a32a3833348c314fc0a429f345b3038c WHIRLPOOL aaffc6c3fda0fbdb93c2ba27857b885c45194fa4bc78d7f4939148fc054bc0b8dc26fbf9bdcab3d0e2f4f873e6bfa07479411839ac97aea6d905538fe00daeb0
+DIST VirtualBox-5.1.0.tar.bz2 114065041 SHA256 2367c24f8c912b5599f3e2e7dc586ac2ca457e214add424bb5647fd72fa4740a SHA512 230097ae92e41ee5b5ec590126f75ba1f6dec44f2d0f6c0bb4b3063689c88413dede7684ea7b6f9455bbe69f46a546a2aba90af306e7d536d7f5611aeb5ec51a WHIRLPOOL a117b79875c20896276423469b159fe2fa4143a8e754e8e3b9affb0cbe66859669c401efb8e0b10be7e077d62cc1f439fd81f17a236b86c6281db0868200d26c
 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

diff --git a/app-emulation/virtualbox/virtualbox-5.0.24.ebuild b/app-emulation/virtualbox/virtualbox-5.0.24.ebuild
new file mode 100644
index 0000000..7f3c4a3
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-5.0.24.ebuild
@@ -0,0 +1,436 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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 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.16-patches-01.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="http://www.virtualbox.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa debug doc headless java libressl lvm 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/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
+		)
+	)
+	java? ( >=virtual/jre-1.6:= )
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	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-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	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
+	)
+	!headless? ( x11-libs/libXinerama )
+	java? ( >=virtual/jre-1.6:= )
+	pam? ( sys-libs/pam )
+	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_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
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Remove pointless GCC version limitations in check_gcc()
+	sed -e "/\s*-o\s*\\\(\s*\$cc_maj\s*-eq\s*[5-9]\s*-a\s*\$cc_min\s*-gt\s*[0-5]\s*\\\)\s*\\\/d" \
+		-i configure || die
+
+	# 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
+
+	# 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
+		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
+		rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die
+	fi
+
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+src_configure() {
+	local myconf
+	use alsa       || myconf+=( --disable-alsa )
+	use debug      && myconf+=( --build-debug )
+	use doc        || myconf+=( --disable-docs )
+	use java       || myconf+=( --disable-java )
+	use lvm        || myconf+=( --disable-devmapper )
+	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-dbus \
+		--disable-kmods \
+		${myconf[@]} \
+		|| die "configure failed"
+}
+
+src_compile() {
+	source ./env.sh || die
+
+	# 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() {
+	local binpath="release"
+	use debug && binpath="debug"
+	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
+
+	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile
+
+	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
+
+	# Set the right libdir
+	sed -i \
+		-e "s@MY_LIBDIR@$(get_libdir)@" \
+		"${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
+
+	# Install the wrapper script
+	exeinto ${vbox_inst_path}
+	newexe "${FILESDIR}/${PN}-ose-5-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
+
+	# *.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{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; do
+		vbox_inst ${each}
+	done
+
+	# These binaries need to be suid root in any case.
+	for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
+		vbox_inst ${each} 4750
+	done
+
+	# Install EFI Firmware files (bug #320757)
+	pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
+	for fwfile in VBoxEFI{32,64}.fd ; do
+		vbox_inst ${fwfile} 0644
+	done
+	popd &>/dev/null || die
+
+	# 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 "${D}"${vbox_inst_path}/${each}
+	done
+
+	# Symlink binaries to the shipped wrapper
+	for each in vbox{headless,manage} VBox{Headless,Manage,VRDP} ; do
+		dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+	done
+	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
+
+	# VRDPAuth only works with this (bug #351949)
+	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
+
+	# set an env-variable for 3rd party tools
+	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst VBoxSDL 4750
+		pax-mark -m "${D}"${vbox_inst_path}/VBoxSDL
+
+		for each in vboxsdl VBoxSDL ; do
+			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+		done
+
+		if use opengl && use qt4 ; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${D}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		if use qt4 ; then
+			vbox_inst VirtualBox 4750
+			pax-mark -m "${D}"${vbox_inst_path}/VirtualBox
+
+			for each in virtualbox VirtualBox ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+
+			insinto /usr/share/${PN}
+			doins -r nls
+
+			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
+
+	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 "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
+			java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so"
+		fi
+	fi
+
+	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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+}
+
+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.1.0.ebuild b/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
new file mode 100644
index 0000000..9916c3d
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
@@ -0,0 +1,438 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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 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.16-patches-01.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="http://www.virtualbox.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa debug doc headless java libressl lvm pam pulseaudio +opengl python +qt5 +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/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 )
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	java? ( >=virtual/jre-1.6:= )
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	udev? ( >=virtual/udev-171 )
+	vnc? ( >=net-libs/libvncserver-0.9.9 )"
+DEPEND="${RDEPEND}
+	>=dev-util/kbuild-0.1.9998_pre20131130-r1
+	>=dev-lang/yasm-0.6.2
+	sys-devel/bin86
+	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
+		dev-texlive/texlive-latexrecommended
+		dev-texlive/texlive-latexextra
+		dev-texlive/texlive-fontsrecommended
+		dev-texlive/texlive-fontsextra
+	)
+	!headless? ( x11-libs/libXinerama )
+	java? ( >=virtual/jre-1.6:= )
+	pam? ( sys-libs/pam )
+	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_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 qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Remove pointless GCC version limitations in check_gcc()
+	sed -e "/\s*-o\s*\\\(\s*\$cc_maj\s*-eq\s*[5-9]\s*-a\s*\$cc_min\s*-gt\s*[0-5]\s*\\\)\s*\\\/d" \
+		-i configure || die
+
+	# 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
+
+	# 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
+		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
+		rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die
+	fi
+
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+src_configure() {
+	local myconf
+	use alsa       || myconf+=( --disable-alsa )
+	use debug      && myconf+=( --build-debug )
+	use doc        || myconf+=( --disable-docs )
+	use java       || myconf+=( --disable-java )
+	use lvm        || myconf+=( --disable-devmapper )
+	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 qt5 || myconf+=( --disable-qt )
+	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-dbus \
+		--disable-kmods \
+		${myconf[@]} \
+		|| die "configure failed"
+}
+
+src_compile() {
+	source ./env.sh || die
+
+	# 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() {
+	local binpath="release"
+	use debug && binpath="debug"
+	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
+
+	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile
+
+	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
+
+	# Set the right libdir
+	sed -i \
+		-e "s@MY_LIBDIR@$(get_libdir)@" \
+		"${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
+
+	# Install the wrapper script
+	exeinto ${vbox_inst_path}
+	newexe "${FILESDIR}/${PN}-ose-5-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
+
+	# *.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{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; do
+		vbox_inst ${each}
+	done
+
+	# These binaries need to be suid root in any case.
+	for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
+		vbox_inst ${each} 4750
+	done
+
+	# Install EFI Firmware files (bug #320757)
+	pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
+	for fwfile in VBoxEFI{32,64}.fd ; do
+		vbox_inst ${fwfile} 0644
+	done
+	popd &>/dev/null || die
+
+	# 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 "${D}"${vbox_inst_path}/${each}
+	done
+
+	# Symlink binaries to the shipped wrapper
+	for each in vbox{headless,manage} VBox{Headless,Manage,VRDP} ; do
+		dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+	done
+	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
+
+	# VRDPAuth only works with this (bug #351949)
+	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
+
+	# set an env-variable for 3rd party tools
+	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst VBoxSDL 4750
+		pax-mark -m "${D}"${vbox_inst_path}/VBoxSDL
+
+		for each in vboxsdl VBoxSDL ; do
+			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+		done
+
+		if use qt5 ; then
+			vbox_inst VirtualBox 4750
+			pax-mark -m "${D}"${vbox_inst_path}/VirtualBox
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${D}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			for each in virtualbox VirtualBox ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+
+			insinto /usr/share/${PN}
+			doins -r nls
+
+			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
+
+	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 "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
+			java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so"
+		fi
+	fi
+
+	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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+}
+
+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 qt5 ; 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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-07-13 20:24 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-07-13 20:24 UTC (permalink / raw
  To: gentoo-commits

commit:     043b5847ef0588b8d064e7c861a3bca52e730a67
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 13 20:24:28 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jul 13 20:24:54 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=043b5847

app-emulation/virtualbox: Added dev-qt/linguist-tools:5 to DEPEND (bug #588778)

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.1.0.ebuild | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.0.ebuild b/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
index 9916c3d..9f389a4 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
@@ -75,6 +75,7 @@ DEPEND="${RDEPEND}
 	java? ( >=virtual/jre-1.6:= )
 	pam? ( sys-libs/pam )
 	pulseaudio? ( media-sound/pulseaudio )
+	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	${PYTHON_DEPS}"
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-07-14  9:28 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-07-14  9:28 UTC (permalink / raw
  To: gentoo-commits

commit:     0caa578caccb6ac7f454a4b2be18f921e8be447e
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 14 09:07:08 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Jul 14 09:28:21 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0caa578c

app-emulation/virtualbox: Bump to version 4.3.38

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-4.3.38.ebuild | 422 ++++++++++++++++++++++
 2 files changed, 423 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index b464140..4c2d7ce7 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,5 +1,6 @@
 DIST VirtualBox-4.3.32.tar.bz2 98168101 SHA256 dc5bf4e6f9989792d31bac174d20d7fc9e638654fa5a99c02b20a60557927261 SHA512 856b36cd90647cdceb7e182d066e9e1489d2bae0b71ce8b2f6324cd2d9854806eaea0fe0aad2d4e8b84bd836c688e13258ae69e094320572729b7d886c8d35f0 WHIRLPOOL 441041947dcd190d73a9cc5007bc0001b6eeb36ba958f4a09fca775670faff690423095d334e258fc0d6dcbef01d74a085505c8549397ced5dbe75ca96724144
 DIST VirtualBox-4.3.36.tar.bz2 98421624 SHA256 af0776df6d03b2709cb76a69f055487bf12bdb3b4163e2a82959860300283046 SHA512 179fd8c7d3562fd6c3c6815ef56a3dbda3fcbb841171f911a923ded06e627fb2e6e33f66124303b448a05c364343ec35e2fb264f462a48e52d66277dfd77bcfc WHIRLPOOL 0419c2baac6f07d729a35a54be872d7949cb6fa99a5ce0f2317df32f27e20e42f045811697e40255f240ec84b08a3a1f36a563841a341a528c37c9e63fda2e6d
+DIST VirtualBox-4.3.38.tar.bz2 98437150 SHA256 36f16d435acf04c1dce81df08ba0b522b7c3b10fe48f6ab5b95e9c8404d1f2e5 SHA512 cdde06b26b20bf1f8a9c0ec9607a8d38de3246422a1907978d065b94f69e7b19bc4a9618ac0e3c18cb46b4f3912bfcb87332296ee12d711e8e738f0026f959c4 WHIRLPOOL 15869dc2730ffb8b5dc4d3d01678e889c6e095ea8cee8f607a8b5f9e016f018a0fd8594a2c3279d8f224d4a9e98b161e1e583320d9617b3de0c005774795b08e
 DIST VirtualBox-5.0.16.tar.bz2 111062984 SHA256 f5a44d33a1db911f445b2eb2d22d9293a96a535cba488b5a235577ef868fa63c SHA512 3da3a227360fb50d299e99770378f65e8cb99525377343fa8faff2360be66643d46f68323d6a8b8d4d26182082f171bb35ab2497167bf6df18827a5ea7742074 WHIRLPOOL ea709057c588f28820790c2b193decba9ee0c57e0f82aa4361ca87aef661315182e18b5ee29558e47ed92f6037eb91befa5390680661a7b9f2248c7819b4a85c
 DIST VirtualBox-5.0.20.tar.bz2 111231246 SHA256 af9c0787aae22964a1192cefbf9aa91a40c1d41e5fea485adebf09ab922d4c2b SHA512 a039455eed3715b9aa42e2dc6b65ea68b27899c0bcf0065a93c53d1093cce56ebf8a6982cd804208ef9e51794eab9c5c4f3b20550d41532fd4addbd7afda0f8e WHIRLPOOL f74f0a910e5e3f7b1704f57e9831f88b1036efbc61e3b97779f5b2a337ad70d55638b59f356c769d4b6bfd5955348d490f5080b04a3f494f25eb176944756cfd
 DIST VirtualBox-5.0.24.tar.bz2 111252724 SHA256 9134b04ca21ca23534e2300aab5ab7ff60d21b56bfd2e21504316bfee73afa87 SHA512 81a40c8c76fda02260ff6bbfdc464dcdb1f95155725772cc1edbafe813ca96955714d5bfe0418e2db60c6983b7fa0eb8a32a3833348c314fc0a429f345b3038c WHIRLPOOL aaffc6c3fda0fbdb93c2ba27857b885c45194fa4bc78d7f4939148fc054bc0b8dc26fbf9bdcab3d0e2f4f873e6bfa07479411839ac97aea6d905538fe00daeb0

diff --git a/app-emulation/virtualbox/virtualbox-4.3.38.ebuild b/app-emulation/virtualbox/virtualbox-4.3.38.ebuild
new file mode 100644
index 0000000..fd4a1ec
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-4.3.38.ebuild
@@ -0,0 +1,422 @@
+# Copyright 1999-2016 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 and home use"
+HOMEPAGE="http://www.virtualbox.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+additions alsa doc extensions 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}"
+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
+
+	# Remove pointless GCC version limitations in check_gcc()
+	sed -e "/\s*-o\s*\\\(\s*\$cc_maj\s*-eq\s*[5-9]\s*-a\s*\$cc_min\s*-gt\s*[0-5]\s*\\\)\s*\\\/d" \
+		-i configure || die
+
+	# 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}
+	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/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
+		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."
+	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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-07-14 15:30 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-07-14 15:30 UTC (permalink / raw
  To: gentoo-commits

commit:     5bb6ca11e0dd996439a635a08bcad7f3d8593a3c
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 14 15:07:06 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Jul 14 15:30:17 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5bb6ca11

app-emulation/virtualbox: Install more icons.

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.1.0.ebuild | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.0.ebuild b/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
index 9f389a4..661c0bf 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.0.ebuild
@@ -242,7 +242,7 @@ src_install() {
 	use debug && binpath="debug"
 	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
 
-	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile
+	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile size ico icofile
 
 	vbox_inst() {
 		local binary="${1}"
@@ -351,6 +351,16 @@ src_install() {
 		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


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-07-26  8:38 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-07-26  8:38 UTC (permalink / raw
  To: gentoo-commits

commit:     a22f3bf6b4da9846f06d5fcf23fabfcaf21ee58b
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 26 08:37:44 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Jul 26 08:37:59 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a22f3bf6

app-emulation/virtualbox: New patchset to fix bug #588794

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                | 1 +
 app-emulation/virtualbox/virtualbox-5.1.2.ebuild | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index e846e62..a1da31d 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -8,3 +8,4 @@ DIST VirtualBox-5.1.0.tar.bz2 114065041 SHA256 2367c24f8c912b5599f3e2e7dc586ac2c
 DIST VirtualBox-5.1.2.tar.bz2 114581873 SHA256 03c92e3000d4b905d5b18a6abed757998125a37e5efa7864e62eae2baeabe010 SHA512 99919f2a8c5625ecd1cda766396cc9302fe81585bb15243d969b6a6bdd8f89cd029c5696e0160ca6c965bf43edb7f9ead6608304f20467fd0a6980a25ae84e68 WHIRLPOOL 4033c5b39b9d72cd84e1e202b80439f1263624df54e58686f5152bca3ed58a744498a7887720125c30f0c0bc72f921fb7e188cca1f3e35899dd54184c026e96d
 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.1.2-patches-01.tar.xz 4148 SHA256 887ad2c90ad15b9010c82bc387f74346fd798772abeab2955b5bf594d5a90fc2 SHA512 9a31f193ef53d4873dc56a1678c7e3e7f7b9d197ff2c3770814d2a6a6ff91a6712e17faefe409ada2013f746f87602c9a66907572e29fd4e20e32524d3bd6a89 WHIRLPOOL 0253cd733d91c12485532cb4d4448fe0be8aaa45151beec7355894a62ce8e8e1afcd1e2737d6ad916773d917e8c97d78400f41829405bc40ebd43f1b631a8eb0

diff --git a/app-emulation/virtualbox/virtualbox-5.1.2.ebuild b/app-emulation/virtualbox/virtualbox-5.1.2.ebuild
index 661c0bf..adc289f 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.2.ebuild
@@ -11,7 +11,7 @@ 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.16-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.2-patches-01.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-07-27 10:05 Jeroen Roovers
  0 siblings, 0 replies; 198+ messages in thread
From: Jeroen Roovers @ 2016-07-27 10:05 UTC (permalink / raw
  To: gentoo-commits

commit:     cc772749a07deee81c6066c347873634668e2ddf
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 27 10:05:09 2016 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Jul 27 10:05:43 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc772749

app-emulation/virtualbox: Add proxy-maint@.

Package-Manager: portage-2.3.0

 app-emulation/virtualbox/metadata.xml | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index febd459..ee3648f 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -9,13 +9,16 @@
     <email>masterzorag@gmail.com</email>
     <description>Proxy maintainer. CC him on bugs</description>
   </maintainer>
+  <maintainer type="project">
+    <email>proxy-maint@gentoo.org</email>
+  </maintainer>
 <use>
-	<flag name="additions">Install Guest System Tools ISO</flag>
-	<flag name="extensions">Install extension module packages</flag>
-	<flag name="headless">Build without any graphic frontend</flag>
-	<flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
-	<flag name="sdk">Enable building of SDK</flag>
-	<flag name="udev">Controls installation of special USB udev rules.</flag>
-	<flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
+  <flag name="additions">Install Guest System Tools ISO</flag>
+  <flag name="extensions">Install extension module packages</flag>
+  <flag name="headless">Build without any graphic frontend</flag>
+  <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
+  <flag name="sdk">Enable building of SDK</flag>
+  <flag name="udev">Controls installation of special USB udev rules.</flag>
+  <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
 </use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-08-17 13:07 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-08-17 13:07 UTC (permalink / raw
  To: gentoo-commits

commit:     9d02b1716ebe42754b76059572b2cfb89a245762
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 13:07:38 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 13:07:52 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d02b171

app-emulation/virtualbox: Fixed compilation with -pulseaudio (bug #591440).

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                | 2 +-
 app-emulation/virtualbox/virtualbox-5.1.4.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 03e97b7..edd8173 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -9,4 +9,4 @@ DIST VirtualBox-5.1.4.tar.bz2 114642581 SHA256 b9a14a7771059c55c44b97f8d4eef9bea
 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.1.2-patches-01.tar.xz 4148 SHA256 887ad2c90ad15b9010c82bc387f74346fd798772abeab2955b5bf594d5a90fc2 SHA512 9a31f193ef53d4873dc56a1678c7e3e7f7b9d197ff2c3770814d2a6a6ff91a6712e17faefe409ada2013f746f87602c9a66907572e29fd4e20e32524d3bd6a89 WHIRLPOOL 0253cd733d91c12485532cb4d4448fe0be8aaa45151beec7355894a62ce8e8e1afcd1e2737d6ad916773d917e8c97d78400f41829405bc40ebd43f1b631a8eb0
-DIST virtualbox-5.1.4-patches-01.tar.xz 4112 SHA256 60c0c97f3a2c350d242281c22fa37a97556900045fce6b2169ad9d67259af95a SHA512 ec5629ee415c698526643065e1be57edc61548e32ba359d377b13119bbc315b099343d702a408ce9f0d5898816df7baee8146a822c5f2ab94fff484643535f6a WHIRLPOOL b1c61309b942411d2c864fc0b50a9005d76111240c07ec09ccf9ebaf9508cee3601c7487f71e24fee8cf7bffcafd231ad4fefb28dd1b3046fcb3760325481212
+DIST virtualbox-5.1.4-patches-02.tar.xz 4212 SHA256 36478a88d19bcb3ca7dcdf0e0fd1d387a08f04b2b10b3368b35e614b88c6026f SHA512 d3af5ac8dc1681c9dcd8c0186d3f986bfebb61b365b399bccb21fa52cb43043b0cf0db5646da1ef2e3b789189c02eeaac8c88ae13ad1562216b96a7844882b89 WHIRLPOOL ead04094cfae6d0a269a737f3ba274870dc3fdb3311b14b655062d14b0943e8bc62786a8d1a966adc71a2b67c2c67d16f7b93aeb72da43e53955358ad12c57e0

diff --git a/app-emulation/virtualbox/virtualbox-5.1.4.ebuild b/app-emulation/virtualbox/virtualbox-5.1.4.ebuild
index 326c1de..65638ce 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.4.ebuild
@@ -11,7 +11,7 @@ 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.1.4-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.4-patches-02.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-09-02 15:09 Ian Stakenvicius
  0 siblings, 0 replies; 198+ messages in thread
From: Ian Stakenvicius @ 2016-09-02 15:09 UTC (permalink / raw
  To: gentoo-commits

commit:     57cfaba176f27d42e3f7dfce27dabfd8aacef393
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Fri Sep  2 15:08:57 2016 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Fri Sep  2 15:08:57 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=57cfaba1

app-emulation/virtualbox: backport commit 82049238b1 to 4.3.x

See Gentoo bug #488176

Package-Manager: portage-2.2.28

 app-emulation/virtualbox/virtualbox-4.3.38.ebuild | 8 ++++++++
 app-emulation/virtualbox/virtualbox-4.3.40.ebuild | 8 ++++++++
 2 files changed, 16 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-4.3.38.ebuild b/app-emulation/virtualbox/virtualbox-4.3.38.ebuild
index 4df13c2..e6d9597 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.38.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.38.ebuild
@@ -140,6 +140,10 @@ pkg_setup() {
 	fi
 	java-pkg-opt-2_pkg_setup
 	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
 }
 
 src_prepare() {
@@ -158,6 +162,10 @@ src_prepare() {
 	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
 		elog "Disabling PAM removes the possibility to use the VRDP features."

diff --git a/app-emulation/virtualbox/virtualbox-4.3.40.ebuild b/app-emulation/virtualbox/virtualbox-4.3.40.ebuild
index 7315c62..3932926 100644
--- a/app-emulation/virtualbox/virtualbox-4.3.40.ebuild
+++ b/app-emulation/virtualbox/virtualbox-4.3.40.ebuild
@@ -140,6 +140,10 @@ pkg_setup() {
 	fi
 	java-pkg-opt-2_pkg_setup
 	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
 }
 
 src_prepare() {
@@ -158,6 +162,10 @@ src_prepare() {
 	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
 		elog "Disabling PAM removes the possibility to use the VRDP features."


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2016-09-20 12:12 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2016-09-20 12:12 UTC (permalink / raw
  To: gentoo-commits

commit:     5fda57c22bc93fcda1676086c4eab1077491e051
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 20 12:12:16 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Sep 20 12:12:31 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5fda57c2

app-emulation/virtualbox: New patchset with qt-5.7 build fix (bug #589392).

Package-Manager: portage-2.3.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                | 2 +-
 app-emulation/virtualbox/virtualbox-5.1.6.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 5dbee39..86d42eb 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -6,5 +6,5 @@ DIST VirtualBox-5.1.4.tar.bz2 114642581 SHA256 b9a14a7771059c55c44b97f8d4eef9bea
 DIST VirtualBox-5.1.6.tar.bz2 114669517 SHA256 2e0112b0d85841587b8f212e6ba8f6c35b31e1cce6b6999497dc917cd37e6911 SHA512 7b10c203692a091b3de8dda147b386e17fa7d2bdb56031163e0551e54c1ff6a8e953361d51cc6f7bb6978544a6517e843b446e866aa1fa6f96b4677dda27daa4 WHIRLPOOL ba6ea523dc06622854b304b408f2ce402d164ae4dbc5eeb4cc675c3e4c7d8e12db1a3bcee7d19f67d274ff92b32e143c111d5d732b463c48d72d4036910ce141
 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.1.4-patches-01.tar.xz 4112 SHA256 60c0c97f3a2c350d242281c22fa37a97556900045fce6b2169ad9d67259af95a SHA512 ec5629ee415c698526643065e1be57edc61548e32ba359d377b13119bbc315b099343d702a408ce9f0d5898816df7baee8146a822c5f2ab94fff484643535f6a WHIRLPOOL b1c61309b942411d2c864fc0b50a9005d76111240c07ec09ccf9ebaf9508cee3601c7487f71e24fee8cf7bffcafd231ad4fefb28dd1b3046fcb3760325481212
 DIST virtualbox-5.1.4-patches-02.tar.xz 4212 SHA256 36478a88d19bcb3ca7dcdf0e0fd1d387a08f04b2b10b3368b35e614b88c6026f SHA512 d3af5ac8dc1681c9dcd8c0186d3f986bfebb61b365b399bccb21fa52cb43043b0cf0db5646da1ef2e3b789189c02eeaac8c88ae13ad1562216b96a7844882b89 WHIRLPOOL ead04094cfae6d0a269a737f3ba274870dc3fdb3311b14b655062d14b0943e8bc62786a8d1a966adc71a2b67c2c67d16f7b93aeb72da43e53955358ad12c57e0
+DIST virtualbox-5.1.6-patches-01.tar.xz 4268 SHA256 5bfae08bc53fee06aea501e77b7998348adba43792149248d217ab03dea8c04f SHA512 2401df42ac8c2fd1f4bbc795713b185d5e65c2a36c763fa1d7274686599808aecdc28aaa6443c9efc9842f7b3eeb928818c95d1e7ad3b86239c2ace441a5e116 WHIRLPOOL 25505eaff2eeb820a09a2c8807c2d5cec48cbfe98fcd30b04daf86c4cd7c506f09c67b80d5ecc221ded08af6e48297e0161bae16862e5a1d3204b27945c511b0

diff --git a/app-emulation/virtualbox/virtualbox-5.1.6.ebuild b/app-emulation/virtualbox/virtualbox-5.1.6.ebuild
index 326c1de..cd60f3e 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.6.ebuild
@@ -11,7 +11,7 @@ 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.1.4-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.6-patches-01.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-01-31 12:31 Tobias Klausmann
  0 siblings, 0 replies; 198+ messages in thread
From: Tobias Klausmann @ 2017-01-31 12:31 UTC (permalink / raw
  To: gentoo-commits

commit:     6dd3fa0e66d1abfd25e3989f9fa7e2a47bff1b44
Author:     Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 31 12:31:21 2017 +0000
Commit:     Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Tue Jan 31 12:31:40 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6dd3fa0e

app-emulation/virtualbox-5.0.32-r0: stable on amd64

Gentoo-Bug: 607674

 app-emulation/virtualbox/virtualbox-5.0.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.32.ebuild b/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
index 7e5b319..a6ba3f0 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="alsa debug doc headless java libressl lvm pam pulseaudio +opengl python +qt4 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-02-03 15:13 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-02-03 15:13 UTC (permalink / raw
  To: gentoo-commits

commit:     5bd8521042bfc356fd20c4505a6c6780d9f4510b
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  3 15:12:23 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Feb  3 15:13:21 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5bd85210

app-emulation/virtualbox: Fixed parallel build issue (bug #413467).

Also attempt to finally fix creation and installation of docs
(bug #554932).

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 app-emulation/virtualbox/Manifest                 |  1 +
 app-emulation/virtualbox/virtualbox-5.0.32.ebuild | 11 ++++++-----
 app-emulation/virtualbox/virtualbox-5.1.14.ebuild |  5 +++++
 3 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index f95a0ce..35d554a 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -7,4 +7,5 @@ DIST VirtualBox-5.1.12.tar.bz2 114950292 SHA256 e6f10b1b6f3eb1be2c5223f60569f8ce
 DIST VirtualBox-5.1.14.tar.bz2 115042132 SHA256 8267bb026717c6e55237eb798210767d9c703cfcdf01224d9bc26f7dac9f228a SHA512 ab0646c587fa1b573a9332ca0f1959660adc02f2ecf63ac808f4a7e3ceb9b2c58adab8e309aec4630ff7fa447f47d7487e7e8d0a1f718a42d39ce71e96067fae WHIRLPOOL 915b3ac0d50def86e92b662c7fe32e1390c9dab73efb9fc9595465c45818b86b4380be93a7075d17e33f9b70d92dbbbf6063ce0dad6448c9a592648a10f2409b
 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.32-patches-01.tar.xz 4400 SHA256 e5bf5b5b391b3402172b5a30952da50affacaeaf40a75df0430ad623fcd8ed6f SHA512 5df0ecb4f9190375edc62d231aacd381c36a1697cc33df48b2f2d68a05ca1c855d127e466eda62030736dbcee76f5c67a519a2f42b72eacaf7ed65a8cf991e8a WHIRLPOOL 4c11787951848aadacc0772df5a46ce8d54445e0120901be280f493d4cc6333e986d0376f33ac0217dbb23758240c025028ea1d21c360fc2840c8e3003a0ff62
 DIST virtualbox-5.1.6-patches-01.tar.xz 4268 SHA256 5bfae08bc53fee06aea501e77b7998348adba43792149248d217ab03dea8c04f SHA512 2401df42ac8c2fd1f4bbc795713b185d5e65c2a36c763fa1d7274686599808aecdc28aaa6443c9efc9842f7b3eeb928818c95d1e7ad3b86239c2ace441a5e116 WHIRLPOOL 25505eaff2eeb820a09a2c8807c2d5cec48cbfe98fcd30b04daf86c4cd7c506f09c67b80d5ecc221ded08af6e48297e0161bae16862e5a1d3204b27945c511b0

diff --git a/app-emulation/virtualbox/virtualbox-5.0.32.ebuild b/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
index a6ba3f0..5870ceb 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
@@ -11,7 +11,7 @@ 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.16-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.0.32-patches-01.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
@@ -61,6 +61,7 @@ DEPEND="${RDEPEND}
 	virtual/pkgconfig
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
 	doc? (
+		app-text/docbook-sgml-dtd:4.4
 		dev-texlive/texlive-basic
 		dev-texlive/texlive-latex
 		dev-texlive/texlive-latexrecommended
@@ -216,10 +217,6 @@ src_configure() {
 src_compile() {
 	source ./env.sh || die
 
-	# 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}"
@@ -384,6 +381,10 @@ src_install() {
 		newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
 		newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
 	fi
+
+	if use doc ; then
+		dodoc UserManual.pdf
+	fi
 }
 
 pkg_postinst() {

diff --git a/app-emulation/virtualbox/virtualbox-5.1.14.ebuild b/app-emulation/virtualbox/virtualbox-5.1.14.ebuild
index d35c7da..e9f05db 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.14.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.14.ebuild
@@ -64,6 +64,7 @@ DEPEND="${RDEPEND}
 	virtual/pkgconfig
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
 	doc? (
+		app-text/docbook-sgml-dtd:4.4
 		dev-texlive/texlive-basic
 		dev-texlive/texlive-latex
 		dev-texlive/texlive-latexrecommended
@@ -395,6 +396,10 @@ src_install() {
 		newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
 		newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
 	fi
+
+	if use doc ; then
+		dodoc UserManual.pdf
+	fi
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-03-28 16:31 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-03-28 16:31 UTC (permalink / raw
  To: gentoo-commits

commit:     3798cc506831f3d2c01eb484e78adb6134e11ada
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 28 16:31:21 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Mar 28 16:31:38 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3798cc50

app-emulation/virtualbox: New patchset to fix sysmacro breakage (#612132)

Package-Manager: Portage-2.3.5, Repoman-2.3.2

 app-emulation/virtualbox/Manifest                 | 1 +
 app-emulation/virtualbox/virtualbox-5.1.18.ebuild | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index d688c629852..0981ad0e566 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -6,4 +6,5 @@ DIST VirtualBox-5.1.18.tar.bz2 115680674 SHA256 7ed0959bbbd02826b86b3d5dc8348931
 DIST virtualbox-5.0.16-patches-01.tar.xz 4024 SHA256 200eb980a12323a61d0fa6dbf61ed64ee1e2bb5e18e16eabdf8668d8fd8be3e4 SHA512 4eed117253754abee9088d4c320b4a6f0b3e1c8313b98f354cb727001156fe68d553a677073d40b921437f4cc073420866d1533aad4e61a79607d8360abbfd4a WHIRLPOOL ab40851873d55ae873ca8ff88670a17476c0d502116f4abda7b766064a2daa71929eb69b4b68c64c3d2d0762134fe85d07044bdedde4bf15924520a604972aaa
 DIST virtualbox-5.0.32-patches-01.tar.xz 4400 SHA256 e5bf5b5b391b3402172b5a30952da50affacaeaf40a75df0430ad623fcd8ed6f SHA512 5df0ecb4f9190375edc62d231aacd381c36a1697cc33df48b2f2d68a05ca1c855d127e466eda62030736dbcee76f5c67a519a2f42b72eacaf7ed65a8cf991e8a WHIRLPOOL 4c11787951848aadacc0772df5a46ce8d54445e0120901be280f493d4cc6333e986d0376f33ac0217dbb23758240c025028ea1d21c360fc2840c8e3003a0ff62
 DIST virtualbox-5.0.36-patches-01.tar.xz 4572 SHA256 734d90bb35c92d46aa979046c066fab5ca2a54aebc99c1a038b9acbab5820c81 SHA512 61e8a3bbabfee1fd7286a46ebc93b4acca761dc860159d2d0c4b6c104d3365dedb32496bdc8b63a1fc1ff54f4954c75447e4be6c9608a975e2f75bf884e22a59 WHIRLPOOL fdd81469b6565c30ca44c5ea5ea10b8f62aeef301af622999f355bc46fb931d952f1145e87f290d7b744371189c3738424fc85de632faeb8ab57d54e7a30a901
+DIST virtualbox-5.1.18-patches-01.tar.xz 4512 SHA256 1aa525a8230f77abc672e61bea76af9ddfbb8f22acf21ef382b7a0a88de92764 SHA512 f1c88dd9b7fbafb9764df0a88dc5615aa78a01408d0a14c0dae33e3a53bd75c191c0181934848e17f5fd77784f9e01bf44b444f1485fc302cb1538c2e8ddac95 WHIRLPOOL c11adda0297cc18f0ac614a3492c411413bf640090c9cdb4c5382c4da0391734c479d92c2933e46e0dc8ccf59e155ce35e72182abcb5015a7e03ec33d51c1ab0
 DIST virtualbox-5.1.6-patches-01.tar.xz 4268 SHA256 5bfae08bc53fee06aea501e77b7998348adba43792149248d217ab03dea8c04f SHA512 2401df42ac8c2fd1f4bbc795713b185d5e65c2a36c763fa1d7274686599808aecdc28aaa6443c9efc9842f7b3eeb928818c95d1e7ad3b86239c2ace441a5e116 WHIRLPOOL 25505eaff2eeb820a09a2c8807c2d5cec48cbfe98fcd30b04daf86c4cd7c506f09c67b80d5ecc221ded08af6e48297e0161bae16862e5a1d3204b27945c511b0

diff --git a/app-emulation/virtualbox/virtualbox-5.1.18.ebuild b/app-emulation/virtualbox/virtualbox-5.1.18.ebuild
index 2e172670108..a2cb74f2be1 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.18.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.18.ebuild
@@ -10,7 +10,7 @@ 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.1.6-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.18-patches-01.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-04-07  8:24 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-04-07  8:24 UTC (permalink / raw
  To: gentoo-commits

commit:     e5f81a9b6e56092aa9c1734629d9da0bd86cda6c
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Apr  7 08:24:40 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Apr  7 08:24:54 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5f81a9b

app-emulation/virtualbox: Don't mess with hardened crap anymore.

Package-Manager: Portage-2.3.5, Repoman-2.3.2

 app-emulation/virtualbox/virtualbox-5.0.32.ebuild | 4 ++--
 app-emulation/virtualbox/virtualbox-5.0.36.ebuild | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.0.32.ebuild b/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
index d108743e764..aabd9a5162c 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.32.ebuild
@@ -174,9 +174,9 @@ src_prepare() {
 		java-pkg-opt-2_src_prepare
 	fi
 
-	if ! gcc-specs-pie ; then
+	#if ! gcc-specs-pie ; then
 		rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die
-	fi
+	#fi
 
 	eapply "${WORKDIR}/patches"
 

diff --git a/app-emulation/virtualbox/virtualbox-5.0.36.ebuild b/app-emulation/virtualbox/virtualbox-5.0.36.ebuild
index c6fa6f010a4..13d16707589 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.36.ebuild
@@ -174,9 +174,9 @@ src_prepare() {
 		java-pkg-opt-2_src_prepare
 	fi
 
-	if ! gcc-specs-pie ; then
+	#if ! gcc-specs-pie ; then
 		rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die
-	fi
+	#fi
 
 	eapply "${WORKDIR}/patches"
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-07-23 19:13 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-07-23 19:13 UTC (permalink / raw
  To: gentoo-commits

commit:     c5dcc2bba8b62bc560f5029a0dbd1610c2801ace
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 23 19:13:20 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Jul 23 19:13:35 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5dcc2bb

app-emulation/virtualbox: New patchset without hardened patch.

Package-Manager: Portage-2.3.6, Repoman-2.3.3

 app-emulation/virtualbox/Manifest                 |  1 +
 app-emulation/virtualbox/virtualbox-5.1.24.ebuild | 14 +++++++-------
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 7284339bd9c..58ba0e33546 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -6,3 +6,4 @@ DIST VirtualBox-5.1.24.tar.bz2 116135442 SHA256 ee2db169a322bf0db3c3b6d8b84aa392
 DIST virtualbox-5.0.16-patches-01.tar.xz 4024 SHA256 200eb980a12323a61d0fa6dbf61ed64ee1e2bb5e18e16eabdf8668d8fd8be3e4 SHA512 4eed117253754abee9088d4c320b4a6f0b3e1c8313b98f354cb727001156fe68d553a677073d40b921437f4cc073420866d1533aad4e61a79607d8360abbfd4a WHIRLPOOL ab40851873d55ae873ca8ff88670a17476c0d502116f4abda7b766064a2daa71929eb69b4b68c64c3d2d0762134fe85d07044bdedde4bf15924520a604972aaa
 DIST virtualbox-5.0.32-patches-01.tar.xz 4400 SHA256 e5bf5b5b391b3402172b5a30952da50affacaeaf40a75df0430ad623fcd8ed6f SHA512 5df0ecb4f9190375edc62d231aacd381c36a1697cc33df48b2f2d68a05ca1c855d127e466eda62030736dbcee76f5c67a519a2f42b72eacaf7ed65a8cf991e8a WHIRLPOOL 4c11787951848aadacc0772df5a46ce8d54445e0120901be280f493d4cc6333e986d0376f33ac0217dbb23758240c025028ea1d21c360fc2840c8e3003a0ff62
 DIST virtualbox-5.1.18-patches-01.tar.xz 4512 SHA256 1aa525a8230f77abc672e61bea76af9ddfbb8f22acf21ef382b7a0a88de92764 SHA512 f1c88dd9b7fbafb9764df0a88dc5615aa78a01408d0a14c0dae33e3a53bd75c191c0181934848e17f5fd77784f9e01bf44b444f1485fc302cb1538c2e8ddac95 WHIRLPOOL c11adda0297cc18f0ac614a3492c411413bf640090c9cdb4c5382c4da0391734c479d92c2933e46e0dc8ccf59e155ce35e72182abcb5015a7e03ec33d51c1ab0
+DIST virtualbox-5.1.24-patches-01.tar.xz 2708 SHA256 8ea5e08da07d555a4868abf6f4d689c2f6695bdb773010a01915fcc6c354f361 SHA512 0028e593818013f809831ac5a73eec63988c0aefb4b309fb3c928efbea8db8b8f46bd7c82f156396adc704f0567474df262dfe9bb6e09af0b2c23528fe2c6e2d WHIRLPOOL 5a1af78c2767608d2b1c2a4b262dbce038d2b6ed9d0499eb60ac1eb64fd6b832efdbafc2b85881ac67efd8794adcc3490fcbf61b74ad7ae576d52e8aff597b04

diff --git a/app-emulation/virtualbox/virtualbox-5.1.24.ebuild b/app-emulation/virtualbox/virtualbox-5.1.24.ebuild
index eb424e00904..cd3a220bcf6 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.24.ebuild
@@ -4,13 +4,13 @@
 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 toolchain-funcs udev
+inherit eutils flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 toolchain-funcs udev xdg-utils
 
 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.1.18-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.24-patches-01.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
@@ -182,9 +182,9 @@ src_prepare() {
 	fi
 
 	# Only add nopie patch when we're on hardened
-	if ! gcc-specs-pie ; then
-		rm "${WORKDIR}"/patches/050_${PN}-*-nopie.patch || die
-	fi
+	#if ! gcc-specs-pie ; then
+	#	rm "${WORKDIR}"/patches/050_${PN}-*-nopie.patch || die
+	#fi
 
 	# Only add paxmark patch when we're on pax_kernel
 	if use pax_kernel ; then
@@ -410,7 +410,7 @@ src_install() {
 }
 
 pkg_postinst() {
-	fdo-mime_desktop_database_update
+	xdg_desktop_database_update
 
 	if use udev ; then
 		udevadm control --reload-rules \
@@ -455,5 +455,5 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
-	fdo-mime_desktop_database_update
+	xdg_desktop_database_update
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-07-28  6:41 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-07-28  6:41 UTC (permalink / raw
  To: gentoo-commits

commit:     d94b9e0e9dd9b20ebd2f1381111da79d6df98796
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 28 06:36:06 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Jul 28 06:41:27 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d94b9e0e

app-emulation/virtualbox: Don't apply nopie patch unconditionally.

Package-Manager: Portage-2.3.6, Repoman-2.3.3

 app-emulation/virtualbox/virtualbox-5.1.24.ebuild | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.24.ebuild b/app-emulation/virtualbox/virtualbox-5.1.24.ebuild
index 8249f3d55e2..e874868ea02 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.24.ebuild
@@ -182,9 +182,9 @@ src_prepare() {
 	fi
 
 	# Only add nopie patch when we're on hardened
-	#if ! gcc-specs-pie ; then
-	#	rm "${WORKDIR}"/patches/050_${PN}-*-nopie.patch || die
-	#fi
+	if gcc-specs-pie ; then
+		eapply "${FILESDIR}/050_virtualbox-5.1.24-nopie.patch"
+	fi
 
 	# Only add paxmark patch when we're on pax_kernel
 	if use pax_kernel ; then
@@ -192,7 +192,6 @@ src_prepare() {
 	fi
 
 	eapply "${WORKDIR}/patches"
-	eapply "${FILESDIR}/050_virtualbox-5.1.24-nopie.patch"
 
 	eapply_user
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-08-06 15:57 Aaron Bauman
  0 siblings, 0 replies; 198+ messages in thread
From: Aaron Bauman @ 2017-08-06 15:57 UTC (permalink / raw
  To: gentoo-commits

commit:     9db5469b1744497f69fc6532f25ba0c87c2dc8f1
Author:     Aaron Bauman <bman <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 15:56:34 2017 +0000
Commit:     Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Sun Aug  6 15:57:28 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9db5469b

app-emulation/virtualbox: cleanup vulnerable wrt bug #600214

 app-emulation/virtualbox/Manifest                  |   2 -
 .../virtualbox/virtualbox-5.0.16-r1.ebuild         | 431 ---------------------
 2 files changed, 433 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index e431434fef8..d683cbc5981 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,5 @@
-DIST VirtualBox-5.0.16.tar.bz2 111062984 SHA256 f5a44d33a1db911f445b2eb2d22d9293a96a535cba488b5a235577ef868fa63c SHA512 3da3a227360fb50d299e99770378f65e8cb99525377343fa8faff2360be66643d46f68323d6a8b8d4d26182082f171bb35ab2497167bf6df18827a5ea7742074 WHIRLPOOL ea709057c588f28820790c2b193decba9ee0c57e0f82aa4361ca87aef661315182e18b5ee29558e47ed92f6037eb91befa5390680661a7b9f2248c7819b4a85c
 DIST VirtualBox-5.0.40.tar.bz2 112997095 SHA256 e4275b7ada40b358e6e3bd1231b3a320aa06c72ae301283cac5adb42eaa8e4b5 SHA512 70cd4355591c5aed82148954bf55637a5dcdd1a5177dba78192e7c6eadfbf3f7023f352ba8f89d9eb3c3fc55b049f7c76af6bc94e04d1766d7fbe39e51a1393c WHIRLPOOL 9f471e63814c9d48063857f3b95410f5acdd4a3bd2716c525f2449f1eae95d0e91dbe5422374a49f31f8219daa155f716455f0259d131d93afb5cd9e13a7d467
 DIST VirtualBox-5.1.24.tar.bz2 116135442 SHA256 ee2db169a322bf0db3c3b6d8b84aa39236f36cbf37d0a4c10ab65902a396bb60 SHA512 3c9ad230a53f9159e648ae1f342bdb220ffd85f2ddd45ae4c61d6606f358e9343a4968b2a91784893fb1284288ad41c538b1ab299b3a49e7739bfc8c4fdea910 WHIRLPOOL aad73184e2d36928449e688fd86c6f42c061f77e86c7e6119a205154b307846ed25175f49e3f8e451844b48c0e71e9531902753f1fd917123c401ffbf7744a2d
 DIST VirtualBox-5.1.26.tar.bz2 115915813 SHA256 b5715035e681a11ef1475f83f9503d34a00f0276b89c572eebec363dda80c8a9 SHA512 680e9646a51a0a5923b3ded10007ee1c1e2a41c6d8a961d2b2540db6578bed2847154f4cac87e3cfe1118a62595b47c7df99da854f6c340e173b9eb8cacf2add WHIRLPOOL 9d7950ec3ec2cd9b8aaa0ea319f9f5089eed7d2cd2879d313426b448a27570b5582235aa46c5ad5a0fd4d0b967f8d58a963f001549232136d6a8609262af71d0
-DIST virtualbox-5.0.16-patches-01.tar.xz 4024 SHA256 200eb980a12323a61d0fa6dbf61ed64ee1e2bb5e18e16eabdf8668d8fd8be3e4 SHA512 4eed117253754abee9088d4c320b4a6f0b3e1c8313b98f354cb727001156fe68d553a677073d40b921437f4cc073420866d1533aad4e61a79607d8360abbfd4a WHIRLPOOL ab40851873d55ae873ca8ff88670a17476c0d502116f4abda7b766064a2daa71929eb69b4b68c64c3d2d0762134fe85d07044bdedde4bf15924520a604972aaa
 DIST virtualbox-5.0.32-patches-01.tar.xz 4400 SHA256 e5bf5b5b391b3402172b5a30952da50affacaeaf40a75df0430ad623fcd8ed6f SHA512 5df0ecb4f9190375edc62d231aacd381c36a1697cc33df48b2f2d68a05ca1c855d127e466eda62030736dbcee76f5c67a519a2f42b72eacaf7ed65a8cf991e8a WHIRLPOOL 4c11787951848aadacc0772df5a46ce8d54445e0120901be280f493d4cc6333e986d0376f33ac0217dbb23758240c025028ea1d21c360fc2840c8e3003a0ff62
 DIST virtualbox-5.1.24-patches-01.tar.xz 2708 SHA256 8ea5e08da07d555a4868abf6f4d689c2f6695bdb773010a01915fcc6c354f361 SHA512 0028e593818013f809831ac5a73eec63988c0aefb4b309fb3c928efbea8db8b8f46bd7c82f156396adc704f0567474df262dfe9bb6e09af0b2c23528fe2c6e2d WHIRLPOOL 5a1af78c2767608d2b1c2a4b262dbce038d2b6ed9d0499eb60ac1eb64fd6b832efdbafc2b85881ac67efd8794adcc3490fcbf61b74ad7ae576d52e8aff597b04

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
deleted file mode 100644
index 86c074f5eb3..00000000000
--- a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
+++ /dev/null
@@ -1,431 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-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 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.16-patches-01.tar.xz"
-S="${WORKDIR}/${MY_P}"
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="http://www.virtualbox.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="alsa doc headless java libressl lvm 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/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
-		)
-	)
-	java? ( >=virtual/jre-1.6:= )
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
-	lvm? ( sys-fs/lvm2 )
-	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-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	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
-	)
-	!headless? ( x11-libs/libXinerama )
-	java? ( >=virtual/jre-1.6:= )
-	pam? ( sys-libs/pam )
-	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_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
-
-	tc-ld-disable-gold #bug 488176
-	tc-export CC CXX LD AR RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-}
-
-src_prepare() {
-	# Remove shipped binaries (kBuild,yasm), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Remove pointless GCC version check
-	sed -e '/^check_gcc$/d' -i configure || die
-
-	# 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
-
-	# 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
-		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
-		rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die
-	fi
-
-	eapply "${WORKDIR}/patches"
-
-	eapply_user
-}
-
-src_configure() {
-	local myconf
-	use alsa       || myconf+=( --disable-alsa )
-	use doc        || myconf+=( --disable-docs )
-	use java       || myconf+=( --disable-java )
-	use lvm        || myconf+=( --disable-devmapper )
-	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-dbus \
-		--disable-kmods \
-		${myconf[@]} \
-		|| die "configure failed"
-}
-
-src_compile() {
-	source ./env.sh || die
-
-	# 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
-
-	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile
-
-	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
-
-	# Set the right libdir
-	sed -i \
-		-e "s@MY_LIBDIR@$(get_libdir)@" \
-		"${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
-
-	# Install the wrapper script
-	exeinto ${vbox_inst_path}
-	newexe "${FILESDIR}/${PN}-ose-5-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
-
-	# *.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{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; do
-		vbox_inst ${each}
-	done
-
-	# These binaries need to be suid root in any case.
-	for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
-		vbox_inst ${each} 4750
-	done
-
-	# Install EFI Firmware files (bug #320757)
-	pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
-	for fwfile in VBoxEFI{32,64}.fd ; do
-		vbox_inst ${fwfile} 0644
-	done
-	popd &>/dev/null || die
-
-	# 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 "${D}"${vbox_inst_path}/${each}
-	done
-
-	# Symlink binaries to the shipped wrapper
-	for each in vbox{headless,manage} VBox{Headless,Manage,VRDP} ; do
-		dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-	done
-	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
-
-	# VRDPAuth only works with this (bug #351949)
-	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
-
-	# set an env-variable for 3rd party tools
-	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; then
-		vbox_inst VBoxSDL 4750
-		pax-mark -m "${D}"${vbox_inst_path}/VBoxSDL
-
-		for each in vboxsdl VBoxSDL ; do
-			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-		done
-
-		if use opengl && use qt4 ; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${D}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		if use qt4 ; then
-			vbox_inst VirtualBox 4750
-			pax-mark -m "${D}"${vbox_inst_path}/VirtualBox
-
-			for each in virtualbox VirtualBox ; do
-				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-			done
-
-			insinto /usr/share/${PN}
-			doins -r nls
-
-			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
-
-	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 "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
-			java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so"
-		fi
-	fi
-
-	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
-		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
-			> "${T}"/10-virtualbox.rules || die
-		doins "${T}"/10-virtualbox.rules
-	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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-08-06 20:43 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-08-06 20:43 UTC (permalink / raw
  To: gentoo-commits

commit:     e46d65de533fcd91eb529b9aac94db1b5c2ea80f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 20:43:21 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Aug  6 20:43:21 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e46d65de

Revert "app-emulation/virtualbox: cleanup vulnerable wrt bug #600214"

This reverts commit 9db5469b1744497f69fc6532f25ba0c87c2dc8f1.

Revert due to no maintainer approval.

 app-emulation/virtualbox/Manifest                  |   2 +
 .../virtualbox/virtualbox-5.0.16-r1.ebuild         | 431 +++++++++++++++++++++
 2 files changed, 433 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index d683cbc5981..e431434fef8 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,5 +1,7 @@
+DIST VirtualBox-5.0.16.tar.bz2 111062984 SHA256 f5a44d33a1db911f445b2eb2d22d9293a96a535cba488b5a235577ef868fa63c SHA512 3da3a227360fb50d299e99770378f65e8cb99525377343fa8faff2360be66643d46f68323d6a8b8d4d26182082f171bb35ab2497167bf6df18827a5ea7742074 WHIRLPOOL ea709057c588f28820790c2b193decba9ee0c57e0f82aa4361ca87aef661315182e18b5ee29558e47ed92f6037eb91befa5390680661a7b9f2248c7819b4a85c
 DIST VirtualBox-5.0.40.tar.bz2 112997095 SHA256 e4275b7ada40b358e6e3bd1231b3a320aa06c72ae301283cac5adb42eaa8e4b5 SHA512 70cd4355591c5aed82148954bf55637a5dcdd1a5177dba78192e7c6eadfbf3f7023f352ba8f89d9eb3c3fc55b049f7c76af6bc94e04d1766d7fbe39e51a1393c WHIRLPOOL 9f471e63814c9d48063857f3b95410f5acdd4a3bd2716c525f2449f1eae95d0e91dbe5422374a49f31f8219daa155f716455f0259d131d93afb5cd9e13a7d467
 DIST VirtualBox-5.1.24.tar.bz2 116135442 SHA256 ee2db169a322bf0db3c3b6d8b84aa39236f36cbf37d0a4c10ab65902a396bb60 SHA512 3c9ad230a53f9159e648ae1f342bdb220ffd85f2ddd45ae4c61d6606f358e9343a4968b2a91784893fb1284288ad41c538b1ab299b3a49e7739bfc8c4fdea910 WHIRLPOOL aad73184e2d36928449e688fd86c6f42c061f77e86c7e6119a205154b307846ed25175f49e3f8e451844b48c0e71e9531902753f1fd917123c401ffbf7744a2d
 DIST VirtualBox-5.1.26.tar.bz2 115915813 SHA256 b5715035e681a11ef1475f83f9503d34a00f0276b89c572eebec363dda80c8a9 SHA512 680e9646a51a0a5923b3ded10007ee1c1e2a41c6d8a961d2b2540db6578bed2847154f4cac87e3cfe1118a62595b47c7df99da854f6c340e173b9eb8cacf2add WHIRLPOOL 9d7950ec3ec2cd9b8aaa0ea319f9f5089eed7d2cd2879d313426b448a27570b5582235aa46c5ad5a0fd4d0b967f8d58a963f001549232136d6a8609262af71d0
+DIST virtualbox-5.0.16-patches-01.tar.xz 4024 SHA256 200eb980a12323a61d0fa6dbf61ed64ee1e2bb5e18e16eabdf8668d8fd8be3e4 SHA512 4eed117253754abee9088d4c320b4a6f0b3e1c8313b98f354cb727001156fe68d553a677073d40b921437f4cc073420866d1533aad4e61a79607d8360abbfd4a WHIRLPOOL ab40851873d55ae873ca8ff88670a17476c0d502116f4abda7b766064a2daa71929eb69b4b68c64c3d2d0762134fe85d07044bdedde4bf15924520a604972aaa
 DIST virtualbox-5.0.32-patches-01.tar.xz 4400 SHA256 e5bf5b5b391b3402172b5a30952da50affacaeaf40a75df0430ad623fcd8ed6f SHA512 5df0ecb4f9190375edc62d231aacd381c36a1697cc33df48b2f2d68a05ca1c855d127e466eda62030736dbcee76f5c67a519a2f42b72eacaf7ed65a8cf991e8a WHIRLPOOL 4c11787951848aadacc0772df5a46ce8d54445e0120901be280f493d4cc6333e986d0376f33ac0217dbb23758240c025028ea1d21c360fc2840c8e3003a0ff62
 DIST virtualbox-5.1.24-patches-01.tar.xz 2708 SHA256 8ea5e08da07d555a4868abf6f4d689c2f6695bdb773010a01915fcc6c354f361 SHA512 0028e593818013f809831ac5a73eec63988c0aefb4b309fb3c928efbea8db8b8f46bd7c82f156396adc704f0567474df262dfe9bb6e09af0b2c23528fe2c6e2d WHIRLPOOL 5a1af78c2767608d2b1c2a4b262dbce038d2b6ed9d0499eb60ac1eb64fd6b832efdbafc2b85881ac67efd8794adcc3490fcbf61b74ad7ae576d52e8aff597b04

diff --git a/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
new file mode 100644
index 00000000000..86c074f5eb3
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-5.0.16-r1.ebuild
@@ -0,0 +1,431 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+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 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.16-patches-01.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="http://www.virtualbox.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa doc headless java libressl lvm 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/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
+		)
+	)
+	java? ( >=virtual/jre-1.6:= )
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	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-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	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
+	)
+	!headless? ( x11-libs/libXinerama )
+	java? ( >=virtual/jre-1.6:= )
+	pam? ( sys-libs/pam )
+	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_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
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Remove pointless GCC version check
+	sed -e '/^check_gcc$/d' -i configure || die
+
+	# 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
+
+	# 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
+		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
+		rm "${WORKDIR}/patches/050_${PN}-5.0.2-nopie.patch" || die
+	fi
+
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+src_configure() {
+	local myconf
+	use alsa       || myconf+=( --disable-alsa )
+	use doc        || myconf+=( --disable-docs )
+	use java       || myconf+=( --disable-java )
+	use lvm        || myconf+=( --disable-devmapper )
+	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-dbus \
+		--disable-kmods \
+		${myconf[@]} \
+		|| die "configure failed"
+}
+
+src_compile() {
+	source ./env.sh || die
+
+	# 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
+
+	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile
+
+	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
+
+	# Set the right libdir
+	sed -i \
+		-e "s@MY_LIBDIR@$(get_libdir)@" \
+		"${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
+
+	# Install the wrapper script
+	exeinto ${vbox_inst_path}
+	newexe "${FILESDIR}/${PN}-ose-5-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
+
+	# *.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{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; do
+		vbox_inst ${each}
+	done
+
+	# These binaries need to be suid root in any case.
+	for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
+		vbox_inst ${each} 4750
+	done
+
+	# Install EFI Firmware files (bug #320757)
+	pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
+	for fwfile in VBoxEFI{32,64}.fd ; do
+		vbox_inst ${fwfile} 0644
+	done
+	popd &>/dev/null || die
+
+	# 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 "${D}"${vbox_inst_path}/${each}
+	done
+
+	# Symlink binaries to the shipped wrapper
+	for each in vbox{headless,manage} VBox{Headless,Manage,VRDP} ; do
+		dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+	done
+	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
+
+	# VRDPAuth only works with this (bug #351949)
+	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
+
+	# set an env-variable for 3rd party tools
+	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst VBoxSDL 4750
+		pax-mark -m "${D}"${vbox_inst_path}/VBoxSDL
+
+		for each in vboxsdl VBoxSDL ; do
+			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+		done
+
+		if use opengl && use qt4 ; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${D}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		if use qt4 ; then
+			vbox_inst VirtualBox 4750
+			pax-mark -m "${D}"${vbox_inst_path}/VirtualBox
+
+			for each in virtualbox VirtualBox ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+
+			insinto /usr/share/${PN}
+			doins -r nls
+
+			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
+
+	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 "${D}${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
+			java-pkg_regso "${D}${vbox_inst_path}/libvboxjxpcom.so"
+		fi
+	fi
+
+	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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-10-02 22:18 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-10-02 22:18 UTC (permalink / raw
  To: gentoo-commits

commit:     e23417c8548078d1327b65c090b4929fcf252c46
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  2 22:18:38 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Oct  2 22:18:55 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e23417c8

app-emulation/virtualbox: Replaced epatch with eapply.

Package-Manager: Portage-2.3.10, Repoman-2.3.3

 app-emulation/virtualbox/virtualbox-5.1.26.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-5.1.28.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.26.ebuild b/app-emulation/virtualbox/virtualbox-5.1.26.ebuild
index d9fbee609ed..40f87adb01d 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.26.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.26.ebuild
@@ -188,7 +188,7 @@ src_prepare() {
 
 	# Only add paxmark patch when we're on pax_kernel
 	if use pax_kernel ; then
-		epatch "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch || die
+		eapply "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch
 	fi
 
 	eapply "${WORKDIR}/patches"

diff --git a/app-emulation/virtualbox/virtualbox-5.1.28.ebuild b/app-emulation/virtualbox/virtualbox-5.1.28.ebuild
index 9dcba04f6d2..b9f8673f6fc 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.28.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.28.ebuild
@@ -188,7 +188,7 @@ src_prepare() {
 
 	# Only add paxmark patch when we're on pax_kernel
 	if use pax_kernel ; then
-		epatch "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch || die
+		eapply "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch
 	fi
 
 	eapply "${WORKDIR}/patches"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-10-17  9:44 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2017-10-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     6a88235339c8f5efd0d3ab398b2a278443830ff1
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 17 09:44:31 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Oct 17 09:44:38 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a882353

app-emulation/virtualbox: Re-added the qt57 patch (bug #634522).

Package-Manager: Portage-2.3.11, Repoman-2.3.3

 app-emulation/virtualbox/Manifest                 | 2 +-
 app-emulation/virtualbox/virtualbox-5.1.30.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index f4e858d95bc..b75494e2257 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,4 +2,4 @@ DIST VirtualBox-5.1.26.tar.bz2 115915813 SHA256 b5715035e681a11ef1475f83f9503d34
 DIST VirtualBox-5.1.28.tar.bz2 116427658 SHA256 ce7d4bf6535f70e3214abeb4866f7a8634aa3c7b6dedf8825e6ad80bd821398d SHA512 5c21fd535424d7fd9adbb51894ec6d37ecf00a63a850362bd7b61fedca5031e096641814130a97ad839c0bd7089dc3dc465509615aab2af3c5735ff71005670a WHIRLPOOL 2e3fbeb39083c2e69fb23200570781a8845780a6295553af48fa9155db132e37d0fc2fb26e8a45c52864f69f02e8a0d0cbd4c895e5fbb87ab9a51dd60c7c7904
 DIST VirtualBox-5.1.30.tar.bz2 116510730 SHA256 6059b0986c9cdacc533177867634a76331ceccdcd46dddd111a50d1c42846d0b SHA512 6c44d9593f4815644a484b306e621fe7eca224002f85d89c00f2470300f2c78dbfe50ffda61d2c2465df14ca77c70a2ab86f1a05116feeee9f5833857eb18dee WHIRLPOOL dc1701211cc8247cb23800557cf7e2d34e5063806c5b22cd2c38454531ca390902fd6a764bfc17d14d33ec055de2d924853c9ed6c3ba29fb7998455f06109b6f
 DIST virtualbox-5.1.24-patches-01.tar.xz 2708 SHA256 8ea5e08da07d555a4868abf6f4d689c2f6695bdb773010a01915fcc6c354f361 SHA512 0028e593818013f809831ac5a73eec63988c0aefb4b309fb3c928efbea8db8b8f46bd7c82f156396adc704f0567474df262dfe9bb6e09af0b2c23528fe2c6e2d WHIRLPOOL 5a1af78c2767608d2b1c2a4b262dbce038d2b6ed9d0499eb60ac1eb64fd6b832efdbafc2b85881ac67efd8794adcc3490fcbf61b74ad7ae576d52e8aff597b04
-DIST virtualbox-5.1.30-patches-01.tar.xz 2440 SHA256 9578c312de7d20e4b00bb2f9f2e538f3d64a094f651db736ae7bd6e55e4e5bd7 SHA512 cebe6798f3d5265b3119ebd75848481f5a22ff5eeeae063810f65a987d3559cb0d85dcefadbc71636169c16e8f95d6aa989d0809cf7508dd355c5259db16db5d WHIRLPOOL 8466859f5a8f1204e513374e492a8649c747aa09040d4b2dad5e6a2544d178fd69ad32b5c44b7ef6380dd151b808b8e7c8763fb4514daaaef11599a871fe6460
+DIST virtualbox-5.1.30-patches-02.tar.xz 2608 SHA256 25922641e19911fe41d63a348702ed2dcab2ef79379ea236c5da6c36f77a75a5 SHA512 8a490f7cc44e40262fc47819736251c177adb635256794e9500f52729197c85211d5b0c0d000268089953a4c185872a8ba03c5d42df6b80f05eac8b81335320a WHIRLPOOL 3a7ebadf5cc8ba71fe4e4fe43d529ce72dbe95c40838d66112418ad335cb1b1cf7b6aa37fa71ccc6d50044486cb0eef52e59567530935e5a0ed83e9c3f67ec36

diff --git a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
index acc1a28b83f..f7387abf5d0 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
@@ -10,7 +10,7 @@ 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.1.30-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.30-patches-02.tar.xz"
 S="${WORKDIR}/${MY_P}"
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-12-26  2:06 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2017-12-26  2:06 UTC (permalink / raw
  To: gentoo-commits

commit:     c26872b065bdd5fdc35aea6f86a8d6e3da47f6a3
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 26 02:05:19 2017 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Dec 26 02:06:09 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c26872b0

app-emulation/virtualbox: x86 stable (bug #640302)

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.30.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
index f7387abf5d0..bd726d84d9a 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2017-12-29 17:42 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2017-12-29 17:42 UTC (permalink / raw
  To: gentoo-commits

commit:     ca3654814420291800ddfe6c0062f1afe8bc5746
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 29 17:41:44 2017 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Fri Dec 29 17:41:56 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ca365481

app-emulation/virtualbox: amd64 stable wrt bug #640302

Package-Manager: Portage-2.3.13, Repoman-2.3.3

 app-emulation/virtualbox/virtualbox-5.1.30.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
index bd726d84d9a..9a20365745c 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="http://www.virtualbox.org/"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-01-02 16:33 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-01-02 16:33 UTC (permalink / raw
  To: gentoo-commits

commit:     47d1bce7036ce6a1b2e6841706d21bb85a4cfc1f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Jan  2 16:20:01 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Jan  2 16:33:42 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=47d1bce7

app-emulation/virtualbox: Only place VRDPAuth.so with USE="pam".

Closes: https://bugs.gentoo.org/643120
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.30.ebuild | 8 +++++---
 app-emulation/virtualbox/virtualbox-5.2.2.ebuild  | 8 +++++---
 app-emulation/virtualbox/virtualbox-5.2.4.ebuild  | 8 +++++---
 3 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
index 9a20365745c..31a7801b26b 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.30.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -316,8 +316,10 @@ src_install() {
 	done
 	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
 
-	# VRDPAuth only works with this (bug #351949)
-	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"

diff --git a/app-emulation/virtualbox/virtualbox-5.2.2.ebuild b/app-emulation/virtualbox/virtualbox-5.2.2.ebuild
index f6ef3647989..292349146a9 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -316,8 +316,10 @@ src_install() {
 	done
 	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
 
-	# VRDPAuth only works with this (bug #351949)
-	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"

diff --git a/app-emulation/virtualbox/virtualbox-5.2.4.ebuild b/app-emulation/virtualbox/virtualbox-5.2.4.ebuild
index f6ef3647989..292349146a9 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -316,8 +316,10 @@ src_install() {
 	done
 	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
 
-	# VRDPAuth only works with this (bug #351949)
-	dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-01-18 21:41 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2018-01-18 21:41 UTC (permalink / raw
  To: gentoo-commits

commit:     d93728f841cb562119e7e656778e76aea6285791
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 18 21:36:24 2018 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Thu Jan 18 21:40:49 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d93728f8

app-emulation/virtualbox: amd64 stable wrt bug #644894

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
index ff5a68f2953..68d1ed27e21 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-01-21 20:30 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2018-01-21 20:30 UTC (permalink / raw
  To: gentoo-commits

commit:     49ac23cf5a51cc340bbc99e833526436aa456f4e
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 21 20:13:49 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Jan 21 20:30:03 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49ac23cf

app-emulation/virtualbox: x86 stable (bug #644894)

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
index 68d1ed27e21..8c962fe7c1f 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-02-16 14:56 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-02-16 14:56 UTC (permalink / raw
  To: gentoo-commits

commit:     bd169bf87e74dd92cb7df5db229ad7c515cc0e1a
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 16 14:55:43 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Feb 16 14:56:08 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd169bf8

app-emulation/virtualbox: Some ebuild improvements.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.32.ebuild | 29 +++++++++++++----------
 app-emulation/virtualbox/virtualbox-5.2.6.ebuild  | 29 +++++++++++++----------
 2 files changed, 34 insertions(+), 24 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
index 698f0b56dda..08304b19cae 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
@@ -204,21 +204,26 @@ src_configure() {
 		--with-g++="$(tc-getCXX)"
 		--disable-dbus
 		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
 	)
-	use alsa       || myconf+=( --disable-alsa )
-	use debug      && myconf+=( --build-debug )
-	use doc        || myconf+=( --disable-docs )
-	use java       || myconf+=( --disable-java )
-	use lvm        || myconf+=( --disable-devmapper )
-	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 qt5 || myconf+=( --disable-qt )
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
 	else
-		myconf+=( --build-headless --disable-opengl )
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
 	fi
 	if use amd64 && ! has_multilib_profile ; then
 		myconf+=( --disable-vmmraw )

diff --git a/app-emulation/virtualbox/virtualbox-5.2.6.ebuild b/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
index 46c3c3cba7a..7133045118b 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
@@ -204,21 +204,26 @@ src_configure() {
 		--with-g++="$(tc-getCXX)"
 		--disable-dbus
 		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
 	)
-	use alsa       || myconf+=( --disable-alsa )
-	use debug      && myconf+=( --build-debug )
-	use doc        || myconf+=( --disable-docs )
-	use java       || myconf+=( --disable-java )
-	use lvm        || myconf+=( --disable-devmapper )
-	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 qt5 || myconf+=( --disable-qt )
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
 	else
-		myconf+=( --build-headless --disable-opengl )
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
 	fi
 	if use amd64 && ! has_multilib_profile ; then
 		myconf+=( --disable-vmmraw )


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-02-19 14:45 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-02-19 14:45 UTC (permalink / raw
  To: gentoo-commits

commit:     a7825e2ff0e4e937850e36313b08a4fa0e853beb
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 19 14:45:28 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Feb 19 14:45:28 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7825e2f

app-emulation/virtualbox: Use tmpfiles_process correctly.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.32.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-5.2.6.ebuild  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
index 744c42640cf..e45e584a3a8 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
@@ -427,7 +427,7 @@ pkg_postinst() {
 			&& udevadm trigger --subsystem-match=usb
 	fi
 
-	tmpfiles_process
+	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
 
 	if ! use headless && use qt5 ; then
 		elog "To launch VirtualBox just type: \"virtualbox\"."

diff --git a/app-emulation/virtualbox/virtualbox-5.2.6.ebuild b/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
index efbaed97699..e40976f0165 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
@@ -427,7 +427,7 @@ pkg_postinst() {
 			&& udevadm trigger --subsystem-match=usb
 	fi
 
-	tmpfiles_process
+	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
 
 	if ! use headless && use qt5 ; then
 		elog "To launch VirtualBox just type: \"virtualbox\"."


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-03-03 21:33 James Le Cuirot
  0 siblings, 0 replies; 198+ messages in thread
From: James Le Cuirot @ 2018-03-03 21:33 UTC (permalink / raw
  To: gentoo-commits

commit:     fd215a94a75e0c9677f6b3c09c1c7b434bedec62
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Mar  3 21:32:36 2018 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sat Mar  3 21:32:36 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd215a94

app-emulation/virtualbox: Fix broken Java VM dependencies

virtual/jdk must go in DEPEND only and virtual/jre must go in RDEPEND
only and subslot operators are not necessary.

Closes: https://bugs.gentoo.org/580552
Closes: https://bugs.gentoo.org/640214
Closes: https://bugs.gentoo.org/645074
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 app-emulation/virtualbox/virtualbox-5.1.32.ebuild | 5 +++--
 app-emulation/virtualbox/virtualbox-5.1.34.ebuild | 5 +++--
 app-emulation/virtualbox/virtualbox-5.2.6.ebuild  | 5 +++--
 app-emulation/virtualbox/virtualbox-5.2.8.ebuild  | 5 +++--
 4 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
index e45e584a3a8..de534c5671c 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.32.ebuild
@@ -47,7 +47,6 @@ RDEPEND="!app-emulation/virtualbox-bin
 			x11-libs/libXinerama
 		)
 	)
-	java? ( >=virtual/jre-1.6:= )
 	libressl? ( dev-libs/libressl:= )
 	!libressl? ( dev-libs/openssl:0= )
 	lvm? ( sys-fs/lvm2 )
@@ -71,13 +70,15 @@ DEPEND="${RDEPEND}
 		dev-texlive/texlive-fontsextra
 	)
 	!headless? ( x11-libs/libXinerama )
-	java? ( >=virtual/jre-1.6:= )
+	java? ( >=virtual/jdk-1.6 )
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )
 	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	${PYTHON_DEPS}"
+RDEPEND="${RDEPEND}
+	java? ( >=virtual/jre-1.6 )"
 
 QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
 	usr/lib/virtualbox/VBoxSDL.so

diff --git a/app-emulation/virtualbox/virtualbox-5.1.34.ebuild b/app-emulation/virtualbox/virtualbox-5.1.34.ebuild
index e933a7f1041..c23a8f3802a 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.34.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.34.ebuild
@@ -47,7 +47,6 @@ RDEPEND="!app-emulation/virtualbox-bin
 			x11-libs/libXinerama
 		)
 	)
-	java? ( >=virtual/jre-1.6:= )
 	libressl? ( dev-libs/libressl:= )
 	!libressl? ( dev-libs/openssl:0= )
 	lvm? ( sys-fs/lvm2 )
@@ -71,13 +70,15 @@ DEPEND="${RDEPEND}
 		dev-texlive/texlive-fontsextra
 	)
 	!headless? ( x11-libs/libXinerama )
-	java? ( >=virtual/jre-1.6:= )
+	java? ( >=virtual/jdk-1.6 )
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )
 	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	${PYTHON_DEPS}"
+RDEPEND="${RDEPEND}
+	java? ( >=virtual/jre-1.6 )"
 
 QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
 	usr/lib/virtualbox/VBoxSDL.so

diff --git a/app-emulation/virtualbox/virtualbox-5.2.6.ebuild b/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
index b1b10dbd411..e6601c30c85 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.6.ebuild
@@ -47,7 +47,6 @@ RDEPEND="!app-emulation/virtualbox-bin
 			x11-libs/libXinerama
 		)
 	)
-	java? ( >=virtual/jre-1.6:= )
 	libressl? ( dev-libs/libressl:= )
 	!libressl? ( dev-libs/openssl:0= )
 	lvm? ( sys-fs/lvm2 )
@@ -71,13 +70,15 @@ DEPEND="${RDEPEND}
 		dev-texlive/texlive-fontsextra
 	)
 	!headless? ( x11-libs/libXinerama )
-	java? ( >=virtual/jre-1.6:= )
+	java? ( >=virtual/jdk-1.6 )
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )
 	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	${PYTHON_DEPS}"
+RDEPEND="${RDEPEND}
+	java? ( >=virtual/jre-1.6 )"
 
 QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
 	usr/lib/virtualbox/VBoxSDL.so

diff --git a/app-emulation/virtualbox/virtualbox-5.2.8.ebuild b/app-emulation/virtualbox/virtualbox-5.2.8.ebuild
index 608ae644b8f..40b4975b1e8 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.8.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.8.ebuild
@@ -47,7 +47,6 @@ RDEPEND="!app-emulation/virtualbox-bin
 			x11-libs/libXinerama
 		)
 	)
-	java? ( >=virtual/jre-1.6:= )
 	libressl? ( dev-libs/libressl:= )
 	!libressl? ( dev-libs/openssl:0= )
 	lvm? ( sys-fs/lvm2 )
@@ -71,13 +70,15 @@ DEPEND="${RDEPEND}
 		dev-texlive/texlive-fontsextra
 	)
 	!headless? ( x11-libs/libXinerama )
-	java? ( >=virtual/jre-1.6:= )
+	java? ( >=virtual/jdk-1.6 )
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )
 	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	${PYTHON_DEPS}"
+RDEPEND="${RDEPEND}
+	java? ( >=virtual/jre-1.6 )"
 
 QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
 	usr/lib/virtualbox/VBoxSDL.so


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-05-07 23:55 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2018-05-07 23:55 UTC (permalink / raw
  To: gentoo-commits

commit:     b72046f51b39e0df309f7c142ff28331f48a3ff2
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon May  7 23:49:08 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon May  7 23:52:27 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b72046f5

app-emulation/virtualbox: x86 stable (bug #655186)

Package-Manager: Portage-2.3.34, Repoman-2.3.9

 app-emulation/virtualbox/virtualbox-5.1.36.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.36.ebuild b/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
index 73a8fc1d578..fe32f39d7b4 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-05-08 15:15 Agostino Sarubbo
  0 siblings, 0 replies; 198+ messages in thread
From: Agostino Sarubbo @ 2018-05-08 15:15 UTC (permalink / raw
  To: gentoo-commits

commit:     c2692e313653e17ff5e1430f01066cfe83524e0e
Author:     Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Tue May  8 15:14:37 2018 +0000
Commit:     Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Tue May  8 15:14:37 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2692e31

app-emulation/virtualbox: amd64 stable wrt bug #655186

Package-Manager: Portage-2.3.24, Repoman-2.3.6
RepoMan-Options: --include-arches="amd64"

 app-emulation/virtualbox/virtualbox-5.1.36.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.36.ebuild b/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
index fe32f39d7b4..0e61d6f6497 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-02  9:42 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-02  9:42 UTC (permalink / raw
  To: gentoo-commits

commit:     58cca99bf78438fca556d24e7ee2b38b68f2acb2
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Jul  2 09:42:26 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jul  2 09:42:49 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58cca99b

app-emulation/virtualbox: New patchset to fix qt-5.11 build issues

Closes: https://bugs.gentoo.org/654872
Package-Manager: Portage-2.3.41, Repoman-2.3.9

 app-emulation/virtualbox/Manifest                 | 1 +
 app-emulation/virtualbox/virtualbox-5.2.12.ebuild | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 86b0ecb635b..5771237128a 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -4,3 +4,4 @@ DIST VirtualBox-5.2.10.tar.bz2 118575607 BLAKE2B 46360d63cf6d1b8744016cbb2c1eee1
 DIST VirtualBox-5.2.12.tar.bz2 118612426 BLAKE2B 685c400ef82de14891d9cc42e94e8c0de270a57d6e69820d45cf7fda0ef32d78d4c2670b4a2b89003d58035ee50d648d7906e58d99a96d40c24ee2fa51a317c9 SHA512 083219501d0103d1060cd470cad5a29a348341abf92c1caccf10e7fcfcf0db163e95d6624614d327dda7500d638d3038634fa8a3c1c441a6ee8de9e4f51325d2
 DIST virtualbox-5.1.32-patches-01.tar.xz 2464 BLAKE2B 28f461634ac7f200b74d961e56f56aea486445bdb8d1490000bd34393b4873ee058d1dc9db6c32084921bd7d51a92be1e38b1b098385f443f41b9231c1489829 SHA512 08782c8eecc0cbb370f21fb3951af449ed1c8174a7184210de376a7d4ca5d64b14b2619d121aacef1c85982c8b485e545e260d3c0fc1f95769093efa23cd2cd2
 DIST virtualbox-5.2.0-patches-01.tar.xz 2460 BLAKE2B d3f973dc7ee0557c360f801c3bf84065a7e7bc9960984398b8f86d71fab32c59774e970c6cf873be07bcb9666af168570e8a78705a5999b1fc5d863dbbc6e538 SHA512 b91278dd81a50e412f5a281c72949f591a1c53303080549b74b28763cab9e3948948afb0256e0453d17736683cca3372a8e9c6d63f02f3eff3ef92c2a1ea332b
+DIST virtualbox-5.2.12-patches-01.tar.xz 2616 BLAKE2B 5731484d185414d83588ee227bbc1eef266451d1a3a710adf1b769cd6404ef1750dba7a60549f2ab9f3fb81ef15809db9ea0190127caefc72d7bc9bb8b741fb0 SHA512 712b55392a8e8357e95abb42ea4f8dac3391ecbf9cbecf27c7dbf674c40f42a1eb19d227a1b3adcf621384a9f64a6438d20fb43866c736189097fb5770c5c654

diff --git a/app-emulation/virtualbox/virtualbox-5.2.12.ebuild b/app-emulation/virtualbox/virtualbox-5.2.12.ebuild
index 9286de0063a..6b5234faaad 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.12.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.12.ebuild
@@ -13,7 +13,7 @@ MY_P=VirtualBox-${MY_PV}
 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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.0-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.12-patches-01.tar.xz"
 
 LICENSE="GPL-2"
 SLOT="0"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-03 18:52 Jonas Stein
  0 siblings, 0 replies; 198+ messages in thread
From: Jonas Stein @ 2018-07-03 18:52 UTC (permalink / raw
  To: gentoo-commits

commit:     b3932173e9678e7e556857b894f67fb53c2e66b2
Author:     Jonas Stein <jstein <AT> gentoo <DOT> org>
AuthorDate: Tue Jul  3 18:49:49 2018 +0000
Commit:     Jonas Stein <jstein <AT> gentoo <DOT> org>
CommitDate: Tue Jul  3 18:49:49 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3932173

app-emulation/virtualbox: Maintainer retired

Proxied maintainer retired due to inactivity.
Bug: https://bugs.gentoo.org/632934
Package-Manager: Portage-2.3.41, Repoman-2.3.9

 app-emulation/virtualbox/metadata.xml | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index 441bfbe90a0..0c28b5e7197 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -5,13 +5,7 @@
     <email>polynomial-c@gentoo.org</email>
     <name>Lars Wendler</name>
   </maintainer>
-  <maintainer type="person">
-    <email>masterzorag@gmail.com</email>
-  </maintainer>
-  <maintainer type="project">
-    <email>proxy-maint@gentoo.org</email>
-  </maintainer>
-<use>
+  <use>
   <flag name="headless">Build without any graphic frontend</flag>
   <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
   <flag name="pax_kernel">Apply patch needed for pax enabled kernels.</flag>
@@ -20,3 +14,4 @@
   <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
 </use>
 </pkgmetadata>
+


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-16  9:46 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-16  9:46 UTC (permalink / raw
  To: gentoo-commits

commit:     267e77beaacd5e24733d9840a8680e3a47ffb04e
Author:     meierfra <meierfra <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Mon Jul 16 08:53:45 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jul 16 09:46:26 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=267e77be

Install UnattendedTemplates with VirtualBox

also install the directory /usr/share/virtualbox/UnattendedTemplates/ with VirtualBox
Closes: https://github.com/gentoo/gentoo/pull/9246

 .../virtualbox/virtualbox-5.2.14-r1.ebuild         | 469 +++++++++++++++++++++
 1 file changed, 469 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
new file mode 100644
index 00000000000..d907a7f0553
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
@@ -0,0 +1,469 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+inherit flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
+
+MY_PV="${PV/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=VirtualBox-${MY_PV}
+
+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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.12-patches-01.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +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/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 )
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	udev? ( >=virtual/udev-171 )
+	vnc? ( >=net-libs/libvncserver-0.9.9 )"
+DEPEND="${RDEPEND}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		dev-texlive/texlive-basic
+		dev-texlive/texlive-latex
+		dev-texlive/texlive-latexrecommended
+		dev-texlive/texlive-latexextra
+		dev-texlive/texlive-fontsrecommended
+		dev-texlive/texlive-fontsextra
+	)
+	!headless? ( x11-libs/libXinerama )
+	java? ( >=virtual/jdk-1.6 )
+	pam? ( sys-libs/pam )
+	pax_kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	qt5? ( dev-qt/linguist-tools:5 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	${PYTHON_DEPS}"
+RDEPEND="${RDEPEND}
+	java? ( >=virtual/jre-1.6 )"
+
+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_7.so
+	usr/lib/virtualbox/VBoxXPCOMC.so
+	usr/lib/virtualbox/VBoxOGLhostcrutil.so
+	usr/lib/virtualbox/VBoxNetDHCP.so
+	usr/lib/virtualbox/VBoxNetNAT.so"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+pkg_setup() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something less stupid.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
+		-i configure || die
+
+	# Don't use "echo -n"
+	sed 's@ECHO_N="echo -n"@ECHO_N="printf"@' -i configure || die
+
+	# 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
+
+	# 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
+		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
+
+	# Only add nopie patch when we're on hardened
+	if  gcc-specs-pie ; then
+		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
+	fi
+
+	# Only add paxmark patch when we're on pax_kernel
+	if use pax_kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+src_configure() {
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+		--disable-dbus
+		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+	# not an autoconf script
+	./configure ${myconf[@]} || die "configure failed"
+}
+
+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}"
+	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() {
+	local binpath="release"
+	use debug && binpath="debug"
+	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
+
+	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile size ico icofile
+
+	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
+
+	# 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-5-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
+
+	# *.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{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; 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)
+	pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
+	for fwfile in VBoxEFI{32,64}.fd ; do
+		vbox_inst ${fwfile} 0644
+	done
+	popd &>/dev/null || die
+
+	# 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{headless,manage} VBox{Headless,Manage,VRDP} ; do
+		dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+	done
+	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; 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
+
+		if use qt5 ; then
+			vbox_inst VirtualBox 4750
+			pax-mark -m "${ED%/}"${vbox_inst_path}/VirtualBox
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			for each in virtualbox VirtualBox ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+
+			insinto /usr/share/${PN}
+			doins -r nls
+			doins -r UnattendedTemplates
+
+			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
+		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
+		# 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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+
+	if use doc ; then
+		dodoc UserManual.pdf
+	fi
+
+	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
+}
+
+pkg_postinst() {
+	xdg_desktop_database_update
+
+	if use udev ; then
+		udevadm control --reload-rules \
+			&& udevadm trigger --subsystem-match=usb
+	fi
+
+	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+
+	if ! use headless && use qt5 ; 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 "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() {
+	xdg_desktop_database_update
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-16  9:46 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-16  9:46 UTC (permalink / raw
  To: gentoo-commits

commit:     743575388649ec3d23ba7100ff7074a339905a5b
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 16 09:39:00 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jul 16 09:46:28 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74357538

app-emulation/virtualbox: Removed old.

Package-Manager: Portage-2.3.42, Repoman-2.3.9

 app-emulation/virtualbox/virtualbox-5.2.14.ebuild | 468 ----------------------
 1 file changed, 468 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.14.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14.ebuild
deleted file mode 100644
index 72fb052735f..00000000000
--- a/app-emulation/virtualbox/virtualbox-5.2.14.ebuild
+++ /dev/null
@@ -1,468 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-inherit flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
-
-MY_PV="${PV/beta/BETA}"
-MY_PV="${MY_PV/rc/RC}"
-MY_P=VirtualBox-${MY_PV}
-
-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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.12-patches-01.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +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/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 )
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtgui:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			opengl? ( dev-qt/qtopengl:5 )
-			x11-libs/libXinerama
-		)
-	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
-	lvm? ( sys-fs/lvm2 )
-	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )"
-DEPEND="${RDEPEND}
-	>=dev-util/kbuild-0.1.9998.3127
-	>=dev-lang/yasm-0.6.2
-	sys-devel/bin86
-	sys-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	doc? (
-		app-text/docbook-sgml-dtd:4.4
-		dev-texlive/texlive-basic
-		dev-texlive/texlive-latex
-		dev-texlive/texlive-latexrecommended
-		dev-texlive/texlive-latexextra
-		dev-texlive/texlive-fontsrecommended
-		dev-texlive/texlive-fontsextra
-	)
-	!headless? ( x11-libs/libXinerama )
-	java? ( >=virtual/jdk-1.6 )
-	pam? ( sys-libs/pam )
-	pax_kernel? ( sys-apps/elfix )
-	pulseaudio? ( media-sound/pulseaudio )
-	qt5? ( dev-qt/linguist-tools:5 )
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-	${PYTHON_DEPS}"
-RDEPEND="${RDEPEND}
-	java? ( >=virtual/jre-1.6 )"
-
-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_7.so
-	usr/lib/virtualbox/VBoxXPCOMC.so
-	usr/lib/virtualbox/VBoxOGLhostcrutil.so
-	usr/lib/virtualbox/VBoxNetDHCP.so
-	usr/lib/virtualbox/VBoxNetNAT.so"
-
-S="${WORKDIR}/${MY_P}"
-
-REQUIRED_USE="
-	java? ( sdk )
-	python? ( sdk )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-pkg_setup() {
-	if ! use headless && ! use qt5 ; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5 ; then
-		einfo "You selected USE=\"headless qt5\", 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
-
-	tc-ld-disable-gold #bug 488176
-	tc-export CC CXX LD AR RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-}
-
-src_prepare() {
-	# Remove shipped binaries (kBuild,yasm), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Replace pointless GCC version check with something less stupid.
-	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
-		-i configure || die
-
-	# Don't use "echo -n"
-	sed 's@ECHO_N="echo -n"@ECHO_N="printf"@' -i configure || die
-
-	# 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
-
-	# 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
-		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
-
-	# Only add nopie patch when we're on hardened
-	if  gcc-specs-pie ; then
-		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
-	fi
-
-	# Only add paxmark patch when we're on pax_kernel
-	if use pax_kernel ; then
-		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
-	fi
-
-	eapply "${WORKDIR}/patches"
-
-	eapply_user
-}
-
-src_configure() {
-	local myconf=(
-		--with-gcc="$(tc-getCC)"
-		--with-g++="$(tc-getCXX)"
-		--disable-dbus
-		--disable-kmods
-		$(usex alsa '' --disable-alsa)
-		$(usex debug --build-debug '')
-		$(usex doc '' --disable-docs)
-		$(usex java '' --disable-java)
-		$(usex lvm '' --disable-devmapper)
-		$(usex pulseaudio '' --disable-pulse)
-		$(usex python '' --disable-python)
-		$(usex vboxwebsrv --enable-webservice '')
-		$(usex vnc --enable-vnc '')
-	)
-	if ! use headless ; then
-		myconf+=(
-			$(usex opengl '' --disable-opengl)
-			$(usex qt5 '' --disable-qt)
-		)
-	else
-		myconf+=(
-			--build-headless
-			--disable-opengl
-		)
-	fi
-	if use amd64 && ! has_multilib_profile ; then
-		myconf+=( --disable-vmmraw )
-	fi
-	# not an autoconf script
-	./configure ${myconf[@]} || die "configure failed"
-}
-
-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}"
-	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() {
-	local binpath="release"
-	use debug && binpath="debug"
-	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
-
-	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile size ico icofile
-
-	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
-
-	# 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-5-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
-
-	# *.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{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; 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)
-	pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
-	for fwfile in VBoxEFI{32,64}.fd ; do
-		vbox_inst ${fwfile} 0644
-	done
-	popd &>/dev/null || die
-
-	# 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{headless,manage} VBox{Headless,Manage,VRDP} ; do
-		dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-	done
-	dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
-
-	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; 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
-
-		if use qt5 ; then
-			vbox_inst VirtualBox 4750
-			pax-mark -m "${ED%/}"${vbox_inst_path}/VirtualBox
-
-			if use opengl ; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
-			fi
-
-			for each in virtualbox VirtualBox ; do
-				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
-			done
-
-			insinto /usr/share/${PN}
-			doins -r nls
-
-			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
-		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
-		# 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
-		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
-			> "${T}"/10-virtualbox.rules || die
-		doins "${T}"/10-virtualbox.rules
-	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
-
-	if use doc ; then
-		dodoc UserManual.pdf
-	fi
-
-	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
-}
-
-pkg_postinst() {
-	xdg_desktop_database_update
-
-	if use udev ; then
-		udevadm control --reload-rules \
-			&& udevadm trigger --subsystem-match=usb
-	fi
-
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
-
-	if ! use headless && use qt5 ; 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 "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() {
-	xdg_desktop_database_update
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-16 23:42 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-16 23:42 UTC (permalink / raw
  To: gentoo-commits

commit:     63bf9b66c46612da1510374253322b3d66424bba
Author:     Marty E. Plummer <hanetzer <AT> startmail <DOT> com>
AuthorDate: Mon Jul 16 18:33:50 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jul 16 23:42:22 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63bf9b66

app-emulation/virtualbox: add gnome2-utils

To satisfy QA issues on install. Drop multilib.eclass as unneeded here
as the only function used from it, get_libdir, is automatically present
in EAPI 6, which is the only EAPI currently in use.

Package-Manager: Portage-2.3.43, Repoman-2.3.10
Closes: https://github.com/gentoo/gentoo/pull/9256

 app-emulation/virtualbox/virtualbox-5.1.36.ebuild    | 4 +++-
 app-emulation/virtualbox/virtualbox-5.1.38.ebuild    | 4 +++-
 app-emulation/virtualbox/virtualbox-5.2.12.ebuild    | 4 +++-
 app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild | 4 +++-
 4 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.1.36.ebuild b/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
index 0e61d6f6497..b16e1523f1a 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.36.ebuild
@@ -4,7 +4,7 @@
 EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
-inherit flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
+inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
 
 MY_PV="${PV/beta/BETA}"
 MY_PV="${MY_PV/rc/RC}"
@@ -422,6 +422,7 @@ src_install() {
 }
 
 pkg_postinst() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 
 	if use udev ; then
@@ -464,5 +465,6 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 }

diff --git a/app-emulation/virtualbox/virtualbox-5.1.38.ebuild b/app-emulation/virtualbox/virtualbox-5.1.38.ebuild
index 73a8fc1d578..82fd4f21ebc 100644
--- a/app-emulation/virtualbox/virtualbox-5.1.38.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.1.38.ebuild
@@ -4,7 +4,7 @@
 EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
-inherit flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
+inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
 
 MY_PV="${PV/beta/BETA}"
 MY_PV="${MY_PV/rc/RC}"
@@ -422,6 +422,7 @@ src_install() {
 }
 
 pkg_postinst() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 
 	if use udev ; then
@@ -464,5 +465,6 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 }

diff --git a/app-emulation/virtualbox/virtualbox-5.2.12.ebuild b/app-emulation/virtualbox/virtualbox-5.2.12.ebuild
index 6b5234faaad..d0cd2a8076d 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.12.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.12.ebuild
@@ -4,7 +4,7 @@
 EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
-inherit flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
+inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
 
 MY_PV="${PV/beta/BETA}"
 MY_PV="${MY_PV/rc/RC}"
@@ -422,6 +422,7 @@ src_install() {
 }
 
 pkg_postinst() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 
 	if use udev ; then
@@ -464,5 +465,6 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 }

diff --git a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
index d907a7f0553..25b19f71be1 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
@@ -4,7 +4,7 @@
 EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
-inherit flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
+inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
 
 MY_PV="${PV/beta/BETA}"
 MY_PV="${MY_PV/rc/RC}"
@@ -423,6 +423,7 @@ src_install() {
 }
 
 pkg_postinst() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 
 	if use udev ; then
@@ -465,5 +466,6 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
+	gnome2_icon_cache_update
 	xdg_desktop_database_update
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-18 10:07 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-18 10:07 UTC (permalink / raw
  To: gentoo-commits

commit:     fbc64805588abfbcbc961741450478189bcb6bc2
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 18 10:06:54 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jul 18 10:06:54 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbc64805

app-emulation/virtualbox: Fixed minor issue with new patchset

Package-Manager: Portage-2.3.43, Repoman-2.3.10

 app-emulation/virtualbox/Manifest | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 429bbdfcaa2..2e940ce3429 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -4,4 +4,4 @@ DIST VirtualBox-5.2.14.tar.bz2 118597539 BLAKE2B 5e0a8d92405378eb438cae375041609
 DIST VirtualBox-5.2.16.tar.bz2 118678441 BLAKE2B 9d912a51ceb69eb117d9886adf34fe4900bd941637c0610e0e0febb650cf7817b6f2fa0db4b085c0cb28c56892e7f8678e3533d7384cd155e356fa4a0ec7c0fa SHA512 361607c43e3f7fb60da6db898951317c45a7f7b782c42808759f7c29502e3778ae28e5a54b5c49d1c5e46d94f85dbd1891d69f16d756767f0155bb48531b9519
 DIST virtualbox-5.1.32-patches-01.tar.xz 2464 BLAKE2B 28f461634ac7f200b74d961e56f56aea486445bdb8d1490000bd34393b4873ee058d1dc9db6c32084921bd7d51a92be1e38b1b098385f443f41b9231c1489829 SHA512 08782c8eecc0cbb370f21fb3951af449ed1c8174a7184210de376a7d4ca5d64b14b2619d121aacef1c85982c8b485e545e260d3c0fc1f95769093efa23cd2cd2
 DIST virtualbox-5.2.12-patches-01.tar.xz 2616 BLAKE2B 5731484d185414d83588ee227bbc1eef266451d1a3a710adf1b769cd6404ef1750dba7a60549f2ab9f3fb81ef15809db9ea0190127caefc72d7bc9bb8b741fb0 SHA512 712b55392a8e8357e95abb42ea4f8dac3391ecbf9cbecf27c7dbf674c40f42a1eb19d227a1b3adcf621384a9f64a6438d20fb43866c736189097fb5770c5c654
-DIST virtualbox-5.2.16-patches-01.tar.xz 2948 BLAKE2B 1c797dacbf17229e1e053738773f3ffe8ba85cb591c73968f1f535ebf16d440a0547fac94e92da609b85b6511f31490e650d172f63c0992a7f0aec499156ec33 SHA512 0aa8903cd74f8816ce14b9164bd59421d14618afa0456d9b9edb808d47c815254252e1f3eba405641c7cadfd0306bd75d21a5d2fd0f3e2f3a88250f6f6c5542e
+DIST virtualbox-5.2.16-patches-01.tar.xz 2952 BLAKE2B 1d23d83bdb4d9576d402b67cc81d4427c5fe9163550d2817546382e1c1087000553d4a9a864f2527a909f52ce389105bcfe5518b5407de1299c7d2a62ee3cc21 SHA512 88c21583c51ae8e22e5fd3f08baae686045e884883153e2e365c35ba19f2773d5964c523a4ad3777fe30ca96bf76fab8819e09beeadf8350193041bff783893d


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-19  8:37 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-19  8:37 UTC (permalink / raw
  To: gentoo-commits

commit:     e13bc4b7bb3c74ccddf0adef5e394502bc851378
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 19 08:33:58 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Jul 19 08:37:48 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e13bc4b7

app-emulation/virtualbox: Added "opus" USE flag.

Closes: https://bugs.gentoo.org/661544
Closes: https://github.com/gentoo/gentoo/pull/9281
Package-Manager: Portage-2.3.43, Repoman-2.3.10

 app-emulation/virtualbox/Manifest                 | 2 +-
 app-emulation/virtualbox/metadata.xml             | 1 +
 app-emulation/virtualbox/virtualbox-5.2.16.ebuild | 6 ++++--
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 2e940ce3429..92985a7263f 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -4,4 +4,4 @@ DIST VirtualBox-5.2.14.tar.bz2 118597539 BLAKE2B 5e0a8d92405378eb438cae375041609
 DIST VirtualBox-5.2.16.tar.bz2 118678441 BLAKE2B 9d912a51ceb69eb117d9886adf34fe4900bd941637c0610e0e0febb650cf7817b6f2fa0db4b085c0cb28c56892e7f8678e3533d7384cd155e356fa4a0ec7c0fa SHA512 361607c43e3f7fb60da6db898951317c45a7f7b782c42808759f7c29502e3778ae28e5a54b5c49d1c5e46d94f85dbd1891d69f16d756767f0155bb48531b9519
 DIST virtualbox-5.1.32-patches-01.tar.xz 2464 BLAKE2B 28f461634ac7f200b74d961e56f56aea486445bdb8d1490000bd34393b4873ee058d1dc9db6c32084921bd7d51a92be1e38b1b098385f443f41b9231c1489829 SHA512 08782c8eecc0cbb370f21fb3951af449ed1c8174a7184210de376a7d4ca5d64b14b2619d121aacef1c85982c8b485e545e260d3c0fc1f95769093efa23cd2cd2
 DIST virtualbox-5.2.12-patches-01.tar.xz 2616 BLAKE2B 5731484d185414d83588ee227bbc1eef266451d1a3a710adf1b769cd6404ef1750dba7a60549f2ab9f3fb81ef15809db9ea0190127caefc72d7bc9bb8b741fb0 SHA512 712b55392a8e8357e95abb42ea4f8dac3391ecbf9cbecf27c7dbf674c40f42a1eb19d227a1b3adcf621384a9f64a6438d20fb43866c736189097fb5770c5c654
-DIST virtualbox-5.2.16-patches-01.tar.xz 2952 BLAKE2B 1d23d83bdb4d9576d402b67cc81d4427c5fe9163550d2817546382e1c1087000553d4a9a864f2527a909f52ce389105bcfe5518b5407de1299c7d2a62ee3cc21 SHA512 88c21583c51ae8e22e5fd3f08baae686045e884883153e2e365c35ba19f2773d5964c523a4ad3777fe30ca96bf76fab8819e09beeadf8350193041bff783893d
+DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index 0c28b5e7197..e75aaef2f83 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -8,6 +8,7 @@
   <use>
   <flag name="headless">Build without any graphic frontend</flag>
   <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
+  <flag name="opus">Adds support for the Opus codec via <pkg>media-libs/opus</pkg></flag>
   <flag name="pax_kernel">Apply patch needed for pax enabled kernels.</flag>
   <flag name="sdk">Enable building of SDK</flag>
   <flag name="udev">Controls installation of special USB udev rules.</flag>

diff --git a/app-emulation/virtualbox/virtualbox-5.2.16.ebuild b/app-emulation/virtualbox/virtualbox-5.2.16.ebuild
index f29fb369912..4e16bce03f0 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.16.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.16.ebuild
@@ -13,12 +13,12 @@ MY_P=VirtualBox-${MY_PV}
 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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.16-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.16-patches-02.tar.xz"
 
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc headless java libressl lvm opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin
 	~app-emulation/virtualbox-modules-${PV}
@@ -50,6 +50,7 @@ RDEPEND="!app-emulation/virtualbox-bin
 	libressl? ( dev-libs/libressl:= )
 	!libressl? ( dev-libs/openssl:0= )
 	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )
 	vnc? ( >=net-libs/libvncserver-0.9.9 )"
 DEPEND="${RDEPEND}
@@ -210,6 +211,7 @@ src_configure() {
 		$(usex doc '' --disable-docs)
 		$(usex java '' --disable-java)
 		$(usex lvm '' --disable-devmapper)
+		$(usex opus --build-libopus '')
 		$(usex pulseaudio '' --disable-pulse)
 		$(usex python '' --disable-python)
 		$(usex vboxwebsrv --enable-webservice '')


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-19  8:39 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-07-19  8:39 UTC (permalink / raw
  To: gentoo-commits

commit:     caecd19a8a2be2fc3c34783618245d5bcaf9871b
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 19 08:39:16 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Jul 19 08:39:16 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=caecd19a

app-emulation/virtualbox: Make "opus" USE flag being enabled by default

Package-Manager: Portage-2.3.43, Repoman-2.3.10

 app-emulation/virtualbox/virtualbox-5.2.16.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.16.ebuild b/app-emulation/virtualbox/virtualbox-5.2.16.ebuild
index 4e16bce03f0..cacca024750 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.16.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.16.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="alsa debug doc headless java libressl lvm opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin
 	~app-emulation/virtualbox-modules-${PV}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-07-22 17:07 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2018-07-22 17:07 UTC (permalink / raw
  To: gentoo-commits

commit:     0515fcca831c56b08369905f0a742bbe88049c34
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 22 17:04:04 2018 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Jul 22 17:06:54 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0515fcca

app-emulation/virtualbox: amd64 stable wrt bug #660706

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
index 957eaf57cae..d2a03ffef0d 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-11-16 14:48 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-11-16 14:48 UTC (permalink / raw
  To: gentoo-commits

commit:     b036555114a203eb62490c56edb726c2d3999e85
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 16 14:06:28 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Nov 16 14:48:06 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0365551

app-emulation/virtualbox: removed "echo -n" replacement code

as upstream finally replaced "echo -n" with "printf" in their configure
script.

Closes: https://bugs.gentoo.org/670806
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild | 5 +----
 app-emulation/virtualbox/virtualbox-5.2.20.ebuild    | 3 ---
 app-emulation/virtualbox/virtualbox-5.2.22.ebuild    | 3 ---
 3 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
index d2a03ffef0d..30079ef2356 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -154,9 +154,6 @@ src_prepare() {
 	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
 		-i configure || die
 
-	# Don't use "echo -n"
-	sed 's@ECHO_N="echo -n"@ECHO_N="printf"@' -i configure || die
-
 	# Disable things unused or split into separate ebuilds
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die

diff --git a/app-emulation/virtualbox/virtualbox-5.2.20.ebuild b/app-emulation/virtualbox/virtualbox-5.2.20.ebuild
index adcba1fd0cd..b7a4c078630 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.20.ebuild
@@ -155,9 +155,6 @@ src_prepare() {
 	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
 		-i configure || die
 
-	# Don't use "echo -n"
-	sed 's@ECHO_N="echo -n"@ECHO_N="printf"@' -i configure || die
-
 	# Disable things unused or split into separate ebuilds
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die

diff --git a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
index adcba1fd0cd..b7a4c078630 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
@@ -155,9 +155,6 @@ src_prepare() {
 	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
 		-i configure || die
 
-	# Don't use "echo -n"
-	sed 's@ECHO_N="echo -n"@ECHO_N="printf"@' -i configure || die
-
 	# Disable things unused or split into separate ebuilds
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-11-16 16:32 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-11-16 16:32 UTC (permalink / raw
  To: gentoo-commits

commit:     836850f704bc33a73b22f305d5de68cc7af74c76
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 16 16:32:12 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Nov 16 16:32:12 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=836850f7

app-emulation/virtualbox: Fixed USE="opus" configure option.

Bug: https://bugs.gentoo.org/671280
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                      | 2 +-
 app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index cef5467df51..8527693bf99 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -4,4 +4,4 @@ DIST VirtualBox-5.2.22.tar.bz2 118757134 BLAKE2B be795cdbfb09d3d443f63e190b63898
 DIST VirtualBox-6.0.0_BETA2.tar.bz2 150947619 BLAKE2B 53ed4cfea4a9e62cb8ba68089e3b6cea04b33950496e8aa945591f0d30bb69bbf02428b6bd6dd67afbc916d612b0135ea10124741c0538b917749f46935cf834 SHA512 10f7bd5c7c14d79ed1bf4662fce76d66f4f61bba1a9c8c7dfff57dad2dd6eaf2ae03911fdc994d53769f872079d7a04a1732126fc1aa9907237cbdccefda3348
 DIST virtualbox-5.2.12-patches-01.tar.xz 2616 BLAKE2B 5731484d185414d83588ee227bbc1eef266451d1a3a710adf1b769cd6404ef1750dba7a60549f2ab9f3fb81ef15809db9ea0190127caefc72d7bc9bb8b741fb0 SHA512 712b55392a8e8357e95abb42ea4f8dac3391ecbf9cbecf27c7dbf674c40f42a1eb19d227a1b3adcf621384a9f64a6438d20fb43866c736189097fb5770c5c654
 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
-DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2924 BLAKE2B fd2dd4bca69adbdcdc3f3035e86b84773c8e884cc36c78ba74047a0c5d971c2a74b47c284a321d144ee9ece058beba7909e978c12f6a22e9568d370075681a13 SHA512 d7db90a7975fd452e53219175b8eb21a3b09916bf0b2dba687ff7543cbacf9f24cc35156c0f19d4c3d98f8003e386db2d68e8d953226930bdae82b12cdc3c0e9
+DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e

diff --git a/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild b/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild
index fee02593ba9..b334d69c98a 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild
@@ -209,7 +209,7 @@ src_configure() {
 		$(usex doc '' --disable-docs)
 		$(usex java '' --disable-java)
 		$(usex lvm '' --disable-devmapper)
-		$(usex opus --build-libopus '')
+		$(usex opus '' --disable-libopus)
 		$(usex pulseaudio '' --disable-pulse)
 		$(usex python '' --disable-python)
 		$(usex vboxwebsrv --enable-webservice '')


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-11-17 11:55 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-11-17 11:55 UTC (permalink / raw
  To: gentoo-commits

commit:     272a2ed2ca91c94420669d0318566aacaefb2ddd
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 17 11:54:35 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Nov 17 11:54:53 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=272a2ed2

app-emulation/virtualbox: Small ebuild improvements.

- Added missing dep on x11-libs/libxcb:=
- Added sub-slot dep operator to sys-libs/zlib
- echo the ./configure call so it can get logged

Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild | 10 ++++++++--
 app-emulation/virtualbox/virtualbox-5.2.20.ebuild    | 10 ++++++++--
 app-emulation/virtualbox/virtualbox-5.2.22.ebuild    | 10 ++++++++--
 3 files changed, 24 insertions(+), 6 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
index 30079ef2356..4d8d595387b 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
@@ -28,10 +28,11 @@ RDEPEND="!app-emulation/virtualbox-bin
 	dev-libs/libxml2
 	media-libs/libpng:0=
 	media-libs/libvpx:0=
-	sys-libs/zlib
+	sys-libs/zlib:=
 	!headless? (
 		media-libs/libsdl:0[X,video]
 		x11-libs/libX11
+		x11-libs/libxcb:=
 		x11-libs/libXcursor
 		x11-libs/libXext
 		x11-libs/libXmu
@@ -196,6 +197,11 @@ src_prepare() {
 	eapply_user
 }
 
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
 src_configure() {
 	local myconf=(
 		--with-gcc="$(tc-getCC)"
@@ -227,7 +233,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	./configure ${myconf[@]} || die "configure failed"
+	doecho ./configure ${myconf[@]}
 }
 
 src_compile() {

diff --git a/app-emulation/virtualbox/virtualbox-5.2.20.ebuild b/app-emulation/virtualbox/virtualbox-5.2.20.ebuild
index b7a4c078630..ea84396fbfb 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.20.ebuild
@@ -28,10 +28,11 @@ RDEPEND="!app-emulation/virtualbox-bin
 	dev-libs/libxml2
 	media-libs/libpng:0=
 	media-libs/libvpx:0=
-	sys-libs/zlib
+	sys-libs/zlib:=
 	!headless? (
 		media-libs/libsdl:0[X,video]
 		x11-libs/libX11
+		x11-libs/libxcb:=
 		x11-libs/libXcursor
 		x11-libs/libXext
 		x11-libs/libXmu
@@ -197,6 +198,11 @@ src_prepare() {
 	eapply_user
 }
 
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
 src_configure() {
 	local myconf=(
 		--with-gcc="$(tc-getCC)"
@@ -229,7 +235,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	./configure ${myconf[@]} || die "configure failed"
+	doecho ./configure ${myconf[@]}
 }
 
 src_compile() {

diff --git a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
index b7a4c078630..ea84396fbfb 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
@@ -28,10 +28,11 @@ RDEPEND="!app-emulation/virtualbox-bin
 	dev-libs/libxml2
 	media-libs/libpng:0=
 	media-libs/libvpx:0=
-	sys-libs/zlib
+	sys-libs/zlib:=
 	!headless? (
 		media-libs/libsdl:0[X,video]
 		x11-libs/libX11
+		x11-libs/libxcb:=
 		x11-libs/libXcursor
 		x11-libs/libXext
 		x11-libs/libXmu
@@ -197,6 +198,11 @@ src_prepare() {
 	eapply_user
 }
 
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
 src_configure() {
 	local myconf=(
 		--with-gcc="$(tc-getCC)"
@@ -229,7 +235,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	./configure ${myconf[@]} || die "configure failed"
+	doecho ./configure ${myconf[@]}
 }
 
 src_compile() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-11-17 15:29 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2018-11-17 15:29 UTC (permalink / raw
  To: gentoo-commits

commit:     72eece56e1391a5f92572998d33ccf846d6f4059
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 17 15:20:39 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Nov 17 15:28:52 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72eece56

app-emulation/virtualbox: Don't install VirtualBox binary SUID.

Closes: https://bugs.gentoo.org/671344
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild b/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild
index 0b6ff09dd2f..093771d083e 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.0_beta2.ebuild
@@ -350,7 +350,7 @@ src_install() {
 		done
 
 		if use qt5 ; then
-			vbox_inst VirtualBox 4750
+			vbox_inst VirtualBox
 			pax-mark -m "${ED%/}"${vbox_inst_path}/VirtualBox
 
 			if use opengl ; then


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-11-25  9:25 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2018-11-25  9:25 UTC (permalink / raw
  To: gentoo-commits

commit:     9776ba45c772f2657e70512a99ab20b572570838
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 25 09:23:01 2018 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Nov 25 09:25:33 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9776ba45

app-emulation/virtualbox: amd64 stable wrt bug #671754

Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11

 app-emulation/virtualbox/virtualbox-5.2.22.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
index ea84396fbfb..547c8cc7316 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2018-11-28  2:07 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2018-11-28  2:07 UTC (permalink / raw
  To: gentoo-commits

commit:     745004708fd146c8cc6fcf48ef2e4438e73ce725
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 27 23:02:40 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Wed Nov 28 02:06:48 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74500470

app-emulation/virtualbox: x86 stable (bug #671754)

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.22.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
index 547c8cc7316..6594bcd89f3 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.22.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-01-16 19:50 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-01-16 19:50 UTC (permalink / raw
  To: gentoo-commits

commit:     f8e458404e07ef9153513bfb423a333ee68cfb79
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 16 19:50:05 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jan 16 19:50:35 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8e45840

app-emulation/virtualbox: Fixed installation of rdesktop-vrdp

with USE="headless".

Thanks-to: Oleg Akimov <akimov.shop <AT> gmail.com>
Closes: https://bugs.gentoo.org/675250
Package-Manager: Portage-2.3.56, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.0.ebuild | 3 ++-
 app-emulation/virtualbox/virtualbox-6.0.2.ebuild | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.0.ebuild b/app-emulation/virtualbox/virtualbox-6.0.0.ebuild
index 6cd4dce30fe..b97352140e8 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.0.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.0.ebuild
@@ -303,7 +303,7 @@ src_install() {
 	if use amd64 && ! has_multilib_profile ; then
 		rcfiles=""
 	fi
-	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin rdesktop-vrdp ; do
+	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin ; do
 		vbox_inst ${each}
 	done
 
@@ -339,6 +339,7 @@ src_install() {
 	doenvd "${T}/90virtualbox"
 
 	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
 		vbox_inst VBoxSDL 4750
 		pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
 

diff --git a/app-emulation/virtualbox/virtualbox-6.0.2.ebuild b/app-emulation/virtualbox/virtualbox-6.0.2.ebuild
index 699ab42ad4c..32183eb05b9 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.2.ebuild
@@ -307,7 +307,7 @@ src_install() {
 	if use amd64 && ! has_multilib_profile ; then
 		rcfiles=""
 	fi
-	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin rdesktop-vrdp ; do
+	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin ; do
 		vbox_inst ${each}
 	done
 
@@ -343,6 +343,7 @@ src_install() {
 	doenvd "${T}/90virtualbox"
 
 	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
 		vbox_inst VBoxSDL 4750
 		pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-04-02  9:43 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-04-02  9:43 UTC (permalink / raw
  To: gentoo-commits

commit:     9987da7e577f782fb2b964e6bb260349c6044bae
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Apr  2 09:42:46 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Apr  2 09:43:01 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9987da7e

app-emulation/virtualbox: Added python3 support.

Replaced gnome2-utils and xdg-utils with xdg eclass.

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.4-r1.ebuild | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.4-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.0.4-r1.ebuild
index e8d806027ab..76fe504e8c1 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.4-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.4-r1.ebuild
@@ -3,8 +3,8 @@
 
 EAPI=6
 
-PYTHON_COMPAT=( python2_7 )
-inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
+PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
+inherit flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PV="${PV/beta/BETA}"
 MY_PV="${MY_PV/rc/RC}"
@@ -435,9 +435,12 @@ src_install() {
 	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
 }
 
+pkg_preinst() {
+	xdg_pkg_preinst
+}
+
 pkg_postinst() {
-	gnome2_icon_cache_update
-	xdg_desktop_database_update
+	xdg_pkg_postinst
 
 	if use udev ; then
 		udevadm control --reload-rules \
@@ -479,6 +482,5 @@ pkg_postinst() {
 }
 
 pkg_postrm() {
-	gnome2_icon_cache_update
-	xdg_desktop_database_update
+	xdg_pkg_postrm
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-04-08 13:15 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2019-04-08 13:15 UTC (permalink / raw
  To: gentoo-commits

commit:     5794859ea01a26275dc1017b1133f2ef36c37ce7
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Mon Apr  8 13:14:39 2019 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Mon Apr  8 13:14:39 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5794859e

app-emulation/virtualbox: amd64 stable wrt bug #682868

Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="amd64"

 app-emulation/virtualbox/virtualbox-5.2.26.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild b/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
index 4464ccc84a0..a390860ae50 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-04-18 20:32 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2019-04-18 20:32 UTC (permalink / raw
  To: gentoo-commits

commit:     3bcb8b81ec820728bbbca8c7e461ee27dd468d5f
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 18 20:23:11 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Apr 18 20:31:58 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3bcb8b81

app-emulation/virtualbox: x86 stable (bug #682868)

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.26.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild b/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
index a390860ae50..14bddc0d86b 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-04-20 11:31 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-04-20 11:31 UTC (permalink / raw
  To: gentoo-commits

commit:     226c5ac5f4ee6399f18b2e2b0a8e4b9586e780e4
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 20 11:30:50 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Apr 20 11:31:22 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=226c5ac5

app-emulation/virtualbox: Revbumps to finally install vnc ExtPack

also install dtrace ExtPack if requested.

Closes: https://bugs.gentoo.org/438930
Package-Manager: Portage-2.3.64, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/metadata.xml                |  1 +
 ...box-5.2.28.ebuild => virtualbox-5.2.28-r1.ebuild} | 20 ++++++++++++++++++--
 ...albox-6.0.6.ebuild => virtualbox-6.0.6-r1.ebuild} | 20 ++++++++++++++++++--
 3 files changed, 37 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index 0c28b5e7197..3a2ea79813a 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -6,6 +6,7 @@
     <name>Lars Wendler</name>
   </maintainer>
   <use>
+  <flag name="dtrace">Install dtrace Extension Pack</flag>
   <flag name="headless">Build without any graphic frontend</flag>
   <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
   <flag name="pax_kernel">Apply patch needed for pax enabled kernels.</flag>

diff --git a/app-emulation/virtualbox/virtualbox-5.2.28.ebuild b/app-emulation/virtualbox/virtualbox-5.2.28-r1.ebuild
similarity index 95%
rename from app-emulation/virtualbox/virtualbox-5.2.28.ebuild
rename to app-emulation/virtualbox/virtualbox-5.2.28-r1.ebuild
index 4464ccc84a0..05f95844d59 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.28.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.28-r1.ebuild
@@ -15,10 +15,10 @@ HOMEPAGE="https://www.virtualbox.org/"
 SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.16-patches-02.tar.xz"
 
-LICENSE="GPL-2"
+LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin
 	~app-emulation/virtualbox-modules-${PV}
@@ -424,6 +424,22 @@ src_install() {
 		newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
 	fi
 
+	# 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" -print0 \
+		| xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
+		|| die
+
+	if use vnc ; then
+		insinto ${vbox_inst_path}/ExtensionPacks
+		doins -r ExtensionPacks/VNC
+	fi
+
+	if use dtrace ; then
+		insinto ${vbox_inst_path}/ExtensionPacks
+		doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
+	fi
+
 	if use doc ; then
 		dodoc UserManual.pdf
 	fi

diff --git a/app-emulation/virtualbox/virtualbox-6.0.6.ebuild b/app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild
similarity index 95%
rename from app-emulation/virtualbox/virtualbox-6.0.6.ebuild
rename to app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild
index 8c7e76ae253..ac99dd66bda 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild
@@ -15,11 +15,11 @@ HOMEPAGE="https://www.virtualbox.org/"
 SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.0_beta2-patches-01.tar.xz"
 
-LICENSE="GPL-2"
+LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="~amd64 ~x86"
-IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin
 	~app-emulation/virtualbox-modules-${PV}
@@ -427,6 +427,22 @@ src_install() {
 		newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
 	fi
 
+	# 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" -print0 \
+		| xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
+		|| die
+
+	if use vnc ; then
+		insinto ${vbox_inst_path}/ExtensionPacks
+		doins -r ExtensionPacks/VNC
+	fi
+
+	if use dtrace ; then
+		insinto ${vbox_inst_path}/ExtensionPacks
+		doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
+	fi
+
 	if use doc ; then
 		dodoc UserManual.pdf
 	fi


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-05-09 13:06 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-05-09 13:06 UTC (permalink / raw
  To: gentoo-commits

commit:     c2878332ae1828ea09a03dae6b4fe1c622816155
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu May  9 13:06:01 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu May  9 13:06:27 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2878332

app-emulation/virtualbox: Minor ebuild improvements

Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild
index ac99dd66bda..627195b1a4d 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.6-r1.ebuild
@@ -262,9 +262,7 @@ src_compile() {
 }
 
 src_install() {
-	local binpath="release"
-	use debug && binpath="debug"
-	cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
+	cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
 
 	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
 
@@ -489,7 +487,7 @@ pkg_postinst() {
 		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
+	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."


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-07-17  8:52 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-07-17  8:52 UTC (permalink / raw
  To: gentoo-commits

commit:     f7197e424eea964d70e42208794b1cf44053925c
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 17 08:52:07 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jul 17 08:52:20 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7197e42

app-emulation/virtualbox: Removed double empty line

Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.10.ebuild | 1 -
 1 file changed, 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.10.ebuild b/app-emulation/virtualbox/virtualbox-6.0.10.ebuild
index b5816819897..c4c4d3a38aa 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.10.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.10.ebuild
@@ -440,7 +440,6 @@ src_install() {
 		| xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
 		|| die
 
-
 	local extensions_dir="${vbox_inst_path}/ExtensionPacks"
 
 	if use vnc ; then


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-07-18  7:18 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-07-18  7:18 UTC (permalink / raw
  To: gentoo-commits

commit:     23bb792fefdd771a9d617c7a414142ad271f4f76
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 18 07:17:50 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Jul 18 07:18:12 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23bb792f

app-emulation/virtualbox: Revbump to add missing desktop.eclass

Thanks-to: poncho <poncho <AT> spahan.ch>
Closes: https://bugs.gentoo.org/690124
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../{virtualbox-6.0.10.ebuild => virtualbox-6.0.10-r1.ebuild}           | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.10.ebuild b/app-emulation/virtualbox/virtualbox-6.0.10-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.0.10.ebuild
rename to app-emulation/virtualbox/virtualbox-6.0.10-r1.ebuild
index c4c4d3a38aa..74183d635e1 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.10.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.10-r1.ebuild
@@ -4,7 +4,7 @@
 EAPI=7
 
 PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
-inherit flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PV="${PV/beta/BETA}"
 MY_PV="${MY_PV/rc/RC}"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-07-21 17:54 Michał Górny
  0 siblings, 0 replies; 198+ messages in thread
From: Michał Górny @ 2019-07-21 17:54 UTC (permalink / raw
  To: gentoo-commits

commit:     0997ca16c957c1de1b2a6fbfc9831a4c6cc877af
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 21 17:46:35 2019 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Jul 21 17:46:35 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0997ca16

app-emulation/virtualbox: Fix missing PYTHON_DEPS

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 .../{virtualbox-5.2.26.ebuild => virtualbox-5.2.26-r1.ebuild}          | 3 ++-
 app-emulation/virtualbox/virtualbox-5.2.30.ebuild                      | 3 ++-
 app-emulation/virtualbox/virtualbox-5.2.32.ebuild                      | 3 ++-
 .../{virtualbox-6.0.10-r1.ebuild => virtualbox-6.0.10-r2.ebuild}       | 2 +-
 app-emulation/virtualbox/virtualbox-6.0.8.ebuild                       | 3 ++-
 5 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild b/app-emulation/virtualbox/virtualbox-5.2.26-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-5.2.26.ebuild
rename to app-emulation/virtualbox/virtualbox-5.2.26-r1.ebuild
index 14bddc0d86b..97af8a017a9 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.26-r1.ebuild
@@ -53,7 +53,8 @@ RDEPEND="!app-emulation/virtualbox-bin
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )"
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+	${PYTHON_DEPS}"
 DEPEND="${RDEPEND}
 	>=dev-util/kbuild-0.1.9998.3127
 	>=dev-lang/yasm-0.6.2

diff --git a/app-emulation/virtualbox/virtualbox-5.2.30.ebuild b/app-emulation/virtualbox/virtualbox-5.2.30.ebuild
index 05f95844d59..a5834468ff5 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.30.ebuild
@@ -53,7 +53,8 @@ RDEPEND="!app-emulation/virtualbox-bin
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )"
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+	${PYTHON_DEPS}"
 DEPEND="${RDEPEND}
 	>=dev-util/kbuild-0.1.9998.3127
 	>=dev-lang/yasm-0.6.2

diff --git a/app-emulation/virtualbox/virtualbox-5.2.32.ebuild b/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
index 05f95844d59..a5834468ff5 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
@@ -53,7 +53,8 @@ RDEPEND="!app-emulation/virtualbox-bin
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )"
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+	${PYTHON_DEPS}"
 DEPEND="${RDEPEND}
 	>=dev-util/kbuild-0.1.9998.3127
 	>=dev-lang/yasm-0.6.2

diff --git a/app-emulation/virtualbox/virtualbox-6.0.10-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild
similarity index 100%
rename from app-emulation/virtualbox/virtualbox-6.0.10-r1.ebuild
rename to app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild
index 74183d635e1..cd27d90f6c4 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.10-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild
@@ -56,6 +56,7 @@ CDEPEND="
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )
 	vnc? ( >=net-libs/libvncserver-0.9.9 )
+	${PYTHON_DEPS}
 "
 DEPEND="
 	${CDEPEND}
@@ -66,7 +67,6 @@ DEPEND="
 	pulseaudio? ( media-sound/pulseaudio )
 	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-	${PYTHON_DEPS}
 "
 BDEPEND="
 	>=dev-util/kbuild-0.1.9998.3127

diff --git a/app-emulation/virtualbox/virtualbox-6.0.8.ebuild b/app-emulation/virtualbox/virtualbox-6.0.8.ebuild
index 627195b1a4d..e0d132082e2 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.8.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.8.ebuild
@@ -54,7 +54,8 @@ RDEPEND="!app-emulation/virtualbox-bin
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )"
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+	${PYTHON_DEPS}"
 DEPEND="${RDEPEND}
 	>=dev-util/kbuild-0.1.9998.3127
 	>=dev-lang/yasm-0.6.2


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-08-28 14:34 David Seifert
  0 siblings, 0 replies; 198+ messages in thread
From: David Seifert @ 2019-08-28 14:34 UTC (permalink / raw
  To: gentoo-commits

commit:     860077aebfe165cacf8d0804830ba9a91f5b4111
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 28 14:33:48 2019 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Wed Aug 28 14:33:48 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=860077ae

app-emulation/virtualbox: [QA] Remove unnecessary slash strip

Package-Manager: Portage-2.3.73, Repoman-2.3.17
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild
index cd27d90f6c4..a451933cccb 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.10-r2.ebuild
@@ -296,7 +296,7 @@ src_install() {
 	# Set the correct libdir
 	sed \
 		-e "s@MY_LIBDIR@$(get_libdir)@" \
-		-i "${ED%/}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
+		-i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
 
 	# Install the wrapper script
 	exeinto ${vbox_inst_path}
@@ -330,7 +330,7 @@ src_install() {
 	# 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}
+		pax-mark -m "${ED}"${vbox_inst_path}/${each}
 	done
 
 	# Symlink binaries to the shipped wrapper
@@ -351,7 +351,7 @@ src_install() {
 	if ! use headless ; then
 		vbox_inst rdesktop-vrdp
 		vbox_inst VBoxSDL 4750
-		pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
+		pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
 
 		for each in vboxsdl VBoxSDL ; do
 			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
@@ -361,12 +361,12 @@ src_install() {
 			vbox_inst VirtualBox
 			vbox_inst VirtualBoxVM 4750
 			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED%/}"${vbox_inst_path}/${each}
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
 			done
 
 			if use opengl ; then
 				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
 			fi
 
 			for each in virtualbox{,vm} VirtualBox{,VM} ; do
@@ -409,8 +409,8 @@ src_install() {
 		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"
+			java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
+			java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
 		fi
 	fi
 
@@ -498,9 +498,9 @@ pkg_postinst() {
 		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
+	elif [[ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ]] ; then
 		elog ""
-		elog "Please remove \"${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules\""
+		elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
 		elog "or else USB in ${PN} won't work."
 	fi
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-09-07 21:07 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2019-09-07 21:07 UTC (permalink / raw
  To: gentoo-commits

commit:     62180f9798de272bf1c68ac9314becc6541adc3a
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  7 18:27:54 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sat Sep  7 21:07:31 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62180f97

app-emulation/virtualbox: x86 stable (bug #693476)

Package-Manager: Portage-2.3.75, Repoman-2.3.17
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.32.ebuild b/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
index a5834468ff5..eb8a3b08289 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-09-15  9:04 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2019-09-15  9:04 UTC (permalink / raw
  To: gentoo-commits

commit:     3fb3f82ff1daf0a342966a1ab2386b68613c9a02
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 15 09:02:26 2019 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Sep 15 09:04:19 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3fb3f82f

app-emulation/virtualbox: amd64 stable wrt bug #693476

Package-Manager: Portage-2.3.69, Repoman-2.3.16
RepoMan-Options: --include-arches="amd64"
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.32.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.32.ebuild b/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
index eb8a3b08289..a55c3b9db73 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.32.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
-KEYWORDS="~amd64 x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-11-28 15:40 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-11-28 15:40 UTC (permalink / raw
  To: gentoo-commits

commit:     dabf9d111cfd01fb8040de8e73ee1d97fa8d9833
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 28 15:32:44 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Nov 28 15:40:29 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dabf9d11

app-emulation/virtualbox: Use new patchset

Package-Manager: Portage-2.3.80, Repoman-2.3.19
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                    | 1 +
 app-emulation/virtualbox/virtualbox-6.1.0_rc1.ebuild | 5 ++---
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 3910c5bab61..9d254284852 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -6,3 +6,4 @@ DIST VirtualBox-6.1.0_RC1.tar.bz2 164649631 BLAKE2B c27e7d5e7d6a3bbc44767b07b6bb
 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
 DIST virtualbox-5.2.34-patches-01.tar.xz 2960 BLAKE2B e62ab64939e9251a715b3b54b479bc51315acf561ce3d542a4b1358cefb2158353a046003cb0a62e78015f01b626719afb39590090662dd58bfc587bd63cb994 SHA512 25f402c0f96ac25c4d1afdf5d9fff60292caabd2af032a7e2f3e1f70e85bb24f03bbe3625b8bdb7618f77d2890e4c0b9fa7ade2eed590f6658361cca3db4a4b9
 DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e
+DIST virtualbox-6.1.0_rc1-patches-01.tar.xz 2152 BLAKE2B 5ca1aa008d0a4bd2d8ff4e8b02e506f2bdd68d41b1ae6a733362925b12a82e4f26b4040817800342c69be8e1eec73477d1731e05eb677d09948ed59881be190c SHA512 31f5b77cc86e7fe83e08df956639f50b9936aeab32d98d8f8800c4fa762245a7e6784189409006f82f8ed4bbdadbad7249e2663063448f3f0b0e157acfba6c42

diff --git a/app-emulation/virtualbox/virtualbox-6.1.0_rc1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.0_rc1.ebuild
index a45cf5704f3..3845fd83fd9 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.0_rc1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.0_rc1.ebuild
@@ -13,7 +13,7 @@ MY_P=VirtualBox-${MY_PV}
 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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.0_beta2-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.0_rc1-patches-01.tar.xz"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
@@ -166,7 +166,7 @@ src_prepare() {
 
 	# Replace pointless GCC version check with something less stupid.
 	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
 		-i configure || die
 
 	# Disable things unused or split into separate ebuilds
@@ -206,7 +206,6 @@ src_prepare() {
 		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
 	fi
 
-	rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
 	eapply "${WORKDIR}/patches"
 
 	eapply_user


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-12-13 19:17 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-12-13 19:17 UTC (permalink / raw
  To: gentoo-commits

commit:     a61c2f9bde53f5ae8c0ce008a3f596bc0b88aa0f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 13 19:16:36 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Dec 13 19:17:12 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a61c2f9b

app-emulation/virtualbox: Attempt to fix build on amd64 no_multilib

Seems like I accidentally dropped some ebuild code in 6.1.0_rc1 that
should not have been dropped.

Thanks-to: Zdravko Spoljar <zdravko.spoljar <AT> styria-it.hr>
Bug: https://bugs.gentoo.org/702674
Package-Manager: Portage-2.3.81, Repoman-2.3.20
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.0.ebuild | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.0.ebuild b/app-emulation/virtualbox/virtualbox-6.1.0.ebuild
index 3845fd83fd9..59459515f5a 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.0.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.0.ebuild
@@ -244,6 +244,9 @@ src_configure() {
 			--disable-opengl
 		)
 	fi
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
 	# not an autoconf script
 	doecho ./configure ${myconf[@]}
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-12-15 11:03 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-12-15 11:03 UTC (permalink / raw
  To: gentoo-commits

commit:     2a074031fa4f1305301a3467b89913165c3d33ff
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 15 11:02:57 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Dec 15 11:03:13 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a074031

app-emulation/virtualbox: Added python3_8 support

Closes: https://bugs.gentoo.org/702966
Package-Manager: Portage-2.3.81, Repoman-2.3.20
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.0.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.0.ebuild b/app-emulation/virtualbox/virtualbox-6.1.0.ebuild
index 59459515f5a..cf9b10836a2 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.0.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.0.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
+PYTHON_COMPAT=( python{2_7,3_{5,6,7,8}} )
 inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PV="${PV/beta/BETA}"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2019-12-17 12:42 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2019-12-17 12:42 UTC (permalink / raw
  To: gentoo-commits

commit:     f4382730ae25d099e289124be648f9f30825a4e4
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 17 12:42:08 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Dec 17 12:42:08 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f4382730

app-emulation/virtualbox: New 6.0.x patchset

Thanks-to: Tiziano Müller <dev-zero <AT> gentoo.org>
Closes: https://bugs.gentoo.org/692604
Package-Manager: Portage-2.3.82, Repoman-2.3.20
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 | 1 +
 app-emulation/virtualbox/virtualbox-6.0.14.ebuild | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 590762912a0..3f7134ec1b6 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -6,4 +6,5 @@ DIST VirtualBox-6.1.0.tar.bz2 165322453 BLAKE2B ecd15bf1f454dd975562ce27fec9c87d
 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
 DIST virtualbox-5.2.34-patches-01.tar.xz 2960 BLAKE2B e62ab64939e9251a715b3b54b479bc51315acf561ce3d542a4b1358cefb2158353a046003cb0a62e78015f01b626719afb39590090662dd58bfc587bd63cb994 SHA512 25f402c0f96ac25c4d1afdf5d9fff60292caabd2af032a7e2f3e1f70e85bb24f03bbe3625b8bdb7618f77d2890e4c0b9fa7ade2eed590f6658361cca3db4a4b9
 DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e
+DIST virtualbox-6.0.14-patches-01.tar.xz 2972 BLAKE2B 80f6c6774323add039675e4b372c824610ac312d01ff7de6ae546764e61e8b5cca7f96a6ed71c90337911dd4fa4ad7425072f453454358969d46f5acf2dff80a SHA512 38941fc8f09419f8a2ee251580c5b3cd5e4993db536b33f43ff1454d053e856ba4d0d96cee87f0399e5c63e6bbb930ab7c04ccedb13cef83db512cabb0592ee5
 DIST virtualbox-6.1.0_rc1-patches-01.tar.xz 2152 BLAKE2B 5ca1aa008d0a4bd2d8ff4e8b02e506f2bdd68d41b1ae6a733362925b12a82e4f26b4040817800342c69be8e1eec73477d1731e05eb677d09948ed59881be190c SHA512 31f5b77cc86e7fe83e08df956639f50b9936aeab32d98d8f8800c4fa762245a7e6784189409006f82f8ed4bbdadbad7249e2663063448f3f0b0e157acfba6c42

diff --git a/app-emulation/virtualbox/virtualbox-6.0.14.ebuild b/app-emulation/virtualbox/virtualbox-6.0.14.ebuild
index 7b77c187229..678bc734b45 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.14.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.14.ebuild
@@ -13,7 +13,7 @@ MY_P=VirtualBox-${MY_PV}
 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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.0_beta2-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.14-patches-01.tar.xz"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-02-25 17:15 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-02-25 17:15 UTC (permalink / raw
  To: gentoo-commits

commit:     ce08270e89206cc83649ecac55d96f2578850634
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 25 17:14:48 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Feb 25 17:15:47 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce08270e

app-emulation/virtualbox: RDEPEND on acct-group/vboxusers

Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../virtualbox/virtualbox-6.0.16-r1.ebuild         | 511 +++++++++++++++++++++
 .../virtualbox/virtualbox-6.1.4-r1.ebuild          | 505 ++++++++++++++++++++
 2 files changed, 1016 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.0.16-r1.ebuild
new file mode 100644
index 00000000000..9e588603a0d
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.0.16-r1.ebuild
@@ -0,0 +1,511 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
+inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+
+MY_PV="${PV/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=VirtualBox-${MY_PV}
+
+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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.16-patches-01.tar.xz"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0"
+[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+
+CDEPEND="
+	${PYTHON_DEPS}
+	!app-emulation/virtualbox-bin
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	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/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? ( virtual/opengl media-libs/freeglut )
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+"
+DEPEND="
+	${CDEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? ( x11-libs/libXinerama )
+	pam? ( sys-libs/pam )
+	pax_kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	qt5? ( dev-qt/linguist-tools:5 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.6 )
+"
+RDEPEND="
+	${CDEPEND}
+	java? ( >=virtual/jre-1.6 )
+"
+
+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_7.so
+	usr/lib/virtualbox/VBoxXPCOMC.so
+	usr/lib/virtualbox/VBoxOGLhostcrutil.so
+	usr/lib/virtualbox/VBoxNetDHCP.so
+	usr/lib/virtualbox/VBoxNetNAT.so"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+}
+
+pkg_setup() {
+	java-pkg-opt-2_pkg_setup
+	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something less stupid.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
+		-i configure || die
+
+	# 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
+
+	# 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
+		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
+
+	# Only add nopie patch when we're on hardened
+	if gcc-specs-pie ; then
+		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
+	fi
+
+	# Only add paxmark patch when we're on pax_kernel
+	if use pax_kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
+src_configure() {
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+		--disable-dbus
+		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+	# not an autoconf script
+	doecho ./configure ${myconf[@]}
+}
+
+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}"
+	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}/$(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
+
+	# *.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{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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
+
+		if use qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+		# 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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+
+	# 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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
+}
+
+pkg_preinst() {
+	xdg_pkg_preinst
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	if use udev ; then
+		udevadm control --reload-rules \
+			&& udevadm trigger --subsystem-match=usb
+	fi
+
+	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+
+	if ! use headless && use qt5 ; 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 "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() {
+	xdg_pkg_postrm
+}

diff --git a/app-emulation/virtualbox/virtualbox-6.1.4-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.4-r1.ebuild
new file mode 100644
index 00000000000..6106edde19f
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.4-r1.ebuild
@@ -0,0 +1,505 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
+inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+
+MY_PV="${PV/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=VirtualBox-${MY_PV}
+
+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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.0_rc1-patches-01.tar.xz"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0"
+[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+
+CDEPEND="
+	${PYTHON_DEPS}
+	!app-emulation/virtualbox-bin
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	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/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? ( virtual/opengl media-libs/freeglut )
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+"
+DEPEND="
+	${CDEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? ( x11-libs/libXinerama )
+	pam? ( sys-libs/pam )
+	pax_kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	qt5? ( dev-qt/linguist-tools:5 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.6 )
+"
+RDEPEND="
+	${CDEPEND}
+	java? ( >=virtual/jre-1.6 )
+"
+
+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_7.so
+	usr/lib/virtualbox/VBoxXPCOMC.so
+	usr/lib/virtualbox/VBoxOGLhostcrutil.so
+	usr/lib/virtualbox/VBoxNetDHCP.so
+	usr/lib/virtualbox/VBoxNetNAT.so"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+}
+
+pkg_setup() {
+	java-pkg-opt-2_pkg_setup
+	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something less stupid.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || die
+
+	# 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
+
+	# 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
+		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
+
+	# Only add nopie patch when we're on hardened
+	if gcc-specs-pie ; then
+		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
+	fi
+
+	# Only add paxmark patch when we're on pax_kernel
+	if use pax_kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
+src_configure() {
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+		--disable-dbus
+		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+	# not an autoconf script
+	doecho ./configure ${myconf[@]}
+}
+
+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}"
+	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}/$(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,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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
+
+		if use qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+		# 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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+
+	# 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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
+}
+
+pkg_preinst() {
+	xdg_pkg_preinst
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	if use udev ; then
+		udevadm control --reload-rules \
+			&& udevadm trigger --subsystem-match=usb
+	fi
+
+	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+
+	if ! use headless && use qt5 ; 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 "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() {
+	xdg_pkg_postrm
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-03-27 12:43 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-03-27 12:43 UTC (permalink / raw
  To: gentoo-commits

commit:     10ef379336ea1b9822b05454d8bad6a6e2b516cb
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 27 12:42:25 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Mar 27 12:43:27 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=10ef3793

app-emulation/virtualbox: New patchset to fix opengl build issue

Removed python2 support

Closes: https://bugs.gentoo.org/702990
Package-Manager: Portage-2.3.96, Repoman-2.3.22
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                   | 1 +
 app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 106a593f423..1851a80aeff 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -7,3 +7,4 @@ DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa072
 DIST virtualbox-5.2.36-patches-01.tar.xz 3440 BLAKE2B 66749efba87d82ed4a11ff09444c68f86f82a360e9dbb44fa6072d6c28120f3c23cff8c15bacbd38bce8b69b3d8f35c4d3d493684df962ea6e353eec413dcc38 SHA512 3cf2526d209a54e94cd94840793769fd96fa988e21555d76eda2207a7f87e04b446a28ac6c8a2954e7c00a35107c144cadaec276d171214acdcc2900eb41306c
 DIST virtualbox-6.0.16-patches-01.tar.xz 3520 BLAKE2B 1ca10c5902ece4657c6a9a03fe28c80a364d999e181cc46fc52d7dac0f0272faca6d6b19cb12d126bb0f4f6014b8c391b2b0f82ca016625410287fcc0c240778 SHA512 33b14fa1ce5526be88d6d5b72b5c86c68c37f565074a764b9d7a65f5c0a39e3d81533f9923087add71783556c1e51e816b674ce46d2800eb678846f65226fb69
 DIST virtualbox-6.1.0_rc1-patches-01.tar.xz 2152 BLAKE2B 5ca1aa008d0a4bd2d8ff4e8b02e506f2bdd68d41b1ae6a733362925b12a82e4f26b4040817800342c69be8e1eec73477d1731e05eb677d09948ed59881be190c SHA512 31f5b77cc86e7fe83e08df956639f50b9936aeab32d98d8f8800c4fa762245a7e6784189409006f82f8ed4bbdadbad7249e2663063448f3f0b0e157acfba6c42
+DIST virtualbox-6.1.14-patches-01.tar.xz 2344 BLAKE2B cb89af8ffe0ecaa54929349abfb1541ca8630063d8282e773e4c66c3eec3ed108328b1ee81247d997981e5d49792b4019e1358b270c3622508b62e647c544ae4 SHA512 b08c2f66a050270a5c8b4d7264b1cf0afaf7809c3888c48a9b55ac75f0906bdb6bc28eef136ce032c777a810f2ce0a3cf6bb3df0259e5a6737f9ecc3ea708bba

diff --git a/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild
index 20c8983d55f..7ddbfdc4204 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
+PYTHON_COMPAT=( python3_{6,7,8} )
 inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PV="${PV/beta/BETA}"
@@ -13,7 +13,7 @@ MY_P=VirtualBox-${MY_PV}
 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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.0_rc1-patches-01.tar.xz"
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.14-patches-01.tar.xz"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-03-27 12:43 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-03-27 12:43 UTC (permalink / raw
  To: gentoo-commits

commit:     be7991fa037ab9b8061805407b6af2a032bd5923
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 27 12:43:18 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Mar 27 12:43:27 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be7991fa

app-emulation/virtualbox: Removed old

Package-Manager: Portage-2.3.96, Repoman-2.3.22
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.4.ebuild | 504 -----------------------
 1 file changed, 504 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.4.ebuild b/app-emulation/virtualbox/virtualbox-6.1.4.ebuild
deleted file mode 100644
index fb112b9e937..00000000000
--- a/app-emulation/virtualbox/virtualbox-6.1.4.ebuild
+++ /dev/null
@@ -1,504 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
-inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
-
-MY_PV="${PV/beta/BETA}"
-MY_PV="${MY_PV/rc/RC}"
-MY_P=VirtualBox-${MY_PV}
-
-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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.0_rc1-patches-01.tar.xz"
-
-LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0"
-[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
-IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
-
-CDEPEND="
-	${PYTHON_DEPS}
-	!app-emulation/virtualbox-bin
-	~app-emulation/virtualbox-modules-${PV}
-	dev-libs/libIDL
-	>=dev-libs/libxslt-1.1.19
-	net-misc/curl
-	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/libxcb:=
-		x11-libs/libXcursor
-		x11-libs/libXext
-		x11-libs/libXmu
-		x11-libs/libXt
-		opengl? ( virtual/opengl media-libs/freeglut )
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtgui:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			opengl? ( dev-qt/qtopengl:5 )
-			x11-libs/libXinerama
-		)
-	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
-	lvm? ( sys-fs/lvm2 )
-	opus? ( media-libs/opus )
-	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )
-"
-DEPEND="
-	${CDEPEND}
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? ( x11-libs/libXinerama )
-	pam? ( sys-libs/pam )
-	pax_kernel? ( sys-apps/elfix )
-	pulseaudio? ( media-sound/pulseaudio )
-	qt5? ( dev-qt/linguist-tools:5 )
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=dev-util/kbuild-0.1.9998.3127
-	>=dev-lang/yasm-0.6.2
-	sys-devel/bin86
-	sys-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	doc? (
-		app-text/docbook-sgml-dtd:4.4
-		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.6 )
-"
-RDEPEND="
-	${CDEPEND}
-	java? ( >=virtual/jre-1.6 )
-"
-
-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_7.so
-	usr/lib/virtualbox/VBoxXPCOMC.so
-	usr/lib/virtualbox/VBoxOGLhostcrutil.so
-	usr/lib/virtualbox/VBoxNetDHCP.so
-	usr/lib/virtualbox/VBoxNetNAT.so"
-
-S="${WORKDIR}/${MY_P}"
-
-REQUIRED_USE="
-	java? ( sdk )
-	python? ( sdk )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-pkg_pretend() {
-	if ! use headless && ! use qt5 ; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5 ; then
-		einfo "You selected USE=\"headless qt5\", 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
-}
-
-pkg_setup() {
-	java-pkg-opt-2_pkg_setup
-	python-single-r1_pkg_setup
-
-	tc-ld-disable-gold #bug 488176
-	tc-export CC CXX LD AR RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-}
-
-src_prepare() {
-	# Remove shipped binaries (kBuild,yasm), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Replace pointless GCC version check with something less stupid.
-	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
-		-i configure || die
-
-	# 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
-
-	# 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
-		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
-
-	# Only add nopie patch when we're on hardened
-	if gcc-specs-pie ; then
-		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
-	fi
-
-	# Only add paxmark patch when we're on pax_kernel
-	if use pax_kernel ; then
-		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
-	fi
-
-	eapply "${WORKDIR}/patches"
-
-	eapply_user
-}
-
-doecho() {
-	echo "$@"
-	"$@" || die
-}
-
-src_configure() {
-	local myconf=(
-		--with-gcc="$(tc-getCC)"
-		--with-g++="$(tc-getCXX)"
-		--disable-dbus
-		--disable-kmods
-		$(usex alsa '' --disable-alsa)
-		$(usex debug --build-debug '')
-		$(usex doc '' --disable-docs)
-		$(usex java '' --disable-java)
-		$(usex lvm '' --disable-devmapper)
-		$(usex opus '' --disable-libopus)
-		$(usex pulseaudio '' --disable-pulse)
-		$(usex python '' --disable-python)
-		$(usex vboxwebsrv --enable-webservice '')
-		$(usex vnc --enable-vnc '')
-	)
-	if ! use headless ; then
-		myconf+=(
-			$(usex opengl '' --disable-opengl)
-			$(usex qt5 '' --disable-qt)
-		)
-	else
-		myconf+=(
-			--build-headless
-			--disable-opengl
-		)
-	fi
-	if use amd64 && ! has_multilib_profile ; then
-		myconf+=( --disable-vmmraw )
-	fi
-	# not an autoconf script
-	doecho ./configure ${myconf[@]}
-}
-
-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}"
-	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}/$(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,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
-
-	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; then
-		vbox_inst rdesktop-vrdp
-		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
-
-		if use qt5 ; then
-			vbox_inst VirtualBox
-			vbox_inst VirtualBoxVM 4750
-			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED}"${vbox_inst_path}/${each}
-			done
-
-			if use opengl ; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-			fi
-
-			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
-		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
-		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
-		# 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
-		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
-			> "${T}"/10-virtualbox.rules || die
-		doins "${T}"/10-virtualbox.rules
-	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
-
-	# 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" -print0 \
-		| xargs --no-run-if-empty --null 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
-	fi
-
-	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
-}
-
-pkg_preinst() {
-	xdg_pkg_preinst
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use udev ; then
-		udevadm control --reload-rules \
-			&& udevadm trigger --subsystem-match=usb
-	fi
-
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
-
-	if ! use headless && use qt5 ; 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 "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() {
-	xdg_pkg_postrm
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-03-27 12:43 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-03-27 12:43 UTC (permalink / raw
  To: gentoo-commits

commit:     e6972df2deb0383cab6a082b1be343f32e828cf4
Author:     Marco Genasci <fedeliallalinea <AT> gmail <DOT> com>
AuthorDate: Sun Mar 22 12:09:45 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Mar 27 12:43:26 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6972df2

app-emulation/virtualbox: enable vboximg-mount command

Bug: https://bugs.gentoo.org/713936
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Marco Genasci <fedeliallalinea <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/15056
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.4-r2.ebuild          | 507 +++++++++++++++++++++
 1 file changed, 507 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild
new file mode 100644
index 00000000000..20c8983d55f
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.4-r2.ebuild
@@ -0,0 +1,507 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
+inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+
+MY_PV="${PV/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=VirtualBox-${MY_PV}
+
+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://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.0_rc1-patches-01.tar.xz"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0"
+[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+
+CDEPEND="
+	${PYTHON_DEPS}
+	!app-emulation/virtualbox-bin
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	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/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? ( virtual/opengl media-libs/freeglut )
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	libressl? ( dev-libs/libressl:= )
+	!libressl? ( dev-libs/openssl:0= )
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vnc? ( >=net-libs/libvncserver-0.9.9 )
+"
+DEPEND="
+	${CDEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? ( x11-libs/libXinerama )
+	pam? ( sys-libs/pam )
+	pax_kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	qt5? ( dev-qt/linguist-tools:5 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.6 )
+"
+RDEPEND="
+	${CDEPEND}
+	java? ( >=virtual/jre-1.6 )
+"
+
+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_7.so
+	usr/lib/virtualbox/VBoxXPCOMC.so
+	usr/lib/virtualbox/VBoxOGLhostcrutil.so
+	usr/lib/virtualbox/VBoxNetDHCP.so
+	usr/lib/virtualbox/VBoxNetNAT.so"
+
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+}
+
+pkg_setup() {
+	java-pkg-opt-2_pkg_setup
+	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something less stupid.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || die
+
+	# 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
+
+	# 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
+		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
+
+	# Only add nopie patch when we're on hardened
+	if gcc-specs-pie ; then
+		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
+	fi
+
+	# Only add paxmark patch when we're on pax_kernel
+	if use pax_kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	eapply "${WORKDIR}/patches"
+
+	eapply_user
+}
+
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
+src_configure() {
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+		--disable-dbus
+		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+	# not an autoconf script
+	doecho ./configure ${myconf[@]}
+}
+
+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}"
+	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 \
+		VBOX_WITH_VBOXIMGMOUNT=1 \
+		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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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
+
+		if use qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+		# 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
+		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
+			> "${T}"/10-virtualbox.rules || die
+		doins "${T}"/10-virtualbox.rules
+	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
+
+	# 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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
+}
+
+pkg_preinst() {
+	xdg_pkg_preinst
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	if use udev ; then
+		udevadm control --reload-rules \
+			&& udevadm trigger --subsystem-match=usb
+	fi
+
+	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+
+	if ! use headless && use qt5 ; 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 "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() {
+	xdg_pkg_postrm
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-03-29  7:19 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2020-03-29  7:19 UTC (permalink / raw
  To: gentoo-commits

commit:     9fde153ddc33080e16ad4b4fd6cd5fd1d57d6476
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 29 07:18:19 2020 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Mar 29 07:18:19 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9fde153d

app-emulation/virtualbox: amd64 stable wrt bug #714064

Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="amd64"
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.36.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.36.ebuild b/app-emulation/virtualbox/virtualbox-5.2.36.ebuild
index 0b3a7ae3f9b..44876802ad9 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.36.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-04-22 14:03 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2020-04-22 14:03 UTC (permalink / raw
  To: gentoo-commits

commit:     e23af111818e66470715df26f638e0cbc52a381a
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 22 14:02:53 2020 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Wed Apr 22 14:02:53 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e23af111

app-emulation/virtualbox: amd64 stable wrt bug #717626

Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="amd64"
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.40.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.40.ebuild b/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
index 0b3a7ae3f9b..44876802ad9 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-04-26 23:44 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2020-04-26 23:44 UTC (permalink / raw
  To: gentoo-commits

commit:     376ffce3b2adbf790b6f1f74bb62b11bcc022eaf
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 26 23:38:21 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Apr 26 23:43:38 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=376ffce3

app-emulation/virtualbox: x86 stable (bug #717626)

Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.40.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.40.ebuild b/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
index 44876802ad9..32fb07ec21e 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 RDEPEND="!app-emulation/virtualbox-bin


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-05-07 13:18 Michał Górny
  0 siblings, 0 replies; 198+ messages in thread
From: Michał Górny @ 2020-05-07 13:18 UTC (permalink / raw
  To: gentoo-commits

commit:     0aca10e56dab64c6dc95438033635bd3337ff61e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu May  7 13:09:19 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu May  7 13:17:58 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0aca10e5

app-emulation/virtualbox: Remove py2.7

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-5.2.40.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.0.20.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-5.2.40.ebuild b/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
index 32fb07ec21e..306436546bc 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.40.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=6
 
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
+PYTHON_COMPAT=( python3_{6,7,8} )
 inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
 
 MY_PV="${PV/beta/BETA}"

diff --git a/app-emulation/virtualbox/virtualbox-6.0.20.ebuild b/app-emulation/virtualbox/virtualbox-6.0.20.ebuild
index 73d39815628..f16c7450b10 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.20.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} )
+PYTHON_COMPAT=( python3_{6,7,8} )
 inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PV="${PV/beta/BETA}"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-06-14 15:13 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-06-14 15:13 UTC (permalink / raw
  To: gentoo-commits

commit:     50bc1e8ef07f3f0720dab0cfcd8888c00c95ae19
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 14 15:13:44 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Jun 14 15:13:53 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50bc1e8e

app-emulation/virtualbox: Revbump to not install dead symlink

Closes: https://bugs.gentoo.org/715338
Package-Manager: Portage-2.3.100, Repoman-2.3.22
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../{virtualbox-6.1.10.ebuild => virtualbox-6.1.10-r1.ebuild}          | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.10.ebuild b/app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.10.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild
index 0faf502a162..ba14c3938f3 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.10.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild
@@ -435,6 +435,9 @@ src_install() {
 		| xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
 		|| die
 
+	# Remove dead symlinks (bug #715338)
+	find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
+
 	local extensions_dir="${vbox_inst_path}/ExtensionPacks"
 
 	if use vnc ; then


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-06-24 21:04 Ulrich Müller
  0 siblings, 0 replies; 198+ messages in thread
From: Ulrich Müller @ 2020-06-24 21:04 UTC (permalink / raw
  To: gentoo-commits

commit:     b910823605fb6762006dd10f53e6efe2cea0eb93
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 24 21:00:33 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Jun 24 21:04:34 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b9108236

app-emulation/virtualbox: [QA] Remove $Id$ line from header.

Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild | 1 -
 1 file changed, 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild
index ba14c3938f3..48c20b4aecc 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.10-r1.ebuild
@@ -1,6 +1,5 @@
 # Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
-# $Id: 8881f0924916cef4ba5f7bfa39c3c3d8e02a7704 $
 
 EAPI=7
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-08-30  1:32 Thomas Deutschmann
  0 siblings, 0 replies; 198+ messages in thread
From: Thomas Deutschmann @ 2020-08-30  1:32 UTC (permalink / raw
  To: gentoo-commits

commit:     4e9ea007594a55bb831f84933ede430938c939bb
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 30 01:30:21 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Aug 30 01:32:12 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e9ea007

app-emulation/virtualbox: x86 stable (bug #726846)

Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.24.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
index 5247548e359..fe1a6970521 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-09-02  3:55 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2020-09-02  3:55 UTC (permalink / raw
  To: gentoo-commits

commit:     8b788012540482e5ac99383054a2b03c5c9736b3
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  2 03:54:03 2020 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep  2 03:54:03 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b788012

app-emulation/virtualbox: Stabilize 6.0.24 amd64, #726846

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.24.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
index fe1a6970521..4cbcae61ad5 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64 x86"
+KEYWORDS="amd64 x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-09-09  8:10 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-09-09  8:10 UTC (permalink / raw
  To: gentoo-commits

commit:     104e5e6efc66d47a0bbbfa0f131a74b038d149a5
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  9 07:21:35 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Sep  9 08:10:13 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=104e5e6e

app-emulation/virtualbox: Fixed USE="opengl" dependency

Thanks-to: Nico Baggus <mlspamcb <AT> noci.work>
Closes: https://bugs.gentoo.org/741172
Package-Manager: Portage-3.0.6, Repoman-3.0.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.24.ebuild  | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.12a.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
index 4cbcae61ad5..ba6decd43d5 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
@@ -41,7 +41,7 @@ CDEPEND="
 		x11-libs/libXext
 		x11-libs/libXmu
 		x11-libs/libXt
-		opengl? ( virtual/opengl media-libs/freeglut )
+		opengl? ( media-libs/libglvnd[X] )
 		qt5? (
 			dev-qt/qtcore:5
 			dev-qt/qtgui:5

diff --git a/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild b/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
index 146dd50e0dd..d90ebff1db6 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
@@ -43,7 +43,7 @@ CDEPEND="
 		x11-libs/libXext
 		x11-libs/libXmu
 		x11-libs/libXt
-		opengl? ( virtual/opengl media-libs/freeglut )
+		opengl? ( media-libs/libglvnd[X] )
 		qt5? (
 			dev-qt/qtcore:5
 			dev-qt/qtgui:5


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-09-11 15:37 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-09-11 15:37 UTC (permalink / raw
  To: gentoo-commits

commit:     9b03a5aaed32700caabb95bdbe5bc76f02d89f82
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 11 15:37:26 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Sep 11 15:37:35 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b03a5aa

app-emulation/virtualbox: virtual/opengl is still required for build

Closes: https://bugs.gentoo.org/741666
Package-Manager: Portage-3.0.6, Repoman-3.0.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.0.24.ebuild  | 5 ++++-
 app-emulation/virtualbox/virtualbox-6.1.12a.ebuild | 5 ++++-
 app-emulation/virtualbox/virtualbox-6.1.14a.ebuild | 5 ++++-
 3 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
index ba6decd43d5..fe47c932987 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
@@ -62,7 +62,10 @@ CDEPEND="
 DEPEND="
 	${CDEPEND}
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? ( x11-libs/libXinerama )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )

diff --git a/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild b/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
index d90ebff1db6..f207651526b 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
@@ -64,7 +64,10 @@ CDEPEND="
 DEPEND="
 	${CDEPEND}
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? ( x11-libs/libXinerama )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )

diff --git a/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild b/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild
index d90ebff1db6..f207651526b 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild
@@ -64,7 +64,10 @@ CDEPEND="
 DEPEND="
 	${CDEPEND}
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? ( x11-libs/libXinerama )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
 	pam? ( sys-libs/pam )
 	pax_kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-12-08 12:12 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-12-08 12:12 UTC (permalink / raw
  To: gentoo-commits

commit:     0b8153f16adeb0d81be9d643e24cf7a0af478c62
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Dec  6 22:40:48 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Dec  8 12:12:04 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0b8153f1

app-emulation/virtualbox: introduce subslots

While we still don't support installing multiple app-emulation/virtualbox
versions simultaneously, we need slots to support proper targeting in
GLSAs.

Package-Manager: Portage-3.0.10, Repoman-3.0.2
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../{virtualbox-6.0.24.ebuild => virtualbox-6.0.24-r1.ebuild}           | 2 +-
 .../{virtualbox-6.1.16.ebuild => virtualbox-6.1.16-r1.ebuild}           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild b/app-emulation/virtualbox/virtualbox-6.0.24-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.0.24.ebuild
rename to app-emulation/virtualbox/virtualbox-6.0.24-r1.ebuild
index fe47c932987..5b7282afe30 100644
--- a/app-emulation/virtualbox/virtualbox-6.0.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.0.24-r1.ebuild
@@ -16,7 +16,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
 	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.24-patches-01.tar.xz"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0"
+SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="amd64 x86"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"

diff --git a/app-emulation/virtualbox/virtualbox-6.1.16.ebuild b/app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.16.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild
index f207651526b..407cae5c0ac 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.16.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0"
+SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="~amd64"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2020-12-08 12:12 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2020-12-08 12:12 UTC (permalink / raw
  To: gentoo-commits

commit:     7805b27c1d5f170f16d52ccaf94076366762589d
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Dec  6 22:38:40 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Dec  8 12:12:04 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7805b27c

app-emulation/virtualbox: drop old

Package-Manager: Portage-3.0.10, Repoman-3.0.2
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                  |   2 -
 app-emulation/virtualbox/virtualbox-6.1.12a.ebuild | 512 ---------------------
 app-emulation/virtualbox/virtualbox-6.1.14a.ebuild | 512 ---------------------
 3 files changed, 1026 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 319ed8af7cb..e4e5c245c44 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,6 +1,4 @@
 DIST VirtualBox-6.0.24.tar.bz2 159833756 BLAKE2B 321f7988a5b55a794e2d51937a0752d96eaefb376c12e2fb23be08dff81b164153e19a7d5963a0404f630fb38d6047b9d954a67923f26b2aa16d861a0c6a1b63 SHA512 e6f98d0036cdebc52c78c5ddbce369d9ef0a036c366647b299060e1ccf6942f6b6f899201dfa08c410a039f353b767a41a0d14579c741dc5c034a035cb16c534
-DIST VirtualBox-6.1.12a.tar.bz2 165246721 BLAKE2B e9ee7c10d92b151ab10833c68d0c71a09419bba4dbf86f21401263a98273f5ad5cf628347215d641e80e11d8e77bafeda606822cdd4d02344490fca6b95814ef SHA512 27fe66daf7fa254d9fc4a2cca4a8bbcfbfe6c3387a9f4a740c8ac1297587b5083bccbeef97dcc4e482c4974c843450212e02415b4952eb38b82e179615741193
-DIST VirtualBox-6.1.14a.tar.bz2 165962245 BLAKE2B 7f064ea58f7e4f36a0cda9badc7d16d5e95246de923ab9d179688c7f2f020625efa89c592aceec59d54f1c48934b20674594cc6a63f3f42e9fef39cfd5803027 SHA512 7bdf248b53c517923afc46998e46f63271f71ee73fa6826f367828128944895b2d672d7fc4d05f222e6d45897269fe699f7360ee1534c96450e2cc7bc14c0f13
 DIST VirtualBox-6.1.16.tar.bz2 165470821 BLAKE2B 13376322d0ce2ea3ed826c61816ff19c8ce1f022f6cb1f1b0c291d72354cbe574a01589a6dcc39de10080ba32d5961ca980e75fe11c7401736bf8f7e5443d166 SHA512 4373eb35934f894e419e1441f6368e646e4a84b963a0ecf1e5c71bbf0231de0b0e52f4c4377b8cd2d956bc7a11346a9da2285988bf1e4c743971c413c6529421
 DIST virtualbox-6.0.24-patches-01.tar.xz 3640 BLAKE2B e55c30395978471edd0f291cd34ecb772cce2f27bea88c6fe348e83046777638be9bdd36bf3a2fd1967357ea7ff53936398cd94ee74d8e55d31c1896069404ff SHA512 b8d9395083769a641a5d7f78ac734a86220fec817e3e49461208f8e72ef7d11c19fe4507e6766fe7c8c815c9888f793fd66f3fae36d6e3a217e53620b5d95029
 DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123

diff --git a/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild b/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
deleted file mode 100644
index f207651526b..00000000000
--- a/app-emulation/virtualbox/virtualbox-6.1.12a.ebuild
+++ /dev/null
@@ -1,512 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
-
-MY_PN="VirtualBox"
-MY_PV="${PV/beta/BETA}"
-MY_PV="${MY_PV/rc/RC}"
-MY_P=${MY_PN}-${MY_PV}
-[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
-	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
-
-LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0"
-[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
-IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
-
-CDEPEND="
-	${PYTHON_DEPS}
-	!app-emulation/virtualbox-bin
-	acct-group/vboxusers
-	~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
-	dev-libs/libIDL
-	>=dev-libs/libxslt-1.1.19
-	net-misc/curl
-	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/libxcb:=
-		x11-libs/libXcursor
-		x11-libs/libXext
-		x11-libs/libXmu
-		x11-libs/libXt
-		opengl? ( media-libs/libglvnd[X] )
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtgui:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			opengl? ( dev-qt/qtopengl:5 )
-			x11-libs/libXinerama
-		)
-	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
-	lvm? ( sys-fs/lvm2 )
-	opus? ( media-libs/opus )
-	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )
-"
-DEPEND="
-	${CDEPEND}
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? (
-		x11-libs/libXinerama
-		opengl? ( virtual/opengl )
-	)
-	pam? ( sys-libs/pam )
-	pax_kernel? ( sys-apps/elfix )
-	pulseaudio? ( media-sound/pulseaudio )
-	qt5? ( dev-qt/linguist-tools:5 )
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=dev-util/kbuild-0.1.9998.3127
-	>=dev-lang/yasm-0.6.2
-	sys-devel/bin86
-	sys-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	doc? (
-		app-text/docbook-sgml-dtd:4.4
-		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.6 )
-"
-RDEPEND="
-	${CDEPEND}
-	java? ( >=virtual/jre-1.6 )
-"
-
-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_7.so
-	usr/lib/virtualbox/VBoxXPCOMC.so
-	usr/lib/virtualbox/VBoxOGLhostcrutil.so
-	usr/lib/virtualbox/VBoxNetDHCP.so
-	usr/lib/virtualbox/VBoxNetNAT.so"
-
-S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
-
-REQUIRED_USE="
-	java? ( sdk )
-	python? ( sdk )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-pkg_pretend() {
-	if ! use headless && ! use qt5 ; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5 ; then
-		einfo "You selected USE=\"headless qt5\", 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
-}
-
-pkg_setup() {
-	java-pkg-opt-2_pkg_setup
-	python-single-r1_pkg_setup
-
-	tc-ld-disable-gold #bug 488176
-	tc-export CC CXX LD AR RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-}
-
-src_prepare() {
-	# Remove shipped binaries (kBuild,yasm), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Replace pointless GCC version check with something less stupid.
-	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
-		-i configure || die
-
-	# 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
-
-	# 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
-		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
-
-	# Only add nopie patch when we're on hardened
-	if gcc-specs-pie ; then
-		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
-	fi
-
-	# Only add paxmark patch when we're on pax_kernel
-	if use pax_kernel ; then
-		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
-	fi
-
-	eapply "${WORKDIR}/patches"
-
-	eapply_user
-}
-
-doecho() {
-	echo "$@"
-	"$@" || die
-}
-
-src_configure() {
-	local myconf=(
-		--with-gcc="$(tc-getCC)"
-		--with-g++="$(tc-getCXX)"
-		--disable-dbus
-		--disable-kmods
-		$(usex alsa '' --disable-alsa)
-		$(usex debug --build-debug '')
-		$(usex doc '' --disable-docs)
-		$(usex java '' --disable-java)
-		$(usex lvm '' --disable-devmapper)
-		$(usex opus '' --disable-libopus)
-		$(usex pulseaudio '' --disable-pulse)
-		$(usex python '' --disable-python)
-		$(usex vboxwebsrv --enable-webservice '')
-		$(usex vnc --enable-vnc '')
-	)
-	if ! use headless ; then
-		myconf+=(
-			$(usex opengl '' --disable-opengl)
-			$(usex qt5 '' --disable-qt)
-		)
-	else
-		myconf+=(
-			--build-headless
-			--disable-opengl
-		)
-	fi
-	if use amd64 && ! has_multilib_profile ; then
-		myconf+=( --disable-vmmraw )
-	fi
-	# not an autoconf script
-	doecho ./configure ${myconf[@]}
-}
-
-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}"
-	MAKE="kmk" emake \
-		VBOX_BUILD_PUBLISHER=_Gentoo \
-		TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
-		TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
-		TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
-		VBOX_WITH_VBOXIMGMOUNT=1 \
-		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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
-	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
-
-	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; then
-		vbox_inst rdesktop-vrdp
-		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
-
-		if use qt5 ; then
-			vbox_inst VirtualBox
-			vbox_inst VirtualBoxVM 4750
-			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED}"${vbox_inst_path}/${each}
-			done
-
-			if use opengl ; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-			fi
-
-			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
-		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
-		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
-		# 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
-		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
-			> "${T}"/10-virtualbox.rules || die
-		doins "${T}"/10-virtualbox.rules
-	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" -print0 \
-		| xargs --no-run-if-empty --null 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
-	fi
-
-	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
-}
-
-pkg_preinst() {
-	xdg_pkg_preinst
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use udev ; then
-		udevadm control --reload-rules \
-			&& udevadm trigger --subsystem-match=usb
-	fi
-
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
-
-	if ! use headless && use qt5 ; 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/${DIR_PV:-${PV}}/UserManual.pdf"
-	elog ""
-	elog "For advanced networking setups you should emerge:"
-	elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
-	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() {
-	xdg_pkg_postrm
-}

diff --git a/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild b/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild
deleted file mode 100644
index f207651526b..00000000000
--- a/app-emulation/virtualbox/virtualbox-6.1.14a.ebuild
+++ /dev/null
@@ -1,512 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
-
-MY_PN="VirtualBox"
-MY_PV="${PV/beta/BETA}"
-MY_PV="${MY_PV/rc/RC}"
-MY_P=${MY_PN}-${MY_PV}
-[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
-	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
-
-LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0"
-[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
-IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
-
-CDEPEND="
-	${PYTHON_DEPS}
-	!app-emulation/virtualbox-bin
-	acct-group/vboxusers
-	~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
-	dev-libs/libIDL
-	>=dev-libs/libxslt-1.1.19
-	net-misc/curl
-	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/libxcb:=
-		x11-libs/libXcursor
-		x11-libs/libXext
-		x11-libs/libXmu
-		x11-libs/libXt
-		opengl? ( media-libs/libglvnd[X] )
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtgui:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			opengl? ( dev-qt/qtopengl:5 )
-			x11-libs/libXinerama
-		)
-	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
-	lvm? ( sys-fs/lvm2 )
-	opus? ( media-libs/opus )
-	udev? ( >=virtual/udev-171 )
-	vnc? ( >=net-libs/libvncserver-0.9.9 )
-"
-DEPEND="
-	${CDEPEND}
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? (
-		x11-libs/libXinerama
-		opengl? ( virtual/opengl )
-	)
-	pam? ( sys-libs/pam )
-	pax_kernel? ( sys-apps/elfix )
-	pulseaudio? ( media-sound/pulseaudio )
-	qt5? ( dev-qt/linguist-tools:5 )
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=dev-util/kbuild-0.1.9998.3127
-	>=dev-lang/yasm-0.6.2
-	sys-devel/bin86
-	sys-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	doc? (
-		app-text/docbook-sgml-dtd:4.4
-		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.6 )
-"
-RDEPEND="
-	${CDEPEND}
-	java? ( >=virtual/jre-1.6 )
-"
-
-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_7.so
-	usr/lib/virtualbox/VBoxXPCOMC.so
-	usr/lib/virtualbox/VBoxOGLhostcrutil.so
-	usr/lib/virtualbox/VBoxNetDHCP.so
-	usr/lib/virtualbox/VBoxNetNAT.so"
-
-S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
-
-REQUIRED_USE="
-	java? ( sdk )
-	python? ( sdk )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-pkg_pretend() {
-	if ! use headless && ! use qt5 ; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5 ; then
-		einfo "You selected USE=\"headless qt5\", 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
-}
-
-pkg_setup() {
-	java-pkg-opt-2_pkg_setup
-	python-single-r1_pkg_setup
-
-	tc-ld-disable-gold #bug 488176
-	tc-export CC CXX LD AR RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-}
-
-src_prepare() {
-	# Remove shipped binaries (kBuild,yasm), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Replace pointless GCC version check with something less stupid.
-	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
-		-i configure || die
-
-	# 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
-
-	# 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
-		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
-
-	# Only add nopie patch when we're on hardened
-	if gcc-specs-pie ; then
-		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
-	fi
-
-	# Only add paxmark patch when we're on pax_kernel
-	if use pax_kernel ; then
-		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
-	fi
-
-	eapply "${WORKDIR}/patches"
-
-	eapply_user
-}
-
-doecho() {
-	echo "$@"
-	"$@" || die
-}
-
-src_configure() {
-	local myconf=(
-		--with-gcc="$(tc-getCC)"
-		--with-g++="$(tc-getCXX)"
-		--disable-dbus
-		--disable-kmods
-		$(usex alsa '' --disable-alsa)
-		$(usex debug --build-debug '')
-		$(usex doc '' --disable-docs)
-		$(usex java '' --disable-java)
-		$(usex lvm '' --disable-devmapper)
-		$(usex opus '' --disable-libopus)
-		$(usex pulseaudio '' --disable-pulse)
-		$(usex python '' --disable-python)
-		$(usex vboxwebsrv --enable-webservice '')
-		$(usex vnc --enable-vnc '')
-	)
-	if ! use headless ; then
-		myconf+=(
-			$(usex opengl '' --disable-opengl)
-			$(usex qt5 '' --disable-qt)
-		)
-	else
-		myconf+=(
-			--build-headless
-			--disable-opengl
-		)
-	fi
-	if use amd64 && ! has_multilib_profile ; then
-		myconf+=( --disable-vmmraw )
-	fi
-	# not an autoconf script
-	doecho ./configure ${myconf[@]}
-}
-
-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}"
-	MAKE="kmk" emake \
-		VBOX_BUILD_PUBLISHER=_Gentoo \
-		TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
-		TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
-		TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
-		VBOX_WITH_VBOXIMGMOUNT=1 \
-		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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
-	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
-
-	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; then
-		vbox_inst rdesktop-vrdp
-		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
-
-		if use qt5 ; then
-			vbox_inst VirtualBox
-			vbox_inst VirtualBoxVM 4750
-			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED}"${vbox_inst_path}/${each}
-			done
-
-			if use opengl ; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-			fi
-
-			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
-		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
-		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
-		# 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
-		sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
-			> "${T}"/10-virtualbox.rules || die
-		doins "${T}"/10-virtualbox.rules
-	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" -print0 \
-		| xargs --no-run-if-empty --null 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
-	fi
-
-	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
-}
-
-pkg_preinst() {
-	xdg_pkg_preinst
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use udev ; then
-		udevadm control --reload-rules \
-			&& udevadm trigger --subsystem-match=usb
-	fi
-
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
-
-	if ! use headless && use qt5 ; 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/${DIR_PV:-${PV}}/UserManual.pdf"
-	elog ""
-	elog "For advanced networking setups you should emerge:"
-	elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
-	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() {
-	xdg_pkg_postrm
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-01-06  3:10 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2021-01-06  3:10 UTC (permalink / raw
  To: gentoo-commits

commit:     b53446b5e0eec843f984902bb2260a463952a2ca
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  6 03:09:03 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan  6 03:09:03 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b53446b5

app-emulation/virtualbox: Stabilize 6.1.16-r1 amd64, #750782

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild
index 407cae5c0ac..05b9f985100 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.16-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -20,7 +20,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-01-22  1:48 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2021-01-22  1:48 UTC (permalink / raw
  To: gentoo-commits

commit:     21da8ad6d5bb4804d2468b3b061af1800cdec829
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 22 01:48:44 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 22 01:48:44 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21da8ad6

app-emulation/virtualbox: Stabilize 6.1.18 amd64, #766348

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.18.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.18.ebuild b/app-emulation/virtualbox/virtualbox-6.1.18.ebuild
index f5907403ea9..05b9f985100 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.18.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.18.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-04-21  9:55 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2021-04-21  9:55 UTC (permalink / raw
  To: gentoo-commits

commit:     b3bf0d3dd544afd0b33f312c0bc2c20740ad7a26
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 21 09:55:41 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Apr 21 09:55:41 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3bf0d3d

app-emulation/virtualbox: Lifted java dep to 1.8

Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.20.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.20.ebuild b/app-emulation/virtualbox/virtualbox-6.1.20.ebuild
index 53cbfdb3f6e..6af250ffce5 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.20.ebuild
@@ -91,7 +91,7 @@ BDEPEND="
 		dev-texlive/texlive-fontsrecommended
 		dev-texlive/texlive-fontsextra
 	)
-	java? ( >=virtual/jdk-1.6 )
+	java? ( >=virtual/jdk-1.8 )
 "
 RDEPEND="
 	${CDEPEND}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-04-30 13:16 Mikle Kolyada
  0 siblings, 0 replies; 198+ messages in thread
From: Mikle Kolyada @ 2021-04-30 13:16 UTC (permalink / raw
  To: gentoo-commits

commit:     c5c69e38db0d949ab35a51e5b318abb1f62eb3ab
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 30 13:16:08 2021 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Fri Apr 30 13:16:48 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5c69e38

app-emulation/virtualbox: remove libressl support

Package-Manager: Portage-3.0.18, Repoman-3.0.2
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.18.ebuild    | 5 ++---
 app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild | 5 ++---
 app-emulation/virtualbox/virtualbox-6.1.22.ebuild    | 5 ++---
 3 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.18.ebuild b/app-emulation/virtualbox/virtualbox-6.1.18.ebuild
index f6f373e8a64..c106cf14fe0 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.18.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.18.ebuild
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="amd64"
-IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="
 	${PYTHON_DEPS}
@@ -54,8 +54,7 @@ CDEPEND="
 			x11-libs/libXinerama
 		)
 	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
+	dev-libs/openssl:0=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )

diff --git a/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
index 95da7ce00ed..6d44804fdae 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="~amd64"
-IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="
 	${PYTHON_DEPS}
@@ -54,8 +54,7 @@ CDEPEND="
 			x11-libs/libXinerama
 		)
 	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
+	dev-libs/openssl:0=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )

diff --git a/app-emulation/virtualbox/virtualbox-6.1.22.ebuild b/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
index 775172e28c9..f6ba09856a7 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="~amd64"
-IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="
 	${PYTHON_DEPS}
@@ -54,8 +54,7 @@ CDEPEND="
 			x11-libs/libXinerama
 		)
 	)
-	libressl? ( dev-libs/libressl:= )
-	!libressl? ( dev-libs/openssl:0= )
+	dev-libs/openssl:0=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-04-30 23:34 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2021-04-30 23:34 UTC (permalink / raw
  To: gentoo-commits

commit:     69ec5ee869f0b0479a5f3227315c789474fe4dbc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 30 23:32:54 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Apr 30 23:32:54 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69ec5ee8

app-emulation/virtualbox: Stabilize 6.1.20-r1 amd64, #785445

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
index 6d44804fdae..653e36a9997 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.20-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-07-19 18:36 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2021-07-19 18:36 UTC (permalink / raw
  To: gentoo-commits

commit:     85f5fcf386648a82e4843a12133effee3d2ad407
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 19 18:35:07 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul 19 18:35:07 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85f5fcf3

app-emulation/virtualbox: Stabilize 6.1.22 amd64, #802651

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.22.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.22.ebuild b/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
index 0749d1ebaa9..325ffdbc6af 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-07-30 22:55 David Seifert
  0 siblings, 0 replies; 198+ messages in thread
From: David Seifert @ 2021-07-30 22:55 UTC (permalink / raw
  To: gentoo-commits

commit:     16d910197bdcc63f25d3b386cd430bcaad238d3c
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 30 22:55:02 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Fri Jul 30 22:55:02 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=16d91019

app-emulation/virtualbox: consistent tmpfiles_process arguments

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.22.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.24.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.26.ebuild | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.22.ebuild b/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
index 325ffdbc6af..8e2979cd198 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.22.ebuild
@@ -467,7 +467,7 @@ pkg_postinst() {
 			&& udevadm trigger --subsystem-match=usb
 	fi
 
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+	tmpfiles_process virtualbox-vboxusb.conf
 
 	if ! use headless && use qt5 ; then
 		elog "To launch VirtualBox just type: \"virtualbox\"."

diff --git a/app-emulation/virtualbox/virtualbox-6.1.24.ebuild b/app-emulation/virtualbox/virtualbox-6.1.24.ebuild
index 0749d1ebaa9..9e63054b021 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.24.ebuild
@@ -467,7 +467,7 @@ pkg_postinst() {
 			&& udevadm trigger --subsystem-match=usb
 	fi
 
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+	tmpfiles_process virtualbox-vboxusb.conf
 
 	if ! use headless && use qt5 ; then
 		elog "To launch VirtualBox just type: \"virtualbox\"."

diff --git a/app-emulation/virtualbox/virtualbox-6.1.26.ebuild b/app-emulation/virtualbox/virtualbox-6.1.26.ebuild
index afb3e4e5b25..d7cbd13be91 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.26.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.26.ebuild
@@ -467,7 +467,7 @@ pkg_postinst() {
 			&& udevadm trigger --subsystem-match=usb
 	fi
 
-	tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
+	tmpfiles_process virtualbox-vboxusb.conf
 
 	if ! use headless && use qt5 ; then
 		elog "To launch VirtualBox just type: \"virtualbox\"."


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-11-06 20:53 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2021-11-06 20:53 UTC (permalink / raw
  To: gentoo-commits

commit:     9bc0bb6f57d32ecd0ac728ef361fb73e0578b3fa
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  6 20:52:32 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Nov  6 20:52:32 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9bc0bb6f

app-emulation/virtualbox: needs libcrypt

Bug's been open for a while and VirtualBox's build system is "complicated":
let's depend on libcrypt given it seems pretty clear it needs it in some
capacity and we're better off ensuring it actually builds/installs.

Closes: https://bugs.gentoo.org/806326
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/{virtualbox-6.1.24.ebuild => virtualbox-6.1.24-r1.ebuild} | 1 +
 .../virtualbox/{virtualbox-6.1.26.ebuild => virtualbox-6.1.26-r1.ebuild} | 1 +
 .../virtualbox/{virtualbox-6.1.28.ebuild => virtualbox-6.1.28-r1.ebuild} | 1 +
 3 files changed, 3 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.24.ebuild b/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.24.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
index 8e2979cd198..ce665d5a21a 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.24.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
@@ -55,6 +55,7 @@ CDEPEND="
 		)
 	)
 	dev-libs/openssl:0=
+	virtual/libcrypt:=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )

diff --git a/app-emulation/virtualbox/virtualbox-6.1.26.ebuild b/app-emulation/virtualbox/virtualbox-6.1.26-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.26.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.26-r1.ebuild
index ee270bbcc26..6b33c76e1f2 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.26.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.26-r1.ebuild
@@ -55,6 +55,7 @@ CDEPEND="
 		)
 	)
 	dev-libs/openssl:0=
+	virtual/libcrypt:=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )

diff --git a/app-emulation/virtualbox/virtualbox-6.1.28.ebuild b/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.28.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
index 9f8660a127b..358382f4a8b 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.28.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
@@ -55,6 +55,7 @@ COMMON_DEPEND="
 		)
 	)
 	dev-libs/openssl:0=
+	virtual/libcrypt:=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
 	udev? ( >=virtual/udev-171 )


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2021-12-06 21:11 Jakov Smolić
  0 siblings, 0 replies; 198+ messages in thread
From: Jakov Smolić @ 2021-12-06 21:11 UTC (permalink / raw
  To: gentoo-commits

commit:     374126028fae59631c54fd2b8b594ddc1e2037ba
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  6 21:11:20 2021 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Mon Dec  6 21:11:20 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=37412602

app-emulation/virtualbox: Stabilize 6.1.28-r1 amd64, #828476

Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
index 358382f4a8b7..0576c10043d7 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 COMMON_DEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-01-12  2:45 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-01-12  2:45 UTC (permalink / raw
  To: gentoo-commits

commit:     1aebf0a854ed6cad6b4414767d6d6bb89da311c9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 12 01:59:41 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 12 02:45:17 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1aebf0a8

app-emulation/virtualbox: allow disabling PCH

Persistent hard to debug build failures.

It's fragile and I'm about to use.mask it globally anyway.

Closes: https://bugs.gentoo.org/753323
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild | 9 +++++++--
 app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild | 9 +++++++--
 app-emulation/virtualbox/virtualbox-6.1.30.ebuild    | 9 +++++++--
 3 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
index ce665d5a21ae..9452a3fe11ba 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="amd64"
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 CDEPEND="
 	${PYTHON_DEPS}
@@ -179,6 +179,11 @@ src_prepare() {
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
 
+	if ! use pch ; then
+		# bug #753323
+		echo -e "VBOX_WITHOUT_PRECOMPILED_HEADERS=1\r\n" >> LocalConfig.kmk || die
+	fi
+
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
 		-i Config.kmk src/libs/xpcom18a4/Config.kmk || die

diff --git a/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
index 0576c10043d7..c68f8924cbf5 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="amd64"
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 COMMON_DEPEND="
 	${PYTHON_DEPS}
@@ -179,6 +179,11 @@ src_prepare() {
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
 
+	if ! use pch ; then
+		# bug #753323
+		echo -e "VBOX_WITHOUT_PRECOMPILED_HEADERS=1\r\n" >> LocalConfig.kmk || die
+	fi
+
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
 		-i Config.kmk src/libs/xpcom18a4/Config.kmk || die

diff --git a/app-emulation/virtualbox/virtualbox-6.1.30.ebuild b/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
index 358382f4a8b7..de42d1ff09e7 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="~amd64"
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 COMMON_DEPEND="
 	${PYTHON_DEPS}
@@ -179,6 +179,11 @@ src_prepare() {
 	sed -e "s@MY_LIBDIR@$(get_libdir)@" \
 		"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
 
+	if ! use pch ; then
+		# bug #753323
+		echo -e "VBOX_WITHOUT_PRECOMPILED_HEADERS=1\r\n" >> LocalConfig.kmk || die
+	fi
+
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
 		-i Config.kmk src/libs/xpcom18a4/Config.kmk || die


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-01-27 13:57 Lars Wendler
  0 siblings, 0 replies; 198+ messages in thread
From: Lars Wendler @ 2022-01-27 13:57 UTC (permalink / raw
  To: gentoo-commits

commit:     90973983b62f7f0f6941a29f7db985c5ca5a7e1b
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 27 13:56:47 2022 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Jan 27 13:57:46 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=90973983

app-emulation/virtualbox: Don't use "echo -e"

Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.30.ebuild | 3 ++-
 app-emulation/virtualbox/virtualbox-6.1.32.ebuild | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.30.ebuild b/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
index de42d1ff09e7..6f928005943c 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
@@ -181,7 +181,8 @@ src_prepare() {
 
 	if ! use pch ; then
 		# bug #753323
-		echo -e "VBOX_WITHOUT_PRECOMPILED_HEADERS=1\r\n" >> LocalConfig.kmk || die
+		printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \
+			>> LocalConfig.kmk || die
 	fi
 
 	# Respect LDFLAGS

diff --git a/app-emulation/virtualbox/virtualbox-6.1.32.ebuild b/app-emulation/virtualbox/virtualbox-6.1.32.ebuild
index de42d1ff09e7..6f928005943c 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.32.ebuild
@@ -181,7 +181,8 @@ src_prepare() {
 
 	if ! use pch ; then
 		# bug #753323
-		echo -e "VBOX_WITHOUT_PRECOMPILED_HEADERS=1\r\n" >> LocalConfig.kmk || die
+		printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \
+			>> LocalConfig.kmk || die
 	fi
 
 	# Respect LDFLAGS


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-01-29 18:38 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-01-29 18:38 UTC (permalink / raw
  To: gentoo-commits

commit:     b051c650279e3b4ae9d834ee51e8969260afc7ab
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 29 18:37:27 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 29 18:38:02 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b051c650

app-emulation/virtualbox: [QA] add missing virtual/glu dependency

Notably a few of our patches even add an #include on the GLU headers.

Closes: https://bugs.gentoo.org/449436
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{virtualbox-6.1.24-r1.ebuild => virtualbox-6.1.24-r2.ebuild}     | 5 ++++-
 .../{virtualbox-6.1.28-r1.ebuild => virtualbox-6.1.28-r2.ebuild}     | 5 ++++-
 .../{virtualbox-6.1.30.ebuild => virtualbox-6.1.30-r1.ebuild}        | 5 ++++-
 .../{virtualbox-6.1.32.ebuild => virtualbox-6.1.32-r1.ebuild}        | 5 ++++-
 4 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild
index 9452a3fe11ba..9f636b136138 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.24-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild
@@ -43,7 +43,10 @@ CDEPEND="
 		x11-libs/libXext
 		x11-libs/libXmu
 		x11-libs/libXt
-		opengl? ( media-libs/libglvnd[X] )
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
 		qt5? (
 			dev-qt/qtcore:5
 			dev-qt/qtgui:5

diff --git a/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild
index c68f8924cbf5..856204577ade 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.28-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild
@@ -43,7 +43,10 @@ COMMON_DEPEND="
 		x11-libs/libXext
 		x11-libs/libXmu
 		x11-libs/libXt
-		opengl? ( media-libs/libglvnd[X] )
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
 		qt5? (
 			dev-qt/qtcore:5
 			dev-qt/qtgui:5

diff --git a/app-emulation/virtualbox/virtualbox-6.1.30.ebuild b/app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.30.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild
index 6f928005943c..f7c71b5e2f38 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.30.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild
@@ -43,7 +43,10 @@ COMMON_DEPEND="
 		x11-libs/libXext
 		x11-libs/libXmu
 		x11-libs/libXt
-		opengl? ( media-libs/libglvnd[X] )
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
 		qt5? (
 			dev-qt/qtcore:5
 			dev-qt/qtgui:5

diff --git a/app-emulation/virtualbox/virtualbox-6.1.32.ebuild b/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.32.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
index 6f928005943c..f7c71b5e2f38 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.32.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
@@ -43,7 +43,10 @@ COMMON_DEPEND="
 		x11-libs/libXext
 		x11-libs/libXmu
 		x11-libs/libXt
-		opengl? ( media-libs/libglvnd[X] )
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
 		qt5? (
 			dev-qt/qtcore:5
 			dev-qt/qtgui:5


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-03-16 17:07 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-03-16 17:07 UTC (permalink / raw
  To: gentoo-commits

commit:     ea1311fe98870dd0d0db901609566396a1487bce
Author:     François-Xavier Carton <fx.carton91 <AT> gmail <DOT> com>
AuthorDate: Tue Mar 15 17:57:17 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Mar 16 17:06:49 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea1311fe

app-emulation/virtualbox: quote variables to allow CC containing spaces

Signed-off-by: François-Xavier Carton <fx.carton91 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild
index 9f636b136138..3d274711216c 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.24-r2.ebuild
@@ -262,7 +262,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	doecho ./configure ${myconf[@]}
+	doecho ./configure "${myconf[@]}"
 }
 
 src_compile() {

diff --git a/app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild
index 856204577ade..c072a8990255 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.28-r2.ebuild
@@ -264,7 +264,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	doecho ./configure ${myconf[@]}
+	doecho ./configure "${myconf[@]}"
 }
 
 src_compile() {

diff --git a/app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild
index f7c71b5e2f38..84a9aca77aff 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.30-r1.ebuild
@@ -265,7 +265,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	doecho ./configure ${myconf[@]}
+	doecho ./configure "${myconf[@]}"
 }
 
 src_compile() {

diff --git a/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
index f7c71b5e2f38..84a9aca77aff 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
@@ -265,7 +265,7 @@ src_configure() {
 		myconf+=( --disable-vmmraw )
 	fi
 	# not an autoconf script
-	doecho ./configure ${myconf[@]}
+	doecho ./configure "${myconf[@]}"
 }
 
 src_compile() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-04-04 18:28 Jakov Smolić
  0 siblings, 0 replies; 198+ messages in thread
From: Jakov Smolić @ 2022-04-04 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     a7661184311fb48a2e02fa420c8ddc3fb0884fa1
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Mon Apr  4 18:28:46 2022 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Mon Apr  4 18:28:46 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7661184

app-emulation/virtualbox: Stabilize 6.1.32-r1 amd64, #836383

Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
index 84a9aca77aff..96494cca02e5 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.32-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
 COMMON_DEPEND="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  2:06 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  2:06 UTC (permalink / raw
  To: gentoo-commits

commit:     c250435ca78aad838432b4b3ee02e42634b3b378
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 02:04:49 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 02:05:40 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c250435c

app-emulation/virtualbox: force Java 8 for wsimport

wsimport was dropped in Java 11+. We need to put the dep for 8
in DEPEND rather than (just?) BDEPEND for the eclass magic
to actually enforce the right env vars & java.

Thanks to Marcel for the pointers.

Closes: https://bugs.gentoo.org/832166
Thanks-to: Marcel Greter <bugzilla <AT> ocbnet.ch>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.34-r2.ebuild         | 511 +++++++++++++++++++++
 1 file changed, 511 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r2.ebuild
new file mode 100644
index 000000000000..73fc49ceb444
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r2.ebuild
@@ -0,0 +1,511 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+
+MY_PN="VirtualBox"
+MY_PV="${PV/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=${MY_PN}-${MY_PV}
+[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
+	https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	!app-emulation/virtualbox-bin
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	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/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	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. See bug #832166.
+DEPEND="
+	${COMMON_DEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	qt5? ( dev-qt/linguist-tools:5 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+QA_TEXTRELS="
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_EXECSTACK="
+	usr/lib64/virtualbox/iPxeBaseBin
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+QA_WX_LOAD="
+	usr/lib64/virtualbox/iPxeBaseBin
+"
+
+QA_PRESTRIPPED="
+	/usr/lib64/virtualbox/VMMR0.r0
+	/usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}/${P}-vboxr0.patch"
+	"${FILESDIR}/${PN}-6.1.34-python3.10.patch" #852152
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+}
+
+pkg_setup() {
+	java-pkg-opt-2_pkg_setup
+	python-single-r1_pkg_setup
+
+	tc-ld-disable-gold #bug 488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+}
+
+src_prepare() {
+	# Remove shipped binaries (kBuild,yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something less stupid.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+
+	# Only add nopie patch when we're on hardened
+	if gcc-specs-pie ; then
+		eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
+	fi
+
+	# Only add paxmark patch when we're on pax-kernel
+	if use pax-kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	eapply "${FILESDIR}/${PN}-6.1.26-configure-include-qt5-path.patch" #805365
+
+	eapply "${WORKDIR}/patches"
+
+	default
+}
+
+doecho() {
+	echo "$@"
+	"$@" || die
+}
+
+src_configure() {
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+		--disable-dbus
+		--disable-kmods
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+	# not an autoconf script
+	doecho ./configure "${myconf[@]}"
+}
+
+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}"
+	MAKE="kmk" emake \
+		VBOX_BUILD_PUBLISHER=_Gentoo \
+		TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
+		TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
+		TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
+		VBOX_WITH_VBOXIMGMOUNT=1 \
+		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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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
+
+		if use qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	if use udev ; then
+		udevadm control --reload-rules \
+			&& udevadm trigger --subsystem-match=usb
+	fi
+
+	tmpfiles_process virtualbox-vboxusb.conf
+
+	if ! use headless && use qt5 ; 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/${DIR_PV:-${PV}}/UserManual.pdf"
+	elog ""
+	elog "For advanced networking setups you should emerge:"
+	elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
+	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}."
+	fi
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  3:01 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  3:01 UTC (permalink / raw
  To: gentoo-commits

commit:     9a09586677da244bdd6db9c8196cf0f49f5e2a66
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 02:19:43 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 02:19:43 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a095866

app-emulation/virtualbox: minor ebuild tidying

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.34-r3.ebuild         | 31 ++++++++++++++--------
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
index 3920e11b0d57..388c4e9cc7c0 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 
 PYTHON_COMPAT=( python3_{8..10} )
-inherit desktop edo flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+inherit desktop edo java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PN="VirtualBox"
 MY_PV="${PV/beta/BETA}"
@@ -161,17 +161,13 @@ pkg_pretend() {
 pkg_setup() {
 	java-pkg-opt-2_pkg_setup
 	python-single-r1_pkg_setup
-
-	tc-ld-disable-gold #bug 488176
-	tc-export CC CXX LD AR RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
 }
 
 src_prepare() {
 	# Remove shipped binaries (kBuild,yasm), see bug #232775
 	rm -r kBuild/bin tools || die
 
-	# Replace pointless GCC version check with something less stupid.
+	# Replace pointless GCC version check with something more sensible.
 	# This is needed for the qt5 version check.
 	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
 		-i configure || die
@@ -227,11 +223,17 @@ src_prepare() {
 }
 
 src_configure() {
+	tc-ld-disable-gold # bug #488176
+	tc-export CC CXX LD AR RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
 	local myconf=(
 		--with-gcc="$(tc-getCC)"
 		--with-g++="$(tc-getCXX)"
+
 		--disable-dbus
 		--disable-kmods
+
 		$(usex alsa '' --disable-alsa)
 		$(usex debug --build-debug '')
 		$(usex doc '' --disable-docs)
@@ -243,6 +245,7 @@ src_configure() {
 		$(usex vboxwebsrv --enable-webservice '')
 		$(usex vnc --enable-vnc '')
 	)
+
 	if ! use headless ; then
 		myconf+=(
 			$(usex opengl '' --disable-opengl)
@@ -254,10 +257,12 @@ src_configure() {
 			--disable-opengl
 		)
 	fi
+
 	if use amd64 && ! has_multilib_profile ; then
 		myconf+=( --disable-vmmraw )
 	fi
 
+	# bug #843437
 	cat >> LocalConfig.kmk <<-EOF || die
 		CFLAGS=${CFLAGS}
 		CXXFLAGS=${CXXFLAGS}
@@ -271,14 +276,18 @@ 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}) #'
+	MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
+	MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
 	MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
+
 	MAKE="kmk" emake \
 		VBOX_BUILD_PUBLISHER=_Gentoo \
-		TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
-		TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
-		TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
+		TOOL_GXX3_CC="$(tc-getCC)" \
+		TOOL_GXX3_CXX="$(tc-getCXX)" \
+		TOOL_GXX3_LD="$(tc-getCXX)" \
+		VBOX_GCC_OPT="${CXXFLAGS}" \
+		TOOL_YASM_AS=yasm \
+		KBUILD_VERBOSE=2 \
 		VBOX_WITH_VBOXIMGMOUNT=1 \
 		all
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  3:01 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  3:01 UTC (permalink / raw
  To: gentoo-commits

commit:     fa21e2695b3da1f1b8935b13253cbd8d272719a2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 02:22:32 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 02:22:32 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa21e269

app-emulation/virtualbox: use optfeature

Closes: https://bugs.gentoo.org/674496
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.34-r3.ebuild         | 31 ++++++++--------------
 1 file changed, 11 insertions(+), 20 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
index 388c4e9cc7c0..db2898848eba 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 
 PYTHON_COMPAT=( python3_{8..10} )
-inherit desktop edo java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
+inherit desktop edo java-pkg-opt-2 linux-info multilib optfeature pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
 
 MY_PN="VirtualBox"
 MY_PV="${PV/beta/BETA}"
@@ -487,8 +487,8 @@ pkg_postinst() {
 	xdg_pkg_postinst
 
 	if use udev ; then
-		udevadm control --reload-rules \
-			&& udevadm trigger --subsystem-match=usb
+		udevadm control --reload-rules
+		udevadm trigger --subsystem-match=usb
 	fi
 
 	tmpfiles_process virtualbox-vboxusb.conf
@@ -496,27 +496,18 @@ pkg_postinst() {
 	if ! use headless && use qt5 ; 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/${DIR_PV:-${PV}}/UserManual.pdf"
-	elog ""
-	elog "For advanced networking setups you should emerge:"
-	elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
+	elog "https://download.virtualbox.org/virtualbox/${DIR_PV:-${PV}}/UserManual.pdf"
 	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"
+
+	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
-		elog ""
-		elog "WARNING!"
-		elog "Without USE=udev, USB devices will likely not work in ${PN}."
+		ewarn "Without USE=udev, USB devices will likely not work in ${PN}."
 	fi
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  3:18 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  3:18 UTC (permalink / raw
  To: gentoo-commits

commit:     7dde6a6bd36cadd1c70d8ec3d3f956750231eeff
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 03:17:56 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 03:18:32 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7dde6a6b

app-emulation/virtualbox: uncomment partial Python logic

Went back and forth on this but I think it's worth
hinting as much as possible for now, given it's
completely guessing otherwise, and we can't
easily just rip out / disable Python entirely
until we fix this.

Bug: https://bugs.gentoo.org/856121
Bug: https://bugs.gentoo.org/785835
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.34-r3.ebuild         | 24 ++++++++++------------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
index a352a9dd329b..1475e06f6fa0 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r3.ebuild
@@ -280,20 +280,18 @@ src_configure() {
 	edo ./configure "${myconf[@]}"
 
 	# Try to force usage of chosen Python implementation
-	# Commented out for now as it's insufficient (see comment above
-	# PYTHON_COMPAT).
 	# 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
-	#
-	#cat >> AutoConfig.kmk <<-EOF || die
-	#	VBOX_WITH_PYTHON=$(usex python 1 0)
-	#	VBOX_PATH_PYTHON_INC=$(python_get_includedir)
-	#	VBOX_LIB_PYTHON=$(python_get_library_path)
-	#EOF
+	sed -i \
+		-e '/VBOX_WITH_PYTHON.*=/d' \
+		-e '/VBOX_PATH_PYTHON_INC.*=/d' \
+		-e '/VBOX_LIB_PYTHON.*=/d' \
+		AutoConfig.kmk || die
+
+	cat >> AutoConfig.kmk <<-EOF || die
+		VBOX_WITH_PYTHON=$(usex python 1 0)
+		VBOX_PATH_PYTHON_INC=$(python_get_includedir)
+		VBOX_LIB_PYTHON=$(python_get_library_path)
+	EOF
 }
 
 src_compile() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  6:05 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  6:05 UTC (permalink / raw
  To: gentoo-commits

commit:     c811211d3a19f9b79a9e0e9afc4aaf5e3fa5ed54
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 06:04:51 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 06:05:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c811211d

app-emulation/virtualbox: add more wsimport context

Bug: https://bugs.gentoo.org/832166
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
index a20ee04a2d51..7eb42e9cf9ea 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
@@ -82,7 +82,13 @@ COMMON_DEPEND="
 # 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. See bug #832166.
+# 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 #832166.
 DEPEND="
 	${COMMON_DEPEND}
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
@@ -550,7 +556,7 @@ src_install() {
 			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
-        fi
+	fi
 
 	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
 }


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  8:06 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  8:06 UTC (permalink / raw
  To: gentoo-commits

commit:     e70a893ff6e26d0259ef64ca9293aeaaa4481b0a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 08:06:16 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 08:06:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e70a893f

app-emulation/virtualbox: respect CC and other toolchain env. variables

No comment.

Closes: https://bugs.gentoo.org/856664
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.34-r4.ebuild         | 66 ++++++++++++++++++----
 1 file changed, 55 insertions(+), 11 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
index 7eb42e9cf9ea..55a9c26de27a 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
@@ -256,7 +256,8 @@ src_prepare() {
 
 src_configure() {
 	tc-ld-disable-gold # bug #488176
-	tc-export CC CXX LD AR RANLIB
+
+	tc-export AR CC CXX LD RANLIB
 	export HOST_CC="$(tc-getBUILD_CC)"
 
 	local myconf=(
@@ -345,16 +346,59 @@ src_compile() {
 	MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
 	MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
 
-	MAKE="kmk" emake \
-		VBOX_BUILD_PUBLISHER=_Gentoo \
-		TOOL_GXX3_CC="$(tc-getCC)" \
-		TOOL_GXX3_CXX="$(tc-getCXX)" \
-		TOOL_GXX3_LD="$(tc-getCXX)" \
-		VBOX_GCC_OPT="${CXXFLAGS}" \
-		TOOL_YASM_AS=yasm \
-		KBUILD_VERBOSE=2 \
-		VBOX_WITH_VBOXIMGMOUNT=1 \
-		all
+	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() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  8:09 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  8:09 UTC (permalink / raw
  To: gentoo-commits

commit:     d899255c8ce8e38197c086e7048b9f145d3f7e96
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 08:08:53 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 08:08:53 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d899255c

app-emulation/virtualbox: set QA_FLAGS_IGNORED for .r0

Closes: https://bugs.gentoo.org/728238
Closes: https://bugs.gentoo.org/555378
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
index 55a9c26de27a..6e50baa9f4bd 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
@@ -128,6 +128,11 @@ RDEPEND="
 	java? ( virtual/jre:1.8 )
 "
 
+QA_FLAGS_IGNORED="
+	usr/lib64/virtualbox/VBoxDDR0.r0
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
 QA_TEXTRELS="
 	usr/lib64/virtualbox/VMMR0.r0
 "


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-06  9:23 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-06  9:23 UTC (permalink / raw
  To: gentoo-commits

commit:     430e969f9794911dad71a7a38c02590c1cca505d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 09:22:53 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 09:23:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=430e969f

app-emulation/virtualbox: fix disabling Python bindings

Bug: https://bugs.gentoo.org/856121
Closes: https://bugs.gentoo.org/785835
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{virtualbox-6.1.34-r4.ebuild => virtualbox-6.1.34-r5.ebuild}        | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r5.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.34-r5.ebuild
index 6e50baa9f4bd..428e491497ba 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r5.ebuild
@@ -318,7 +318,7 @@ src_configure() {
 		AutoConfig.kmk || die
 
 	cat >> AutoConfig.kmk <<-EOF || die
-		VBOX_WITH_PYTHON=$(usex python 1 0)
+		VBOX_WITH_PYTHON=$(usev python 1)
 		VBOX_PATH_PYTHON_INC=$(python_get_includedir)
 		VBOX_LIB_PYTHON=$(python_get_library_path)
 	EOF


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-07-24 23:23 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-07-24 23:23 UTC (permalink / raw
  To: gentoo-commits

commit:     3edb43df8a292d78569978c0c25dc9555f1bbb10
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 24 23:22:21 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 24 23:22:21 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3edb43df

app-emulation/virtualbox: Stabilize 6.1.34-r6 amd64, #860813

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
index 9aaf9e206961..6950d98a4c70 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
-	KEYWORDS="~amd64"
+	KEYWORDS="amd64"
 fi
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-08-08  9:40 Andreas Sturmlechner
  0 siblings, 0 replies; 198+ messages in thread
From: Andreas Sturmlechner @ 2022-08-08  9:40 UTC (permalink / raw
  To: gentoo-commits

commit:     f0d8559edd2649c1a988754aeb14993a6d9f4c01
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 25 17:34:45 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Aug  8 09:40:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0d8559e

app-emulation/virtualbox: Move dev-qt/linguist-tools:5 to BDEPEND

Bug: https://bugs.gentoo.org/544938
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
index 6950d98a4c70..7e63e28a4679 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
@@ -38,6 +38,13 @@ if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
 fi
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
 
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	!app-emulation/virtualbox-bin
@@ -100,7 +107,6 @@ DEPEND="
 	pam? ( sys-libs/pam )
 	pax-kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )
-	qt5? ( dev-qt/linguist-tools:5 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 "
 BDEPEND="
@@ -122,6 +128,7 @@ BDEPEND="
 		dev-texlive/texlive-fontsextra
 	)
 	java? ( virtual/jdk:1.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
 "
 RDEPEND="
 	${COMMON_DEPEND}
@@ -152,13 +159,6 @@ QA_PRESTRIPPED="
 	usr/lib64/virtualbox/VBoxDDR0.r0
 "
 
-REQUIRED_USE="
-	java? ( sdk )
-	python? ( sdk )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
 PATCHES=(
 	"${FILESDIR}"/${P}-vboxr0.patch
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-08-13 19:24 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-08-13 19:24 UTC (permalink / raw
  To: gentoo-commits

commit:     6b0dfde061d0197475629f95aa5d575b56c919e8
Author:     Viorel Munteanu <ceamac.paragon <AT> gmail <DOT> com>
AuthorDate: Wed Aug 10 15:45:43 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Aug 13 19:23:14 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b0dfde0

app-emulation/virtualbox: filter flags

With some combinations of CFLAGS/CXXFLAGS, the VM doesn't start

Bug: https://bugs.gentoo.org/856811
Closes: https://bugs.gentoo.org/864274
Signed-off-by: Viorel Munteanu <ceamac.paragon <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/26814
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/virtualbox-6.1.36-r1.ebuild         | 648 +++++++++++++++++++++
 1 file changed, 648 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.36-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.36-r1.ebuild
new file mode 100644
index 000000000000..c0b33deec69b
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.36-r1.ebuild
@@ -0,0 +1,648 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{8..10} )
+
+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/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=${MY_PN}-${MY_PV}
+[[ ${PV} == *a ]] && DIR_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-${MY_PV}.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
+	KEYWORDS="~amd64"
+fi
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	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/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	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 #832166.
+DEPEND="
+	${COMMON_DEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+QA_FLAGS_IGNORED="
+	usr/lib64/virtualbox/VBoxDDR0.r0
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_TEXTRELS="
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_EXECSTACK="
+	usr/lib64/virtualbox/iPxeBaseBin
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+QA_WX_LOAD="
+	usr/lib64/virtualbox/iPxeBaseBin
+"
+
+QA_PRESTRIPPED="
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# Patch grabbed from Arch Linux / upstream for Python 3.10 support
+	"${FILESDIR}"/${PN}-6.1.36-python3.10.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-${MY_PV}/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+}
+
+pkg_setup() {
+	java-pkg-opt-2_pkg_setup
+	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
+
+	# Only add paxmark patch when we're on pax-kernel
+	if use pax-kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	# Remove shipped binaries (kBuild, yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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
+
+		if use qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${DIR_PV:-${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-08-23 18:57 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-08-23 18:57 UTC (permalink / raw
  To: gentoo-commits

commit:     1580dc0483ebc5d389ae731399225d0115706570
Author:     Andrew Udvare <audvare <AT> gmail <DOT> com>
AuthorDate: Mon Aug  1 12:04:42 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 23 18:56:42 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1580dc04

app-emulation/virtualbox: add sdl USE flag

--disable-sdl is not documented in the configure script's help but it does work as expected.

Signed-off-by: Andrew Udvare <audvare <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/25612
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...box-6.1.32-r2.ebuild => virtualbox-6.1.32-r3.ebuild} | 17 ++++++++++-------
 ...box-6.1.34-r6.ebuild => virtualbox-6.1.34-r7.ebuild} | 17 ++++++++++-------
 app-emulation/virtualbox/virtualbox-6.1.36.ebuild       | 17 ++++++++++-------
 3 files changed, 30 insertions(+), 21 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.32-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.32-r3.ebuild
similarity index 97%
rename from app-emulation/virtualbox/virtualbox-6.1.32-r2.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.32-r3.ebuild
index 96494cca02e5..722a6987c670 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.32-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.32-r3.ebuild
@@ -21,7 +21,7 @@ LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
 KEYWORDS="amd64"
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 COMMON_DEPEND="
 	${PYTHON_DEPS}
@@ -36,7 +36,7 @@ COMMON_DEPEND="
 	media-libs/libvpx:0=
 	sys-libs/zlib:=
 	!headless? (
-		media-libs/libsdl:0[X,video]
+		sdl? ( media-libs/libsdl:0[X,video] )
 		x11-libs/libX11
 		x11-libs/libxcb:=
 		x11-libs/libXcursor
@@ -253,6 +253,7 @@ src_configure() {
 	if ! use headless ; then
 		myconf+=(
 			$(usex opengl '' --disable-opengl)
+			$(usex sdl '' --disable-sdl)
 			$(usex qt5 '' --disable-qt)
 		)
 	else
@@ -360,12 +361,14 @@ src_install() {
 
 	if ! use headless ; then
 		vbox_inst rdesktop-vrdp
-		vbox_inst VBoxSDL 4750
-		pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
+		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
+			for each in vboxsdl VBoxSDL ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+		fi
 
 		if use qt5 ; then
 			vbox_inst VirtualBox

diff --git a/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild b/app-emulation/virtualbox/virtualbox-6.1.34-r7.ebuild
similarity index 98%
rename from app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.34-r7.ebuild
index 7e63e28a4679..b18a640616f9 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.34-r6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.34-r7.ebuild
@@ -36,7 +36,7 @@ SLOT="0/$(ver_cut 1-2)"
 if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
 	KEYWORDS="amd64"
 fi
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 REQUIRED_USE="
 	java? ( sdk )
@@ -58,7 +58,7 @@ COMMON_DEPEND="
 	media-libs/libvpx:0=
 	sys-libs/zlib:=
 	!headless? (
-		media-libs/libsdl:0[X,video]
+		sdl? ( media-libs/libsdl:0[X,video] )
 		x11-libs/libX11
 		x11-libs/libxcb:=
 		x11-libs/libXcursor
@@ -287,6 +287,7 @@ src_configure() {
 	if ! use headless ; then
 		myconf+=(
 			$(usex opengl '' --disable-opengl)
+			$(usex sdl '' --disable-sdl)
 			$(usex qt5 '' --disable-qt)
 		)
 	else
@@ -475,12 +476,14 @@ src_install() {
 
 	if ! use headless ; then
 		vbox_inst rdesktop-vrdp
-		vbox_inst VBoxSDL 4750
-		pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
+		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
+			for each in vboxsdl VBoxSDL ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+		fi
 
 		if use qt5 ; then
 			vbox_inst VirtualBox

diff --git a/app-emulation/virtualbox/virtualbox-6.1.36.ebuild b/app-emulation/virtualbox/virtualbox-6.1.36.ebuild
index 19b363fc34f3..db6bcc8ca893 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.36.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.36.ebuild
@@ -36,7 +36,7 @@ SLOT="0/$(ver_cut 1-2)"
 if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
 	KEYWORDS="~amd64"
 fi
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769
 
@@ -52,7 +52,7 @@ COMMON_DEPEND="
 	media-libs/libvpx:0=
 	sys-libs/zlib:=
 	!headless? (
-		media-libs/libsdl:0[X,video]
+		sdl? ( media-libs/libsdl:0[X,video] )
 		x11-libs/libX11
 		x11-libs/libxcb:=
 		x11-libs/libXcursor
@@ -285,6 +285,7 @@ src_configure() {
 	if ! use headless ; then
 		myconf+=(
 			$(usex opengl '' --disable-opengl)
+			$(usex sdl '' --disable-sdl)
 			$(usex qt5 '' --disable-qt)
 		)
 	else
@@ -480,12 +481,14 @@ src_install() {
 
 	if ! use headless ; then
 		vbox_inst rdesktop-vrdp
-		vbox_inst VBoxSDL 4750
-		pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
+		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
+			for each in vboxsdl VBoxSDL ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+		fi
 
 		if use qt5 ; then
 			vbox_inst VirtualBox


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-08-23 20:48 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-08-23 20:48 UTC (permalink / raw
  To: gentoo-commits

commit:     c8222e6710da2d14619ef7d6f9a1a533aeb0402f
Author:     Andrew Udvare <audvare <AT> gmail <DOT> com>
AuthorDate: Tue Aug 23 20:42:09 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 23 20:46:35 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8222e67

app-emulation/virtualbox: add SDL flag to 6.1.36-r1; revbump to r2

Signed-off-by: Andrew Udvare <audvare <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/26991
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...box-6.1.36-r1.ebuild => virtualbox-6.1.36-r2.ebuild} | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.36-r1.ebuild b/app-emulation/virtualbox/virtualbox-6.1.36-r2.ebuild
similarity index 98%
rename from app-emulation/virtualbox/virtualbox-6.1.36-r1.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.36-r2.ebuild
index e964abdd6906..f0081d49d032 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.36-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.36-r2.ebuild
@@ -36,7 +36,7 @@ SLOT="0/$(ver_cut 1-2)"
 if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
 	KEYWORDS="~amd64"
 fi
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769
 
@@ -52,7 +52,7 @@ COMMON_DEPEND="
 	media-libs/libvpx:0=
 	sys-libs/zlib:=
 	!headless? (
-		media-libs/libsdl:0[X,video]
+		sdl? ( media-libs/libsdl:0[X,video] )
 		x11-libs/libX11
 		x11-libs/libxcb:=
 		x11-libs/libXcursor
@@ -293,6 +293,7 @@ src_configure() {
 		myconf+=(
 			$(usex opengl '' --disable-opengl)
 			$(usex qt5 '' --disable-qt)
+			$(usex sdl '' --disable-sdl)
 		)
 	else
 		myconf+=(
@@ -487,12 +488,14 @@ src_install() {
 
 	if ! use headless ; then
 		vbox_inst rdesktop-vrdp
-		vbox_inst VBoxSDL 4750
-		pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
+		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
+			for each in vboxsdl VBoxSDL ; do
+				dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+			done
+		fi
 
 		if use qt5 ; then
 			vbox_inst VirtualBox


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-09-05  1:22 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-09-05  1:22 UTC (permalink / raw
  To: gentoo-commits

commit:     6abf35b9907a61390aef371e6ead261ef036ab1d
Author:     Viorel Munteanu <ceamac.paragon <AT> gmail <DOT> com>
AuthorDate: Sun Sep  4 08:28:24 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep  5 01:19:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6abf35b9

app-emulation/virtualbox: add check to pkg_pretend

Check /usr, /usr/lib are owned by root.

Closes: https://bugs.gentoo.org/749273
Signed-off-by: Viorel Munteanu <ceamac.paragon <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.38.ebuild | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
index 25ec67b18ade..93c8ac5113f7 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
@@ -195,6 +195,15 @@ pkg_pretend() {
 		einfo "You have disabled the \"python\" USE flag. This will only"
 		einfo "disable the python bindings being installed."
 	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() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-09-05  1:22 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-09-05  1:22 UTC (permalink / raw
  To: gentoo-commits

commit:     0c322d04d98d3a3aea5f07234ec579bb445e5773
Author:     Viorel Munteanu <ceamac.paragon <AT> gmail <DOT> com>
AuthorDate: Sun Sep  4 08:20:07 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep  5 01:19:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c322d04

app-emulation/virtualbox: add 6.1.38

Signed-off-by: Viorel Munteanu <ceamac.paragon <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.38.ebuild | 654 ++++++++++++++++++++++
 2 files changed, 655 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 140f1e61f347..f0e2964cc09c 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,5 +1,6 @@
 DIST VirtualBox-6.1.32.tar.bz2 165758238 BLAKE2B 24873d7cc8bd306ea3552fe75379fbe7be767c85406042344eb047ed31184c3357aea07dda5e15c275f5036ae63106ef1d2e6524b143bc645a6b5ba0016f1391 SHA512 8bf7af6b8b4d3ba90f0e91589cf26400648436eb9da6d31c1a760460bfe5eb7311ac3220b4c9a98ac50e559641d3d5f559134be65288821038255de1c2c7ce1e
 DIST VirtualBox-6.1.34.tar.bz2 165761216 BLAKE2B d3c8f7d3d6f408e4c4275c2b2815e92819c871359501ec4fa7212bf7cdc852613e2e4703d8650371097a5bc805efa04ea75bb03ab83d24a869a677555f6e22d5 SHA512 46d63a9fd9df76af654af59fab5cf555858bc2c4b5dc34e2378d85ae784e6380b6def4aab06909a9b5e114a7297269f90cfb2c3d8d6529b423d703afbad18c64
 DIST VirtualBox-6.1.36.tar.bz2 165685382 BLAKE2B 98dbb06450b9df650cb72493bcdea4b88fa9dd21f76d723fdc0bb2c1ab8266f67e972a7222dc9b5bd0d43754911710664bddace753995be025cf6bcc05a24ae5 SHA512 cc3b984a7da40c9bf14831808a2bc2bf7bf6821e53c25fa11cb4b4275feb1d4b0cb4a47d8a360b90c89e5a4038481efe8fe28ee22996dbefb6446761e88a8dec
+DIST VirtualBox-6.1.38.tar.bz2 165761175 BLAKE2B decda6e7a595f79e6ace6f8f6b8a7829223ac1422c3d280b6287a40ef942e773ad473f4fa4640a76f8fb825ebd8561c646f1b3d87922b1af55c138298b4c8f4f SHA512 7a4f2dc80e3251b1da6d29d3c6f6b802527decc70497b1a1d1008c0ab3109c2039d131c587d6ec4786aea619546757655337c2ec3456243336ca13c6f6748116
 DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
new file mode 100644
index 000000000000..25ec67b18ade
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
@@ -0,0 +1,654 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{8..10} )
+
+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/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=${MY_PN}-${MY_PV}
+[[ ${PV} == *a ]] && DIR_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
+	KEYWORDS="~amd64"
+fi
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	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 #832166.
+DEPEND="
+	${COMMON_DEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+QA_FLAGS_IGNORED="
+	usr/lib64/virtualbox/VBoxDDR0.r0
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_TEXTRELS="
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_EXECSTACK="
+	usr/lib64/virtualbox/iPxeBaseBin
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+QA_WX_LOAD="
+	usr/lib64/virtualbox/iPxeBaseBin
+"
+
+QA_PRESTRIPPED="
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# Patch grabbed from Arch Linux / upstream for Python 3.10 support
+	"${FILESDIR}"/${PN}-6.1.36-python3.10.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+}
+
+pkg_setup() {
+	java-pkg-opt-2_pkg_setup
+	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
+
+	# Only add paxmark patch when we're on pax-kernel
+	if use pax-kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	# Remove shipped binaries (kBuild, yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+			$(usex sdl '' --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${DIR_PV:-${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-10-06 10:23 Joonas Niilola
  0 siblings, 0 replies; 198+ messages in thread
From: Joonas Niilola @ 2022-10-06 10:23 UTC (permalink / raw
  To: gentoo-commits

commit:     c45cdc8b2b264c3ac7b4c18777345d69c0af1308
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  6 06:03:36 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Oct  6 10:23:38 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c45cdc8b

app-emulation/virtualbox: Stabilize 6.1.38 amd64, #875332

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.38.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
index 93c8ac5113f7..7067d184bf7e 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
-	KEYWORDS="~amd64"
+	KEYWORDS="amd64"
 fi
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-10-17 21:05 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2022-10-17 21:05 UTC (permalink / raw
  To: gentoo-commits

commit:     a602feef34dcf2f45a0e7b7f2149c6a2e148eaf4
Author:     Viorel Munteanu <ceamac.paragon <AT> gmail <DOT> com>
AuthorDate: Mon Oct 17 05:42:51 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Oct 17 21:04:46 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a602feef

app-emulation/virtualbox: add 6.1.40

Closes: https://bugs.gentoo.org/877273
Signed-off-by: Viorel Munteanu <ceamac.paragon <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.40.ebuild | 663 ++++++++++++++++++++++
 2 files changed, 664 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index d98f18d2ee2d..c3288f9542c0 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,3 +1,4 @@
 DIST VirtualBox-6.1.36.tar.bz2 165685382 BLAKE2B 98dbb06450b9df650cb72493bcdea4b88fa9dd21f76d723fdc0bb2c1ab8266f67e972a7222dc9b5bd0d43754911710664bddace753995be025cf6bcc05a24ae5 SHA512 cc3b984a7da40c9bf14831808a2bc2bf7bf6821e53c25fa11cb4b4275feb1d4b0cb4a47d8a360b90c89e5a4038481efe8fe28ee22996dbefb6446761e88a8dec
 DIST VirtualBox-6.1.38.tar.bz2 165761175 BLAKE2B decda6e7a595f79e6ace6f8f6b8a7829223ac1422c3d280b6287a40ef942e773ad473f4fa4640a76f8fb825ebd8561c646f1b3d87922b1af55c138298b4c8f4f SHA512 7a4f2dc80e3251b1da6d29d3c6f6b802527decc70497b1a1d1008c0ab3109c2039d131c587d6ec4786aea619546757655337c2ec3456243336ca13c6f6748116
+DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-6.1.40.ebuild b/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
new file mode 100644
index 000000000000..93c8ac5113f7
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
@@ -0,0 +1,663 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{8..10} )
+
+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/beta/BETA}"
+MY_PV="${MY_PV/rc/RC}"
+MY_P=${MY_PN}-${MY_PV}
+[[ ${PV} == *a ]] && DIR_PV="$(ver_cut 1-3)"
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
+	KEYWORDS="~amd64"
+fi
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
+	dev-libs/libIDL
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	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 #832166.
+DEPEND="
+	${COMMON_DEPEND}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+QA_FLAGS_IGNORED="
+	usr/lib64/virtualbox/VBoxDDR0.r0
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_TEXTRELS="
+	usr/lib64/virtualbox/VMMR0.r0
+"
+
+QA_EXECSTACK="
+	usr/lib64/virtualbox/iPxeBaseBin
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+QA_WX_LOAD="
+	usr/lib64/virtualbox/iPxeBaseBin
+"
+
+QA_PRESTRIPPED="
+	usr/lib64/virtualbox/VMMR0.r0
+	usr/lib64/virtualbox/VBoxDDR0.r0
+"
+
+REQUIRED_USE="
+	java? ( sdk )
+	python? ( sdk )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# Patch grabbed from Arch Linux / upstream for Python 3.10 support
+	"${FILESDIR}"/${PN}-6.1.36-python3.10.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	# 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
+	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
+
+	# Only add paxmark patch when we're on pax-kernel
+	if use pax-kernel ; then
+		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
+	fi
+
+	# Remove shipped binaries (kBuild, yasm), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usex alsa '' --disable-alsa)
+		$(usex debug --build-debug '')
+		$(usex doc '' --disable-docs)
+		$(usex java '' --disable-java)
+		$(usex lvm '' --disable-devmapper)
+		$(usex opus '' --disable-libopus)
+		$(usex pulseaudio '' --disable-pulse)
+		$(usex python '' --disable-python)
+		$(usex vboxwebsrv --enable-webservice '')
+		$(usex vnc --enable-vnc '')
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usex opengl '' --disable-opengl)
+			$(usex qt5 '' --disable-qt)
+			$(usex sdl '' --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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" -print0 \
+		| xargs --no-run-if-empty --null 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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${DIR_PV:-${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-10-27  8:35 Joonas Niilola
  0 siblings, 0 replies; 198+ messages in thread
From: Joonas Niilola @ 2022-10-27  8:35 UTC (permalink / raw
  To: gentoo-commits

commit:     c6ce4bd7752ebfb93b22f3d44045d6cca2332e89
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 27 08:33:55 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Oct 27 08:33:55 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6ce4bd7

app-emulation/virtualbox: Stabilize 6.1.40 amd64, #878073

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.40.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.40.ebuild b/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
index 93c8ac5113f7..7067d184bf7e 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
-	KEYWORDS="~amd64"
+	KEYWORDS="amd64"
 fi
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-02 16:17 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-02 16:17 UTC (permalink / raw
  To: gentoo-commits

commit:     9c78bad60a62073894005081e8209cddcdf9732a
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  2 10:38:00 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Nov  2 16:17:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c78bad6

app-emulation/virtualbox: add myself as a maintainer

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

 app-emulation/virtualbox/metadata.xml | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index c23ebb8dcabd..f2a6f7873402 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -1,14 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-  <maintainer type="person" proxied="yes">
-    <email>ceamac.paragon@gmail.com</email>
+  <maintainer type="person">
+    <email>ceamac@gentoo.org</email>
     <name>Viorel Munteanu</name>
   </maintainer>
-  <maintainer type="project" proxied="proxy">
-    <email>proxy-maint@gentoo.org</email>
-    <name>Proxy Maintainers</name>
-  </maintainer>
   <use>
   <flag name="dtrace">Install dtrace Extension Pack</flag>
   <flag name="headless">Build without any graphic frontend</flag>


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20  8:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20  8:20 UTC (permalink / raw
  To: gentoo-commits

commit:     e23bb201c007506ef83f4e7c6ecd3af529a0ce5e
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  9 19:19:47 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:16:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e23bb201

app-emulation/virtualbox: fix build with USE='-*'

Fix dependencies when built without `headless`

Closes: https://bugs.gentoo.org/678534
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.40.ebuild | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.40.ebuild b/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
index 7067d184bf7e..cdb56ccbd418 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.40.ebuild
@@ -95,6 +95,7 @@ DEPEND="
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
 	!headless? (
 		x11-libs/libXinerama
+		x11-libs/libXrandr
 		opengl? ( virtual/opengl )
 	)
 	java? ( virtual/jdk:1.8 )


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20  8:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20  8:20 UTC (permalink / raw
  To: gentoo-commits

commit:     4c12419a862f8b292a8d3f81ecb83ee9c47e8e45
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  9 13:31:20 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:16:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c12419a

app-emulation/virtualbox: drop USE headless

Also rename `qt5` to `gui`.

To build a headless server simply disable all flags (-gui -sdl -opengl).

Closes: https://bugs.gentoo.org/610344
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.4.ebuild | 129 ++++++++++++-----------
 1 file changed, 68 insertions(+), 61 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
index 0216e73d550e..509e771077fc 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace headless java lvm +opus pam pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+IUSE="alsa dbus debug doc dtrace +gui java lvm +opus pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769
 
@@ -46,30 +46,33 @@ COMMON_DEPEND="
 	net-misc/curl
 	sys-libs/zlib
 	dbus? ( sys-apps/dbus )
-	!headless? (
+	gui? (
+		dev-qt/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
 		x11-libs/libX11
 		x11-libs/libXt
-		opengl? (
-			media-libs/libglvnd[X]
-		)
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtdbus:5
-			dev-qt/qtgui:5
-			dev-qt/qthelp:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			dev-qt/qtxml:5
-			opengl? ( dev-qt/qtopengl:5 )
-		)
-		sdl? (
-			media-libs/libsdl:0[X,video]
-			x11-libs/libXcursor
-		)
+		opengl? ( dev-qt/qtopengl:5 )
 	)
 	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	opus? ( media-libs/opus )
 	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl:0[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		x11-libs/libXt
+	)
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	vnc? ( >=net-libs/libvncserver-0.9.9 )
 "
@@ -83,31 +86,37 @@ COMMON_DEPEND="
 # but it needs more investigation.
 #
 # See bug #878299 to track this issue.
+# TODO: check opus
 DEPEND="
 	${COMMON_DEPEND}
 	>=dev-libs/libxslt-1.1.19
 	virtual/libcrypt:=
 	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	opengl? ( virtual/glu )
-	!headless? (
+	gui? (
+		x11-libs/libxcb:=
 		x11-libs/libXcursor
 		x11-libs/libXext
 		x11-libs/libXinerama
 		x11-libs/libXmu
-		x11-libs/libxcb:=
 		x11-libs/libXrandr
 		opengl? ( virtual/opengl )
 	)
 	java? ( virtual/jdk:1.8 )
-	opus? ( media-libs/opus )
+	opengl? (
+		x11-libs/libXcursor
+		x11-libs/libXinerama
+		x11-libs/libXmu
+		x11-libs/libXrandr
+		virtual/glu
+	)
+	sdl? ( x11-libs/libXinerama )
 	pulseaudio? ( media-sound/pulseaudio )
-	qt5? ( x11-libs/libXinerama )
 	udev? ( >=virtual/udev-171 )
 "
 RDEPEND="
 	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
 	java? ( virtual/jre:1.8 )
-	qt5? ( x11-libs/libxcb:= )
 "
 BDEPEND="
 	${PYTHON_DEPS}
@@ -130,6 +139,7 @@ BDEPEND="
 		dev-texlive/texlive-latexextra
 		dev-texlive/texlive-fontsrecommended
 		dev-texlive/texlive-fontsextra
+		dev-qt/qthelp:5
 	)
 	java? ( virtual/jdk:1.8 )
 "
@@ -192,11 +202,8 @@ PATCHES=(
 )
 
 pkg_pretend() {
-	if ! use headless && ! use qt5; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5; then
-		einfo "You selected USE=\"headless qt5\", defaulting to"
-		einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
+	if ! use gui; then
+		einfo "No USE=\"gui\" selected, this build will not include any Qt frontend."
 	fi
 
 	if ! use opengl; then
@@ -335,16 +342,15 @@ src_configure() {
 		$(usex vnc --enable-vnc '')
 	)
 
-	if ! use headless; then
+	if use gui || use sdl || use opengl; then
 		myconf+=(
 			$(usex opengl '' --disable-opengl)
-			$(usex qt5 '' --disable-qt)
+			$(usex gui '' --disable-qt)
 			$(usex sdl '' --disable-sdl)
 		)
 	else
 		myconf+=(
 			--build-headless
-			--disable-opengl
 		)
 	fi
 
@@ -526,38 +532,36 @@ src_install() {
 	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
 	doenvd "${T}/90virtualbox"
 
-	if ! use headless; then
-		if use sdl; then
-			vbox_inst VBoxSDL 4750
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
+	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
+		for each in vboxsdl VBoxSDL ; do
+			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
+		done
+	fi
 
-		if use qt5; then
-			vbox_inst VirtualBox
-			vbox_inst VirtualBoxVM 4750
-			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED}"${vbox_inst_path}/${each}
-			done
+	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
 
-			if use opengl; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-			fi
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
 
-			for each in virtualbox{,vm} VirtualBox{,VM} ; do
-				dosym ${vbox_inst_path}/VBox /usr/bin/${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
+		insinto /usr/share/${PN}
+		doins -r nls
+		doins -r UnattendedTemplates
 
-			domenu ${PN}.desktop
-		fi
+		domenu ${PN}.desktop
 
 		pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
 		for size in 16 32 48 64 128 ; do
@@ -637,6 +641,9 @@ src_install() {
 
 	if use doc; then
 		dodoc UserManual.pdf
+		docompress -x /usr/share/doc/${PF}/qt
+		docinto qt
+		dodoc UserManual.q{ch,hc}
 	fi
 
 	if use python; then
@@ -662,7 +669,7 @@ pkg_postinst() {
 
 	tmpfiles_process virtualbox-vboxusb.conf
 
-	if ! use headless && use qt5; then
+	if use gui; then
 		elog "To launch VirtualBox just type: \"virtualbox\"."
 	fi
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20  8:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20  8:20 UTC (permalink / raw
  To: gentoo-commits

commit:     4818de7348b27c11ecc3a9ff68bc97eb5b75030e
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  8 17:56:31 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:16:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4818de73

app-emulation/virtualbox: fix wrong message about modules

Replace `/etc/init.d/vboxdrv setup` with `emerge -1 virtualbox-modules`

Closes: https://bugs.gentoo.org/489208
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.4.ebuild | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
index 52822b428dc3..19b135f43be7 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
@@ -309,6 +309,11 @@ src_prepare() {
 		-e 's/&larr;/\&#8592;/g' \
 		-e 's/&rarr;/\&#8594;/g' \
 		-e 's/&harr;/\&#8596;/g' {} \+ || 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
 }
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20  8:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20  8:20 UTC (permalink / raw
  To: gentoo-commits

commit:     007fcbca1226b1a70f6447e445cdc595c36edf9a
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  9 09:08:57 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:16:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=007fcbca

app-emulation/virtualbox: drop USE pax-kernel

It doesn't work anyway and I don't have a recent pax kernel to fix it

I'll keep pax-mark calls in the ebuild for a while still, they may
prove useful

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

 app-emulation/virtualbox/virtualbox-7.0.4.ebuild | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
index 19b135f43be7..0216e73d550e 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+IUSE="alsa dbus debug doc dtrace headless java lvm +opus pam pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769
 
@@ -100,7 +100,6 @@ DEPEND="
 	)
 	java? ( virtual/jdk:1.8 )
 	opus? ( media-libs/opus )
-	pax-kernel? ( sys-apps/elfix )
 	pulseaudio? ( media-sound/pulseaudio )
 	qt5? ( x11-libs/libXinerama )
 	udev? ( >=virtual/udev-171 )
@@ -232,11 +231,6 @@ src_prepare() {
 		eapply "${FILESDIR}"/050_virtualbox-5.2.8-nopie.patch
 	fi
 
-	# Only add paxmark patch when we're on pax-kernel
-	if use pax-kernel; then
-		eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
-	fi
-
 	# Remove shipped binaries (kBuild, yasm) and tools, see bug #232775
 	rm -r kBuild/bin || die
 	# Remove everything in tools except kBuildUnits


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20  8:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20  8:20 UTC (permalink / raw
  To: gentoo-commits

commit:     d1e553ee971b105c5bfe7835d693df82d90044f6
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 19 14:38:07 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:18:42 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1e553ee

app-emulation/virtualbox: fix regression with USE="headless sdl"

Bug: https://bugs.gentoo.org/678534
Closes: https://github.com/gentoo/gentoo/pull/28229
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.2.ebuild | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
index 1a1bd3355268..bc613d5df1fa 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
@@ -201,6 +201,11 @@ pkg_pretend() {
 		einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
 	fi
 
+	if use headless && use sdl; then
+		einfo "You selected USE=\"headless sdl\", defaulting to"
+		einfo "USE=\"headless\", this build will not include SDL."
+	fi
+
 	if ! use opengl; then
 		einfo "No USE=\"opengl\" selected, this build will lack"
 		einfo "the OpenGL feature."
@@ -289,7 +294,7 @@ src_prepare() {
 		CFLAGS=${CFLAGS}
 	EOF
 
-	if use sdl; then
+	if ! use headless && use sdl; then
 		echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die
 	fi
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20  8:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20  8:20 UTC (permalink / raw
  To: gentoo-commits

commit:     694f38f0b6ae2b18cb98599f996970ad2a7c7ae8
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 11 08:05:18 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 08:16:37 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=694f38f0

app-emulation/virtualbox: add dependency for USE=doc

Starting with v7, `doc` also builds the user manual in qt5 help format

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

 app-emulation/virtualbox/virtualbox-7.0.2.ebuild | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
index 4a23f2b624d2..1a1bd3355268 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
@@ -131,6 +131,7 @@ BDEPEND="
 		dev-texlive/texlive-latexextra
 		dev-texlive/texlive-fontsrecommended
 		dev-texlive/texlive-fontsextra
+		dev-qt/qthelp:5
 	)
 	java? ( virtual/jdk:1.8 )
 "


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-11-20 10:13 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-11-20 10:13 UTC (permalink / raw
  To: gentoo-commits

commit:     ff692d5bc9fec01c5bb1318f86b9988ffd29afab
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 20 09:57:35 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 10:12:40 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff692d5b

app-emulation/virtualbox: drop `opus` flag

Dropped by upstream

Closes: https://bugs.gentoo.org/882091
Closes: https://github.com/gentoo/gentoo/pull/28347
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.4.ebuild | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
index 509e771077fc..5794887625c9 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm +opus pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vnc"
+IUSE="alsa dbus debug doc dtrace +gui java lvm pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769
 
@@ -65,7 +65,6 @@ COMMON_DEPEND="
 		x11-libs/libX11
 		x11-libs/libXt
 	)
-	opus? ( media-libs/opus )
 	pam? ( sys-libs/pam )
 	sdl? (
 		media-libs/libsdl:0[X,video]
@@ -86,7 +85,6 @@ COMMON_DEPEND="
 # but it needs more investigation.
 #
 # See bug #878299 to track this issue.
-# TODO: check opus
 DEPEND="
 	${COMMON_DEPEND}
 	>=dev-libs/libxslt-1.1.19
@@ -335,7 +333,6 @@ src_configure() {
 		$(usex doc '' --disable-docs)
 		$(usex java '' --disable-java)
 		$(usex lvm '' --disable-devmapper)
-		$(usex opus '' --disable-libopus)
 		$(usex pulseaudio '' --disable-pulse)
 		$(usex python '' --disable-python)
 		$(usex vboxwebsrv --enable-webservice '')


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-12-10  9:56 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-12-10  9:56 UTC (permalink / raw
  To: gentoo-commits

commit:     d898f78de23dee384c566caea3cf78412ef86fe5
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Dec  7 16:22:26 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat Dec 10 09:55:47 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d898f78d

app-emulation/virtualbox: add vde USE flag

Closes: https://bugs.gentoo.org/368659
Closes: https://github.com/gentoo/gentoo/pull/28386
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/metadata.xml              |  1 +
 .../virtualbox/virtualbox-7.0.4-r1.ebuild          | 48 +++++++++++++---------
 2 files changed, 29 insertions(+), 20 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index f2a6f7873402..d675d2f1cec0 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -13,5 +13,6 @@
   <flag name="sdk">Enable building of SDK</flag>
   <flag name="udev">Controls installation of special USB udev rules.</flag>
   <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
+  <flag name="vde">Support for VDE networking via <pkg>net-misc/vde</pkg></flag>
 </use>
 </pkgmetadata>

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
index 700a2f47fe64..1c3bb805c7ab 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
@@ -17,7 +17,8 @@ EAPI=8
 #  See bug #785835, bug #856121.
 PYTHON_COMPAT=( python3_{8..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
+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_P=${MY_PN}-${PV}
@@ -31,7 +32,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vnc"
+IUSE="alsa dbus debug doc dtrace +gui java lvm pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769
 
@@ -74,6 +75,7 @@ COMMON_DEPEND="
 		x11-libs/libXt
 	)
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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
@@ -312,8 +314,11 @@ src_prepare() {
 
 	# 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
+	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
 }
 
 src_configure() {
@@ -328,23 +333,24 @@ src_configure() {
 
 		--disable-kmods
 
-		$(usex alsa '' --disable-alsa)
-		$(usex dbus '' --disable-dbus)
-		$(usex debug --build-debug '')
-		$(usex doc '' --disable-docs)
-		$(usex java '' --disable-java)
-		$(usex lvm '' --disable-devmapper)
-		$(usex pulseaudio '' --disable-pulse)
-		$(usex python '' --disable-python)
-		$(usex vboxwebsrv --enable-webservice '')
-		$(usex vnc --enable-vnc '')
+		$(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 vnc --enable-vnc)
 	)
 
 	if use gui || use sdl || use opengl; then
 		myconf+=(
-			$(usex opengl '' --disable-opengl)
-			$(usex gui '' --disable-qt)
-			$(usex sdl '' --disable-sdl)
+			$(usev !opengl --disable-opengl)
+			$(usev !gui --disable-qt)
+			$(usev !sdl --disable-sdl)
 		)
 	else
 		myconf+=(
@@ -494,7 +500,8 @@ src_install() {
 	insinto ${vbox_inst_path}
 	doins -r components
 
-	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload,XPCOMIPCD} vboximg-mount vbox-img *so *r0; do
+	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload,XPCOMIPCD} \
+		vboximg-mount vbox-img *so *r0; do
 		vbox_inst ${each}
 	done
 
@@ -515,8 +522,9 @@ src_install() {
 	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}
+	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


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2022-12-10  9:56 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2022-12-10  9:56 UTC (permalink / raw
  To: gentoo-commits

commit:     d2c21691f6c7522f647e0a77128617533ecef154
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 22 17:54:11 2022 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat Dec 10 09:53:02 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2c21691

app-emulation/virtualbox: add vulkan dependency

If compiled with USE=opengl, virtualbox tries to dlopen libvulkan.so.1
and crashes if it cannot be found when starting machines configured with
display VMSVGA.

Even the headless machine crashes.  So add libvulkan as RDEPEND.

Closes: https://bugs.gentoo.org/882507
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 .../virtualbox/{virtualbox-7.0.2.ebuild => virtualbox-7.0.2-r1.ebuild}   | 1 +
 .../virtualbox/{virtualbox-7.0.4.ebuild => virtualbox-7.0.4-r1.ebuild}   | 1 +
 2 files changed, 2 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.2-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-7.0.2.ebuild
rename to app-emulation/virtualbox/virtualbox-7.0.2-r1.ebuild
index bc613d5df1fa..dc0c47d4cbb0 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.2-r1.ebuild
@@ -51,6 +51,7 @@ COMMON_DEPEND="
 		x11-libs/libXt
 		opengl? (
 			media-libs/libglvnd[X]
+			media-libs/vulkan-loader
 		)
 		qt5? (
 			dev-qt/qtcore:5

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-7.0.4.ebuild
rename to app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
index 5794887625c9..700a2f47fe64 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
@@ -62,6 +62,7 @@ COMMON_DEPEND="
 	lvm? ( sys-fs/lvm2 )
 	opengl? (
 		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
 		x11-libs/libX11
 		x11-libs/libXt
 	)


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-01-11 12:54 Arthur Zamarin
  0 siblings, 0 replies; 198+ messages in thread
From: Arthur Zamarin @ 2023-01-11 12:54 UTC (permalink / raw
  To: gentoo-commits

commit:     9382cda1268d84666b4327dc4f91ca40b516f5a7
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 11 12:54:31 2023 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 11 12:54:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9382cda1

app-emulation/virtualbox: Stabilize 7.0.4-r1 amd64, #890467

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
index 1c3bb805c7ab..5649284119d9 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-01-13 13:15 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-01-13 13:15 UTC (permalink / raw
  To: gentoo-commits

commit:     629b2dade9b24098d54d65727952205994f45eb2
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 13 11:17:52 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Jan 13 13:13:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=629b2dad

app-emulation/virtualbox: require GNU tar

Closes: https://bugs.gentoo.org/890561
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
index 5649284119d9..c746d17276ff 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
@@ -121,6 +121,7 @@ RDEPEND="
 "
 BDEPEND="
 	${PYTHON_DEPS}
+	app-arch/tar
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL
 	dev-qt/linguist-tools:5
@@ -319,6 +320,9 @@ src_prepare() {
 	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
 }
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-01-22  9:59 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-01-22  9:59 UTC (permalink / raw
  To: gentoo-commits

commit:     8ab48ff7052883fca95982dec5da2b8192f42cd7
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 18 19:52:29 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Jan 22 09:55:03 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ab48ff7

app-emulation/virtualbox: add 6.1.42

Bug: https://bugs.gentoo.org/891327
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.42.ebuild | 663 ++++++++++++++++++++++
 2 files changed, 664 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 118f93baaa13..ce9c2daf4bfe 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,3 +1,4 @@
 DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
+DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
 DIST VirtualBox-7.0.4.tar.bz2 199658172 BLAKE2B 51bde109805e8f3e25f179a05fac532de7a428010955c7cc2a7c9e8c072246d69c5f51f8a51e39b6a1b9f246bd945edc38e0f0cc0630c357a5e9641c38dcac21 SHA512 70f2031c4897249177131795281bf6bd5a75166067d1921db70fd1e21f5638285b5a0c3298a7070e272ac2f093a60c35eb3cab4e5f7d16a68d17b211f637b0bc
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild b/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
new file mode 100644
index 000000000000..84c0abf767f9
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
@@ -0,0 +1,663 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{9..10} )
+
+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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-base/xorg-proto
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		x11-libs/libXrandr
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-sound/pulseaudio )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	app-arch/tar
+	>=dev-util/kbuild-0.1.9998.3127
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	# 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
+	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), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+
+	# 890561
+	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usev !alsa --disable-alsa)
+		$(usev debug --build-debug)
+		$(usev !doc --disable-docs)
+		$(usev !java --disable-java)
+		$(usev !lvm --disable-devmapper)
+		$(usev !opus --disable-libopus)
+		$(usev !pulseaudio --disable-pulse)
+		$(usev !python --disable-python)
+		$(usev vboxwebsrv --enable-webservice)
+		$(usev vnc --enable-vnc)
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usev !opengl --disable-opengl)
+			$(usev !qt5 --disable-qt)
+			$(usev !sdl --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} \
+		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-01-22  9:59 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-01-22  9:59 UTC (permalink / raw
  To: gentoo-commits

commit:     e973eb4dc3188909a58cee8cb6fb7b6ae199c51f
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 18 20:32:28 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Jan 22 09:55:03 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e973eb4d

app-emulation/virtualbox: add 7.0.6

Closes: https://bugs.gentoo.org/891485
Bug: https://bugs.gentoo.org/891327
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                |   1 +
 app-emulation/virtualbox/virtualbox-7.0.6.ebuild | 721 +++++++++++++++++++++++
 2 files changed, 722 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index ce9c2daf4bfe..56de85e1a0e4 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,4 +1,5 @@
 DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
 DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
 DIST VirtualBox-7.0.4.tar.bz2 199658172 BLAKE2B 51bde109805e8f3e25f179a05fac532de7a428010955c7cc2a7c9e8c072246d69c5f51f8a51e39b6a1b9f246bd945edc38e0f0cc0630c357a5e9641c38dcac21 SHA512 70f2031c4897249177131795281bf6bd5a75166067d1921db70fd1e21f5638285b5a0c3298a7070e272ac2f093a60c35eb3cab4e5f7d16a68d17b211f637b0bc
+DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-7.0.6.ebuild b/app-emulation/virtualbox/virtualbox-7.0.6.ebuild
new file mode 100644
index 000000000000..e3ca516962d2
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.6.ebuild
@@ -0,0 +1,721 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{9..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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl:0[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		x11-libs/libXt
+	)
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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:=
+	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/libXinerama )
+	pulseaudio? ( media-sound/pulseaudio )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	app-arch/tar
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	dev-util/glslang
+	>=dev-util/kbuild-0.1.9998.3127
+	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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	"${FILESDIR}"/${PN}-7.0.4-fix-compilation.patch
+	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
+	"${FILESDIR}"/${PN}-7.0.0-python3_11.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+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 python; then
+		einfo "You have disabled the \"python\" USE flag. This will only"
+		einfo "disable the python bindings being installed."
+	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
+	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
+
+	# 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
+	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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	if use sdl; then
+		echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die
+	fi
+
+	#443830
+	echo -e "\nVBOX_WITH_VBOX_IMG=1" >> LocalConfig.kmk || die
+
+	# clang assembler chokes on comments starting with /
+	if tc-is-clang; then
+		sed -i -e '/^\//d' src/libs/xpcom18a4/nsprpub/pr/src/md/unix/os_Linux_x86_64.s || die
+	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
+
+	# 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-ld-disable-gold # bug #488176
+
+	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 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
+
+	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
+
+	if use python; then
+		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
+	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,XPCOMIPCD} \
+		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 -n "VBOX_APP_HOME=${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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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
+		docompress -x /usr/share/doc/${PF}/qt
+		docinto qt
+		dodoc UserManual.q{ch,hc}
+	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
+	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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-01-24  8:36 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-01-24  8:36 UTC (permalink / raw
  To: gentoo-commits

commit:     b05be1a0d5353156fb9463f4274c37b9418f86a7
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 24 08:30:10 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Jan 24 08:33:42 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b05be1a0

app-emulation/virtualbox: Fix built-in help path

Closes: https://bugs.gentoo.org/891879
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 ...{virtualbox-7.0.6.ebuild => virtualbox-7.0.6-r1.ebuild} | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.6.ebuild b/app-emulation/virtualbox/virtualbox-7.0.6-r1.ebuild
similarity index 98%
rename from app-emulation/virtualbox/virtualbox-7.0.6.ebuild
rename to app-emulation/virtualbox/virtualbox-7.0.6-r1.ebuild
index e3ca516962d2..2d0c9076e342 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.6.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.6-r1.ebuild
@@ -224,6 +224,11 @@ pkg_pretend() {
 		einfo "will have NLS support."
 	fi
 
+	if use gui && ! use doc; then
+		einfo "You have disabled the \"doc\" USE flag.  Built-in help"
+		einfo "will not be available."
+	fi
+
 	# 749273
 	local d=${ROOT}
 	for i in usr "$(get_libdir)"; do
@@ -320,6 +325,9 @@ src_prepare() {
 		-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 \
@@ -666,10 +674,8 @@ src_install() {
 	fi
 
 	if use doc; then
-		dodoc UserManual.pdf
-		docompress -x /usr/share/doc/${PF}/qt
-		docinto qt
-		dodoc UserManual.q{ch,hc}
+		dodoc UserManual.pdf UserManual.q{ch,hc}
+		docompress -x /usr/share/doc/${PF}
 	fi
 
 	if use python; then


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-02-03 14:35 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-02-03 14:35 UTC (permalink / raw
  To: gentoo-commits

commit:     429536804c65445a2c663c149dd6ee21502b2115
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  3 13:08:13 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Feb  3 14:34:03 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=42953680

app-emulation/virtualbox: pregen help

USE=doc pulls quite a lot of packages, including tex.  They were used
for the pdf manual, but now the manual also comes in qt help format.
Pregenerate the help files and install them for USE=gui if USE=doc is
disabled.

Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/29405
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                   |  1 +
 app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild | 15 ++++++++-------
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 56de85e1a0e4..0edef5e7cc6a 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,4 +2,5 @@ DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c5
 DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
 DIST VirtualBox-7.0.4.tar.bz2 199658172 BLAKE2B 51bde109805e8f3e25f179a05fac532de7a428010955c7cc2a7c9e8c072246d69c5f51f8a51e39b6a1b9f246bd945edc38e0f0cc0630c357a5e9641c38dcac21 SHA512 70f2031c4897249177131795281bf6bd5a75166067d1921db70fd1e21f5638285b5a0c3298a7070e272ac2f093a60c35eb3cab4e5f7d16a68d17b211f637b0bc
 DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
+DIST virtualbox-help-7.0.6.tar.xz 3939412 BLAKE2B ea1326bccb3c2edc33ab37e122a7bedf79475d335e632ee62f99e0dce4b80de7634cbfe121c8c7ccd6588ff3b81effe7b20efe123cc44bc7b1ff4f6a851302a6 SHA512 ffb59f0c99c91b165a0b83d29317e04eee9097b0d0ac92a0d3e71558e70ec8b2807491a4633562a5e820e5f5a8e1339883031fd03de93d09a188f19b8b4d3a93
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
index 03eb7240d866..e5a64541f0f7 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
@@ -25,8 +25,11 @@ MY_P=${MY_PN}-${PV}
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
 S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
@@ -225,11 +228,6 @@ pkg_pretend() {
 		einfo "will have NLS support."
 	fi
 
-	if use gui && ! use doc; then
-		einfo "You have disabled the \"doc\" USE flag.  Built-in help"
-		einfo "will not be available."
-	fi
-
 	# 749273
 	local d=${ROOT}
 	for i in usr "$(get_libdir)"; do
@@ -677,6 +675,9 @@ src_install() {
 	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-${PV}/UserManual.q{ch,hc}
+		docompress -x /usr/share/doc/${PF}
 	fi
 
 	if use python; then


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-02-08 17:13 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-02-08 17:13 UTC (permalink / raw
  To: gentoo-commits

commit:     3c3799328ad8e31cdac417fb8f12f3683d224d6a
Author:     Petr Vaněk <arkamar <AT> atlas <DOT> cz>
AuthorDate: Mon Jan 30 12:05:08 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb  8 17:11:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3c379932

app-emulation/virtualbox: unify metadata indentation

Signed-off-by: Petr Vaněk <arkamar <AT> atlas.cz>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/metadata.xml | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index d675d2f1cec0..0a281e0f998b 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -6,13 +6,13 @@
     <name>Viorel Munteanu</name>
   </maintainer>
   <use>
-  <flag name="dtrace">Install dtrace Extension Pack</flag>
-  <flag name="headless">Build without any graphic frontend</flag>
-  <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
-  <flag name="pax-kernel">Apply patch needed for pax enabled kernels.</flag>
-  <flag name="sdk">Enable building of SDK</flag>
-  <flag name="udev">Controls installation of special USB udev rules.</flag>
-  <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
-  <flag name="vde">Support for VDE networking via <pkg>net-misc/vde</pkg></flag>
-</use>
+    <flag name="dtrace">Install dtrace Extension Pack</flag>
+    <flag name="headless">Build without any graphic frontend</flag>
+    <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
+    <flag name="pax-kernel">Apply patch needed for pax enabled kernels.</flag>
+    <flag name="sdk">Enable building of SDK</flag>
+    <flag name="udev">Controls installation of special USB udev rules.</flag>
+    <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
+    <flag name="vde">Support for VDE networking via <pkg>net-misc/vde</pkg></flag>
+  </use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-02-15  5:12 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-02-15  5:12 UTC (permalink / raw
  To: gentoo-commits

commit:     2efd09cecb134699ba2ed5f416e836b874982577
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 15 05:11:46 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 15 05:11:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2efd09ce

app-emulation/virtualbox: Stabilize 6.1.42 amd64, #893606

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.42.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild b/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
index 0b6b25b3dcc0..33589ebf0c18 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-02-15  5:12 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-02-15  5:12 UTC (permalink / raw
  To: gentoo-commits

commit:     f718b77ccc959c49f2ce022379c672b8631a20a2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 15 05:11:47 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 15 05:11:47 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f718b77c

app-emulation/virtualbox: Stabilize 7.0.6-r2 amd64, #893606

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
index e5a64541f0f7..3e3e49139878 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-02-21 15:06 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-02-21 15:06 UTC (permalink / raw
  To: gentoo-commits

commit:     d98cad39192b1f7e4c9dde9f0451619d61adf61d
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 21 14:28:47 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Feb 21 15:04:42 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d98cad39

app-emulation/virtualbox: drop 7.0.6-r1

Closes: https://github.com/gentoo/gentoo/pull/29703
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 .../virtualbox/virtualbox-7.0.6-r1.ebuild          | 727 ---------------------
 1 file changed, 727 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.6-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.6-r1.ebuild
deleted file mode 100644
index 2d0c9076e342..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.6-r1.ebuild
+++ /dev/null
@@ -1,727 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_{9..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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl:0[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		x11-libs/libXt
-	)
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-	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:=
-	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/libXinerama )
-	pulseaudio? ( media-sound/pulseaudio )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	app-arch/tar
-	>=dev-lang/yasm-0.6.2
-	dev-libs/libIDL
-	dev-util/glslang
-	>=dev-util/kbuild-0.1.9998.3127
-	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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	"${FILESDIR}"/${PN}-7.0.4-fix-compilation.patch
-	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
-	"${FILESDIR}"/${PN}-7.0.0-python3_11.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	fi
-	if ! use nls && use gui; then
-		einfo "USE=\"gui\" also selects USE=\"nls\".  This build"
-		einfo "will have NLS support."
-	fi
-
-	if use gui && ! use doc; then
-		einfo "You have disabled the \"doc\" USE flag.  Built-in help"
-		einfo "will not be available."
-	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
-	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
-
-	# 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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# bug #843437
-	cat >> LocalConfig.kmk <<-EOF || die
-		CXXFLAGS=${CXXFLAGS}
-		CFLAGS=${CFLAGS}
-	EOF
-
-	if use sdl; then
-		echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die
-	fi
-
-	#443830
-	echo -e "\nVBOX_WITH_VBOX_IMG=1" >> LocalConfig.kmk || die
-
-	# clang assembler chokes on comments starting with /
-	if tc-is-clang; then
-		sed -i -e '/^\//d' src/libs/xpcom18a4/nsprpub/pr/src/md/unix/os_Linux_x86_64.s || die
-	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-ld-disable-gold # bug #488176
-
-	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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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 -n "VBOX_APP_HOME=${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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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}
-	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
-	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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-02-21 15:06 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-02-21 15:06 UTC (permalink / raw
  To: gentoo-commits

commit:     2511796b4a83154d364237b58b3f8ce7f0675554
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 21 14:27:18 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Feb 21 15:04:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2511796b

app-emulation/virtualbox: drop 7.0.4-r1

Bug: https://bugs.gentoo.org/891327
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                  |   1 -
 .../virtualbox/virtualbox-7.0.4-r1.ebuild          | 705 ---------------------
 2 files changed, 706 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index bb4db0a837f3..3177f5a3a894 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,5 +1,4 @@
 DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
-DIST VirtualBox-7.0.4.tar.bz2 199658172 BLAKE2B 51bde109805e8f3e25f179a05fac532de7a428010955c7cc2a7c9e8c072246d69c5f51f8a51e39b6a1b9f246bd945edc38e0f0cc0630c357a5e9641c38dcac21 SHA512 70f2031c4897249177131795281bf6bd5a75166067d1921db70fd1e21f5638285b5a0c3298a7070e272ac2f093a60c35eb3cab4e5f7d16a68d17b211f637b0bc
 DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
 DIST virtualbox-help-7.0.6.tar.xz 3939412 BLAKE2B ea1326bccb3c2edc33ab37e122a7bedf79475d335e632ee62f99e0dce4b80de7634cbfe121c8c7ccd6588ff3b81effe7b20efe123cc44bc7b1ff4f6a851302a6 SHA512 ffb59f0c99c91b165a0b83d29317e04eee9097b0d0ac92a0d3e71558e70ec8b2807491a4633562a5e820e5f5a8e1339883031fd03de93d09a188f19b8b4d3a93
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
deleted file mode 100644
index 7f2a9f39143b..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.4-r1.ebuild
+++ /dev/null
@@ -1,705 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_{9..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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~app-emulation/virtualbox-modules-${PV}
-	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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl:0[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		x11-libs/libXt
-	)
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-	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:=
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	gui? (
-		x11-libs/libxcb:=
-		x11-libs/libXcursor
-		x11-libs/libXext
-		x11-libs/libXinerama
-		x11-libs/libXmu
-		x11-libs/libXrandr
-		opengl? ( virtual/opengl )
-	)
-	java? ( virtual/jdk:1.8 )
-	opengl? (
-		x11-libs/libXcursor
-		x11-libs/libXinerama
-		x11-libs/libXmu
-		x11-libs/libXrandr
-		virtual/glu
-	)
-	sdl? ( x11-libs/libXinerama )
-	pulseaudio? ( media-sound/pulseaudio )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	app-arch/tar
-	>=dev-lang/yasm-0.6.2
-	dev-libs/libIDL
-	dev-qt/linguist-tools:5
-	dev-util/glslang
-	>=dev-util/kbuild-0.1.9998.3127
-	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
-	)
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	"${FILESDIR}"/${PN}-7.0.4-fix-compilation.patch
-	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
-	"${FILESDIR}"/${PN}-7.0.0-python3_11.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-
-	# 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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# bug #843437
-	cat >> LocalConfig.kmk <<-EOF || die
-		CXXFLAGS=${CXXFLAGS}
-		CFLAGS=${CFLAGS}
-	EOF
-
-	if use sdl; then
-		echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die
-	fi
-
-	#443830
-	echo -e "\nVBOX_WITH_VBOX_IMG=1" >> LocalConfig.kmk || die
-
-	# clang assembler chokes on comments starting with /
-	if tc-is-clang; then
-		sed -i -e '/^\//d' src/libs/xpcom18a4/nsprpub/pr/src/md/unix/os_Linux_x86_64.s || die
-	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
-
-	# 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
-}
-
-src_configure() {
-	tc-ld-disable-gold # bug #488176
-
-	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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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 -n "VBOX_APP_HOME=${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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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
-		docompress -x /usr/share/doc/${PF}/qt
-		docinto qt
-		dodoc UserManual.q{ch,hc}
-	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
-	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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-03-18  8:27 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-03-18  8:27 UTC (permalink / raw
  To: gentoo-commits

commit:     ccbb899773e03ea3adb0b54d94c7194eb86c0f7d
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 18 08:06:17 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat Mar 18 08:20:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ccbb8997

app-emulation/virtualbox: fix compilation with old GNU tar

Pin GNU tar to a version >=1.34-r2.

Closes: https://bugs.gentoo.org/901987
Closes: https://github.com/gentoo/gentoo/pull/30204
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.42.ebuild   | 2 +-
 app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild b/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
index 33589ebf0c18..2cdcfd9d0be2 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
@@ -102,7 +102,7 @@ DEPEND="
 "
 BDEPEND="
 	${PYTHON_DEPS}
-	app-arch/tar
+	>=app-arch/tar-1.34-r2
 	>=dev-util/kbuild-0.1.9998.3127
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL

diff --git a/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
index 3e3e49139878..02b13adc7290 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.6-r2.ebuild
@@ -126,7 +126,7 @@ RDEPEND="
 "
 BDEPEND="
 	${PYTHON_DEPS}
-	app-arch/tar
+	>=app-arch/tar-1.34-r2
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL
 	dev-util/glslang


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-04-21 16:38 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-04-21 16:38 UTC (permalink / raw
  To: gentoo-commits

commit:     2ed9a1e05ae19a02d13274a25cd3d8f955187006
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 18 16:55:00 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Apr 21 16:35:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ed9a1e0

app-emulation/virtualbox: add 6.1.44

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

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.44.ebuild | 665 ++++++++++++++++++++++
 2 files changed, 666 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 3177f5a3a894..7216099ce109 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,4 +1,5 @@
 DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
+DIST VirtualBox-6.1.44.tar.bz2 165775421 BLAKE2B e87d7175bc616784c79d02b595d81119cedc7f4df1822b71ca10b85d44d5cd1dacd999e7867a0bef8579ea715ef732b990cef63f3325fff0c139abe394d88ad7 SHA512 49c3baa1a40dcafcc6b31d0abcfecfcb24305de44e5efd3f68ba4443574e21b8cc34d7288e0fbc56730bc3be2bee07089b7dfed14848a88dc38a1433b6dda8af
 DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
 DIST virtualbox-help-7.0.6.tar.xz 3939412 BLAKE2B ea1326bccb3c2edc33ab37e122a7bedf79475d335e632ee62f99e0dce4b80de7634cbfe121c8c7ccd6588ff3b81effe7b20efe123cc44bc7b1ff4f6a851302a6 SHA512 ffb59f0c99c91b165a0b83d29317e04eee9097b0d0ac92a0d3e71558e70ec8b2807491a4633562a5e820e5f5a8e1339883031fd03de93d09a188f19b8b4d3a93
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-6.1.44.ebuild b/app-emulation/virtualbox/virtualbox-6.1.44.ebuild
new file mode 100644
index 000000000000..83716b3fb648
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.44.ebuild
@@ -0,0 +1,665 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{9..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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-base/xorg-proto
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		x11-libs/libXrandr
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-libs/libpulse )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-util/kbuild-0.1.9998.3127
+	<=dev-util/kbuild-0.1.9998.3500
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+	"${FILESDIR}"/${PN}-6.1.42-python3_11.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	# 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
+	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), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+
+	# 890561
+	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usev !alsa --disable-alsa)
+		$(usev debug --build-debug)
+		$(usev !doc --disable-docs)
+		$(usev !java --disable-java)
+		$(usev !lvm --disable-devmapper)
+		$(usev !opus --disable-libopus)
+		$(usev !pulseaudio --disable-pulse)
+		$(usev !python --disable-python)
+		$(usev vboxwebsrv --enable-webservice)
+		$(usev vnc --enable-vnc)
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usev !opengl --disable-opengl)
+			$(usev !qt5 --disable-qt)
+			$(usev !sdl --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} \
+		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-04-21 16:38 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-04-21 16:38 UTC (permalink / raw
  To: gentoo-commits

commit:     7b676cce07a39cd74f933b2dc37f9289b9c25d37
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 19 19:27:04 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Apr 21 16:36:20 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b676cce

app-emulation/virtualbox: limit dev-uril/kbuild

VirtualBox 6.1 does not build with newer kbuild.  Change the RDEPEND to
require old version in v6.1.42 (stable).

Closes: https://github.com/gentoo/gentoo/pull/30654
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 .../virtualbox/{virtualbox-6.1.42.ebuild => virtualbox-6.1.42-r1.ebuild} | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild b/app-emulation/virtualbox/virtualbox-6.1.42-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.42.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.42-r1.ebuild
index 2cdcfd9d0be2..24ae3360623a 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.42.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.42-r1.ebuild
@@ -104,6 +104,7 @@ BDEPEND="
 	${PYTHON_DEPS}
 	>=app-arch/tar-1.34-r2
 	>=dev-util/kbuild-0.1.9998.3127
+	<=dev-util/kbuild-0.1.9998.3500
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL
 	sys-apps/which


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-04-30 11:12 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-04-30 11:12 UTC (permalink / raw
  To: gentoo-commits

commit:     07426d686377b31193c4cc2dcdf1e9ceb5775989
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 30 11:05:57 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Apr 30 11:11:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07426d68

app-emulation/virtualbox: add 7.0.8a

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

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-7.0.8a.ebuild | 734 ++++++++++++++++++++++
 2 files changed, 735 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 41f477b81cac..6dfafb93c5ab 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,6 +2,7 @@ DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27
 DIST VirtualBox-6.1.44.tar.bz2 165775421 BLAKE2B e87d7175bc616784c79d02b595d81119cedc7f4df1822b71ca10b85d44d5cd1dacd999e7867a0bef8579ea715ef732b990cef63f3325fff0c139abe394d88ad7 SHA512 49c3baa1a40dcafcc6b31d0abcfecfcb24305de44e5efd3f68ba4443574e21b8cc34d7288e0fbc56730bc3be2bee07089b7dfed14848a88dc38a1433b6dda8af
 DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
 DIST VirtualBox-7.0.8.tar.bz2 199298777 BLAKE2B 6e36532516fb1ebee4cf7f356659a8cde6bd5074a509c824499ed34d8d0ffc9aff45211d4dcb35e3977fcd72a9b18796ed57f8760dd45e578d8225814c4c8710 SHA512 4c25f8275269d085cf347596a242b8921f140e0e40d8c44fd6b171742b8cbd0c9a45f4702dbc0c1272e10091be68c3668711c9e4d1a8b3ce57d25f871e0eb9fe
+DIST VirtualBox-7.0.8a.tar.bz2 199387757 BLAKE2B 0ba397825277ecbb851bd4ea94c85448e2966fd96ef8edcaf3102f8515553736d6ceee84c0647fa37443c1875256353fdd029d6c505aa99834079acb957b24a0 SHA512 fcbf907f6f7f2396ebff5a31af6ec00b38f09799380bac4847cc9044455832de058659edaa9f621b0054fa402bfacef1b5444498c9faeb3671d02da1505c952d
 DIST virtualbox-help-7.0.6.tar.xz 3939412 BLAKE2B ea1326bccb3c2edc33ab37e122a7bedf79475d335e632ee62f99e0dce4b80de7634cbfe121c8c7ccd6588ff3b81effe7b20efe123cc44bc7b1ff4f6a851302a6 SHA512 ffb59f0c99c91b165a0b83d29317e04eee9097b0d0ac92a0d3e71558e70ec8b2807491a4633562a5e820e5f5a8e1339883031fd03de93d09a188f19b8b4d3a93
 DIST virtualbox-help-7.0.8.tar.xz 3941816 BLAKE2B f1c82ccc8a0d4e99f2302a7024a551e7e4a70348b193cf0c3a3b2917a717451c74d652555cadb278f6e27c47dac88a8121acfe9425bc0f5b82b5101475f384b3 SHA512 7483c4321492effb5b4329d48b363d8d2b3aaa248c0259cd06569497090aa438c39e94d6a5da4f511202f424e596f66e7580e37ffa5da66661fd0fadcd99c5ef
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild b/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild
new file mode 100644
index 000000000000..404a9f53d2bb
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild
@@ -0,0 +1,734 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_{9..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"
+BASE_PV=${PV%a}
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${BASE_PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${BASE_PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${BASE_PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${BASE_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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl2[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		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:=
+	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/libXinerama )
+	pulseaudio? ( media-libs/libpulse )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	dev-util/glslang
+	>=dev-util/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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
+	"${FILESDIR}"/${PN}-7.0.8-python3_11.patch
+	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
+	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
+)
+
+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 python; then
+		einfo "You have disabled the \"python\" USE flag. This will only"
+		einfo "disable the python bindings being installed."
+	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
+	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
+
+	# 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
+	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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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-ld-disable-gold # bug #488176
+
+	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 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
+
+	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
+
+	if use python; then
+		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
+	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,XPCOMIPCD} \
+		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 -n "VBOX_APP_HOME=${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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${BASE_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
+	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/${BASE_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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-05-01  5:41 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-05-01  5:41 UTC (permalink / raw
  To: gentoo-commits

commit:     0f3675e9e2a37ca62854601f7f36e7c6310c2fae
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Mon May  1 05:35:52 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon May  1 05:40:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f3675e9

app-emulation/virtualbox: drop 7.0.8

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

 app-emulation/virtualbox/Manifest                |   1 -
 app-emulation/virtualbox/virtualbox-7.0.8.ebuild | 733 -----------------------
 2 files changed, 734 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 6dfafb93c5ab..13bf16444fc0 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,6 @@
 DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
 DIST VirtualBox-6.1.44.tar.bz2 165775421 BLAKE2B e87d7175bc616784c79d02b595d81119cedc7f4df1822b71ca10b85d44d5cd1dacd999e7867a0bef8579ea715ef732b990cef63f3325fff0c139abe394d88ad7 SHA512 49c3baa1a40dcafcc6b31d0abcfecfcb24305de44e5efd3f68ba4443574e21b8cc34d7288e0fbc56730bc3be2bee07089b7dfed14848a88dc38a1433b6dda8af
 DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
-DIST VirtualBox-7.0.8.tar.bz2 199298777 BLAKE2B 6e36532516fb1ebee4cf7f356659a8cde6bd5074a509c824499ed34d8d0ffc9aff45211d4dcb35e3977fcd72a9b18796ed57f8760dd45e578d8225814c4c8710 SHA512 4c25f8275269d085cf347596a242b8921f140e0e40d8c44fd6b171742b8cbd0c9a45f4702dbc0c1272e10091be68c3668711c9e4d1a8b3ce57d25f871e0eb9fe
 DIST VirtualBox-7.0.8a.tar.bz2 199387757 BLAKE2B 0ba397825277ecbb851bd4ea94c85448e2966fd96ef8edcaf3102f8515553736d6ceee84c0647fa37443c1875256353fdd029d6c505aa99834079acb957b24a0 SHA512 fcbf907f6f7f2396ebff5a31af6ec00b38f09799380bac4847cc9044455832de058659edaa9f621b0054fa402bfacef1b5444498c9faeb3671d02da1505c952d
 DIST virtualbox-help-7.0.6.tar.xz 3939412 BLAKE2B ea1326bccb3c2edc33ab37e122a7bedf79475d335e632ee62f99e0dce4b80de7634cbfe121c8c7ccd6588ff3b81effe7b20efe123cc44bc7b1ff4f6a851302a6 SHA512 ffb59f0c99c91b165a0b83d29317e04eee9097b0d0ac92a0d3e71558e70ec8b2807491a4633562a5e820e5f5a8e1339883031fd03de93d09a188f19b8b4d3a93
 DIST virtualbox-help-7.0.8.tar.xz 3941816 BLAKE2B f1c82ccc8a0d4e99f2302a7024a551e7e4a70348b193cf0c3a3b2917a717451c74d652555cadb278f6e27c47dac88a8121acfe9425bc0f5b82b5101475f384b3 SHA512 7483c4321492effb5b4329d48b363d8d2b3aaa248c0259cd06569497090aa438c39e94d6a5da4f511202f424e596f66e7580e37ffa5da66661fd0fadcd99c5ef

diff --git a/app-emulation/virtualbox/virtualbox-7.0.8.ebuild b/app-emulation/virtualbox/virtualbox-7.0.8.ebuild
deleted file mode 100644
index dbf3c33aa1b0..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.8.ebuild
+++ /dev/null
@@ -1,733 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_{9..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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=app-arch/tar-1.34-r2
-	>=dev-lang/yasm-0.6.2
-	dev-libs/libIDL
-	dev-util/glslang
-	>=dev-util/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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
-	"${FILESDIR}"/${PN}-7.0.8-python3_11.patch
-	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
-	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-
-	# 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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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-ld-disable-gold # bug #488176
-
-	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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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 -n "VBOX_APP_HOME=${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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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
-	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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-05-29 14:13 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-05-29 14:13 UTC (permalink / raw
  To: gentoo-commits

commit:     c20389692455b6baa9ff680cbf603390647edd94
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon May 29 14:13:05 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon May 29 14:13:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2038969

app-emulation/virtualbox: Stabilize 6.1.44 amd64, #907362

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.44.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.44.ebuild b/app-emulation/virtualbox/virtualbox-6.1.44.ebuild
index 83716b3fb648..84d1d998b3b0 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.44.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.44.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-05-29 20:10 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-05-29 20:10 UTC (permalink / raw
  To: gentoo-commits

commit:     e0ab9b0d8d14dfe1198ee7c707b0db93697a64c4
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon May 29 20:10:31 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon May 29 20:10:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0ab9b0d

app-emulation/virtualbox: Stabilize 7.0.8a amd64, #907357

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.8a.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild b/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild
index c3be27bf7acd..c851121c5279 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.8a.ebuild
@@ -35,7 +35,7 @@ S="${WORKDIR}/${MY_PN}-${BASE_PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-07-20  9:40 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-07-20  9:40 UTC (permalink / raw
  To: gentoo-commits

commit:     4149059ae221c8f2ed6fe95bcc1c60debdf43254
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 19 05:59:01 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 09:36:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4149059a

app-emulation/virtualbox: add 6.1.46

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

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.46.ebuild | 675 ++++++++++++++++++++++
 2 files changed, 676 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index c28e49de1d75..b63584f7520a 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,4 +1,5 @@
 DIST VirtualBox-6.1.44.tar.bz2 165775421 BLAKE2B e87d7175bc616784c79d02b595d81119cedc7f4df1822b71ca10b85d44d5cd1dacd999e7867a0bef8579ea715ef732b990cef63f3325fff0c139abe394d88ad7 SHA512 49c3baa1a40dcafcc6b31d0abcfecfcb24305de44e5efd3f68ba4443574e21b8cc34d7288e0fbc56730bc3be2bee07089b7dfed14848a88dc38a1433b6dda8af
+DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77
 DIST VirtualBox-7.0.8a.tar.bz2 199387757 BLAKE2B 0ba397825277ecbb851bd4ea94c85448e2966fd96ef8edcaf3102f8515553736d6ceee84c0647fa37443c1875256353fdd029d6c505aa99834079acb957b24a0 SHA512 fcbf907f6f7f2396ebff5a31af6ec00b38f09799380bac4847cc9044455832de058659edaa9f621b0054fa402bfacef1b5444498c9faeb3671d02da1505c952d
 DIST virtualbox-help-7.0.8.tar.xz 3941816 BLAKE2B f1c82ccc8a0d4e99f2302a7024a551e7e4a70348b193cf0c3a3b2917a717451c74d652555cadb278f6e27c47dac88a8121acfe9425bc0f5b82b5101475f384b3 SHA512 7483c4321492effb5b4329d48b363d8d2b3aaa248c0259cd06569497090aa438c39e94d6a5da4f511202f424e596f66e7580e37ffa5da66661fd0fadcd99c5ef
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-6.1.46.ebuild b/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
new file mode 100644
index 000000000000..a07c5a01bf04
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
@@ -0,0 +1,675 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-base/xorg-proto
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		x11-libs/libXrandr
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-libs/libpulse )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-util/kbuild-0.1.9998.3127
+	<=dev-util/kbuild-0.1.9998.3500
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# 906309
+	"${FILESDIR}"/${PN}-6.1.44-fix-libxml2.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	# 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
+	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), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+
+	# 890561
+	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usev !alsa --disable-alsa)
+		$(usev debug --build-debug)
+		$(usev !doc --disable-docs)
+		$(usev !java --disable-java)
+		$(usev !lvm --disable-devmapper)
+		$(usev !opus --disable-libopus)
+		$(usev !pulseaudio --disable-pulse)
+		$(usev !python --disable-python)
+		$(usev vboxwebsrv --enable-webservice)
+		$(usev vnc --enable-vnc)
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usev !opengl --disable-opengl)
+			$(usev !qt5 --disable-qt)
+			$(usev !sdl --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} \
+		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-07-20  9:40 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-07-20  9:40 UTC (permalink / raw
  To: gentoo-commits

commit:     7a31810ec1d8dce72229c291ca33f043c7554b01
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 20 08:37:02 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 09:36:50 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a31810e

app-emulation/virtualbox: sync live

Closes: https://github.com/gentoo/gentoo/pull/31953
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-9999.ebuild | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 2d60892ef6c4..3479b65025f4 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -299,6 +299,7 @@ src_prepare() {
 		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


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-08-03 20:45 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-08-03 20:45 UTC (permalink / raw
  To: gentoo-commits

commit:     82e52943b3e89f637af27f0e34181b038498a316
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug  3 20:45:21 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug  3 20:45:21 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82e52943

app-emulation/virtualbox: Stabilize 6.1.46 amd64, #911672

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.46.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.46.ebuild b/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
index a07c5a01bf04..0cadbf903e51 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-08-15 12:16 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-08-15 12:16 UTC (permalink / raw
  To: gentoo-commits

commit:     8dc4d68a4f1095a2b6058d8a6b75734b607c7991
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 15 12:12:28 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Aug 15 12:14:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8dc4d68a

app-emulation/virtualbox: Stabilize amd64, #911671

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

 app-emulation/virtualbox/virtualbox-7.0.10.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.10.ebuild b/app-emulation/virtualbox/virtualbox-7.0.10.ebuild
index a20f38fac366..5d713069086e 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.10.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.10.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-08-26 11:50 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-08-26 11:50 UTC (permalink / raw
  To: gentoo-commits

commit:     93ab26a36f5d15fef87efa4db2a26ec844289bdc
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 11:31:58 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat Aug 26 11:50:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93ab26a3

app-emulation/virtualbox: install python vboxapi

Closes: https://bugs.gentoo.org/378871
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 ...box-9999.ebuild => virtualbox-7.0.10-r1.ebuild} | 85 ++++++++++------------
 app-emulation/virtualbox/virtualbox-9999.ebuild    | 22 +++++-
 2 files changed, 58 insertions(+), 49 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
similarity index 92%
copy from app-emulation/virtualbox/virtualbox-9999.ebuild
copy to app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
index 3479b65025f4..d663f08829a9 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
@@ -3,15 +3,6 @@
 
 EAPI=8
 
-# Important!
-# This compiles the latest svn version.
-# It also compiles the kernel modules.  Does not depend on virtualbox-modules.
-# It is not meant to be used, might be very unstable.
-# Upstream seem to have added support for python 3.12; I haven't checked it yet.
-#
-# 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
@@ -24,26 +15,26 @@ EAPI=8
 #  trunk branch but not release branch.
 #
 #  See bug #785835, bug #856121.
-PYTHON_COMPAT=( python3_{9..12} )
+PYTHON_COMPAT=( python3_{10..11} )
 
-inherit desktop edo flag-o-matic java-pkg-opt-2 linux-mod-r1 multilib optfeature pax-utils \
-	python-single-r1 subversion tmpfiles toolchain-funcs udev xdg
+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"
-BASE_PV=7.0.8
 MY_P=${MY_PN}-${PV}
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="https://www.virtualbox.org/"
-ESVN_REPO_URI="https://www.virtualbox.org/svn/vbox/trunk"
 SRC_URI="
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.10_pre20230615.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${BASE_PV}.tar.xz ) )
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
 "
-S="${WORKDIR}/trunk"
+S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769
@@ -51,6 +42,7 @@ unset WATCOM #856769
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
 	dev-libs/libtpms
 	dev-libs/libxml2
 	dev-libs/openssl:0=
@@ -134,7 +126,6 @@ RDEPEND="
 "
 BDEPEND="
 	${PYTHON_DEPS}
-	app-arch/makeself
 	>=app-arch/tar-1.34-r2
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL
@@ -211,18 +202,15 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
 
 	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
-	"${FILESDIR}"/${PN}-7.0.9-python.patch
+	"${FILESDIR}"/${PN}-7.0.10-python.patch
 	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
 	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
+	"${FILESDIR}"/${PN}-7.0.6-fix-libxml2.patch
 
 	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.10_pre20230615/patches
+	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
 )
 
-DOCS=()	# Don't install the default README file during einstalldocs
-
-CONFIG_CHECK="~!SPINLOCK JUMP_LABEL"
-
 pkg_pretend() {
 	if ! use gui; then
 		einfo "No USE=\"gui\" selected, this build will not include any Qt frontend."
@@ -254,12 +242,6 @@ pkg_pretend() {
 pkg_setup() {
 	java-pkg-opt-2_pkg_setup
 	python-single-r1_pkg_setup
-	linux-mod-r1_pkg_setup
-}
-
-src_unpack() {
-	subversion_src_unpack
-	default
 }
 
 src_prepare() {
@@ -511,21 +493,9 @@ src_compile() {
 	fi
 
 	MAKE="kmk" emake "${myemakeargs[@]}" all
-
-	local modlist=( {vboxdrv,vboxnetflt,vboxnetadp}=misc:"out/linux.${ARCH}/release/bin/src" )
-	local modargs=( KERN_DIR="${KV_OUT_DIR}" KERN_VER="${KV_FULL}" )
-	linux-mod-r1_src_compile
 }
 
 src_install() {
-	linux-mod-r1_src_install
-	insinto /usr/lib/modules-load.d/
-	newins - virtualbox.conf <<-EOF
-		vboxdrv
-		vboxnetflt
-		vboxnetadp
-	EOF
-
 	cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
 
 	local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
@@ -598,7 +568,10 @@ src_install() {
 	fi
 
 	# set an env-variable for 3rd party tools
-	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	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
@@ -617,6 +590,11 @@ src_install() {
 			pax-mark -m "${ED}"${vbox_inst_path}/${each}
 		done
 
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
 		for each in virtualbox{,vm} VirtualBox{,VM} ; do
 			dosym ${vbox_inst_path}/VBox /usr/bin/${each}
 		done
@@ -707,7 +685,7 @@ src_install() {
 		dodoc UserManual.pdf UserManual.q{ch,hc}
 		docompress -x /usr/share/doc/${PF}
 	elif use gui; then
-		dodoc "${WORKDIR}"/${PN}-help-${BASE_PV}/UserManual.q{ch,hc}
+		dodoc "${WORKDIR}"/${PN}-help-${PV}/UserManual.q{ch,hc}
 		docompress -x /usr/share/doc/${PF}
 	fi
 
@@ -719,14 +697,27 @@ src_install() {
 			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"
+		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
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || die
 	fi
 
 	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
 }
 
 pkg_postinst() {
-	linux-mod-r1_pkg_postinst
-
 	xdg_pkg_postinst
 
 	if use udev; then
@@ -743,7 +734,7 @@ pkg_postinst() {
 	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/${BASE_PV}/UserManual.pdf"
+	elog "https://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf"
 	elog ""
 
 	optfeature "Advanced networking setups" net-misc/bridge-utils sys-apps/usermode-utilities

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 3479b65025f4..9048fa58d8a6 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -24,7 +24,7 @@ EAPI=8
 #  trunk branch but not release branch.
 #
 #  See bug #785835, bug #856121.
-PYTHON_COMPAT=( python3_{9..12} )
+PYTHON_COMPAT=( python3_{10..11} )
 
 inherit desktop edo flag-o-matic java-pkg-opt-2 linux-mod-r1 multilib optfeature pax-utils \
 	python-single-r1 subversion tmpfiles toolchain-funcs udev xdg
@@ -598,7 +598,10 @@ src_install() {
 	fi
 
 	# set an env-variable for 3rd party tools
-	echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	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
@@ -719,6 +722,21 @@ src_install() {
 			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"
+		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
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || die
 	fi
 
 	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-10-17 19:22 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2023-10-17 19:22 UTC (permalink / raw
  To: gentoo-commits

commit:     cdc8c857dd93dd2439643df69c5090d6c8f1b6f7
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 17 19:22:45 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Oct 17 19:22:45 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cdc8c857

app-emulation/virtualbox: Stabilize 7.0.10-r1 amd64, #915232

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
index e6d12f343761..a129c9b3e3dd 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-10-18  4:08 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-10-18  4:08 UTC (permalink / raw
  To: gentoo-commits

commit:     f093feb82664a221d2dabede63219decbd6ae3f0
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 17 18:54:12 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 04:07:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f093feb8

app-emulation/virtualbox: add 6.1.48

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

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.48.ebuild | 675 ++++++++++++++++++++++
 2 files changed, 676 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index aad4f0b02e95..7eb92a4a1f28 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,4 +1,5 @@
 DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77
+DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f
 DIST VirtualBox-7.0.10.tar.bz2 175450841 BLAKE2B 49eaa14f716f021f1ecec1ad48a2aa8a3a758cbd9b03cf30d65ddcf5aba11842b0ea8bc2c4d477084a4cea318dc302a4ed426ec9f675a1fe675c5f18c48796c7 SHA512 2870d39385f66557281edf1368db68cd69d6a9bebc30d52511929462d0ac210cec49dd8531a280c6facff22ba6e4808477fbf3d09abf998d863a007fc7f2c3bd
 DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild b/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
new file mode 100644
index 000000000000..a07c5a01bf04
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
@@ -0,0 +1,675 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-base/xorg-proto
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		x11-libs/libXrandr
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-libs/libpulse )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-util/kbuild-0.1.9998.3127
+	<=dev-util/kbuild-0.1.9998.3500
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# 906309
+	"${FILESDIR}"/${PN}-6.1.44-fix-libxml2.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	# 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
+	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), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+
+	# 890561
+	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usev !alsa --disable-alsa)
+		$(usev debug --build-debug)
+		$(usev !doc --disable-docs)
+		$(usev !java --disable-java)
+		$(usev !lvm --disable-devmapper)
+		$(usev !opus --disable-libopus)
+		$(usev !pulseaudio --disable-pulse)
+		$(usev !python --disable-python)
+		$(usev vboxwebsrv --enable-webservice)
+		$(usev vnc --enable-vnc)
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usev !opengl --disable-opengl)
+			$(usev !qt5 --disable-qt)
+			$(usev !sdl --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} \
+		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2023-10-18  4:08 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2023-10-18  4:08 UTC (permalink / raw
  To: gentoo-commits

commit:     5f6c2024bba58057363cf89e265a0e9b09737d41
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 18 03:39:39 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 04:07:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f6c2024

app-emulation/virtualbox: add 7.0.12

Closes: https://bugs.gentoo.org/908814
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   2 +
 app-emulation/virtualbox/virtualbox-7.0.12.ebuild | 758 ++++++++++++++++++++++
 2 files changed, 760 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 7eb92a4a1f28..0f0f26c43f91 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,9 @@
 DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77
 DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f
 DIST VirtualBox-7.0.10.tar.bz2 175450841 BLAKE2B 49eaa14f716f021f1ecec1ad48a2aa8a3a758cbd9b03cf30d65ddcf5aba11842b0ea8bc2c4d477084a4cea318dc302a4ed426ec9f675a1fe675c5f18c48796c7 SHA512 2870d39385f66557281edf1368db68cd69d6a9bebc30d52511929462d0ac210cec49dd8531a280c6facff22ba6e4808477fbf3d09abf998d863a007fc7f2c3bd
+DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30
+DIST virtualbox-help-7.0.12.tar.xz 3945920 BLAKE2B 7f2201f3baf6d27d95dc9f878426e34a27c9f9e113d55348f57703b1bd4878df8c6f02492412b779896c48224fb2df224c953b425dde9c99d2b4dbfda1d80d4f SHA512 ddf429a984fe433c4bcbdf87930b3cc16075d4f4725d2e571e9bf05d820d26eb6f88dd6f2bd3992927b261377c84ac4e35a929113b3294e3b2887760fe7a0b52
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
 DIST virtualbox-patches-7.0.10_pre20230615.tar.bz2 2253 BLAKE2B 27b422acc2ae85c4324d6f4471db80c9f680b1c4a00223c38b9e3fb31709b05163a1bd53408cffeabdef295e856aa8b01b86e0fecf5d80ace376ea1bd4fc9504 SHA512 c2177f46048f09b6be9ac2c35b43d74f67350b052411cc64adf6c0b3d284055eef79f960f1384a3aaeee7d25f8c19ea8f936ee2623a2251d1d28f85ed3469c22
 DIST virtualbox-patches-7.0.8.tar.bz2 2733 BLAKE2B 044dfe02a5bd5e757091318b394b0e5918677b5bbce9caef4a18d4d8df54821559f0df6ffbdd6f52d4934bc4018e9c9d908571c5d3d8804fd3b0f22a7a1aed84 SHA512 93a06aa3f9508d3a8743ca8494a958159b5bc3fd7a0a08ff23414d05c4f31084cf0f1c82a3866e222c83e6996ba004546f0bd33c6eb9a90eec8e548b8b3f2fbf

diff --git a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild b/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
new file mode 100644
index 000000000000..7e6498bde1f8
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
@@ -0,0 +1,758 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl2[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		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:=
+	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/libXinerama )
+	pulseaudio? ( media-libs/libpulse )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	dev-util/glslang
+	>=dev-util/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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
+	"${FILESDIR}"/${PN}-7.0.10-python.patch
+	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
+	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
+	"${FILESDIR}"/${PN}-7.0.6-fix-libxml2.patch
+	# 913109
+	"${FILESDIR}"/${PN}-7.0.10-fix-binutils-hardened.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
+)
+
+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 python; then
+		einfo "You have disabled the \"python\" USE flag. This will only"
+		einfo "disable the python bindings being installed."
+	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
+	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
+
+	# 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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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-ld-disable-gold # bug #488176
+
+	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 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
+
+	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
+
+	if use python; then
+		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
+	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,XPCOMIPCD} \
+		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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${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"
+		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
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-17 17:38 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-17 17:38 UTC (permalink / raw
  To: gentoo-commits

commit:     65d17f35c412a1b3fffad677d5c535dd4ab52ca1
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 17 08:10:37 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Jan 17 17:35:45 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65d17f35

app-emulation/virtualbox: add 7.0.14

Closes: https://bugs.gentoo.org/916002
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   2 +
 app-emulation/virtualbox/virtualbox-7.0.14.ebuild | 761 ++++++++++++++++++++++
 2 files changed, 763 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 2d14b9bd23df..f40d1fd783a4 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -3,8 +3,10 @@ DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb1
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.10.tar.bz2 175450841 BLAKE2B 49eaa14f716f021f1ecec1ad48a2aa8a3a758cbd9b03cf30d65ddcf5aba11842b0ea8bc2c4d477084a4cea318dc302a4ed426ec9f675a1fe675c5f18c48796c7 SHA512 2870d39385f66557281edf1368db68cd69d6a9bebc30d52511929462d0ac210cec49dd8531a280c6facff22ba6e4808477fbf3d09abf998d863a007fc7f2c3bd
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
+DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
 DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30
 DIST virtualbox-help-7.0.12.tar.xz 3945920 BLAKE2B 7f2201f3baf6d27d95dc9f878426e34a27c9f9e113d55348f57703b1bd4878df8c6f02492412b779896c48224fb2df224c953b425dde9c99d2b4dbfda1d80d4f SHA512 ddf429a984fe433c4bcbdf87930b3cc16075d4f4725d2e571e9bf05d820d26eb6f88dd6f2bd3992927b261377c84ac4e35a929113b3294e3b2887760fe7a0b52
+DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
 DIST virtualbox-patches-7.0.10_pre20230615.tar.bz2 2253 BLAKE2B 27b422acc2ae85c4324d6f4471db80c9f680b1c4a00223c38b9e3fb31709b05163a1bd53408cffeabdef295e856aa8b01b86e0fecf5d80ace376ea1bd4fc9504 SHA512 c2177f46048f09b6be9ac2c35b43d74f67350b052411cc64adf6c0b3d284055eef79f960f1384a3aaeee7d25f8c19ea8f936ee2623a2251d1d28f85ed3469c22
 DIST virtualbox-patches-7.0.8.tar.bz2 2733 BLAKE2B 044dfe02a5bd5e757091318b394b0e5918677b5bbce9caef4a18d4d8df54821559f0df6ffbdd6f52d4934bc4018e9c9d908571c5d3d8804fd3b0f22a7a1aed84 SHA512 93a06aa3f9508d3a8743ca8494a958159b5bc3fd7a0a08ff23414d05c4f31084cf0f1c82a3866e222c83e6996ba004546f0bd33c6eb9a90eec8e548b8b3f2fbf

diff --git a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild b/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
new file mode 100644
index 000000000000..5296607dea6c
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
@@ -0,0 +1,761 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl2[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		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:=
+	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/libXinerama )
+	pulseaudio? ( media-libs/libpulse )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	dev-util/glslang
+	>=dev-util/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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
+	"${FILESDIR}"/${PN}-7.0.10-python.patch
+	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
+	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
+	"${FILESDIR}"/${PN}-7.0.6-fix-libxml2.patch
+	# 913109
+	"${FILESDIR}"/${PN}-7.0.10-fix-binutils-hardened.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
+)
+
+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 python; then
+		einfo "You have disabled the \"python\" USE flag. This will only"
+		einfo "disable the python bindings being installed."
+	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
+	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
+
+	# 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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# bug #908814
+	filter-lto
+
+	# bug #916002
+	tc-ld-force-bfd
+
+	# 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-ld-disable-gold # bug #488176
+
+	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 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
+
+	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
+
+	if use python; then
+		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
+	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,XPCOMIPCD} \
+		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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${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"
+		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
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-17 17:38 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-17 17:38 UTC (permalink / raw
  To: gentoo-commits

commit:     ea0cd8e5f2ce9a3ff23a0be9168f0ff463f68c99
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 17 07:42:46 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Jan 17 17:35:44 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea0cd8e5

app-emulation/virtualbox: add 6.1.50

Bug: https://bugs.gentoo.org/908814
Bug: https://bugs.gentoo.org/916002
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                 |   1 +
 app-emulation/virtualbox/virtualbox-6.1.50.ebuild | 681 ++++++++++++++++++++++
 2 files changed, 682 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 0f0f26c43f91..2d14b9bd23df 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,5 +1,6 @@
 DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77
 DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f
+DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.10.tar.bz2 175450841 BLAKE2B 49eaa14f716f021f1ecec1ad48a2aa8a3a758cbd9b03cf30d65ddcf5aba11842b0ea8bc2c4d477084a4cea318dc302a4ed426ec9f675a1fe675c5f18c48796c7 SHA512 2870d39385f66557281edf1368db68cd69d6a9bebc30d52511929462d0ac210cec49dd8531a280c6facff22ba6e4808477fbf3d09abf998d863a007fc7f2c3bd
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30

diff --git a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild b/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
new file mode 100644
index 000000000000..614e5f47ae10
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
@@ -0,0 +1,681 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2 dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~app-emulation/virtualbox-modules-${PV}
+	>=dev-libs/libxslt-1.1.19
+	net-misc/curl
+	dev-libs/libxml2
+	media-libs/libpng:0=
+	media-libs/libvpx:0=
+	sys-libs/zlib:=
+	!headless? (
+		sdl? ( media-libs/libsdl:0[X,video] )
+		x11-base/xorg-proto
+		x11-libs/libX11
+		x11-libs/libxcb:=
+		x11-libs/libXcursor
+		x11-libs/libXext
+		x11-libs/libXmu
+		x11-libs/libXt
+		opengl? (
+			media-libs/libglvnd[X]
+			virtual/glu
+		)
+		qt5? (
+			dev-qt/qtcore:5
+			dev-qt/qtgui:5
+			dev-qt/qtprintsupport:5
+			dev-qt/qtwidgets:5
+			dev-qt/qtx11extras:5
+			opengl? ( dev-qt/qtopengl:5 )
+			x11-libs/libXinerama
+		)
+	)
+	dev-libs/openssl:0=
+	virtual/libcrypt:=
+	lvm? ( sys-fs/lvm2 )
+	opus? ( media-libs/opus )
+	udev? ( >=virtual/udev-171 )
+	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
+	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}
+	alsa? ( >=media-libs/alsa-lib-1.0.13 )
+	!headless? (
+		x11-libs/libXinerama
+		x11-libs/libXrandr
+		opengl? ( virtual/opengl )
+	)
+	java? ( virtual/jdk:1.8 )
+	pam? ( sys-libs/pam )
+	pax-kernel? ( sys-apps/elfix )
+	pulseaudio? ( media-libs/libpulse )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-arch/tar-1.34-r2
+	>=dev-util/kbuild-0.1.9998.3127
+	<=dev-util/kbuild-0.1.9998.3500
+	>=dev-lang/yasm-0.6.2
+	dev-libs/libIDL
+	sys-apps/which
+	sys-devel/bin86
+	sys-libs/libcap
+	sys-power/iasl
+	virtual/pkgconfig
+	doc? (
+		app-text/docbook-sgml-dtd:4.4
+		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.8 )
+	qt5? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	java? ( virtual/jre:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
+
+	# This patch is needed to avoid automagic detection based on a hardcoded
+	# list of Pythons in configure. It's necessary but not sufficient
+	# (see the rest of the ebuild's logic for the remainder) to handle
+	# proper Python selection.
+	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
+
+	# 865361
+	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
+
+	# 906309
+	"${FILESDIR}"/${PN}-6.1.44-fix-libxml2.patch
+
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
+)
+
+pkg_pretend() {
+	if ! use headless && ! use qt5 ; then
+		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
+	elif use headless && use qt5 ; then
+		einfo "You selected USE=\"headless qt5\", 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
+
+	# 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
+	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), see bug #232775
+	rm -r kBuild/bin tools || die
+
+	# Replace pointless GCC version check with something more sensible.
+	# This is needed for the qt5 version check.
+	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
+		-i configure || 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
+
+	# 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
+	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
+
+	# 890561
+	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
+}
+
+src_configure() {
+	tc-ld-disable-gold # bug #488176
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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
+
+	tc-export AR CC CXX LD RANLIB
+	export HOST_CC="$(tc-getBUILD_CC)"
+
+	local myconf=(
+		--with-gcc="$(tc-getCC)"
+		--with-g++="$(tc-getCXX)"
+
+		--disable-dbus
+		--disable-kmods
+
+		$(usev !alsa --disable-alsa)
+		$(usev debug --build-debug)
+		$(usev !doc --disable-docs)
+		$(usev !java --disable-java)
+		$(usev !lvm --disable-devmapper)
+		$(usev !opus --disable-libopus)
+		$(usev !pulseaudio --disable-pulse)
+		$(usev !python --disable-python)
+		$(usev vboxwebsrv --enable-webservice)
+		$(usev vnc --enable-vnc)
+	)
+
+	if ! use headless ; then
+		myconf+=(
+			$(usev !opengl --disable-opengl)
+			$(usev !qt5 --disable-qt)
+			$(usev !sdl --disable-sdl)
+		)
+	else
+		myconf+=(
+			--build-headless
+			--disable-opengl
+		)
+	fi
+
+	if use amd64 && ! has_multilib_profile ; then
+		myconf+=( --disable-vmmraw )
+	fi
+
+	# bug #908814
+	filter-lto
+
+	# bug #916002
+	tc-ld-force-bfd
+
+	# bug #843437
+	cat >> LocalConfig.kmk <<-EOF || die
+		CXXFLAGS=${CXXFLAGS}
+		CFLAGS=${CFLAGS}
+	EOF
+
+	# 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
+
+	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
+
+	if use python ; then
+		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
+	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,Tunctl,VMMPreload,XPCOMIPCD} \
+		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
+	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
+
+	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
+	doenvd "${T}/90virtualbox"
+
+	if ! use headless ; then
+		vbox_inst rdesktop-vrdp
+		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 qt5 ; then
+			vbox_inst VirtualBox
+			vbox_inst VirtualBoxVM 4750
+			for each in VirtualBox{,VM} ; do
+				pax-mark -m "${ED}"${vbox_inst_path}/${each}
+			done
+
+			if use opengl ; then
+				vbox_inst VBoxTestOGL
+				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+			fi
+
+			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
+		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
+		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
+	fi
+
+	if use python ; then
+		local mangled_python="${EPYTHON#python}"
+		mangled_python="${mangled_python/./_}"
+
+		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
+	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 headless && use qt5 ; 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-18 11:47 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-18 11:47 UTC (permalink / raw
  To: gentoo-commits

commit:     01aa99c744de0fb747cb665dea4a3865144acf0d
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 18 11:43:29 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jan 18 11:47:14 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01aa99c7

app-emulation/virtualbox: force bfd before exporting LDFLAGS

Move tc-ld-force-bfd and remove superfluous tc-ld-disable-gold.

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

 app-emulation/virtualbox/virtualbox-6.1.50.ebuild | 8 +++-----
 app-emulation/virtualbox/virtualbox-7.0.14.ebuild | 8 +++-----
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild b/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
index 61422efec0e9..3d11e6cbe0a5 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
@@ -243,6 +243,9 @@ src_prepare() {
 			>> LocalConfig.kmk || die
 	fi
 
+	# bug #916002, #488176
+	tc-ld-force-bfd
+
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
 		-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
@@ -271,8 +274,6 @@ src_prepare() {
 }
 
 src_configure() {
-	tc-ld-disable-gold # bug #488176
-
 	#856811 #864274
 	# cannot filter out only one flag, some combinations of these flags produce buggy executables
 	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
@@ -330,9 +331,6 @@ src_configure() {
 	# bug #908814
 	filter-lto
 
-	# bug #916002
-	tc-ld-force-bfd
-
 	# bug #843437
 	cat >> LocalConfig.kmk <<-EOF || die
 		CXXFLAGS=${CXXFLAGS}

diff --git a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild b/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
index 7dc158723649..b45dfefcb861 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
@@ -269,6 +269,9 @@ src_prepare() {
 			>> LocalConfig.kmk || die
 	fi
 
+	# bug #916002, #488176
+	tc-ld-force-bfd
+
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
 		-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
@@ -303,9 +306,6 @@ src_prepare() {
 	# bug #908814
 	filter-lto
 
-	# bug #916002
-	tc-ld-force-bfd
-
 	# bug #843437
 	cat >> LocalConfig.kmk <<-EOF || die
 		CXXFLAGS=${CXXFLAGS}
@@ -363,8 +363,6 @@ src_prepare() {
 }
 
 src_configure() {
-	tc-ld-disable-gold # bug #488176
-
 	tc-export AR CC CXX LD RANLIB
 	export HOST_CC="$(tc-getBUILD_CC)"
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-25  9:51 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-25  9:51 UTC (permalink / raw
  To: gentoo-commits

commit:     9600de296b4444f7e602a0747092723be6b2758d
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 25 07:18:32 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jan 25 09:50:33 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9600de29

app-emulation/virtualbox: Stabilize amd64, #917472

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

 app-emulation/virtualbox/virtualbox-7.0.12.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild b/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
index d0ae5b648c18..45419d21339d 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-25  9:51 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-25  9:51 UTC (permalink / raw
  To: gentoo-commits

commit:     ae9396e80c606b4014ad2d225fd7a861c2fc3e48
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 25 09:48:43 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jan 25 09:50:33 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae9396e8

app-emulation/virtualbox: Stabilize amd64, #917471

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

 app-emulation/virtualbox/virtualbox-6.1.48.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild b/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
index d821799f185f..3f35d8fb474f 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-25 10:08 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-25 10:08 UTC (permalink / raw
  To: gentoo-commits

commit:     8b16445ade1952610880a7af3d650bc15f694b78
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 25 09:55:38 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jan 25 09:55:38 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b16445a

app-emulation/virtualbox: drop 7.0.10-r1

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

 app-emulation/virtualbox/Manifest                  |   1 -
 .../virtualbox/virtualbox-7.0.10-r1.ebuild         | 755 ---------------------
 2 files changed, 756 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index f40d1fd783a4..17ff17d80bdd 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,6 @@
 DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77
 DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
-DIST VirtualBox-7.0.10.tar.bz2 175450841 BLAKE2B 49eaa14f716f021f1ecec1ad48a2aa8a3a758cbd9b03cf30d65ddcf5aba11842b0ea8bc2c4d477084a4cea318dc302a4ed426ec9f675a1fe675c5f18c48796c7 SHA512 2870d39385f66557281edf1368db68cd69d6a9bebc30d52511929462d0ac210cec49dd8531a280c6facff22ba6e4808477fbf3d09abf998d863a007fc7f2c3bd
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
 DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30

diff --git a/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
deleted file mode 100644
index 563fb976bf00..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.10-r1.ebuild
+++ /dev/null
@@ -1,755 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
-	"${FILESDIR}"/${PN}-7.0.10-python.patch
-	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
-	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
-	"${FILESDIR}"/${PN}-7.0.6-fix-libxml2.patch
-	# 913109
-	"${FILESDIR}"/${PN}-7.0.10-fix-binutils-hardened.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-
-	# 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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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-ld-disable-gold # bug #488176
-
-	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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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"
-		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
-		python_doscript vboxshell.py
-
-		# do not install the installer
-		rm -r "${installer_dir}" || 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-25 10:08 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-25 10:08 UTC (permalink / raw
  To: gentoo-commits

commit:     94ef2b4da5cc71684ec8aa6cdf2c40ce6a9180ad
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 25 09:55:32 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jan 25 09:55:32 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94ef2b4d

app-emulation/virtualbox: drop 7.0.10

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

 app-emulation/virtualbox/virtualbox-7.0.10.ebuild | 735 ----------------------
 1 file changed, 735 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.10.ebuild b/app-emulation/virtualbox/virtualbox-7.0.10.ebuild
deleted file mode 100644
index a97af1370fb6..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.10.ebuild
+++ /dev/null
@@ -1,735 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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..12} )
-
-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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.8.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
-	"${FILESDIR}"/${PN}-7.0.10-python.patch
-	"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
-	"${FILESDIR}"/${PN}-7.0.8-mtune-keep-size.patch
-	"${FILESDIR}"/${PN}-7.0.6-fix-libxml2.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.8/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-
-	# 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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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-ld-disable-gold # bug #488176
-
-	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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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 -n "VBOX_APP_HOME=${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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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
-	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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-25 15:50 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-01-25 15:50 UTC (permalink / raw
  To: gentoo-commits

commit:     4c7c56bcdf7bcbec245fac6a1f3d14e75aa11016
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 25 15:45:35 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jan 25 15:45:35 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c7c56bc

app-emulation/virtualbox: drop 6.1.46

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

 app-emulation/virtualbox/Manifest                 |   1 -
 app-emulation/virtualbox/virtualbox-6.1.46.ebuild | 675 ----------------------
 2 files changed, 676 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 17ff17d80bdd..c8dbfc28ec2d 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,4 +1,3 @@
-DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77
 DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f

diff --git a/app-emulation/virtualbox/virtualbox-6.1.46.ebuild b/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
deleted file mode 100644
index 3f35d8fb474f..000000000000
--- a/app-emulation/virtualbox/virtualbox-6.1.46.ebuild
+++ /dev/null
@@ -1,675 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~app-emulation/virtualbox-modules-${PV}
-	>=dev-libs/libxslt-1.1.19
-	net-misc/curl
-	dev-libs/libxml2
-	media-libs/libpng:0=
-	media-libs/libvpx:0=
-	sys-libs/zlib:=
-	!headless? (
-		sdl? ( media-libs/libsdl:0[X,video] )
-		x11-base/xorg-proto
-		x11-libs/libX11
-		x11-libs/libxcb:=
-		x11-libs/libXcursor
-		x11-libs/libXext
-		x11-libs/libXmu
-		x11-libs/libXt
-		opengl? (
-			media-libs/libglvnd[X]
-			virtual/glu
-		)
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtgui:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			opengl? ( dev-qt/qtopengl:5 )
-			x11-libs/libXinerama
-		)
-	)
-	dev-libs/openssl:0=
-	virtual/libcrypt:=
-	lvm? ( sys-fs/lvm2 )
-	opus? ( media-libs/opus )
-	udev? ( >=virtual/udev-171 )
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-	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}
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? (
-		x11-libs/libXinerama
-		x11-libs/libXrandr
-		opengl? ( virtual/opengl )
-	)
-	java? ( virtual/jdk:1.8 )
-	pam? ( sys-libs/pam )
-	pax-kernel? ( sys-apps/elfix )
-	pulseaudio? ( media-libs/libpulse )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=app-arch/tar-1.34-r2
-	>=dev-build/kbuild-0.1.9998.3127
-	<=dev-build/kbuild-0.1.9998.3500
-	>=dev-lang/yasm-0.6.2
-	dev-libs/libIDL
-	sys-apps/which
-	sys-devel/bin86
-	sys-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	doc? (
-		app-text/docbook-sgml-dtd:4.4
-		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.8 )
-	qt5? ( dev-qt/linguist-tools:5 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	java? ( virtual/jre:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	# 906309
-	"${FILESDIR}"/${PN}-6.1.44-fix-libxml2.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
-)
-
-pkg_pretend() {
-	if ! use headless && ! use qt5 ; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5 ; then
-		einfo "You selected USE=\"headless qt5\", 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
-
-	# 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
-	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), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Replace pointless GCC version check with something more sensible.
-	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
-		-i configure || 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
-
-	# 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
-	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
-
-	# 890561
-	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
-}
-
-src_configure() {
-	tc-ld-disable-gold # bug #488176
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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
-
-	tc-export AR CC CXX LD RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-
-	local myconf=(
-		--with-gcc="$(tc-getCC)"
-		--with-g++="$(tc-getCXX)"
-
-		--disable-dbus
-		--disable-kmods
-
-		$(usev !alsa --disable-alsa)
-		$(usev debug --build-debug)
-		$(usev !doc --disable-docs)
-		$(usev !java --disable-java)
-		$(usev !lvm --disable-devmapper)
-		$(usev !opus --disable-libopus)
-		$(usev !pulseaudio --disable-pulse)
-		$(usev !python --disable-python)
-		$(usev vboxwebsrv --enable-webservice)
-		$(usev vnc --enable-vnc)
-	)
-
-	if ! use headless ; then
-		myconf+=(
-			$(usev !opengl --disable-opengl)
-			$(usev !qt5 --disable-qt)
-			$(usev !sdl --disable-sdl)
-		)
-	else
-		myconf+=(
-			--build-headless
-			--disable-opengl
-		)
-	fi
-
-	if use amd64 && ! has_multilib_profile ; then
-		myconf+=( --disable-vmmraw )
-	fi
-
-	# bug #843437
-	cat >> LocalConfig.kmk <<-EOF || die
-		CXXFLAGS=${CXXFLAGS}
-		CFLAGS=${CFLAGS}
-	EOF
-
-	# 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
-
-	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
-
-	if use python ; then
-		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
-	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,Tunctl,VMMPreload,XPCOMIPCD} \
-		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
-	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
-
-	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; then
-		vbox_inst rdesktop-vrdp
-		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 qt5 ; then
-			vbox_inst VirtualBox
-			vbox_inst VirtualBoxVM 4750
-			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED}"${vbox_inst_path}/${each}
-			done
-
-			if use opengl ; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-			fi
-
-			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
-		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
-		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
-	fi
-
-	if use python ; then
-		local mangled_python="${EPYTHON#python}"
-		mangled_python="${mangled_python/./_}"
-
-		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
-	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 headless && use qt5 ; 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-27  7:34 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2024-01-27  7:34 UTC (permalink / raw
  To: gentoo-commits

commit:     77e481d42a3940c78e6a148dc874acfb1d54746e
Author:     Matt Jolly <Matt.Jolly <AT> footclan <DOT> ninja>
AuthorDate: Fri Jan 26 10:54:13 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 07:31:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77e481d4

app-emulation/virtualbox: add upper bound to libxml2 depdendency

Bug: https://bugs.gentoo.org/922445
Signed-off-by: Matt Jolly <Matt.Jolly <AT> footclan.ninja>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-6.1.48.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-6.1.50.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-7.0.12.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-7.0.14.ebuild | 2 +-
 app-emulation/virtualbox/virtualbox-9999.ebuild   | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild b/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
index 3f35d8fb474f..8f8c25c2a378 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
@@ -42,7 +42,7 @@ COMMON_DEPEND="
 	~app-emulation/virtualbox-modules-${PV}
 	>=dev-libs/libxslt-1.1.19
 	net-misc/curl
-	dev-libs/libxml2
+	<dev-libs/libxml2-2.12.0
 	media-libs/libpng:0=
 	media-libs/libvpx:0=
 	sys-libs/zlib:=

diff --git a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild b/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
index 3d11e6cbe0a5..cc0fe89d292c 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
@@ -42,7 +42,7 @@ COMMON_DEPEND="
 	~app-emulation/virtualbox-modules-${PV}
 	>=dev-libs/libxslt-1.1.19
 	net-misc/curl
-	dev-libs/libxml2
+	<dev-libs/libxml2-2.12.0
 	media-libs/libpng:0=
 	media-libs/libvpx:0=
 	sys-libs/zlib:=

diff --git a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild b/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
index 45419d21339d..d33d20a0b630 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
@@ -44,7 +44,7 @@ COMMON_DEPEND="
 	acct-group/vboxusers
 	~app-emulation/virtualbox-modules-${PV}
 	dev-libs/libtpms
-	dev-libs/libxml2
+	<dev-libs/libxml2-2.12.0
 	dev-libs/openssl:0=
 	media-libs/libpng:0=
 	media-libs/libvpx:0=

diff --git a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild b/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
index b45dfefcb861..5c2d88c71188 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
@@ -44,7 +44,7 @@ COMMON_DEPEND="
 	acct-group/vboxusers
 	~app-emulation/virtualbox-modules-${PV}
 	dev-libs/libtpms
-	dev-libs/libxml2
+	<dev-libs/libxml2-2.12.0
 	dev-libs/openssl:0=
 	media-libs/libpng:0=
 	media-libs/libvpx:0=

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 401f44726ecf..2aa92629e387 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -53,7 +53,7 @@ COMMON_DEPEND="
 	acct-group/vboxusers
 	app-arch/xz-utils
 	dev-libs/libtpms
-	dev-libs/libxml2
+	<dev-libs/libxml2-2.12.0
 	dev-libs/openssl:0=
 	media-libs/libpng:0=
 	media-libs/libvpx:0=


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-01-27  7:44 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2024-01-27  7:44 UTC (permalink / raw
  To: gentoo-commits

commit:     56dd0f0bebb102578e7ccda40f849ef075faa205
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 27 07:35:02 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 07:35:56 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56dd0f0b

app-emulation/virtualbox: revbump for libxml2 dep restriction, add comment

Bug: https://bugs.gentoo.org/922445
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../virtualbox/{virtualbox-6.1.48.ebuild => virtualbox-6.1.48-r1.ebuild} | 1 +
 .../virtualbox/{virtualbox-6.1.50.ebuild => virtualbox-6.1.50-r1.ebuild} | 1 +
 .../virtualbox/{virtualbox-7.0.12.ebuild => virtualbox-7.0.12-r1.ebuild} | 1 +
 .../virtualbox/{virtualbox-7.0.14.ebuild => virtualbox-7.0.14-r1.ebuild} | 1 +
 app-emulation/virtualbox/virtualbox-9999.ebuild                          | 1 +
 5 files changed, 5 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild b/app-emulation/virtualbox/virtualbox-6.1.48-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.48.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.48-r1.ebuild
index 8f8c25c2a378..87034f0a749c 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.48.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.48-r1.ebuild
@@ -36,6 +36,7 @@ IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudi
 
 unset WATCOM #856769
 
+# <libxml2-2.12.0: bug #922445
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers

diff --git a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild b/app-emulation/virtualbox/virtualbox-6.1.50-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-6.1.50.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.50-r1.ebuild
index cc0fe89d292c..313402ffc61d 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.50.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.50-r1.ebuild
@@ -36,6 +36,7 @@ IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudi
 
 unset WATCOM #856769
 
+# <libxml2-2.12.0: bug #922445
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers

diff --git a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild b/app-emulation/virtualbox/virtualbox-7.0.12-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-7.0.12.ebuild
rename to app-emulation/virtualbox/virtualbox-7.0.12-r1.ebuild
index d33d20a0b630..f407a63b7d9a 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.12.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.12-r1.ebuild
@@ -39,6 +39,7 @@ IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl py
 
 unset WATCOM #856769
 
+# <libxml2-2.12.0: bug #922445
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers

diff --git a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild b/app-emulation/virtualbox/virtualbox-7.0.14-r1.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-7.0.14.ebuild
rename to app-emulation/virtualbox/virtualbox-7.0.14-r1.ebuild
index 5c2d88c71188..1709f2f3716f 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.14.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.14-r1.ebuild
@@ -39,6 +39,7 @@ IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl py
 
 unset WATCOM #856769
 
+# <libxml2-2.12.0: bug #922445
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 2aa92629e387..af970a6c906c 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -48,6 +48,7 @@ IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl py
 
 unset WATCOM #856769
 
+# <libxml2-2.12.0: bug #922445
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-03-19 17:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-03-19 17:20 UTC (permalink / raw
  To: gentoo-commits

commit:     75e9e05a39521093f1ea9e8070dde78d5cb1b863
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 19 17:13:54 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Mar 19 17:19:13 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75e9e05a

app-emulation/virtualbox: update live version

Make it build again after changes from upstream.

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

 app-emulation/virtualbox/virtualbox-9999.ebuild | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 25a390ed1bc9..fa51d3f6c124 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -48,13 +48,12 @@ IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl py
 
 unset WATCOM #856769
 
-# <libxml2-2.12.0: bug #922445
 COMMON_DEPEND="
 	${PYTHON_DEPS}
 	acct-group/vboxusers
 	app-arch/xz-utils
 	dev-libs/libtpms
-	<dev-libs/libxml2-2.12.0
+	dev-libs/libxml2
 	dev-libs/openssl:0=
 	media-libs/libpng:0=
 	media-libs/libvpx:0=
@@ -63,7 +62,6 @@ COMMON_DEPEND="
 	dbus? ( sys-apps/dbus )
 	gui? (
 		dev-qt/qtbase:6[widgets]
-		dev-qt/qt5compat:6
 		dev-qt/qtscxml:6
 		dev-qt/qttools:6[assistant]
 		x11-libs/libX11
@@ -129,6 +127,7 @@ DEPEND="
 "
 RDEPEND="
 	${COMMON_DEPEND}
+	!app-emulation/virtualbox-modules
 	gui? ( x11-libs/libxcb:= )
 	java? ( virtual/jre:1.8 )
 "
@@ -549,7 +548,7 @@ src_install() {
 	insinto ${vbox_inst_path}
 	doins -r components
 
-	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload,XPCOMIPCD} \
+	for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload} \
 		vboximg-mount vbox-img *so *r0; do
 		vbox_inst ${each}
 	done
@@ -710,7 +709,7 @@ src_install() {
 		fi
 
 		# 378871
-		local installer_dir="${ED}/usr/$(get_libdir)/virtualbox/sdk/installer"
+		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;" \
@@ -719,10 +718,14 @@ src_install() {
 		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}" || die
+		rm -r "${installer_dir%vboxapi*}" || die
 	fi
 
 	newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-04-17 19:56 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-04-17 19:56 UTC (permalink / raw
  To: gentoo-commits

commit:     ddd439fabebf5c1a68561515403aafaffedff16e
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 17 18:53:59 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Apr 17 19:55:59 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ddd439fa

app-emulation/virtualbox: add 7.0.16

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

 app-emulation/virtualbox/Manifest                 |   3 +
 app-emulation/virtualbox/virtualbox-7.0.16.ebuild | 740 ++++++++++++++++++++++
 2 files changed, 743 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 58ec0cc3b542..71b80cb3a37a 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,9 +2,12 @@ DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb1
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
+DIST VirtualBox-7.0.16.tar.bz2 170897951 BLAKE2B 6b436c38df632222621723db94677a0efef5de2ac1eacec73571bc658955f23fff347fa60c37ec78c58bf94b82b8f9a95fb26c07ef4becc7e9f535af069151f5 SHA512 1b8ba08bec144cbd1f2e9aa0929cdf60a0b99930f1dd80567094fba75097d87661aef3da2cc24f4abff6b6db8f186e251c5f693a2a93943cc39909d5f1e1bce5
 DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30
 DIST virtualbox-help-7.0.12.tar.xz 3945920 BLAKE2B 7f2201f3baf6d27d95dc9f878426e34a27c9f9e113d55348f57703b1bd4878df8c6f02492412b779896c48224fb2df224c953b425dde9c99d2b4dbfda1d80d4f SHA512 ddf429a984fe433c4bcbdf87930b3cc16075d4f4725d2e571e9bf05d820d26eb6f88dd6f2bd3992927b261377c84ac4e35a929113b3294e3b2887760fe7a0b52
 DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
+DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
 DIST virtualbox-patches-7.0.14.tar.bz2 6937 BLAKE2B da5f18efbba2a8f4701b3d29dc00784e4e80e18a18b029e5dce8c142eb4dc97637069bfc5081422064a7dc59dfacf503ebbdc3421caa96430dc53fa72988aa20 SHA512 57cc34b92e4626de5c445e34ae025da7ec0d752a60618c619a55c28bf7d6b1cc9dc81ea059b949b0f3e625568207e8084f9462faf487ca0daf2794e7f1feac36
+DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992
 DIST virtualbox-patches-7.1.0_pre20240210.tar.bz2 5479 BLAKE2B 98bfc9391e756df139e0dd88ca2dd5c9f6cd9c0ce5b5e770dbe28d2e6acbfd04a26b06414c2640894bd3bbd2f10a80f6053d0c6f18d27752a05cadf773e50f19 SHA512 51b0fe68f23a73d20ec3a93b1fc8c073e0bc2bfe4e2e267de6ee6f103abc44c35bb50a96f3842a1e46049418336a3327ab291972a17b8a29b596ba9be4bdb962

diff --git a/app-emulation/virtualbox/virtualbox-7.0.16.ebuild b/app-emulation/virtualbox/virtualbox-7.0.16.ebuild
new file mode 100644
index 000000000000..eb51ad77cc44
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.16.ebuild
@@ -0,0 +1,740 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl2[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		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:=
+	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/libXinerama )
+	pulseaudio? ( media-libs/libpulse )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-7.0.16/patches
+)
+
+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 python; then
+		einfo "You have disabled the \"python\" USE flag. This will only"
+		einfo "disable the python bindings being installed."
+	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
+	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
+	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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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 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
+
+	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
+
+	if use python; then
+		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
+	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,XPCOMIPCD} \
+		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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${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"
+		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
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-04-19  7:12 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-04-19  7:12 UTC (permalink / raw
  To: gentoo-commits

commit:     3746c513b73fb69ad4c9111889243ac69c49d3d8
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 19 07:08:43 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Apr 19 07:12:37 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3746c513

app-emulation/virtualbox: update live ebuild patchset

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

 app-emulation/virtualbox/Manifest               | 3 +--
 app-emulation/virtualbox/virtualbox-9999.ebuild | 6 +++---
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 71b80cb3a37a..ef90c918e514 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -3,11 +3,10 @@ DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
 DIST VirtualBox-7.0.16.tar.bz2 170897951 BLAKE2B 6b436c38df632222621723db94677a0efef5de2ac1eacec73571bc658955f23fff347fa60c37ec78c58bf94b82b8f9a95fb26c07ef4becc7e9f535af069151f5 SHA512 1b8ba08bec144cbd1f2e9aa0929cdf60a0b99930f1dd80567094fba75097d87661aef3da2cc24f4abff6b6db8f186e251c5f693a2a93943cc39909d5f1e1bce5
-DIST virtualbox-help-7.0.10.tar.xz 3941196 BLAKE2B fa6667e0cf12e2e05b896a7d9d7e1f78d43bb4618f35b3c81f5ccf5f227d1181b0c8fb1f6dc02a8619550b193a73d4094c5d3f0d43514392f9ed563085068789 SHA512 fab2dff812a438f3e78dbace24741d91b317bbbc7362f082a18f3871e3c6fd8af7744cf1b3fd3b82cf5135e03d521de05a7a5bc98ec19aacfa1b4e5392e60f30
 DIST virtualbox-help-7.0.12.tar.xz 3945920 BLAKE2B 7f2201f3baf6d27d95dc9f878426e34a27c9f9e113d55348f57703b1bd4878df8c6f02492412b779896c48224fb2df224c953b425dde9c99d2b4dbfda1d80d4f SHA512 ddf429a984fe433c4bcbdf87930b3cc16075d4f4725d2e571e9bf05d820d26eb6f88dd6f2bd3992927b261377c84ac4e35a929113b3294e3b2887760fe7a0b52
 DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
 DIST virtualbox-patches-7.0.14.tar.bz2 6937 BLAKE2B da5f18efbba2a8f4701b3d29dc00784e4e80e18a18b029e5dce8c142eb4dc97637069bfc5081422064a7dc59dfacf503ebbdc3421caa96430dc53fa72988aa20 SHA512 57cc34b92e4626de5c445e34ae025da7ec0d752a60618c619a55c28bf7d6b1cc9dc81ea059b949b0f3e625568207e8084f9462faf487ca0daf2794e7f1feac36
 DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992
-DIST virtualbox-patches-7.1.0_pre20240210.tar.bz2 5479 BLAKE2B 98bfc9391e756df139e0dd88ca2dd5c9f6cd9c0ce5b5e770dbe28d2e6acbfd04a26b06414c2640894bd3bbd2f10a80f6053d0c6f18d27752a05cadf773e50f19 SHA512 51b0fe68f23a73d20ec3a93b1fc8c073e0bc2bfe4e2e267de6ee6f103abc44c35bb50a96f3842a1e46049418336a3327ab291972a17b8a29b596ba9be4bdb962
+DIST virtualbox-patches-7.1.0_pre20240419.tar.bz2 5316 BLAKE2B 1a890b7d19cb252c7801b68c299676e2cd7a209a57a03cb39025e1a969a1c73142eb96154dae8469405f93d61969154428ea0fe3950a00d8a0a69dc8aefb4fc9 SHA512 ce4f850ce87652ef4eab039332048333949c94f0627bec8eb00d9689d7f8edcce372e2185ef8bbda9aef97781a2008b7c6464468cc38f3454dee862efc0ecdc9

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index fa51d3f6c124..7c503c7ea1c8 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -30,14 +30,14 @@ inherit desktop edo flag-o-matic java-pkg-opt-2 linux-mod-r1 multilib optfeature
 	python-single-r1 subversion tmpfiles toolchain-funcs udev xdg
 
 MY_PN="VirtualBox"
-BASE_PV=7.0.10
+BASE_PV=7.0.16
 MY_P=${MY_PN}-${PV}
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="https://www.virtualbox.org/"
 ESVN_REPO_URI="https://www.virtualbox.org/svn/vbox/trunk"
 SRC_URI="
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0_pre20240210.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0_pre20240419.tar.bz2
 	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${BASE_PV}.tar.xz ) )
 "
 S="${WORKDIR}/trunk"
@@ -198,7 +198,7 @@ REQUIRED_USE="
 
 PATCHES=(
 	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.1.0_pre20240210/patches
+	"${WORKDIR}"/virtualbox-patches-7.1.0_pre20240419/patches
 )
 
 DOCS=()	# Don't install the default README file during einstalldocs


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-04-30  4:25 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-04-30  4:25 UTC (permalink / raw
  To: gentoo-commits

commit:     83195474cf3468b89f112258745022deeaed2a31
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 30 04:23:31 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Apr 30 04:23:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83195474

app-emulation/virtualbox: Stabilize 7.0.14-r2 amd64, #928375

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

 app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild
index 6451ab1c7097..5b6ec05dfcd1 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-04-30  4:25 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-04-30  4:25 UTC (permalink / raw
  To: gentoo-commits

commit:     a50630afe54634111b602987aca57fcf4cbebd23
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 30 04:23:32 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Apr 30 04:23:32 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a50630af

app-emulation/virtualbox: Stabilize 6.1.50-r2 amd64, #928376

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

 app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild
index 61d748604580..a41107315c77 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild
@@ -31,7 +31,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2 dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
 IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
 
 unset WATCOM #856769


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-01  5:00 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-01  5:00 UTC (permalink / raw
  To: gentoo-commits

commit:     538364fc18344ed59a4b6b05b08e0db4f52ac827
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed May  1 04:53:22 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed May  1 05:00:04 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=538364fc

app-emulation/virtualbox: drop 6.1.48-r2

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

 app-emulation/virtualbox/Manifest                  |   1 -
 .../virtualbox/virtualbox-6.1.48-r2.ebuild         | 677 ---------------------
 2 files changed, 678 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index ef90c918e514..d3e28b19dee1 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,4 +1,3 @@
-DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73

diff --git a/app-emulation/virtualbox/virtualbox-6.1.48-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.48-r2.ebuild
deleted file mode 100644
index 73aee19fe61f..000000000000
--- a/app-emulation/virtualbox/virtualbox-6.1.48-r2.ebuild
+++ /dev/null
@@ -1,677 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2 dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~app-emulation/virtualbox-modules-${PV}
-	>=dev-libs/libxslt-1.1.19
-	net-misc/curl
-	dev-libs/libxml2
-	media-libs/libpng:0=
-	media-libs/libvpx:0=
-	sys-libs/zlib:=
-	!headless? (
-		sdl? ( media-libs/libsdl:0[X,video] )
-		x11-base/xorg-proto
-		x11-libs/libX11
-		x11-libs/libxcb:=
-		x11-libs/libXcursor
-		x11-libs/libXext
-		x11-libs/libXmu
-		x11-libs/libXt
-		opengl? (
-			media-libs/libglvnd[X]
-			virtual/glu
-		)
-		qt5? (
-			dev-qt/qtcore:5
-			dev-qt/qtgui:5
-			dev-qt/qtprintsupport:5
-			dev-qt/qtwidgets:5
-			dev-qt/qtx11extras:5
-			opengl? ( dev-qt/qtopengl:5 )
-			x11-libs/libXinerama
-		)
-	)
-	dev-libs/openssl:0=
-	virtual/libcrypt:=
-	lvm? ( sys-fs/lvm2 )
-	opus? ( media-libs/opus )
-	udev? ( >=virtual/udev-171 )
-	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
-	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}
-	alsa? ( >=media-libs/alsa-lib-1.0.13 )
-	!headless? (
-		x11-libs/libXinerama
-		x11-libs/libXrandr
-		opengl? ( virtual/opengl )
-	)
-	java? ( virtual/jdk:1.8 )
-	pam? ( sys-libs/pam )
-	pax-kernel? ( sys-apps/elfix )
-	pulseaudio? ( media-libs/libpulse )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=app-arch/tar-1.34-r2
-	>=dev-build/kbuild-0.1.9998.3127
-	<=dev-build/kbuild-0.1.9998.3500
-	>=dev-lang/yasm-0.6.2
-	dev-libs/libIDL
-	sys-apps/which
-	sys-devel/bin86
-	sys-libs/libcap
-	sys-power/iasl
-	virtual/pkgconfig
-	doc? (
-		app-text/docbook-sgml-dtd:4.4
-		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.8 )
-	qt5? ( dev-qt/linguist-tools:5 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	java? ( virtual/jre:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
-
-	# This patch is needed to avoid automagic detection based on a hardcoded
-	# list of Pythons in configure. It's necessary but not sufficient
-	# (see the rest of the ebuild's logic for the remainder) to handle
-	# proper Python selection.
-	"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
-
-	# 865361
-	"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
-
-	# 906309
-	"${FILESDIR}"/${PN}-6.1.44-fix-libxml2.patch
-	# 922445
-	"${FILESDIR}"/${PN}-7.0.14-libxml2-2.12.patch
-
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-6.1.36/patches
-)
-
-pkg_pretend() {
-	if ! use headless && ! use qt5 ; then
-		einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
-	elif use headless && use qt5 ; then
-		einfo "You selected USE=\"headless qt5\", 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
-
-	# 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
-	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), see bug #232775
-	rm -r kBuild/bin tools || die
-
-	# Replace pointless GCC version check with something more sensible.
-	# This is needed for the qt5 version check.
-	sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
-		-i configure || 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
-
-	# 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
-	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
-
-	# 890561
-	echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
-}
-
-src_configure() {
-	tc-ld-disable-gold # bug #488176
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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
-
-	tc-export AR CC CXX LD RANLIB
-	export HOST_CC="$(tc-getBUILD_CC)"
-
-	local myconf=(
-		--with-gcc="$(tc-getCC)"
-		--with-g++="$(tc-getCXX)"
-
-		--disable-dbus
-		--disable-kmods
-
-		$(usev !alsa --disable-alsa)
-		$(usev debug --build-debug)
-		$(usev !doc --disable-docs)
-		$(usev !java --disable-java)
-		$(usev !lvm --disable-devmapper)
-		$(usev !opus --disable-libopus)
-		$(usev !pulseaudio --disable-pulse)
-		$(usev !python --disable-python)
-		$(usev vboxwebsrv --enable-webservice)
-		$(usev vnc --enable-vnc)
-	)
-
-	if ! use headless ; then
-		myconf+=(
-			$(usev !opengl --disable-opengl)
-			$(usev !qt5 --disable-qt)
-			$(usev !sdl --disable-sdl)
-		)
-	else
-		myconf+=(
-			--build-headless
-			--disable-opengl
-		)
-	fi
-
-	if use amd64 && ! has_multilib_profile ; then
-		myconf+=( --disable-vmmraw )
-	fi
-
-	# bug #843437
-	cat >> LocalConfig.kmk <<-EOF || die
-		CXXFLAGS=${CXXFLAGS}
-		CFLAGS=${CFLAGS}
-	EOF
-
-	# 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
-
-	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
-
-	if use python ; then
-		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
-	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,Tunctl,VMMPreload,XPCOMIPCD} \
-		vboximg-mount *so *r0 iPxeBaseBin ; 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}/VBoxTunctl /usr/bin/VBoxTunctl
-	dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
-
-	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 -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
-	doenvd "${T}/90virtualbox"
-
-	if ! use headless ; then
-		vbox_inst rdesktop-vrdp
-		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 qt5 ; then
-			vbox_inst VirtualBox
-			vbox_inst VirtualBoxVM 4750
-			for each in VirtualBox{,VM} ; do
-				pax-mark -m "${ED}"${vbox_inst_path}/${each}
-			done
-
-			if use opengl ; then
-				vbox_inst VBoxTestOGL
-				pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-			fi
-
-			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
-		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
-		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
-	fi
-
-	if use python ; then
-		local mangled_python="${EPYTHON#python}"
-		mangled_python="${mangled_python/./_}"
-
-		local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.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
-	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 headless && use qt5 ; 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-01  5:00 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-01  5:00 UTC (permalink / raw
  To: gentoo-commits

commit:     492e1a90a8115103461bc799fe0bf18fb4bff95f
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed May  1 04:53:40 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed May  1 05:00:04 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=492e1a90

app-emulation/virtualbox: drop 7.0.12-r2

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

 app-emulation/virtualbox/Manifest                  |   2 -
 .../virtualbox/virtualbox-7.0.12-r2.ebuild         | 739 ---------------------
 2 files changed, 741 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index d3e28b19dee1..433ad0e91e4c 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,8 +1,6 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
-DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
 DIST VirtualBox-7.0.16.tar.bz2 170897951 BLAKE2B 6b436c38df632222621723db94677a0efef5de2ac1eacec73571bc658955f23fff347fa60c37ec78c58bf94b82b8f9a95fb26c07ef4becc7e9f535af069151f5 SHA512 1b8ba08bec144cbd1f2e9aa0929cdf60a0b99930f1dd80567094fba75097d87661aef3da2cc24f4abff6b6db8f186e251c5f693a2a93943cc39909d5f1e1bce5
-DIST virtualbox-help-7.0.12.tar.xz 3945920 BLAKE2B 7f2201f3baf6d27d95dc9f878426e34a27c9f9e113d55348f57703b1bd4878df8c6f02492412b779896c48224fb2df224c953b425dde9c99d2b4dbfda1d80d4f SHA512 ddf429a984fe433c4bcbdf87930b3cc16075d4f4725d2e571e9bf05d820d26eb6f88dd6f2bd3992927b261377c84ac4e35a929113b3294e3b2887760fe7a0b52
 DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

diff --git a/app-emulation/virtualbox/virtualbox-7.0.12-r2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.12-r2.ebuild
deleted file mode 100644
index a45c4f947cb0..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.12-r2.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
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.14.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.14/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-
-	# 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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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-ld-disable-gold # bug #488176
-
-	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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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"
-		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
-		python_doscript vboxshell.py
-
-		# do not install the installer
-		rm -r "${installer_dir}" || 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-03 17:41 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-03 17:41 UTC (permalink / raw
  To: gentoo-commits

commit:     1af4614812276b7cb969615c6c84917005dcc314
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri May  3 16:51:33 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri May  3 17:40:56 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1af46148

app-emulation/virtualbox: add 7.0.18

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

 app-emulation/virtualbox/Manifest                 |   2 +
 app-emulation/virtualbox/virtualbox-7.0.18.ebuild | 741 ++++++++++++++++++++++
 2 files changed, 743 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 433ad0e91e4c..ff5cc24483ec 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,8 +1,10 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
 DIST VirtualBox-7.0.16.tar.bz2 170897951 BLAKE2B 6b436c38df632222621723db94677a0efef5de2ac1eacec73571bc658955f23fff347fa60c37ec78c58bf94b82b8f9a95fb26c07ef4becc7e9f535af069151f5 SHA512 1b8ba08bec144cbd1f2e9aa0929cdf60a0b99930f1dd80567094fba75097d87661aef3da2cc24f4abff6b6db8f186e251c5f693a2a93943cc39909d5f1e1bce5
+DIST VirtualBox-7.0.18.tar.bz2 173295159 BLAKE2B 1371d54d648aafbad3814d55d495836ce7a6f9ca955aeb71e24c57a27ed8acae8c020b8094ca7386d341d5e7460b9b0823cc01e7e69dd3cdadaadee1bc608bd1 SHA512 e78a18fa808152cbdc1d407751acf3f57a8202bf238ad3432c4f0b0f97ab203e915a6cd11619e64f4aca5b907eb72be67bab146869af0e73414144addf0d76b4
 DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
+DIST virtualbox-help-7.0.18.tar.xz 3948116 BLAKE2B 5715a7e609297387b5fccce0951c62e5969fd68adeecb869712e69f5e90daef97384bd3ff3c39de40903a1fabe7ac6d2f8ecdbb40de16abe955d40e49b962eec SHA512 ec0f915b7221bc40d02f5f1675eb0defb5506b2f2bd96c063a96a9346e1c82428ccdda8b3adac43238c451ae185ac31af4a186da17ffe091469e14e696388b3a
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
 DIST virtualbox-patches-7.0.14.tar.bz2 6937 BLAKE2B da5f18efbba2a8f4701b3d29dc00784e4e80e18a18b029e5dce8c142eb4dc97637069bfc5081422064a7dc59dfacf503ebbdc3421caa96430dc53fa72988aa20 SHA512 57cc34b92e4626de5c445e34ae025da7ec0d752a60618c619a55c28bf7d6b1cc9dc81ea059b949b0f3e625568207e8084f9462faf487ca0daf2794e7f1feac36
 DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18.ebuild
new file mode 100644
index 000000000000..bf56c96cb843
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.18.ebuild
@@ -0,0 +1,741 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	acct-group/vboxusers
+	~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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	lvm? ( sys-fs/lvm2 )
+	opengl? (
+		media-libs/libglvnd[X]
+		media-libs/vulkan-loader
+		x11-libs/libX11
+		x11-libs/libXt
+	)
+	pam? ( sys-libs/pam )
+	sdl? (
+		media-libs/libsdl2[X,video]
+		x11-libs/libX11
+		x11-libs/libXcursor
+		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:=
+	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/libXinerama )
+	pulseaudio? ( media-libs/libpulse )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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 )
+	vboxwebsrv? ( java )
+	${PYTHON_REQUIRED_USE}
+"
+
+PATCHES=(
+	# Downloaded patchset
+	"${WORKDIR}"/virtualbox-patches-7.0.16/patches
+)
+
+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 python; then
+		einfo "You have disabled the \"python\" USE flag. This will only"
+		einfo "disable the python bindings being installed."
+	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
+	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
+	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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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 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
+
+	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
+
+	if use python; then
+		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
+	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,XPCOMIPCD} \
+		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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${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"
+		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
+		sed -e "1 i\#! ${PYTHON}" -i vboxshell.py || die
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-03 17:41 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-03 17:41 UTC (permalink / raw
  To: gentoo-commits

commit:     3656e0f1b7d50c776caa9c6f53832f6fe7df9a30
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri May  3 17:21:26 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri May  3 17:40:57 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3656e0f1

app-emulation/virtualbox: drop 7.0.16

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

 app-emulation/virtualbox/Manifest                 |   1 -
 app-emulation/virtualbox/virtualbox-7.0.16.ebuild | 740 ----------------------
 2 files changed, 741 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index ff5cc24483ec..05788a2aa308 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,6 +1,5 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
-DIST VirtualBox-7.0.16.tar.bz2 170897951 BLAKE2B 6b436c38df632222621723db94677a0efef5de2ac1eacec73571bc658955f23fff347fa60c37ec78c58bf94b82b8f9a95fb26c07ef4becc7e9f535af069151f5 SHA512 1b8ba08bec144cbd1f2e9aa0929cdf60a0b99930f1dd80567094fba75097d87661aef3da2cc24f4abff6b6db8f186e251c5f693a2a93943cc39909d5f1e1bce5
 DIST VirtualBox-7.0.18.tar.bz2 173295159 BLAKE2B 1371d54d648aafbad3814d55d495836ce7a6f9ca955aeb71e24c57a27ed8acae8c020b8094ca7386d341d5e7460b9b0823cc01e7e69dd3cdadaadee1bc608bd1 SHA512 e78a18fa808152cbdc1d407751acf3f57a8202bf238ad3432c4f0b0f97ab203e915a6cd11619e64f4aca5b907eb72be67bab146869af0e73414144addf0d76b4
 DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c

diff --git a/app-emulation/virtualbox/virtualbox-7.0.16.ebuild b/app-emulation/virtualbox/virtualbox-7.0.16.ebuild
deleted file mode 100644
index eb51ad77cc44..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.16.ebuild
+++ /dev/null
@@ -1,740 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.16/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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"
-		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
-		python_doscript vboxshell.py
-
-		# do not install the installer
-		rm -r "${installer_dir}" || 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-25  9:53 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-25  9:53 UTC (permalink / raw
  To: gentoo-commits

commit:     9ac87088df0e2ce3fb2df12e7dd671196a42fa6c
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat May 25 09:44:19 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat May 25 09:52:42 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ac87088

app-emulation/virtualbox: sync live ebuild

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

 app-emulation/virtualbox/virtualbox-9999.ebuild | 35 +++++++++++++------------
 1 file changed, 18 insertions(+), 17 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 7c503c7ea1c8..4877f03e927f 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -44,12 +44,11 @@ S="${WORKDIR}/trunk"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+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="
-	${PYTHON_DEPS}
 	acct-group/vboxusers
 	app-arch/xz-utils
 	dev-libs/libtpms
@@ -75,6 +74,7 @@ COMMON_DEPEND="
 		x11-libs/libXt
 	)
 	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
 	sdl? (
 		media-libs/libsdl2[X,video]
 		x11-libs/libX11
@@ -191,9 +191,8 @@ QA_PRESTRIPPED="
 
 REQUIRED_USE="
 	java? ( sdk )
-	python? ( sdk )
+	python? ( sdk ${PYTHON_REQUIRED_USE} )
 	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
 "
 
 PATCHES=(
@@ -214,10 +213,6 @@ pkg_pretend() {
 		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
 	if ! use nls && use gui; then
 		einfo "USE=\"gui\" also selects USE=\"nls\".  This build"
 		einfo "will have NLS support."
@@ -235,7 +230,7 @@ pkg_pretend() {
 
 pkg_setup() {
 	java-pkg-opt-2_pkg_setup
-	python-single-r1_pkg_setup
+	use python && python-single-r1_pkg_setup
 	linux-mod-r1_pkg_setup
 }
 
@@ -267,6 +262,9 @@ src_prepare() {
 			>> LocalConfig.kmk || die
 	fi
 
+	# bug #916002, #488176
+	tc-ld-force-bfd
+
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
 		-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
@@ -358,8 +356,6 @@ src_prepare() {
 }
 
 src_configure() {
-	tc-ld-disable-gold # bug #488176
-
 	tc-export AR CC CXX LD RANLIB
 	export HOST_CC="$(tc-getBUILD_CC)"
 
@@ -379,6 +375,7 @@ src_configure() {
 		$(usev !python --disable-python)
 		$(usev vboxwebsrv --enable-webservice)
 		$(usev vde --enable-vde)
+		$(usev !vmmraw --disable-vmmraw)
 		$(usev vnc --enable-vnc)
 	)
 
@@ -409,13 +406,13 @@ src_configure() {
 		-e '/VBOX_LIB_PYTHON.*=/d' \
 		AutoConfig.kmk || die
 
-	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
-
 	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/.}"
 
@@ -432,6 +429,10 @@ src_configure() {
 		EOF
 
 		chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die
+	else
+		cat >> AutoConfig.kmk <<-EOF || die
+			VBOX_WITH_PYTHON:=
+		EOF
 	fi
 }
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-25  9:53 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-25  9:53 UTC (permalink / raw
  To: gentoo-commits

commit:     4d068d135757ec370cd2fd8c8c707891cc135241
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat May 25 07:10:47 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat May 25 09:52:42 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d068d13

app-emulation/virtualbox: make python dependency optional

Do not depend on python if built with USE=-python.
This should make the upgrade less annoying when python 3.12 becomes the
default.

Bug: https://bugs.gentoo.org/929313
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 .../virtualbox/virtualbox-7.0.18-r1.ebuild         | 740 +++++++++++++++++++++
 1 file changed, 740 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
new file mode 100644
index 000000000000..680839fe4adf
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
@@ -0,0 +1,740 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+
+unset WATCOM #856769
+
+COMMON_DEPEND="
+	acct-group/vboxusers
+	~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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	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/libXcursor
+		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:=
+	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/libXinerama )
+	pulseaudio? ( media-libs/libpulse )
+	udev? ( >=virtual/udev-171 )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	gui? ( x11-libs/libxcb:= )
+	java? ( virtual/jre:1.8 )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	java? ( virtual/jdk:1.8 )
+"
+
+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.0.16/patches
+)
+
+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
+	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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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 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,XPCOMIPCD} \
+		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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${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"
+		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
+		sed -e "1 i\#! ${PYTHON}" -i vboxshell.py || die
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-05-25  9:53 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-05-25  9:53 UTC (permalink / raw
  To: gentoo-commits

commit:     14674f7dbb371b69cf99edf98aa6434405b96f75
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat May 25 09:08:13 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat May 25 09:52:42 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14674f7d

app-emulation/virtualbox: add use flag for IA32 support

Closes: https://bugs.gentoo.org/922376
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/metadata.xml                | 11 ++++++-----
 app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild |  3 ++-
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index 0a281e0f998b..04d0c63679f3 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -6,13 +6,14 @@
     <name>Viorel Munteanu</name>
   </maintainer>
   <use>
-    <flag name="dtrace">Install dtrace Extension Pack</flag>
-    <flag name="headless">Build without any graphic frontend</flag>
+    <flag name="dtrace">Install dtrace Extension Pack.</flag>
+    <flag name="headless">Build without any graphic frontend.</flag>
     <flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
     <flag name="pax-kernel">Apply patch needed for pax enabled kernels.</flag>
-    <flag name="sdk">Enable building of SDK</flag>
+    <flag name="sdk">Enable building of SDK.</flag>
     <flag name="udev">Controls installation of special USB udev rules.</flag>
-    <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
-    <flag name="vde">Support for VDE networking via <pkg>net-misc/vde</pkg></flag>
+    <flag name="vboxwebsrv">Build and install the VirtualBox webservice.</flag>
+    <flag name="vde">Support for VDE networking via <pkg>net-misc/vde</pkg>.</flag>
+    <flag name="vmmraw">Enable 32-bit support on a 64-bit kernel.</flag>
   </use>
 </pkgmetadata>

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
index 680839fe4adf..625c260d0476 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
@@ -35,7 +35,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
 KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
+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
 
@@ -358,6 +358,7 @@ src_configure() {
 		$(usev !python --disable-python)
 		$(usev vboxwebsrv --enable-webservice)
 		$(usev vde --enable-vde)
+		$(usev !vmmraw --disable-vmmraw)
 		$(usev vnc --enable-vnc)
 	)
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-06-03  8:07 Sam James
  0 siblings, 0 replies; 198+ messages in thread
From: Sam James @ 2024-06-03  8:07 UTC (permalink / raw
  To: gentoo-commits

commit:     3880b1334dd6574450b95785f251e4131d19a9fc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  3 08:07:16 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun  3 08:07:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3880b133

app-emulation/virtualbox: Stabilize 7.0.18-r1 amd64, #933448

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
index 625c260d0476..c36898c8de73 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+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


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-06-03 11:32 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-06-03 11:32 UTC (permalink / raw
  To: gentoo-commits

commit:     8583a1688f2e8a80f55bd4b498ce7e4b01651d0a
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  3 11:18:52 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon Jun  3 11:32:08 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8583a168

app-emulation/virtualbox: remove python from BDEPEND if not used

RDEPEND was conditional, but BDEPEND was not.

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

 app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
index c36898c8de73..1977c56b1a5d 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
@@ -125,7 +125,6 @@ RDEPEND="
 	java? ( virtual/jre:1.8 )
 "
 BDEPEND="
-	${PYTHON_DEPS}
 	>=app-arch/tar-1.34-r2
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL
@@ -149,6 +148,7 @@ BDEPEND="
 	)
 	gui? ( dev-qt/linguist-tools:5 )
 	nls? ( dev-qt/linguist-tools:5 )
+	python? ( ${PYTHON_DEPS} )
 	java? ( virtual/jdk:1.8 )
 "
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-06-03 11:32 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-06-03 11:32 UTC (permalink / raw
  To: gentoo-commits

commit:     3ce33546c6713b5b7bd2d44dec7f9ae6cb8bbccc
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  3 11:16:32 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon Jun  3 11:32:08 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ce33546

app-emulation/virtualbox: backport python detangling to 6.1

Will commit straight to stable because this is the last version in 6.1
and also because the change applies to build time only for USE=-python.

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

 ....1.50-r2.ebuild => virtualbox-6.1.50-r3.ebuild} | 29 +++++++++++-----------
 1 file changed, 14 insertions(+), 15 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.50-r3.ebuild
similarity index 97%
rename from app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild
rename to app-emulation/virtualbox/virtualbox-6.1.50-r3.ebuild
index a41107315c77..fa179b79846c 100644
--- a/app-emulation/virtualbox/virtualbox-6.1.50-r2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-6.1.50-r3.ebuild
@@ -37,7 +37,6 @@ IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudi
 unset WATCOM #856769
 
 COMMON_DEPEND="
-	${PYTHON_DEPS}
 	acct-group/vboxusers
 	~app-emulation/virtualbox-modules-${PV}
 	>=dev-libs/libxslt-1.1.19
@@ -73,6 +72,7 @@ COMMON_DEPEND="
 	virtual/libcrypt:=
 	lvm? ( sys-fs/lvm2 )
 	opus? ( media-libs/opus )
+	python? ( ${PYTHON_DEPS} )
 	udev? ( >=virtual/udev-171 )
 	vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
 	vnc? ( >=net-libs/libvncserver-0.9.9 )
@@ -101,7 +101,6 @@ DEPEND="
 	pulseaudio? ( media-libs/libpulse )
 "
 BDEPEND="
-	${PYTHON_DEPS}
 	>=app-arch/tar-1.34-r2
 	>=dev-build/kbuild-0.1.9998.3127
 	<=dev-build/kbuild-0.1.9998.3500
@@ -122,6 +121,7 @@ BDEPEND="
 		dev-texlive/texlive-fontsextra
 	)
 	java? ( virtual/jdk:1.8 )
+	python? ( ${PYTHON_DEPS} )
 	qt5? ( dev-qt/linguist-tools:5 )
 "
 RDEPEND="
@@ -161,9 +161,8 @@ QA_PRESTRIPPED="
 
 REQUIRED_USE="
 	java? ( sdk )
-	python? ( sdk )
+	python? ( sdk ${PYTHON_REQUIRED_USE} )
 	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
 "
 
 PATCHES=(
@@ -199,10 +198,6 @@ pkg_pretend() {
 		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
 
 	# 749273
 	local d=${ROOT}
@@ -216,7 +211,7 @@ pkg_pretend() {
 
 pkg_setup() {
 	java-pkg-opt-2_pkg_setup
-	python-single-r1_pkg_setup
+	use python && python-single-r1_pkg_setup
 }
 
 src_prepare() {
@@ -350,13 +345,13 @@ src_configure() {
 		-e '/VBOX_LIB_PYTHON.*=/d' \
 		AutoConfig.kmk || die
 
-	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
-
 	if use python ; then
+		cat >> AutoConfig.kmk <<-EOF || die
+			VBOX_WITH_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/.}"
 
@@ -373,6 +368,10 @@ src_configure() {
 		EOF
 
 		chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die
+	else
+		cat >> AutoConfig.kmk <<-EOF || die
+			VBOX_WITH_PYTHON:=
+		EOF
 	fi
 }
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-06-05  4:53 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-06-05  4:53 UTC (permalink / raw
  To: gentoo-commits

commit:     4299bc8a576524fd0fa26b91e8ecd012435dee5f
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  5 04:48:01 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Jun  5 04:52:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4299bc8a

app-emulation/virtualbox: drop 7.0.18

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

 app-emulation/virtualbox/virtualbox-7.0.18.ebuild | 741 ----------------------
 1 file changed, 741 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18.ebuild
deleted file mode 100644
index bf56c96cb843..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.18.ebuild
+++ /dev/null
@@ -1,741 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.16/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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"
-		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
-		sed -e "1 i\#! ${PYTHON}" -i vboxshell.py || die
-		python_doscript vboxshell.py
-
-		# do not install the installer
-		rm -r "${installer_dir}" || 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-06-05  4:53 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-06-05  4:53 UTC (permalink / raw
  To: gentoo-commits

commit:     48c3a7478f7ab5214587910d6b3fabd594a90bf9
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  5 04:48:16 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Wed Jun  5 04:52:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48c3a747

app-emulation/virtualbox: drop 7.0.14-r2

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

 app-emulation/virtualbox/Manifest                  |   3 -
 .../virtualbox/virtualbox-7.0.14-r2.ebuild         | 740 ---------------------
 2 files changed, 743 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 05788a2aa308..af2da09fb0a3 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,10 +1,7 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
-DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73
 DIST VirtualBox-7.0.18.tar.bz2 173295159 BLAKE2B 1371d54d648aafbad3814d55d495836ce7a6f9ca955aeb71e24c57a27ed8acae8c020b8094ca7386d341d5e7460b9b0823cc01e7e69dd3cdadaadee1bc608bd1 SHA512 e78a18fa808152cbdc1d407751acf3f57a8202bf238ad3432c4f0b0f97ab203e915a6cd11619e64f4aca5b907eb72be67bab146869af0e73414144addf0d76b4
-DIST virtualbox-help-7.0.14.tar.xz 3944832 BLAKE2B 95079e4da8c960c41cee799142779a6c2587e0e8af7956ca551cb5a4c0f36f313189dfe08afba83a0c32886866a7f9903b5e370008d6b3ce6283fb2288866b06 SHA512 e2f1acdd7577a93047e220300b1996d2855ddef20053c01294f8295fde0840645c41b75632d71dd2fc276219084fe4105fd057623f39375542358796425a2d03
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 DIST virtualbox-help-7.0.18.tar.xz 3948116 BLAKE2B 5715a7e609297387b5fccce0951c62e5969fd68adeecb869712e69f5e90daef97384bd3ff3c39de40903a1fabe7ac6d2f8ecdbb40de16abe955d40e49b962eec SHA512 ec0f915b7221bc40d02f5f1675eb0defb5506b2f2bd96c063a96a9346e1c82428ccdda8b3adac43238c451ae185ac31af4a186da17ffe091469e14e696388b3a
 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
-DIST virtualbox-patches-7.0.14.tar.bz2 6937 BLAKE2B da5f18efbba2a8f4701b3d29dc00784e4e80e18a18b029e5dce8c142eb4dc97637069bfc5081422064a7dc59dfacf503ebbdc3421caa96430dc53fa72988aa20 SHA512 57cc34b92e4626de5c445e34ae025da7ec0d752a60618c619a55c28bf7d6b1cc9dc81ea059b949b0f3e625568207e8084f9462faf487ca0daf2794e7f1feac36
 DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992
 DIST virtualbox-patches-7.1.0_pre20240419.tar.bz2 5316 BLAKE2B 1a890b7d19cb252c7801b68c299676e2cd7a209a57a03cb39025e1a969a1c73142eb96154dae8469405f93d61969154428ea0fe3950a00d8a0a69dc8aefb4fc9 SHA512 ce4f850ce87652ef4eab039332048333949c94f0627bec8eb00d9689d7f8edcce372e2185ef8bbda9aef97781a2008b7c6464468cc38f3454dee862efc0ecdc9

diff --git a/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild b/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild
deleted file mode 100644
index 5b6ec05dfcd1..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.14-r2.ebuild
+++ /dev/null
@@ -1,740 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.14.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64"
-IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
-
-unset WATCOM #856769
-
-COMMON_DEPEND="
-	${PYTHON_DEPS}
-	acct-group/vboxusers
-	~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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	lvm? ( sys-fs/lvm2 )
-	opengl? (
-		media-libs/libglvnd[X]
-		media-libs/vulkan-loader
-		x11-libs/libX11
-		x11-libs/libXt
-	)
-	pam? ( sys-libs/pam )
-	sdl? (
-		media-libs/libsdl2[X,video]
-		x11-libs/libX11
-		x11-libs/libXcursor
-		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:=
-	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/libXinerama )
-	pulseaudio? ( media-libs/libpulse )
-	udev? ( >=virtual/udev-171 )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	gui? ( x11-libs/libxcb:= )
-	java? ( virtual/jre:1.8 )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	java? ( virtual/jdk:1.8 )
-"
-
-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 )
-	vboxwebsrv? ( java )
-	${PYTHON_REQUIRED_USE}
-"
-
-PATCHES=(
-	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.0.14/patches
-)
-
-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 python; then
-		einfo "You have disabled the \"python\" USE flag. This will only"
-		einfo "disable the python bindings being installed."
-	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
-	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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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 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
-
-	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
-
-	if use python; then
-		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
-	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,XPCOMIPCD} \
-		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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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"
-		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
-		python_doscript vboxshell.py
-
-		# do not install the installer
-		rm -r "${installer_dir}" || 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-06-17 15:25 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-06-17 15:25 UTC (permalink / raw
  To: gentoo-commits

commit:     d872a93a83e169f21c10a2099ead1d84f60fc88c
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 17 15:23:45 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon Jun 17 15:25:07 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d872a93a

app-emulation/virtualbox: resort BDEPEND

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

 app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
index 1977c56b1a5d..be25e287f25e 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
@@ -148,8 +148,8 @@ BDEPEND="
 	)
 	gui? ( dev-qt/linguist-tools:5 )
 	nls? ( dev-qt/linguist-tools:5 )
-	python? ( ${PYTHON_DEPS} )
 	java? ( virtual/jdk:1.8 )
+	python? ( ${PYTHON_DEPS} )
 "
 
 QA_FLAGS_IGNORED="


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-07-16 18:13 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-07-16 18:13 UTC (permalink / raw
  To: gentoo-commits

commit:     8bf5a68258d246c16cc43e8cc508603941e69899
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 16 17:55:08 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Jul 16 18:12:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8bf5a682

app-emulation/virtualbox: add 7.0.20

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

 app-emulation/virtualbox/Manifest                 |   2 +
 app-emulation/virtualbox/virtualbox-7.0.20.ebuild | 741 ++++++++++++++++++++++
 2 files changed, 743 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index af2da09fb0a3..aa317186757e 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,9 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 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-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 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-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_pre20240419.tar.bz2 5316 BLAKE2B 1a890b7d19cb252c7801b68c299676e2cd7a209a57a03cb39025e1a969a1c73142eb96154dae8469405f93d61969154428ea0fe3950a00d8a0a69dc8aefb4fc9 SHA512 ce4f850ce87652ef4eab039332048333949c94f0627bec8eb00d9689d7f8edcce372e2185ef8bbda9aef97781a2008b7c6464468cc38f3454dee862efc0ecdc9

diff --git a/app-emulation/virtualbox/virtualbox-7.0.20.ebuild b/app-emulation/virtualbox/virtualbox-7.0.20.ebuild
new file mode 100644
index 000000000000..ac0bf0cafce8
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.0.20.ebuild
@@ -0,0 +1,741 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+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-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/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qthelp:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		dev-qt/qtxml:5
+		x11-libs/libX11
+		x11-libs/libXt
+		opengl? ( dev-qt/qtopengl:5 )
+	)
+	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/libXcursor
+		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:=
+	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/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/linguist-tools:5 )
+	nls? ( dev-qt/linguist-tools:5 )
+	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.0.16/patches
+)
+
+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
+	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
+
+	#856811 #864274
+	# cannot filter out only one flag, some combinations of these flags produce buggy executables
+	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
+		append-cflags $(test-flags-CC -mno-$i)
+		append-cxxflags $(test-flags-CXX -mno-$i)
+	done
+
+	# 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,XPCOMIPCD} \
+		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
+
+		if use opengl; then
+			vbox_inst VBoxTestOGL
+			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
+		fi
+
+		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-${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"
+		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
+		sed -e "1 i\#! ${PYTHON}" -i vboxshell.py || die
+		python_doscript vboxshell.py
+
+		# do not install the installer
+		rm -r "${installer_dir}" || 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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-07-26 15:02 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-07-26 15:02 UTC (permalink / raw
  To: gentoo-commits

commit:     a11f1f4701706742d6114104cbf4da827714026f
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 26 14:36:43 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Jul 26 14:58:47 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a11f1f47

app-emulation/virtualbox: add 7.1.0_beta1

This is a beta version, add unkeyworded.
Branch 7.1 uses QT6.

Cannot build the docs because:
- this uses https://github.com/dita-ot/dita-ot (not yet packaged) to
  build the docs
- dita-ot needs java 17
- java 17 lacks wsimport and virtualbox does not compile without it, and
  I wouldn't want to require both java 1.8 and java 17.
For now mask the doc USE flag.

If built with certain CFLAGS, does not start (xpcom errors).
Do not respect user CFLAGS until I figure out a fix.

Python 3.12 and python 3.13 still crash.

Bug: https://bugs.gentoo.org/878299
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/Manifest                  |   3 +-
 .../virtualbox/virtualbox-7.1.0_beta1.ebuild       | 732 +++++++++++++++++++++
 2 files changed, 734 insertions(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index aa317186757e..04a5a40741f9 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,9 +1,10 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 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_BETA1.tar.bz2 210810840 BLAKE2B adc772165041abf38b748fb92d2923428022631fe1d8e13332142c46e989b2e3408036755f6faa00958b679b200b77d295979451bde2bb2f09917ce1c5e0cf28 SHA512 33fe6000ad58f6cedab69c15384da518e05e946792045ab36f93f54b429accc586914ae1f1532560c78c323b478798296d71795a4baaa3bd6714880a33e69c5e
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 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-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_pre20240419.tar.bz2 5316 BLAKE2B 1a890b7d19cb252c7801b68c299676e2cd7a209a57a03cb39025e1a969a1c73142eb96154dae8469405f93d61969154428ea0fe3950a00d8a0a69dc8aefb4fc9 SHA512 ce4f850ce87652ef4eab039332048333949c94f0627bec8eb00d9689d7f8edcce372e2185ef8bbda9aef97781a2008b7c6464468cc38f3454dee862efc0ecdc9
+DIST virtualbox-patches-7.1.0_beta1.tar.bz2 5287 BLAKE2B 5286b5ad2a8c54150f58e2675383ed611b385b9758e1ed6bf81c7551f01724f5132591b3f173b9605c226a200cf70bf3b170ab6c174554b34ed57ada7e35a12b SHA512 d1599d990dd3341393c4be5f5d947b15de9345b6f1d7201fb44c2506d299479564ca7bf5a0c45ade14998e7a48c300e4514da626a248c0447fd31f3cb31e6715

diff --git a/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild b/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
new file mode 100644
index 000000000000..ec70d27ee663
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
@@ -0,0 +1,732 @@
+# 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
+)
+
+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
+	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
+
+	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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-07-26 15:02 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-07-26 15:02 UTC (permalink / raw
  To: gentoo-commits

commit:     48878ddc9d5b97679f9ad2c34a1ad925b528597c
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 26 14:53:21 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Jul 26 14:58:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48878ddc

app-emulation/virtualbox: sync live ebuild

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

 app-emulation/virtualbox/virtualbox-9999.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index 4877f03e927f..b61db28003e9 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -37,7 +37,7 @@ DESCRIPTION="Family of powerful x86 virtualization products for enterprise and h
 HOMEPAGE="https://www.virtualbox.org/"
 ESVN_REPO_URI="https://www.virtualbox.org/svn/vbox/trunk"
 SRC_URI="
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0_pre20240419.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-${BASE_PV}.tar.xz ) )
 "
 S="${WORKDIR}/trunk"
@@ -197,7 +197,7 @@ REQUIRED_USE="
 
 PATCHES=(
 	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.1.0_pre20240419/patches
+	"${WORKDIR}"/virtualbox-patches-7.1.0_beta1/patches
 )
 
 DOCS=()	# Don't install the default README file during einstalldocs


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-08-15 12:56 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-08-15 12:56 UTC (permalink / raw
  To: gentoo-commits

commit:     1552efd66ee6515a05ba36c56d6161294eef11c0
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 15 12:54:43 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 12:55:50 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1552efd6

app-emulation/virtualbox: respect CFLAGS

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

 app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild b/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
index ec70d27ee663..cc9921a521ed 100644
--- a/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
@@ -281,6 +281,12 @@ src_prepare() {
 	# 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


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-08-22 11:20 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-08-22 11:20 UTC (permalink / raw
  To: gentoo-commits

commit:     405ccd399515ac5d58bef5c5bbe807ce3139030a
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 22 11:19:15 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Aug 22 11:20:34 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=405ccd39

app-emulation/virtualbox: add 7.1.0_beta2, drop 7.1.0_beta1

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

 app-emulation/virtualbox/Manifest                                       | 2 +-
 .../{virtualbox-7.1.0_beta1.ebuild => virtualbox-7.1.0_beta2.ebuild}    | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 04a5a40741f9..22bb0c1104a5 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,7 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 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_BETA1.tar.bz2 210810840 BLAKE2B adc772165041abf38b748fb92d2923428022631fe1d8e13332142c46e989b2e3408036755f6faa00958b679b200b77d295979451bde2bb2f09917ce1c5e0cf28 SHA512 33fe6000ad58f6cedab69c15384da518e05e946792045ab36f93f54b429accc586914ae1f1532560c78c323b478798296d71795a4baaa3bd6714880a33e69c5e
+DIST VirtualBox-7.1.0_BETA2.tar.bz2 208790183 BLAKE2B 30d1fb0a37463ab4bf8673414cc56c51f618755fe4ec23720379df2519af7af3664c51c0b49955ee03ffdba0a55e67ec75df6af6d2ff79cd611b50c16048df3e SHA512 730c9728e9bdf46e6846c423c13e8e438716eff518f30b102ef29eb71b6c88aa70fc786f1e8b63f9641ef0f90dd6c9768c4fbf002db9fc15ceb22865b4182b1e
 DIST virtualbox-help-7.0.16.tar.xz 3948696 BLAKE2B 5c5937313ea0e5cb4764b8a61fd1587e88a4afc965ef00862c5a265a15253929d35e0635231b6be5656f26f600bc4b70a2fa2ebc0f33b35d35c184b57e5acef8 SHA512 b9baca57118a82e3489c8445f0988671f16f75de60cc2d929d5e3b0c4c9e3ceacd796a72a81bba88d69eb4b4559835a13775c18d7782ae7dbe8ad202e247db0c
 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

diff --git a/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild b/app-emulation/virtualbox/virtualbox-7.1.0_beta2.ebuild
similarity index 99%
rename from app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
rename to app-emulation/virtualbox/virtualbox-7.1.0_beta2.ebuild
index 40cc4cfebb03..19e72e29a5e4 100644
--- a/app-emulation/virtualbox/virtualbox-7.1.0_beta1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.1.0_beta2.ebuild
@@ -195,7 +195,7 @@ REQUIRED_USE="
 PATCHES=(
 	# Downloaded patchset
 	"${WORKDIR}"/virtualbox-patches-7.1.0_beta1/patches
-	"${FILESDIR}"/${P}-link-with-mold.patch
+	"${FILESDIR}"/${PN}-7.1.0_beta1-link-with-mold.patch
 )
 
 DOCS=()	# Don't install the default README file during einstalldocs


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-09-01 10:45 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-09-01 10:45 UTC (permalink / raw
  To: gentoo-commits

commit:     a5a9798a9566a884218223123941030f61981a0e
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sun Sep  1 10:43:31 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Sep  1 10:43:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a5a9798a

app-emulation/virtualbox: Stabilize 7.0.20 amd64, #938090

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

 app-emulation/virtualbox/virtualbox-7.0.20.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app-emulation/virtualbox/virtualbox-7.0.20.ebuild b/app-emulation/virtualbox/virtualbox-7.0.20.ebuild
index ac0bf0cafce8..be25e287f25e 100644
--- a/app-emulation/virtualbox/virtualbox-7.0.20.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.0.20.ebuild
@@ -34,7 +34,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
 
 LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
 SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+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


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-09-15 13:02 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-09-15 13:02 UTC (permalink / raw
  To: gentoo-commits

commit:     5b5637b68daffa13150378b106269332aba09027
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 15 11:35:35 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Sep 15 13:01:52 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b5637b6

app-emulation/virtualbox: sync live ebuild

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

 app-emulation/virtualbox/virtualbox-9999.ebuild | 43 ++++++++++++++-----------
 1 file changed, 24 insertions(+), 19 deletions(-)

diff --git a/app-emulation/virtualbox/virtualbox-9999.ebuild b/app-emulation/virtualbox/virtualbox-9999.ebuild
index b61db28003e9..ad3e2aba25bb 100644
--- a/app-emulation/virtualbox/virtualbox-9999.ebuild
+++ b/app-emulation/virtualbox/virtualbox-9999.ebuild
@@ -9,7 +9,6 @@ EAPI=8
 # It is not meant to be used, might be very unstable.
 # Upstream seem to have added support for python 3.12, but it crashes.
 #
-# USE=doc does not work for now.
 #
 #
 # To add a new Python here:
@@ -30,14 +29,14 @@ inherit desktop edo flag-o-matic java-pkg-opt-2 linux-mod-r1 multilib optfeature
 	python-single-r1 subversion tmpfiles toolchain-funcs udev xdg
 
 MY_PN="VirtualBox"
-BASE_PV=7.0.16
+BASE_PV=7.1.0
 MY_P=${MY_PN}-${PV}
 
 DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
 HOMEPAGE="https://www.virtualbox.org/"
 ESVN_REPO_URI="https://www.virtualbox.org/svn/vbox/trunk"
 SRC_URI="
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0_beta1.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0.tar.bz2
 	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${BASE_PV}.tar.xz ) )
 "
 S="${WORKDIR}/trunk"
@@ -132,7 +131,6 @@ RDEPEND="
 	java? ( virtual/jre:1.8 )
 "
 BDEPEND="
-	${PYTHON_DEPS}
 	>=app-arch/tar-1.34-r2
 	>=dev-lang/yasm-0.6.2
 	dev-libs/libIDL
@@ -144,6 +142,7 @@ BDEPEND="
 	sys-power/iasl
 	virtual/pkgconfig
 	doc? (
+		app-doc/dita-ot-bin
 		app-text/docbook-sgml-dtd:4.4
 		app-text/docbook-xsl-ns-stylesheets
 		dev-texlive/texlive-basic
@@ -152,11 +151,13 @@ BDEPEND="
 		dev-texlive/texlive-latexextra
 		dev-texlive/texlive-fontsrecommended
 		dev-texlive/texlive-fontsextra
-		dev-qt/qthelp:5
+		dev-qt/qttools:6[assistant]
+		sys-libs/nss_wrapper
 	)
 	gui? ( dev-qt/qttools:6[linguist] )
 	nls? ( dev-qt/qttools:6[linguist] )
 	java? ( virtual/jdk:1.8 )
+	python? ( ${PYTHON_DEPS} )
 "
 
 QA_FLAGS_IGNORED="
@@ -197,7 +198,7 @@ REQUIRED_USE="
 
 PATCHES=(
 	# Downloaded patchset
-	"${WORKDIR}"/virtualbox-patches-7.1.0_beta1/patches
+	"${WORKDIR}"/virtualbox-patches-7.1.0/patches
 )
 
 DOCS=()	# Don't install the default README file during einstalldocs
@@ -262,8 +263,8 @@ src_prepare() {
 			>> LocalConfig.kmk || die
 	fi
 
-	# bug #916002, #488176
-	tc-ld-force-bfd
+	# bug #916002, #488176, #925347
+	tc-ld-is-mold || tc-ld-force-bfd
 
 	# Respect LDFLAGS
 	sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
@@ -289,13 +290,6 @@ src_prepare() {
 		java-pkg-opt-2_src_prepare
 	fi
 
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
 	# bug #908814
 	filter-lto
 
@@ -314,11 +308,8 @@ src_prepare() {
 	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
+		eapply "${FILESDIR}"/${PN}-7.1.0-disable-rebuild-iPxeBiosBin.patch
 	fi
 
 	# fix doc generation
@@ -496,6 +487,20 @@ src_compile() {
 		)
 	fi
 
+	if use doc; then
+		# dita needs to write to ~/.fop and ~/.java
+		# but it ignores ${HOME} and tries to write to the real home of user portage
+		# resulting in a sandbox violation
+		# -Duser.home= does not work
+		# force using the temporary homedir with nss_wrapper
+		echo "${LOGNAME}::$(id -u):$(id -g):${USER}:${HOME}:/bin/bash" >> ~/passwd
+		echo "${LOGNAME}::$(id -g):" >> ~/group
+
+		local -x LD_PRELOAD=libnss_wrapper.so
+		local -x NSS_WRAPPER_PASSWD="${HOME}"/passwd
+		local -x NSS_WRAPPER_GROUP="${HOME}"/group
+	fi
+
 	MAKE="kmk" emake "${myemakeargs[@]}" all
 
 	local modlist=( {vboxdrv,vboxnetflt,vboxnetadp}=misc:"out/linux.${ARCH}/release/bin/src" )


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-09-15 13:02 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-09-15 13:02 UTC (permalink / raw
  To: gentoo-commits

commit:     00d899fd94acc4e0bb0a73b8784400110408bfdc
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 15 12:51:05 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sun Sep 15 13:01:55 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=00d899fd

app-emulation/virtualbox: drop 7.0.18-r1

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

 app-emulation/virtualbox/Manifest                  |   2 -
 .../virtualbox/virtualbox-7.0.18-r1.ebuild         | 741 ---------------------
 2 files changed, 743 deletions(-)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index bbf061a40605..3855d08cca7c 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,8 +1,6 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
-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-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

diff --git a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild b/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
deleted file mode 100644
index be25e287f25e..000000000000
--- a/app-emulation/virtualbox/virtualbox-7.0.18-r1.ebuild
+++ /dev/null
@@ -1,741 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 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_P=${MY_PN}-${PV}
-
-DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
-HOMEPAGE="https://www.virtualbox.org/"
-SRC_URI="
-	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
-	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.0.16.tar.bz2
-	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
-"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
-SLOT="0/$(ver_cut 1-2)"
-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-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/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		dev-qt/qthelp:5
-		dev-qt/qtprintsupport:5
-		dev-qt/qtwidgets:5
-		dev-qt/qtx11extras:5
-		dev-qt/qtxml:5
-		x11-libs/libX11
-		x11-libs/libXt
-		opengl? ( dev-qt/qtopengl:5 )
-	)
-	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/libXcursor
-		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:=
-	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/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/linguist-tools:5 )
-	nls? ( dev-qt/linguist-tools:5 )
-	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.0.16/patches
-)
-
-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
-	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
-
-	#856811 #864274
-	# cannot filter out only one flag, some combinations of these flags produce buggy executables
-	for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
-		append-cflags $(test-flags-CC -mno-$i)
-		append-cxxflags $(test-flags-CXX -mno-$i)
-	done
-
-	# 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,XPCOMIPCD} \
-		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
-
-		if use opengl; then
-			vbox_inst VBoxTestOGL
-			pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
-		fi
-
-		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-${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"
-		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
-		sed -e "1 i\#! ${PYTHON}" -i vboxshell.py || die
-		python_doscript vboxshell.py
-
-		# do not install the installer
-		rm -r "${installer_dir}" || 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/${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
-}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-09-27 17:08 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-09-27 17:08 UTC (permalink / raw
  To: gentoo-commits

commit:     f0fc848c17ef8bf01b9628406a7460ba3280a3cd
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 27 16:09:09 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Sep 27 17:07:20 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0fc848c

app-emulation/virtualbox: add 7.1.2

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

 app-emulation/virtualbox/Manifest                |   2 +
 app-emulation/virtualbox/virtualbox-7.1.2.ebuild | 744 +++++++++++++++++++++++
 2 files changed, 746 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 3855d08cca7c..156369948720 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,8 +1,10 @@
 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f
 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.2.tar.bz2 206105145 BLAKE2B 4b30f1d14625ddaed88b1a9cdac41289fef332d52e210d982ce075d652849b1cb72fee6d6e691f74378d4b8e7dd914355bcf0cd074d36249f39b099d1bba7c79 SHA512 d890f9b2e8799bcb1ed9cdaa86ef42daa261f7e9022a2e7e9df8c21f395c56e91e2d03292f22c9633ff6a0f0c5933ba3ac30af30befe87b84ffd89c07d51568f
 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-help-7.1.2.tar.xz 1587216 BLAKE2B 561a7ec607b61a9adf2fc5c86ad49828da4e1d3bcf8cae2771f1e498426652fc990c603128471412fd0d9f21ead004dd65006d6a8f70e4fa972c9055ffc8084a SHA512 6cd1bf849658f1abb8eb5a3d2da53d862ee0143aaff44e755f79bfb2d31977447e6546faa277dd860a0b6e1c3b72ae47479fbbec42419629e1cb2006df14194f
 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

diff --git a/app-emulation/virtualbox/virtualbox-7.1.2.ebuild b/app-emulation/virtualbox/virtualbox-7.1.2.ebuild
new file mode 100644
index 000000000000..32185b29faef
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.1.2.ebuild
@@ -0,0 +1,744 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+HELP_PV=${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${HELP_PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+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-doc/dita-ot-bin
+		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/qttools:6[assistant]
+		sys-libs/nss_wrapper
+	)
+	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/patches
+)
+
+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 does not support this extension
+		eapply "${FILESDIR}"/${PN}-7.1.0-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
+
+	if use doc; then
+		# dita needs to write to ~/.fop and ~/.java
+		# but it ignores ${HOME} and tries to write to the real home of user portage
+		# resulting in a sandbox violation
+		# -Duser.home= does not work
+		# force using the temporary homedir with nss_wrapper
+		echo "${LOGNAME}::$(id -u):$(id -g):${USER}:${HOME}:/bin/bash" >> ~/passwd
+		echo "${LOGNAME}::$(id -g):" >> ~/group
+
+		local -x LD_PRELOAD=libnss_wrapper.so
+		local -x NSS_WRAPPER_PASSWD="${HOME}"/passwd
+		local -x NSS_WRAPPER_GROUP="${HOME}"/group
+	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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-10-01  5:05 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-10-01  5:05 UTC (permalink / raw
  To: gentoo-commits

commit:     d1380e33b302c750dc75201cc92eb8d36d19ddfb
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  1 04:57:53 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue Oct  1 05:04:33 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1380e33

app-emulation/virtualbox: fix VERR_BAD_EXE_FORMAT

Building with -fno-plt in CFLAGS breaks VirtualBox.  Filter it out.

Closes: https://bugs.gentoo.org/940482
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 app-emulation/virtualbox/virtualbox-7.1.2.ebuild | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/app-emulation/virtualbox/virtualbox-7.1.2.ebuild b/app-emulation/virtualbox/virtualbox-7.1.2.ebuild
index 32185b29faef..94e3b3857010 100644
--- a/app-emulation/virtualbox/virtualbox-7.1.2.ebuild
+++ b/app-emulation/virtualbox/virtualbox-7.1.2.ebuild
@@ -273,6 +273,9 @@ src_prepare() {
 		java-pkg-opt-2_src_prepare
 	fi
 
+	# bug #940482
+	filter-flags -fno-plt
+
 	# bug #908814
 	filter-lto
 


^ permalink raw reply related	[flat|nested] 198+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/
@ 2024-10-18 17:16 Viorel Munteanu
  0 siblings, 0 replies; 198+ messages in thread
From: Viorel Munteanu @ 2024-10-18 17:16 UTC (permalink / raw
  To: gentoo-commits

commit:     d5f23cec73f20c560152192e823627a4c09dc87b
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 18 16:15:58 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Fri Oct 18 17:13:11 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d5f23cec

app-emulation/virtualbox: add 7.1.4

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

 app-emulation/virtualbox/Manifest                |   2 +
 app-emulation/virtualbox/virtualbox-7.1.4.ebuild | 776 +++++++++++++++++++++++
 2 files changed, 778 insertions(+)

diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 7446bb210218..698ddabaa107 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -2,10 +2,12 @@ DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8
 DIST VirtualBox-7.0.20.tar.bz2 173300021 BLAKE2B 23a1553578c8b89c3bea65fd9a451ef5abf419ce8a05524f2afc15b8d9a378a22ffb01c0c792d258320aeddb330b74f8f769180863041e333512d0eed2f4449c SHA512 7682e24d60c1896c661f2689af6820ae67b6bd8d9faaf18c58e8159bc7694ef80722f8e9611d6272da5b46eb2f3a44fc637b277e6801b7a8bf53aad045a81fe9
 DIST VirtualBox-7.0.22.tar.bz2 174643573 BLAKE2B 93ba1dd44a7147e61d72489a127e497f510c12eef576f8a30af45011e383050a908124c0f9794a92f28400cbb2f230308884893bafacd4f8a391b2354958f02d SHA512 eb231cc487becfbad8c979fb9d6a1ede3a28a1bb11e77b1482181be4bd294fd209c77a7d599562f99f1ac2be587203b9d97230ccce4f85ed96c63e66b0fce392
 DIST VirtualBox-7.1.2.tar.bz2 206105145 BLAKE2B 4b30f1d14625ddaed88b1a9cdac41289fef332d52e210d982ce075d652849b1cb72fee6d6e691f74378d4b8e7dd914355bcf0cd074d36249f39b099d1bba7c79 SHA512 d890f9b2e8799bcb1ed9cdaa86ef42daa261f7e9022a2e7e9df8c21f395c56e91e2d03292f22c9633ff6a0f0c5933ba3ac30af30befe87b84ffd89c07d51568f
+DIST VirtualBox-7.1.4.tar.bz2 206218796 BLAKE2B 62a4f44b4eac2e1cb2c0bace5dfabf86c41b738d81aede3de75d88159a8d76158748eaae38ee3eedbc0f79b639a875f1ef6805a8ca7c95021f475935f54d7ef9 SHA512 97654339d509447e2604db01e29f9e810f59498a378e645f412cffb67022c4e547f205e8ebdac6ae33aaa8f7bc0f289bdca2e5a04b1fa31b4a05c191d7600a9c
 DIST virtualbox-help-7.0.20.tar.xz 3949292 BLAKE2B c56f736606fdedfb59bd1f4446a457587dcbe018d1be3162d94eca780cacfa45b49ba5a9c6b25970d28e5a428904bdfd34d2f229c1e24b567fd1b1959cbdc9ea SHA512 e73e448b8aa875d0f6ae1fb398082fa7183e198191a9b509b63592b5df3a19069b805dcdc11d98da3971a14fd6670d8b0a777e5a6d6b63358f7a4f263ca8d31e
 DIST virtualbox-help-7.0.22.tar.xz 3950712 BLAKE2B 381743c2d6e5da940865818c725bc299ae7b178f25f822cb25a8bc2ed69fa32e3999a8f795132ffe7f01d1ae6c19f5e91d89a09dfa5cc6919cfeae4b6c420951 SHA512 4ae974a9a166c483d767ea1417afac04a8a5f3eb51bb78e4254c5e5577aaa5a64e39fe151ae73f7bc560ed63ca09a02c49c0314bbac3bea6a1331b2b852a1a0f
 DIST virtualbox-help-7.1.0.tar.xz 1631644 BLAKE2B 408748619d1e981b9d5b5e615baca75ff297e9b7e745751767361b7b9c74345a3db1980734439f3868c412fe28a6b687b417adc3cc148d2e2b8a9fa60e48463b SHA512 513b8474d4fbf7cdb83624dc8d344122c524d92f9f84b32784161c8e1cac8ddc2c265447621d7cd3cf105d555a044e6abf42155f413ba89d507eba7ce3b2da89
 DIST virtualbox-help-7.1.2.tar.xz 1587216 BLAKE2B 561a7ec607b61a9adf2fc5c86ad49828da4e1d3bcf8cae2771f1e498426652fc990c603128471412fd0d9f21ead004dd65006d6a8f70e4fa972c9055ffc8084a SHA512 6cd1bf849658f1abb8eb5a3d2da53d862ee0143aaff44e755f79bfb2d31977447e6546faa277dd860a0b6e1c3b72ae47479fbbec42419629e1cb2006df14194f
+DIST virtualbox-help-7.1.4.tar.xz 1586108 BLAKE2B e8219ed67b1db9a5e4d0271e25980fbcbfb8c72316dc4bd3337080c81082bb8ecad9c9317b5b9be77db1eeac42c567512a64fe86ae9bb6371dea8632e7afc9ab SHA512 185249fe2bdf2138a034c53e23eedb88cf487e1fb26a8bd623f0d75ea0d2ff4dff3484564a5b317703fb3f302ec7037cb0a49c7c3845e229fe2ac9e2c8c96af6
 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

diff --git a/app-emulation/virtualbox/virtualbox-7.1.4.ebuild b/app-emulation/virtualbox/virtualbox-7.1.4.ebuild
new file mode 100644
index 000000000000..e925b47250ec
--- /dev/null
+++ b/app-emulation/virtualbox/virtualbox-7.1.4.ebuild
@@ -0,0 +1,776 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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_P=${MY_PN}-${PV}
+HELP_PV=${PV}
+
+DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
+HOMEPAGE="https://www.virtualbox.org/"
+SRC_URI="
+	https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
+	https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0.tar.bz2
+	gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${HELP_PV}.tar.xz ) )
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl test +udev vboxwebsrv vde +vmmraw vnc"
+RESTRICT="!test? ( test )"
+
+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-doc/dita-ot-bin
+		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/qttools:6[assistant]
+		sys-libs/nss_wrapper
+	)
+	gui? ( dev-qt/qttools:6[linguist] )
+	nls? ( dev-qt/qttools:6[linguist] )
+	java? ( virtual/jdk:1.8 )
+	python? (
+		${PYTHON_DEPS}
+		test? (
+			$(python_gen_cond_dep '
+				dev-python/pytest[${PYTHON_USEDEP}]
+			')
+		)
+	)
+"
+
+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/patches
+)
+
+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
+
+	if use python; then
+		mkdir test
+		cp "${FILESDIR}"/test_python.py test/
+		python_fix_shebang test/test_python.py
+	fi
+
+	# 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 #940482
+	filter-flags -fno-plt
+
+	# 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 does not support this extension
+		eapply "${FILESDIR}"/${PN}-7.1.0-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
+
+	if use doc; then
+		# dita needs to write to ~/.fop and ~/.java
+		# but it ignores ${HOME} and tries to write to the real home of user portage
+		# resulting in a sandbox violation
+		# -Duser.home= does not work
+		# force using the temporary homedir with nss_wrapper
+		echo "${LOGNAME}::$(id -u):$(id -g):${USER}:${HOME}:/bin/bash" >> ~/passwd
+		echo "${LOGNAME}::$(id -g):" >> ~/group
+
+		local -x LD_PRELOAD=libnss_wrapper.so
+		local -x NSS_WRAPPER_PASSWD="${HOME}"/passwd
+		local -x NSS_WRAPPER_GROUP="${HOME}"/group
+	fi
+
+	MAKE="kmk" emake "${myemakeargs[@]}" all
+}
+
+src_test() {
+	if use python; then
+		local -x VBOX_APP_HOME="${S}"/out/linux.${ARCH}/$(usex debug debug release)
+		local -x VBOX_INSTALL_PATH="${VBOX_APP_HOME}"
+		local -x VBOX_PROGRAM_PATH="${VBOX_APP_HOME}"/bin
+		local -x VBOX_SDK_PATH="${VBOX_PROGRAM_PATH}"/sdk
+		local -x PYTHONPATH="${VBOX_SDK_PATH}"/installer/python/vboxapi/src
+		einfo "VBOX_APP_HOME ${VBOX_APP_HOME}"
+		einfo "VBOX_PROGRAM_PATH ${VBOX_PROGRAM_PATH}"
+		einfo "VBOX_SDK_PATH ${VBOX_SDK_PATH}"
+		einfo "PYTHONPATH ${PYTHONPATH}"
+		LD_LIBRARY_PATH="${VBOX_PROGRAM_PATH}" epytest test/
+	fi
+}
+
+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/${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
+}


^ permalink raw reply related	[flat|nested] 198+ messages in thread

end of thread, other threads:[~2024-10-18 17:16 UTC | newest]

Thread overview: 198+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-05  1:22 [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-10-18 17:16 Viorel Munteanu
2024-10-01  5:05 Viorel Munteanu
2024-09-27 17:08 Viorel Munteanu
2024-09-15 13:02 Viorel Munteanu
2024-09-15 13:02 Viorel Munteanu
2024-09-01 10:45 Viorel Munteanu
2024-08-22 11:20 Viorel Munteanu
2024-08-15 12:56 Viorel Munteanu
2024-07-26 15:02 Viorel Munteanu
2024-07-26 15:02 Viorel Munteanu
2024-07-16 18:13 Viorel Munteanu
2024-06-17 15:25 Viorel Munteanu
2024-06-05  4:53 Viorel Munteanu
2024-06-05  4:53 Viorel Munteanu
2024-06-03 11:32 Viorel Munteanu
2024-06-03 11:32 Viorel Munteanu
2024-06-03  8:07 Sam James
2024-05-25  9:53 Viorel Munteanu
2024-05-25  9:53 Viorel Munteanu
2024-05-25  9:53 Viorel Munteanu
2024-05-03 17:41 Viorel Munteanu
2024-05-03 17:41 Viorel Munteanu
2024-05-01  5:00 Viorel Munteanu
2024-05-01  5:00 Viorel Munteanu
2024-04-30  4:25 Viorel Munteanu
2024-04-30  4:25 Viorel Munteanu
2024-04-19  7:12 Viorel Munteanu
2024-04-17 19:56 Viorel Munteanu
2024-03-19 17:20 Viorel Munteanu
2024-01-27  7:44 Sam James
2024-01-27  7:34 Sam James
2024-01-25 15:50 Viorel Munteanu
2024-01-25 10:08 Viorel Munteanu
2024-01-25 10:08 Viorel Munteanu
2024-01-25  9:51 Viorel Munteanu
2024-01-25  9:51 Viorel Munteanu
2024-01-18 11:47 Viorel Munteanu
2024-01-17 17:38 Viorel Munteanu
2024-01-17 17:38 Viorel Munteanu
2023-10-18  4:08 Viorel Munteanu
2023-10-18  4:08 Viorel Munteanu
2023-10-17 19:22 Sam James
2023-08-26 11:50 Viorel Munteanu
2023-08-15 12:16 Viorel Munteanu
2023-08-03 20:45 Sam James
2023-07-20  9:40 Viorel Munteanu
2023-07-20  9:40 Viorel Munteanu
2023-05-29 20:10 Sam James
2023-05-29 14:13 Sam James
2023-05-01  5:41 Viorel Munteanu
2023-04-30 11:12 Viorel Munteanu
2023-04-21 16:38 Viorel Munteanu
2023-04-21 16:38 Viorel Munteanu
2023-03-18  8:27 Viorel Munteanu
2023-02-21 15:06 Viorel Munteanu
2023-02-21 15:06 Viorel Munteanu
2023-02-15  5:12 Sam James
2023-02-15  5:12 Sam James
2023-02-08 17:13 Sam James
2023-02-03 14:35 Viorel Munteanu
2023-01-24  8:36 Viorel Munteanu
2023-01-22  9:59 Viorel Munteanu
2023-01-22  9:59 Viorel Munteanu
2023-01-13 13:15 Viorel Munteanu
2023-01-11 12:54 Arthur Zamarin
2022-12-10  9:56 Viorel Munteanu
2022-12-10  9:56 Viorel Munteanu
2022-11-20 10:13 Viorel Munteanu
2022-11-20  8:20 Viorel Munteanu
2022-11-20  8:20 Viorel Munteanu
2022-11-20  8:20 Viorel Munteanu
2022-11-20  8:20 Viorel Munteanu
2022-11-20  8:20 Viorel Munteanu
2022-11-20  8:20 Viorel Munteanu
2022-11-02 16:17 Viorel Munteanu
2022-10-27  8:35 Joonas Niilola
2022-10-17 21:05 Sam James
2022-10-06 10:23 Joonas Niilola
2022-09-05  1:22 Sam James
2022-08-23 20:48 Sam James
2022-08-23 18:57 Sam James
2022-08-13 19:24 Sam James
2022-08-08  9:40 Andreas Sturmlechner
2022-07-24 23:23 Sam James
2022-07-06  9:23 Sam James
2022-07-06  8:09 Sam James
2022-07-06  8:06 Sam James
2022-07-06  6:05 Sam James
2022-07-06  3:18 Sam James
2022-07-06  3:01 Sam James
2022-07-06  3:01 Sam James
2022-07-06  2:06 Sam James
2022-04-04 18:28 Jakov Smolić
2022-03-16 17:07 Sam James
2022-01-29 18:38 Sam James
2022-01-27 13:57 Lars Wendler
2022-01-12  2:45 Sam James
2021-12-06 21:11 Jakov Smolić
2021-11-06 20:53 Sam James
2021-07-30 22:55 David Seifert
2021-07-19 18:36 Sam James
2021-04-30 23:34 Sam James
2021-04-30 13:16 Mikle Kolyada
2021-04-21  9:55 Lars Wendler
2021-01-22  1:48 Sam James
2021-01-06  3:10 Sam James
2020-12-08 12:12 Lars Wendler
2020-12-08 12:12 Lars Wendler
2020-09-11 15:37 Lars Wendler
2020-09-09  8:10 Lars Wendler
2020-09-02  3:55 Sam James
2020-08-30  1:32 Thomas Deutschmann
2020-06-24 21:04 Ulrich Müller
2020-06-14 15:13 Lars Wendler
2020-05-07 13:18 Michał Górny
2020-04-26 23:44 Thomas Deutschmann
2020-04-22 14:03 Mikle Kolyada
2020-03-29  7:19 Mikle Kolyada
2020-03-27 12:43 Lars Wendler
2020-03-27 12:43 Lars Wendler
2020-03-27 12:43 Lars Wendler
2020-02-25 17:15 Lars Wendler
2019-12-17 12:42 Lars Wendler
2019-12-15 11:03 Lars Wendler
2019-12-13 19:17 Lars Wendler
2019-11-28 15:40 Lars Wendler
2019-09-15  9:04 Mikle Kolyada
2019-09-07 21:07 Thomas Deutschmann
2019-08-28 14:34 David Seifert
2019-07-21 17:54 Michał Górny
2019-07-18  7:18 Lars Wendler
2019-07-17  8:52 Lars Wendler
2019-05-09 13:06 Lars Wendler
2019-04-20 11:31 Lars Wendler
2019-04-18 20:32 Thomas Deutschmann
2019-04-08 13:15 Mikle Kolyada
2019-04-02  9:43 Lars Wendler
2019-01-16 19:50 Lars Wendler
2018-11-28  2:07 Thomas Deutschmann
2018-11-25  9:25 Mikle Kolyada
2018-11-17 15:29 Lars Wendler
2018-11-17 11:55 Lars Wendler
2018-11-16 16:32 Lars Wendler
2018-11-16 14:48 Lars Wendler
2018-07-22 17:07 Mikle Kolyada
2018-07-19  8:39 Lars Wendler
2018-07-19  8:37 Lars Wendler
2018-07-18 10:07 Lars Wendler
2018-07-16 23:42 Lars Wendler
2018-07-16  9:46 Lars Wendler
2018-07-16  9:46 Lars Wendler
2018-07-03 18:52 Jonas Stein
2018-07-02  9:42 Lars Wendler
2018-05-08 15:15 Agostino Sarubbo
2018-05-07 23:55 Thomas Deutschmann
2018-03-03 21:33 James Le Cuirot
2018-02-19 14:45 Lars Wendler
2018-02-16 14:56 Lars Wendler
2018-01-21 20:30 Thomas Deutschmann
2018-01-18 21:41 Mikle Kolyada
2018-01-02 16:33 Lars Wendler
2017-12-29 17:42 Mikle Kolyada
2017-12-26  2:06 Thomas Deutschmann
2017-10-17  9:44 Lars Wendler
2017-10-02 22:18 Lars Wendler
2017-08-06 20:43 Lars Wendler
2017-08-06 15:57 Aaron Bauman
2017-07-28  6:41 Lars Wendler
2017-07-23 19:13 Lars Wendler
2017-04-07  8:24 Lars Wendler
2017-03-28 16:31 Lars Wendler
2017-02-03 15:13 Lars Wendler
2017-01-31 12:31 Tobias Klausmann
2016-09-20 12:12 Lars Wendler
2016-09-02 15:09 Ian Stakenvicius
2016-08-17 13:07 Lars Wendler
2016-07-27 10:05 Jeroen Roovers
2016-07-26  8:38 Lars Wendler
2016-07-14 15:30 Lars Wendler
2016-07-14  9:28 Lars Wendler
2016-07-13 20:24 Lars Wendler
2016-07-13 10:16 Lars Wendler
2016-06-13 14:23 Lars Wendler
2016-05-15 19:36 Lars Wendler
2016-03-21 10:59 Patrick Lauer
2016-03-11 21:50 Lars Wendler
2016-03-07 14:51 Lars Wendler
2016-03-07 14:51 Lars Wendler
2016-03-05 22:38 Mikle Kolyada
2016-02-22  8:42 Patrick Lauer
2015-11-19 21:28 Lars Wendler
2015-11-06  8:46 Mikle Kolyada
2015-10-21  6:40 Lars Wendler
2015-10-06 10:26 Julian Ospald
2015-09-10 21:01 Lars Wendler
2015-08-30 11:32 Lars Wendler
2015-08-16 13:53 Patrice Clement

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox