mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
app-emulation/virtualbox-guest-additions: add 7.2.4
Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
DIST VirtualBox-7.0.26.tar.bz2 174650718 BLAKE2B ba13a940b9566a5ac5b228bf29d49d4b9bf16a72da3212c305538711d363f1e6fddaa8717d4c46394ce488d2c1670874fece356740f421f44f6f40bd655f5551 SHA512 337f62438679f98b342213dbafdd3e07f7d7092a4205bfe388d64d1cc8224499621addea56b70d806c93290bb82e6150c07516e69250460a276e3b7a4484a9b6
|
||||
DIST VirtualBox-7.1.12.tar.bz2 214691769 BLAKE2B 7d316732c504b62e19cc0611242c24f12b93faccc6d7dbcc0ab6c63f01828f29c659fa4947cc0fb5443615320edea9b904e53ce68baf4ff4f62e73f99bf5bee9 SHA512 0996f59463a3c89e249b3fac0531f5814287afa6a279020b49f48740143fea1b1cf466508b7cfcb6f809d0046117022a67d836b67be3173a0d6cd2aadca6086e
|
||||
DIST VirtualBox-7.2.2.tar.bz2 206992991 BLAKE2B ee69ea899cdf11e567d9e0fdd119d88b03027a4b0ec827244a8810e0f02f95b98f62bcc02501afad66aee03199107ebf27bbfb32d0dd01e113ee8dd2f2bf0382 SHA512 b07307d9e5ac4536a843a9400a55a2b6c6fc2eaf97126a9a97783609cd9f95238c65c0d9300d0098c64fa3cb438f1998d079ca5628ec9eae00c265a1b74f741b
|
||||
DIST VirtualBox-7.2.4.tar.bz2 207084201 BLAKE2B 80bd0dc8c8667fe9525671afd92a78c1291a23861d452cde00bd76577fba5d71002bb4a5d01cc50f07b811702b739f3bdef61d76b29ed81a3ff6f3305d2e32ff SHA512 49bf9d860ef2f7393c3da9fc0c267358a5a70657a3664a3075e233f4c1c0785921d9b020c2f8d52c11022c3f92923b181c14893e50264b5dbbf9898336faa174
|
||||
DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992
|
||||
DIST virtualbox-patches-7.1.10.tar.bz2 5966 BLAKE2B cde325931ed2b41c74c9fa070980c5a6988a658608b2899473991e58ebf995f3cfd8efd295c98181d879104249ffc021643315ffe7801d30ded663a61e442488 SHA512 82de81a6e63bbaae8a1467fe0f4b84a6a71ee3f3d2190d53215f0b0913f6d2e53623709e5063ba629798a844c0c29fa0f48aca72efc96e775d7b18f75c1de79f
|
||||
DIST virtualbox-patches-7.2.0_p20250830.tar.bz2 6067 BLAKE2B fcadab8588ac52bf0fc36e8e6fb7fb37ec3b2fa160333f05686c667c48381dd22e9f76b06c91547fee872bcaa332d875ce7e3e46d04cb987671ddfa2dfb0b3fc SHA512 38f447ee87f60516ab56e1db88e241efc81a1ae284f261c695d1c65abe0fe7ad58e30b98a1d490eed5cec21e59ca89b426666619297f7263c3f5e5a37c501732
|
||||
DIST virtualbox-patches-7.2.4.tar.bz2 6938 BLAKE2B be3ef14c2090f39eeb1fe6fe82231dbf725ff6d20603e72e4c3bbf8b15ae7698d2be86bb321bd1776a15c6385770a393cc8c6b945ea87c54f9c767c3c77b61af SHA512 2e9c403dff97f5146e7632d7f6b5d0230f65f8be172efc6dd2959e72054778f617aa437f8c86d1489f9ce9212899ff08e83433a9eca3e5691353b036d426784a
|
||||
|
||||
@@ -0,0 +1,256 @@
|
||||
# Copyright 2022-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edo readme.gentoo-r1 systemd toolchain-funcs udev
|
||||
|
||||
MY_PN="VirtualBox"
|
||||
MY_PV=${PV^^}
|
||||
MY_P=${MY_PN}-${MY_PV}
|
||||
PATCHES_PV="7.2.4"
|
||||
|
||||
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
|
||||
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-${PATCHES_PV}.tar.bz2"
|
||||
S="${WORKDIR}/${MY_PN}-${MY_PV}"
|
||||
|
||||
LICENSE="GPL-3 LGPL-2.1+ MIT || ( GPL-3 CDDL )"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
IUSE="+dbus gui"
|
||||
|
||||
RDEPEND="
|
||||
acct-group/vboxguest
|
||||
acct-group/vboxsf
|
||||
acct-user/vboxguest
|
||||
sys-libs/pam
|
||||
sys-libs/zlib
|
||||
~app-emulation/virtualbox-guest-modules-${PV}
|
||||
dbus? ( sys-apps/dbus )
|
||||
gui? (
|
||||
x11-apps/xrandr
|
||||
x11-apps/xrefresh
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
"
|
||||
# some libs here are indirect dependencies, and also needed at compile time.
|
||||
# keeping them in DEPEND to avoid warnings from qa-vdb.
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
gui? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libXau
|
||||
x11-libs/libXdmcp
|
||||
x11-base/xorg-proto
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-lang/yasm-0.6.2
|
||||
>=dev-build/kbuild-0.1.9998.3660
|
||||
sys-devel/bin86
|
||||
sys-power/iasl
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-7.1.6-disable-vboxvideo-module.patch
|
||||
"${FILESDIR}"/${PN}-7.1-arm64.patch
|
||||
"${WORKDIR}/virtualbox-patches-${PATCHES_PV}/patches"
|
||||
)
|
||||
|
||||
DOCS=() # Don't install the default README file during einstalldocs
|
||||
|
||||
DOC_CONTENTS="\n
|
||||
Please add users to the \"vboxguest\" group so they can\n
|
||||
benefit from seamless mode, auto-resize and clipboard.\n
|
||||
\n
|
||||
The vboxsf group has been added to make automount services work.\n
|
||||
These services are part of the shared folders support.\n
|
||||
\n
|
||||
Please add:\n
|
||||
/etc/init.d/virtualbox-guest-additions\n
|
||||
to the default runlevel in order to start\n
|
||||
needed services.\n
|
||||
\n
|
||||
An autostart .desktop file has been installed to start\n
|
||||
VBoxClient in desktop sessions.\n
|
||||
\n
|
||||
You can mount shared folders with:\n
|
||||
mount -t vboxsf <shared_folder_name> <mount_point>\n
|
||||
\n
|
||||
Warning:\n
|
||||
this ebuild is only needed if you are running gentoo\n
|
||||
inside a VirtualBox Virtual Machine, you don't need\n
|
||||
it to run VirtualBox itself.\n
|
||||
\n"
|
||||
|
||||
src_prepare() {
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
rm -r kBuild/bin tools || die
|
||||
|
||||
# Disable things unused or splitted into separate ebuilds
|
||||
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
|
||||
if use gui; then
|
||||
echo "VBOX_NO_LEGACY_XORG_X11 := 1" >> LocalConfig.kmk || die
|
||||
else
|
||||
echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk || die
|
||||
fi
|
||||
|
||||
# Remove pointless GCC version check
|
||||
sed -e '/ check_gcc$/d' -i configure || die
|
||||
|
||||
# Respect LDFLAGS (bug #759100)
|
||||
sed -i -e '/TEMPLATE_VBoxR3Exe_LDFLAGS.linux[ ]*=/ s/$/ $(CCLDFLAGS)/' Config.kmk || die
|
||||
|
||||
eapply "${PATCHES[@]}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export AR CC CXX LD RANLIB
|
||||
|
||||
# Build the user-space tools, warnings are harmless
|
||||
local myconf=(
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--with-g++="$(tc-getCXX)"
|
||||
|
||||
--nofatal
|
||||
--disable-xpcom
|
||||
--disable-sdl-ttf
|
||||
--disable-pulse
|
||||
--disable-alsa
|
||||
$(usev !dbus --disable-dbus)
|
||||
--target-arch=${ARCH}
|
||||
--disable-kmods
|
||||
--build-headless
|
||||
)
|
||||
|
||||
# bug #843437
|
||||
# Respect LDFLAGS (bug #759100)
|
||||
# Cannot use LDFLAGS here because they also get passed to $(LD)
|
||||
cat >> LocalConfig.kmk <<-EOF || die
|
||||
CFLAGS=${CFLAGS}
|
||||
CXXFLAGS=${CXXFLAGS}
|
||||
CCLDFLAGS=${LDFLAGS}
|
||||
EOF
|
||||
|
||||
edo ./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}"
|
||||
|
||||
local myemakeargs=(
|
||||
VBOX_BUILD_PUBLISHER=_Gentoo
|
||||
VBOX_ONLY_ADDITIONS=1
|
||||
|
||||
KBUILD_VERBOSE=2
|
||||
|
||||
AS="$(tc-getCC)"
|
||||
CC="$(tc-getCC)"
|
||||
CXX="$(tc-getCXX)"
|
||||
LD="$(tc-getCC)"
|
||||
|
||||
TOOL_GCC3_CC="$(tc-getCC)"
|
||||
TOOL_GCC3_CXX="$(tc-getCXX)"
|
||||
TOOL_GCC3_LD="$(tc-getCC)"
|
||||
TOOL_GCC3_AS="$(tc-getCC)"
|
||||
TOOL_GCC3_AR="$(tc-getAR)"
|
||||
TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
|
||||
#TOOL_GCC3_LD_SYSMOD="$(tc-getCC)"
|
||||
|
||||
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_GXX3_LD_SYSMOD="$(tc-getCXX)"
|
||||
|
||||
TOOL_GCC3_CFLAGS="${CFLAGS}"
|
||||
TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
|
||||
VBOX_GCC_OPT="${CXXFLAGS}"
|
||||
VBOX_NM="$(tc-getNM)"
|
||||
TOOL_YASM_AS=yasm
|
||||
)
|
||||
|
||||
MAKE="kmk" emake "${myemakeargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd out/linux.${ARCH}/release/bin/additions || die
|
||||
|
||||
insinto /sbin
|
||||
newins mount.vboxsf mount.vboxsf
|
||||
fperms 4755 /sbin/mount.vboxsf
|
||||
|
||||
if use dbus; then
|
||||
newinitd "${FILESDIR}"/${PN}-8.initd-r1 ${PN}
|
||||
else
|
||||
newinitd <(sed 's/ dbus\>//' "${FILESDIR}"/${PN}-8.initd-r1) ${PN}
|
||||
fi
|
||||
|
||||
insinto /usr/sbin/
|
||||
newins VBoxService vboxguest-service
|
||||
fperms 0755 /usr/sbin/vboxguest-service
|
||||
|
||||
insinto /usr/bin
|
||||
doins VBoxControl
|
||||
fperms 0755 /usr/bin/VBoxControl
|
||||
|
||||
# VBoxClient user service and xrandr wrapper
|
||||
if use gui ; then
|
||||
doins VBoxClient
|
||||
fperms 0755 /usr/bin/VBoxClient
|
||||
doins VBoxDRMClient
|
||||
fperms 4755 /usr/bin/VBoxDRMClient
|
||||
|
||||
pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null || die
|
||||
newins 98vboxadd-xclient VBoxClient-all
|
||||
fperms 0755 /usr/bin/VBoxClient-all
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
# udev rule for vboxdrv
|
||||
local udev_rules_dir="/lib/udev/rules.d"
|
||||
dodir ${udev_rules_dir}
|
||||
echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
|
||||
# VBoxClient autostart file
|
||||
insinto /etc/xdg/autostart
|
||||
doins "${FILESDIR}"/vboxclient.desktop
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
udev_reload
|
||||
|
||||
if ! use gui ; then
|
||||
elog "The use flag \"gui\" is off, enable it to install the"
|
||||
elog "X Window System drivers and integration."
|
||||
fi
|
||||
|
||||
readme.gentoo_print_elog
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
udev_reload
|
||||
}
|
||||
Reference in New Issue
Block a user