parent
6ae6179b34
commit
c3c074ab47
Binary file not shown.
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST at-spi2-core-2.48.0.tar.xz 554000 BLAKE2B b8f513256670d24ae9f08572ae7878f109b5d76090fa4f881b67324d1d270889c648e456fe3ca34aaead9e85589f5ae355c8b4803f35c2cb2ace831051b1000b SHA512 976dce741d640c5b5e006eca53170062ebc91cace0fb74df68606c8443b63317fe271d4e3238d1e3ee3e5586b4a4905c91d7987adb94c8f886a1aaddd54c632e
|
||||
DIST at-spi2-core-2.48.2.tar.xz 554056 BLAKE2B 3e499c155a6d8780cb08a714521b530353f8e8a507c42acfbab89ea637413f17f5ecb431574eb862ac47d465f80320f04dedeced0547c0f057b426ea763f6c81 SHA512 e30c9873965bee057eab33b787588a709ba775213c8d9b2ba5382e91be48aa86bedb7d268cb4e07a3980c12a673811f94a423dbaa83fd32c1702a0cbbddb8b44
|
||||
DIST at-spi2-core-2.48.3.tar.xz 554388 BLAKE2B 9692df8cc0bc8de82f6e339b9358be7ab1bc598afdb39503f5f05ca772109b962a513fe2ef79d8f094ea732457225409f3c765784a54cbabf27b8fc72c893eb9 SHA512 e79ef0eb0f23241d61ba2a62f4024a5df5ff7125bc085590f9038b3397d255b88b8266deec14f3fe53bee4072ab85695a47d27d8be0529b18a103ad792fa0e54
|
||||
|
@ -0,0 +1,75 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit gnome.org meson-multilib systemd virtualx xdg
|
||||
|
||||
DESCRIPTION="D-Bus accessibility specifications and registration daemon"
|
||||
HOMEPAGE="https://wiki.gnome.org/Accessibility https://gitlab.gnome.org/GNOME/at-spi2-core"
|
||||
|
||||
LICENSE="LGPL-2.1+"
|
||||
SLOT="2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
IUSE="X dbus-broker gtk-doc +introspection systemd"
|
||||
REQUIRED_USE="
|
||||
dbus-broker? ( systemd )
|
||||
gtk-doc? ( X )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
>=sys-apps/dbus-1.5[${MULTILIB_USEDEP}]
|
||||
>=dev-libs/glib-2.67.4:2[${MULTILIB_USEDEP}]
|
||||
>=dev-libs/libxml2-2.9.1:2[${MULTILIB_USEDEP}]
|
||||
introspection? ( >=dev-libs/gobject-introspection-1.54.0:= )
|
||||
systemd? ( sys-apps/systemd[${MULTILIB_USEDEP}] )
|
||||
X? (
|
||||
x11-libs/libX11[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXtst[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
)
|
||||
|
||||
!<dev-libs/atk-2.46.0
|
||||
!<app-accessibility/at-spi2-atk-2.46.0
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
dbus-broker? ( sys-apps/dbus-broker )
|
||||
"
|
||||
BDEPEND="
|
||||
dev-util/glib-utils
|
||||
gtk-doc? (
|
||||
dev-python/sphinx
|
||||
dev-util/gdbus-codegen
|
||||
>=dev-util/gi-docgen-2021.1
|
||||
)
|
||||
>=sys-devel/gettext-0.19.8
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
multilib_src_configure() {
|
||||
local emesonargs=(
|
||||
-Ddefault_bus=$(usex dbus-broker dbus-broker dbus-daemon)
|
||||
$(meson_use systemd use_systemd)
|
||||
-Dsystemd_user_dir="$(systemd_get_userunitdir)"
|
||||
$(meson_native_use_bool gtk-doc docs)
|
||||
$(meson_native_use_feature introspection)
|
||||
$(meson_feature X x11)
|
||||
-Ddisable_p2p=false
|
||||
-Datk_only=false
|
||||
)
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
virtx dbus-run-session meson test -C "${BUILD_DIR}" || die
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
if use gtk-doc; then
|
||||
mkdir -p "${ED}"/usr/share/gtk-doc/{libatspi,atk} || die
|
||||
mv "${ED}"/usr/share/doc/libatspi "${ED}"/usr/share/gtk-doc/libatspi/html || die
|
||||
mv "${ED}"/usr/share/doc/atk "${ED}"/usr/share/gtk-doc/atk/html || die
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,5 +1,4 @@
|
||||
DIST ansible-core-2.13.9.tar.gz 14025835 BLAKE2B 831f04f1d4872d2e7a9801e69e450ed48c65f95121dc56f124c932169e44c12da672dd4ba9320a4e40270afd044d38c0774e79980977322260f110986d06a65e SHA512 74514d98fb3f7f24fb0b4e95ee20c76f26234d1f5067ca2801e9ac92baabed0f2f2c89bf577510be7403041405951271e7749279c9fa04fab57018cbdf2c52c7
|
||||
DIST ansible-core-2.14.4.tar.gz 11589961 BLAKE2B ae096debaf676dbd46cb047f0f87af5d09b4265368500964bbd0cf3ac8e58969bee489d66486fb570a697df5b22065fae206f1df361eb911a7fe025628655371 SHA512 86164dfded15232174e4f11140a71b91ef5b0d93b40a2df9588930b4b955f20feb419258c2bbf9d6735d298ec626c88c5e9b1c933a51e3273a28b85fac7a3762
|
||||
DIST ansible-core-2.14.5.tar.gz 11620295 BLAKE2B d006f773e1c2b28582143a4f08f699e5744fba492130388fa5463053cdf8f0cc7056296daa213c72884ea0c0ba454a3e04ef118c184faba8c8d3c281ae65345a SHA512 130a0de925c7229dee350ddbf4382d87802d86aab4817ed595105db8ed5071153847dac0478f20a994670e59e53a07b77d0bf35855d309ebc222fbb61233b7db
|
||||
DIST ansible-core-2.14.6.tar.gz 11452549 BLAKE2B 123b2a87d92f8074b389a71c0ab91bf01a126b38e99f8af05b766c15ff1bf18e9a28d3d06b61f836df1a24f86c8586df6b8cfb48bfc1e4fde033ed499825a7d4 SHA512 a50f39f043e7a72fd7ec5239d30848cf663d80b37115a9d32086462f5c8689b08dc8007087b188686160c46a3aa63a661e702c79e69f35f086e214e2d315cbd4
|
||||
DIST ansible-core-2.15.0.tar.gz 10801327 BLAKE2B 58d92d3d8cbc87d9c2c606317bae3b6841c66b9600153b38be912b02dbc19069ff8e755daa574e394ac5d12c04859640f0e2af17ed0adeb8a12da76979c163d3 SHA512 aebb43840380854e7759656a0b08579a8fbdddbf2d204c47fb16cdb73ffd540df5ad56e5bf4a78a338804a3d40f9b042ea50b2b1853aaef6b7c2f0aab7a95432
|
||||
|
@ -1,58 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_SETUPTOOLS=bdepend
|
||||
PYPI_NO_NORMALIZE=1
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Model-driven deployment, config management, and command execution framework"
|
||||
HOMEPAGE="https://www.ansible.com/"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/ansible/ansible.git"
|
||||
EGIT_BRANCH="devel"
|
||||
else
|
||||
inherit pypi
|
||||
KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86 ~x64-macos"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
RESTRICT="test"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/resolvelib.patch"
|
||||
)
|
||||
|
||||
RDEPEND="
|
||||
dev-python/paramiko[${PYTHON_USEDEP}]
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/httplib2[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/netaddr[${PYTHON_USEDEP}]
|
||||
dev-python/pexpect[${PYTHON_USEDEP}]
|
||||
>=dev-python/resolvelib-0.5.3[${PYTHON_USEDEP}]
|
||||
<dev-python/resolvelib-1.1.0[${PYTHON_USEDEP}]
|
||||
net-misc/sshpass
|
||||
virtual/ssh
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-python/packaging-16.6[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
dev-python/botocore[${PYTHON_USEDEP}]
|
||||
dev-python/pytz[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_compile() {
|
||||
export ANSIBLE_SKIP_CONFLICT_CHECK=1
|
||||
distutils-r1_python_compile
|
||||
}
|
@ -1,4 +1,3 @@
|
||||
DIST ansible-6.7.0.tar.gz 36371372 BLAKE2B 75cb14f158c36ded8313a1c5b798838afdf3a38ffc8e29a87c8e1e3e74c9aeca827432397ad83ed23a1d3aeaaef91822cc3c23aa226a307d93f84f54b25d71bb SHA512 676baf03626d5bf36aea7117d39ef71ba7878ab6bccdec1ee199bd699d559a5f3f6a0d9032ef120204093677b7fbbe1b575529d3aa692acd1a4447f9c2715f3a
|
||||
DIST ansible-7.4.0.tar.gz 37352820 BLAKE2B 33d3affa052e509348c981920597ab13f3181dee1ab46eda764e0a68df2edeefbcb62cec57e62da559bfe2b5e7efdb95eba1b602efe198bfad8dd0301e66c7df SHA512 c77aebb54676b669305905c969fa5afac9e1262bfefa358de7fee0fb3ef89d0306c599acb2225cdb4209c53df16c307d438cc628299aec494c70cba166eb3cbb
|
||||
DIST ansible-7.5.0.tar.gz 37716844 BLAKE2B 47f6fcb744a65b3dd4d8619acd0ca23561bb6f1e3eb12d038e212a0bd92e98e0c93ab5f08c463cca357c568cccb19eb1bfd764d91cf83d79564039525ee90bc7 SHA512 0246d5beabbe26733978d83359b5647727c833ca0dd3f84f86f61f906e62e96178bffb82e39a2a48ffc442e01f3ab8335f5bb7c4649c872373831ad2deaf9572
|
||||
DIST ansible-7.6.0.tar.gz 38452799 BLAKE2B 88b652b1b0bcbedb982606c7d7734fd11567cd492f4e0d617d7412e1bac8978fcef1f4201bb0338098204640e2b004d8921427c1d642bfbb15a7f95b134cb85e SHA512 4f8960356e0ff855d54b435ed691d1d4f7d38c1231269e35b3dbbee536a9d8d1aef2806d7ce38e863fe216e9fddb2f86ce55ba997a3bd1d8bb7f43c5c519ff72
|
||||
|
@ -1,28 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Model-driven deployment, config management, and command execution framework"
|
||||
HOMEPAGE="https://www.ansible.com/"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86 ~x64-macos"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND=">=app-admin/ansible-core-2.14.0
|
||||
<app-admin/ansible-core-2.15"
|
||||
|
||||
python_compile() {
|
||||
local -x ANSIBLE_SKIP_CONFLICT_CHECK=1
|
||||
distutils-r1_python_compile
|
||||
}
|
||||
python_install() {
|
||||
local -x ANSIBLE_SKIP_CONFLICT_CHECK=1
|
||||
distutils-r1_python_install
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-mod-r1
|
||||
|
||||
DESCRIPTION="Kernel driver for AMD Ryzen's System Management Unit"
|
||||
HOMEPAGE="https://github.com/leogx9r/ryzen_smu"
|
||||
SRC_URI="https://dev.gentoo.org/~slashbeast/distfiles/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
src_compile() {
|
||||
local modlist=( ryzen_smu )
|
||||
local modargs=( KERNEL_BUILD="${KV_OUT_DIR}" )
|
||||
|
||||
linux-mod-r1_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod-r1_src_install
|
||||
|
||||
insinto /usr/lib/modules-load.d
|
||||
doins "${FILESDIR}"/ryzen_smu.conf
|
||||
}
|
Binary file not shown.
@ -1,11 +0,0 @@
|
||||
--- a/arcdos.c
|
||||
+++ b/arcdos.c
|
||||
@@ -30,7 +30,7 @@
|
||||
#if UNIX
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
-#if BSD
|
||||
+#if BSD || defined(__INTERIX)
|
||||
#include <sys/time.h>
|
||||
#else
|
||||
#include <time.h> /* Sys V. Bleah. */
|
@ -1,45 +0,0 @@
|
||||
diff -ru arj-3.10.22.orig/environ.c arj-3.10.22/environ.c
|
||||
--- arj-3.10.22.orig/environ.c 2008-03-30 16:51:40 +0200
|
||||
+++ arj-3.10.22/environ.c 2008-03-30 16:50:16 +0200
|
||||
@@ -61,7 +61,7 @@
|
||||
#elif defined(__FreeBSD__)||defined(__NetBSD__)||defined(__APPLE__)
|
||||
#include <sys/param.h>
|
||||
#include <sys/mount.h>
|
||||
- #elif defined(__QNXNTO__)
|
||||
+ #elif defined(__QNXNTO__) || defined(__INTERIX)
|
||||
#include <sys/statvfs.h>
|
||||
#else
|
||||
#include <sys/statfs.h>
|
||||
@@ -2286,7 +2286,7 @@
|
||||
else
|
||||
return((LONG_MAX/(spclu*bps)<fclu)?LONG_MAX:spclu*bps*fclu);
|
||||
#elif TARGET==UNIX
|
||||
- #if defined(__QNXNTO__)||defined(__sco__)||defined(SUNOS)
|
||||
+ #if defined(__QNXNTO__)||defined(__sco__)||defined(SUNOS)||defined(__INTERIX)
|
||||
struct statvfs vfs;
|
||||
|
||||
if(statvfs(name, &vfs)==-1)
|
||||
@@ -3802,7 +3802,9 @@
|
||||
#elif TARGET==WIN32
|
||||
return(0);
|
||||
#elif TARGET==UNIX
|
||||
+ #ifndef __INTERIX
|
||||
sync();
|
||||
+ #endif
|
||||
return(0);
|
||||
#endif
|
||||
}
|
||||
diff -ru arj-3.10.22.orig/gnu/configure.in arj-3.10.22/gnu/configure.in
|
||||
--- arj-3.10.22.orig/gnu/configure.in 2008-03-30 16:51:40 +0200
|
||||
+++ arj-3.10.22/gnu/configure.in 2008-03-30 16:41:37 +0200
|
||||
@@ -67,8 +67,9 @@
|
||||
DLL_EXT=".dylib"
|
||||
DLL_FLAGS=""
|
||||
;;
|
||||
-interix3*)
|
||||
+interix*)
|
||||
# not ELF
|
||||
+ DYN_LIBS="-ldl"
|
||||
DLL_FLAGS="-shared"
|
||||
DLL_CFLAGS=""
|
||||
;;
|
Binary file not shown.
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST sbsigntool-0.8-ccan.tar.gz 113537 BLAKE2B 8fbf27463d30c1895930628a145be2d521ae4f6adb7af3299bf2f5f4319fd643df0a07347ef6851bd41d233af4c3fc5f77002771af1c43aa0f20665aef2390b8 SHA512 6857096879f116f1802eb6b44789cbea7bb24440bc0f16503aeadf5f276fa45943f322f844dbb9abee717655205d82b830143be3a7f4424fd4146b9360674a09
|
||||
DIST sbsigntools-0.9.4.tar.gz 57714 BLAKE2B 94797af6c98a9c13cb71e52ba6f7ff07de70660af2194b14061e0cb618d6effff52ef7a4dd2fd4e44e75f022b979442d4290b1d65d63017b2fbebdca5951c5c9 SHA512 953d3d9a7f92b837da966eabe3572163a29c5292e792d5ef17cf842d7373ffaa901377cb4ec68006a6ef2f9c97d48db8ffdd3a6d2853be67016d3484a118bba9
|
||||
DIST sbsigntools-0.9.5.tar.gz 57876 BLAKE2B 677f87eac9fba9185acd7e25b8d7a3682083938313f3086aaaa6871e010bd403bdda5b9a5fe931151af75a344802c964918be8feb38ec6229d9a16c5b63416b6 SHA512 3b23bdf1855132a91e2063039bd4d14c5564e9cd8f551711aa89a91646ff783afb6e318479e9cf46eedbc914a1eade142398c774d8dbfef8fd1d65cbbe60aabd
|
||||
|
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_PN="${PN::-1}"
|
||||
|
||||
inherit autotools toolchain-funcs
|
||||
|
||||
DESCRIPTION="Utilities for signing and verifying files for UEFI Secure Boot"
|
||||
HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/sbsigntools.git/"
|
||||
SRC_URI="
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/jejb/${PN}.git/snapshot/${P}.tar.gz
|
||||
https://dev.gentoo.org/~tamiko/distfiles/${MY_PN}-0.8-ccan.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="GPL-3 LGPL-3 LGPL-2.1 CC0-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/openssl:=
|
||||
sys-apps/util-linux
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
sys-boot/gnu-efi
|
||||
sys-libs/binutils-libs
|
||||
"
|
||||
BDEPEND="
|
||||
sys-apps/help2man
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.9.4-no-werror.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
mv "${WORKDIR}"/lib/ccan "${S}"/lib || die "mv failed"
|
||||
rmdir "${WORKDIR}"/lib || die "rmdir failed"
|
||||
|
||||
local iarch
|
||||
case ${ARCH} in
|
||||
amd64) iarch=x86_64 ;;
|
||||
arm64) iarch=aarch64 ;;
|
||||
ia64) iarch=ia64 ;;
|
||||
riscv) iarch=riscv64 ;;
|
||||
x86) iarch=ia32 ;;
|
||||
*) die "unsupported architecture: ${ARCH}" ;;
|
||||
esac
|
||||
sed -i "/^EFI_ARCH=/s:=.*:=${iarch}:" configure.ac || die
|
||||
sed -i 's/-m64$/& -march=x86-64/' tests/Makefile.am || die
|
||||
sed -i "/^AR /s:=.*:= $(tc-getAR):" lib/ccan/Makefile.in || die #481480
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
}
|
Binary file not shown.
@ -1,3 +1,4 @@
|
||||
DIST eclass-manpages-20230329.tar.xz 409168 BLAKE2B 5913afcf95174540546d238cc637689fe0c7de2013f4271ac3feee749eb2fede8b741e2409ba09060fd5c36941e36ee504be8a584201d04b368886f50abfd3ea SHA512 ee43c47f26b474acec2f778a5bf05c752198d2f5cce959a337eaa674465c92869e213dd4aea8243671825cea80bbfbec7040cac283354de4e8feeefeace46d32
|
||||
DIST eclass-manpages-20230417.tar.xz 409620 BLAKE2B 0e1b3cce23ee9f2a91b87c5de89819eca8fd50101e813ecf56c8a1d4147bf33006505425be95a2f1693ec084fbf9409c2aaf1dccf6d9cbf244e71ee1c0e1498d SHA512 2cef6f30e917979b9f56c11f953c27a8048842b432fc6641ea06daf479bc202d9ea2f8ce26769584f317bf3cde2c2f9736d2605546be1b1a10ea557177639de3
|
||||
DIST eclass-manpages-20230512.tar.xz 410888 BLAKE2B a6a26230b7e06a4a62c9e7a6695af3849ed0504ac24da4a2b05ce770a44b69224da6eedae960a7c0a43a9cadbac24b88ef76dd1b2cf9853e91c424e63136989a SHA512 e09513b23268fc5bc84dcea90f5c9901ae0b376379b4235dc599553c3664a29d72cef15787acf4ef3bb2cd9081b95891dc5c100e9f88b6f133b7fbee13c011ad
|
||||
DIST eclass-manpages-20230530.tar.xz 422768 BLAKE2B 1e2985175be537300aa31e87ea397eb103d0b5118f792ea46a06a9100ea4d0c15d25bccdd47e855a2d9b21fe3e0af1f22bdcf97997b1ce79a0c2b0a07b497812 SHA512 7471cd52678ae2f7f4e62c7f6acafa2ea7e7df2949db0280d443c9395c25dc45933050a4c8cdda0d69d0d181d7004c927c9366bfaeb3d2c65f60cd2d62f7c8ff
|
||||
|
@ -0,0 +1,24 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Instructions to make a dist tarball:
|
||||
# git clone https://github.com/projg2/eclass-to-manpage.git
|
||||
# cd eclass-to-manpage
|
||||
# make dist ECLASSDIR=~/g/eclass/
|
||||
|
||||
DESCRIPTION="Collection of Gentoo eclass manpages"
|
||||
HOMEPAGE="https://github.com/projg2/eclass-to-manpage"
|
||||
SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# Keep the keywords stable. No need to change to ~arch.
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
|
||||
BDEPEND="sys-apps/gawk"
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" PREFIX="${EPREFIX}/usr"
|
||||
}
|
Binary file not shown.
@ -1,4 +1 @@
|
||||
DIST scite-5.1.3.tgz 3427245 BLAKE2B ca765b61cb1fa96934c1e28d76a97cd7086a6c692ae33bb57591dfbc8637ffc94c4a3f20f9c6b55d11da8a76664f1d521f7e393bf6f31db55cbe02e0bf5052ba SHA512 ef86a18f739062598d3c7bf19bcd2f38ca012e890b9b4685c1f1b809e928762ab60d24c33a1f45ca33133ce5007e3a22a76e80222b121c9a4089d3c57aa0bc4c
|
||||
DIST scite-5.2.4.tgz 3440615 BLAKE2B a98028774837f7c19a73d3ceef0e7cf945674b0b0d21eec7af4874a1fab1dcbfdad9255adcfb9d458dfc6549baeb27dee3fab207f0145b6c722794a9a96ec284 SHA512 ac3f25fbfe654f4b249c55b2bf97d5ea57483a484feeb30c3663e13366d1a569d9faa22c83b4eb5201154d00713fcd550478573db987084eba0a2e8ea22c57e9
|
||||
DIST scite-5.3.0.tgz 3499449 BLAKE2B b54a4eb5c9d669f840efa782d0b02e1b087b386aabbf58dcd37bdc314f42ff6597bf674329c64bbf40befecbc3d3d00aaf13bd03d0f18a28ab6a050049b25336 SHA512 3401ea04019f4fbbd15118a6b2aeffaaeff91382e742cff4df2dcd83ea59e4d43600b288869db9dbe44609fcfad979d29659edbd200b6b0edfa56eac5a9f577d
|
||||
DIST scite-5.3.5.tgz 3535798 BLAKE2B 16bd6331b8ab5ef2d700a121d8d85078f6eea2f8c45cfd62c5b27c7c9622f853a871e98402ee3833c09652d869271ed05a61374ee1f55d58dbdcc0f5fcbd681c SHA512 18ed3e802f6f5e66573f72c4ad42d592ea3f79e191e828a32d2d55aaf285a2cb9961e206c9e99f82c77f0975494e9105ac925394d7cf48223b954e253f1dee9c
|
||||
|
@ -0,0 +1,40 @@
|
||||
--- a/scite/scripts/HeaderOrder.txt 2023-05-28 04:10:36.897378314 +0300
|
||||
+++ b/scite/scripts/HeaderOrder.txt 2023-05-28 04:11:48.740712313 +0300
|
||||
@@ -30,6 +30,7 @@
|
||||
|
||||
// C++ standard library
|
||||
#include <stdexcept>
|
||||
+#include <system_error>
|
||||
#include <tuple>
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
--- a/scite/src/MultiplexExtension.cxx 2023-05-28 04:16:48.680714993 +0300
|
||||
+++ b/scite/src/MultiplexExtension.cxx 2023-05-28 04:17:58.230715597 +0300
|
||||
@@ -5,6 +5,7 @@
|
||||
// Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org>
|
||||
// The License.txt file describes the conditions under which this software may be distributed.
|
||||
|
||||
+#include <cstdint>
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
#include <vector>
|
||||
--- a/scite/src/SciTEBase.cxx 2023-05-28 04:20:08.850716714 +0300
|
||||
+++ b/scite/src/SciTEBase.cxx 2023-05-28 04:21:35.867384145 +0300
|
||||
@@ -15,6 +15,7 @@
|
||||
#include <ctime>
|
||||
#include <cmath>
|
||||
|
||||
+#include <system_error>
|
||||
#include <tuple>
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
--- a/scite/src/SciTEProps.cxx 2023-05-28 04:22:53.904051478 +0300
|
||||
+++ b/scite/src/SciTEProps.cxx 2023-05-28 04:23:43.374051910 +0300
|
||||
@@ -13,6 +13,7 @@
|
||||
#include <ctime>
|
||||
#include <clocale>
|
||||
|
||||
+#include <stdexcept>
|
||||
#include <tuple>
|
||||
#include <string>
|
||||
#include <string_view>
|
@ -1,97 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LUA_COMPAT=( lua5-1 )
|
||||
|
||||
inherit lua-single toolchain-funcs xdg
|
||||
|
||||
DESCRIPTION="A very powerful, highly configurable, small editor with syntax coloring"
|
||||
HOMEPAGE="https://www.scintilla.org/SciTE.html"
|
||||
SRC_URI="https://www.scintilla.org/${PN}${PV//./}.tgz -> ${P}.tgz"
|
||||
|
||||
LICENSE="HPND lua? ( MIT )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc ~riscv x86 ~amd64-linux ~arm-linux ~x86-linux"
|
||||
IUSE="lua"
|
||||
|
||||
REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/atk
|
||||
dev-libs/glib:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
lua? ( ${LUA_DEPS} )"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig"
|
||||
|
||||
DOCS=("../README")
|
||||
|
||||
S="${WORKDIR}/${PN}/gtk"
|
||||
|
||||
pkg_setup() {
|
||||
use lua && lua-single_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
tc-export AR CC CXX RANLIB
|
||||
|
||||
# remove hardcoded CC, Optimizations and clang unknown flags
|
||||
sed -i "${WORKDIR}/scintilla/gtk/makefile" \
|
||||
-e "s#^CC = gcc#CC = ${CC}#" \
|
||||
-e "s#^CC = clang#CC = ${CC}#" \
|
||||
-e "s#^CXX = clang++#CXX = ${CXX}#" \
|
||||
-e "s#-Os##" \
|
||||
-e "s#-Wno-misleading-indentation##" \
|
||||
|| die "error patching /scintilla/gtk/makefile"
|
||||
|
||||
sed -i "${S}/makefile" \
|
||||
-e "s#^CC = clang#CC = ${CC}#" \
|
||||
-e "s#^CXX = clang++#CXX = ${CXX}#" \
|
||||
-e "s#-rdynamic#-rdynamic ${LDFLAGS}#" \
|
||||
-e "s#-Os##" \
|
||||
|| die "error patching gtk/makefile"
|
||||
|
||||
# repair and enhance the .desktop file
|
||||
sed -i "${S}/SciTE.desktop" \
|
||||
-e "s#text/plain#text/\*;application/xhtml+xml#" \
|
||||
-e "s#^Categories=\(.*\)#Categories=Development;#" \
|
||||
|| die "error patching /scite/gtk/SciTe.desktop"
|
||||
|
||||
# add the ebuild suffix as shell type for working with ebuilds
|
||||
sed -i "${WORKDIR}/scite/src/perl.properties" \
|
||||
-e "s#\*.sh;\*.bsh;#\*.ebuild;\*.sh;\*.bsh;#" \
|
||||
|| die "error patching /scite/src/perl.properties"
|
||||
|
||||
# it seems that pwd here is ${S}, but user patches are relative to ${workdir}
|
||||
# Bug #576162
|
||||
|
||||
cd "${WORKDIR}" || die "couldn't cd into ${WORKDIR}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# prepare make options
|
||||
local emake_pars=("GTK3=1")
|
||||
|
||||
tc-is-clang && emake_pars+=("CLANG=1")
|
||||
use !lua && emake_pars+=("NO_LUA=1")
|
||||
|
||||
emake -C "${WORKDIR}/lexilla/src" "${emake_pars[@]}"
|
||||
emake -C "${WORKDIR}/scintilla/gtk" "${emake_pars[@]}"
|
||||
emake "${emake_pars[@]}"
|
||||
}
|
||||
|
||||
# want to use the base src_install() as base_src_install()
|
||||
|
||||
src_install() {
|
||||
default
|
||||
dosym SciTE /usr/bin/scite
|
||||
}
|
@ -1,97 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LUA_COMPAT=( lua5-4 )
|
||||
|
||||
inherit lua-single toolchain-funcs xdg
|
||||
|
||||
DESCRIPTION="A very powerful, highly configurable, small editor with syntax coloring"
|
||||
HOMEPAGE="https://www.scintilla.org/SciTE.html"
|
||||
SRC_URI="https://www.scintilla.org/${PN}${PV//./}.tgz -> ${P}.tgz"
|
||||
|
||||
LICENSE="HPND lua? ( MIT )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc ~riscv x86 ~amd64-linux ~arm-linux ~x86-linux"
|
||||
IUSE="lua"
|
||||
|
||||
REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/atk
|
||||
dev-libs/glib:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
lua? ( ${LUA_DEPS} )"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig"
|
||||
|
||||
DOCS=("../README")
|
||||
|
||||
S="${WORKDIR}/${PN}/gtk"
|
||||
|
||||
pkg_setup() {
|
||||
use lua && lua-single_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
tc-export AR CC CXX RANLIB
|
||||
|
||||
# remove hardcoded CC, Optimizations and clang unknown flags
|
||||
sed -i "${WORKDIR}/scintilla/gtk/makefile" \
|
||||
-e "s#^CC = gcc#CC = ${CC}#" \
|
||||
-e "s#^CC = clang#CC = ${CC}#" \
|
||||
-e "s#^CXX = clang++#CXX = ${CXX}#" \
|
||||
-e "s#-Os##" \
|
||||
-e "s#-Wno-misleading-indentation##" \
|
||||
|| die "error patching /scintilla/gtk/makefile"
|
||||
|
||||
sed -i "${S}/makefile" \
|
||||
-e "s#^CC = clang#CC = ${CC}#" \
|
||||
-e "s#^CXX = clang++#CXX = ${CXX}#" \
|
||||
-e "s#-rdynamic#-rdynamic ${LDFLAGS}#" \
|
||||
-e "s#-Os##" \
|
||||
|| die "error patching gtk/makefile"
|
||||
|
||||
# repair and enhance the .desktop file
|
||||
sed -i "${S}/SciTE.desktop" \
|
||||
-e "s#text/plain#text/\*;application/xhtml+xml#" \
|
||||
-e "s#^Categories=\(.*\)#Categories=Development;#" \
|
||||
|| die "error patching /scite/gtk/SciTe.desktop"
|
||||
|
||||
# add the ebuild suffix as shell type for working with ebuilds
|
||||
sed -i "${WORKDIR}/scite/src/perl.properties" \
|
||||
-e "s#\*.sh;\*.bsh;#\*.ebuild;\*.sh;\*.bsh;#" \
|
||||
|| die "error patching /scite/src/perl.properties"
|
||||
|
||||
# it seems that pwd here is ${S}, but user patches are relative to ${workdir}
|
||||
# Bug #576162
|
||||
|
||||
cd "${WORKDIR}" || die "couldn't cd into ${WORKDIR}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# prepare make options
|
||||
local emake_pars=("GTK3=1")
|
||||
|
||||
tc-is-clang && emake_pars+=("CLANG=1")
|
||||
use !lua && emake_pars+=("NO_LUA=1")
|
||||
|
||||
emake -C "${WORKDIR}/lexilla/src" "${emake_pars[@]}"
|
||||
emake -C "${WORKDIR}/scintilla/gtk" "${emake_pars[@]}"
|
||||
emake "${emake_pars[@]}"
|
||||
}
|
||||
|
||||
# want to use the base src_install() as base_src_install()
|
||||
|
||||
src_install() {
|
||||
GTK3=1 default
|
||||
dosym SciTE /usr/bin/scite
|
||||
}
|
@ -1,97 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LUA_COMPAT=( lua5-4 )
|
||||
|
||||
inherit lua-single toolchain-funcs xdg
|
||||
|
||||
DESCRIPTION="A very powerful, highly configurable, small editor with syntax coloring"
|
||||
HOMEPAGE="https://www.scintilla.org/SciTE.html"
|
||||
SRC_URI="https://www.scintilla.org/${PN}${PV//./}.tgz -> ${P}.tgz"
|
||||
|
||||
LICENSE="HPND lua? ( MIT )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc ~riscv x86 ~amd64-linux ~arm-linux ~x86-linux"
|
||||
IUSE="lua"
|
||||
|
||||
REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/atk
|
||||
dev-libs/glib:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
lua? ( ${LUA_DEPS} )"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig"
|
||||
|
||||
DOCS=("../README")
|
||||
|
||||
S="${WORKDIR}/${PN}/gtk"
|
||||
|
||||
pkg_setup() {
|
||||
use lua && lua-single_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
tc-export AR CC CXX RANLIB
|
||||
|
||||
# remove hardcoded CC, Optimizations and clang unknown flags
|
||||
sed -i "${WORKDIR}/scintilla/gtk/makefile" \
|
||||
-e "s#^CC = gcc#CC = ${CC}#" \
|
||||
-e "s#^CC = clang#CC = ${CC}#" \
|
||||
-e "s#^CXX = clang++#CXX = ${CXX}#" \
|
||||
-e "s#-Os##" \
|
||||
-e "s#-Wno-misleading-indentation##" \
|
||||
|| die "error patching /scintilla/gtk/makefile"
|
||||
|
||||
sed -i "${S}/makefile" \
|
||||
-e "s#^CC = clang#CC = ${CC}#" \
|
||||
-e "s#^CXX = clang++#CXX = ${CXX}#" \
|
||||
-e "s#-rdynamic#-rdynamic ${LDFLAGS}#" \
|
||||
-e "s#-Os##" \
|
||||
|| die "error patching gtk/makefile"
|
||||
|
||||
# repair and enhance the .desktop file
|
||||
sed -i "${S}/SciTE.desktop" \
|
||||
-e "s#text/plain#text/\*;application/xhtml+xml#" \
|
||||
-e "s#^Categories=\(.*\)#Categories=Development;#" \
|
||||
|| die "error patching /scite/gtk/SciTe.desktop"
|
||||
|
||||
# add the ebuild suffix as shell type for working with ebuilds
|
||||
sed -i "${WORKDIR}/scite/src/perl.properties" \
|
||||
-e "s#\*.sh;\*.bsh;#\*.ebuild;\*.sh;\*.bsh;#" \
|
||||
|| die "error patching /scite/src/perl.properties"
|
||||
|
||||
# it seems that pwd here is ${S}, but user patches are relative to ${workdir}
|
||||
# Bug #576162
|
||||
|
||||
cd "${WORKDIR}" || die "couldn't cd into ${WORKDIR}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# prepare make options
|
||||
local emake_pars=("GTK3=1")
|
||||
|
||||
tc-is-clang && emake_pars+=("CLANG=1")
|
||||
use !lua && emake_pars+=("NO_LUA=1")
|
||||
|
||||
emake -C "${WORKDIR}/lexilla/src" "${emake_pars[@]}"
|
||||
emake -C "${WORKDIR}/scintilla/gtk" "${emake_pars[@]}"
|
||||
emake "${emake_pars[@]}"
|
||||
}
|
||||
|
||||
# want to use the base src_install() as base_src_install()
|
||||
|
||||
src_install() {
|
||||
GTK3=1 default
|
||||
dosym SciTE /usr/bin/scite
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
https://sourceforge.net/tracker/?func=detail&aid=3554634&group_id=21862&atid=374571
|
||||
--- a/shed.c
|
||||
+++ b/shed.c
|
||||
@@ -31,6 +31,10 @@
|
||||
#include <ctype.h> /* tolower */
|
||||
#include <unistd.h> /* dup, dup2 */
|
||||
|
||||
+#ifdef __INTERIX
|
||||
+# include <sys/time.h>
|
||||
+#endif
|
||||
+
|
||||
#include "util.h"
|
||||
|
||||
/* function prototypes */
|
Binary file not shown.
@ -1,4 +1,2 @@
|
||||
DIST VBoxGuestAdditions_6.1.42.iso 63946752 BLAKE2B 56cb4bcb256e9def35fa0c2ff2b9cc18ec52d8d8d5def2b2619861a0bee18970314b7c26a8413ba8317183612d0f4762d7b20524d4422ccdcf11e82455aed238 SHA512 b2bbe3e3defc1131eec1769b508fd604835ba0e28e4b77ddbaa838ee6d3b0b8a0b89841226750cc8b7dc8b5fa918b613b6c9083449cb1da9b6fe1f410d501315
|
||||
DIST VBoxGuestAdditions_6.1.44.iso 63952896 BLAKE2B afbcf9e3d648b4314cdee8ef008a4e0ca34d071bf4aa819f157c4414072ef341c1996b67a497b31b903c9e9f984a7800f1cd8caf7d1ccf54cddbadb499fc2a6e SHA512 19bc732f47883867ff3822eacf8d7cf88fa17e994b7b2d8d8081068be464d27402e2ca6ee0f1584d7fe9b2e8aa02c654827f353cb8ad1bb339d885b08367090e
|
||||
DIST VBoxGuestAdditions_7.0.6.iso 53049344 BLAKE2B df18a10dd6af3b4fd6a7d8e0d14b70d3a93274eb60b41e419c69ffe68bac3e5780782c32ace3a402c7755310f614ab42560d969f016f89d2ef5e32e06a6a260c SHA512 ba948b05209cad10d0772009af7529339faa44c31f75e0e10811887bd280f5fb7ed545dec315380ea99532bcbfc72833740c3c8b55502e8ec883d809c2bce47f
|
||||
DIST VBoxGuestAdditions_7.0.8.iso 53485568 BLAKE2B 6aed8e745d2c17899decdf40e7c5c5115be89f394bc59d824e3503c795ef935cae541c7f5959cb1c116dabc30fe7db3deb3acf47345159da5327f29d2ab00396 SHA512 6333f14da57e9d460b8866d58ab4adaefc8b673859ab2e62ededdcba2d14f46723d64d90c8f0bde3c321adfe887249ef043d137b25f9fc0bc5b663770ddf2205
|
||||
|
@ -1,25 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_PN=VBoxGuestAdditions
|
||||
MY_P=${MY_PN}_${PV}
|
||||
|
||||
DESCRIPTION="CD image containing guest additions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.iso"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64"
|
||||
|
||||
src_unpack() {
|
||||
return 0
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/${PN/-additions}
|
||||
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_PN=VBoxGuestAdditions
|
||||
MY_P=${MY_PN}_${PV}
|
||||
|
||||
DESCRIPTION="CD image containing guest additions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.iso"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-3 || ( GPL-3 CDDL )"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64"
|
||||
|
||||
src_unpack() {
|
||||
return 0
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/${PN/-additions}
|
||||
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
|
||||
}
|
@ -1,4 +1,2 @@
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.42.tar.gz 11233419 BLAKE2B c380b83ae5e5cad91f83ad99805bd8627b3e1101840cc8bfcc352fdb44369ff73f7f9ae2503e3fb4aeeac2ce4182e69273a4758eb6c71dd60c89cfcadcc22cd1 SHA512 9b5643a37319113d7f9e93c49d88d7aef319060a7be4bdfb0f09044916f03a203ddeb6799b7d99c2c0f83faa7f610c72058649ef763af18f662781f8e0c10f83
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.44.tar.gz 11233400 BLAKE2B 8e0046204956a86194f36a7e790956f1da8362f0c97e5c8c5f1c8965475255a42e1459a49004ebe0137124b23f7605200ef6a481169b684f7433803599982f35 SHA512 12b3cea7f3c54cf9f755bcc191d093ee2fd6a843626a2a5f8deb17bd0c1595492e16164bd5044795b9cc3ef6469d017ab575ca82269d76c7f5e47793313a0c3e
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-7.0.6.tar.gz 18539414 BLAKE2B 5610d3a40a8e2c785821f2d38e498b4330db70700319fef056ced37cffc51492721bb7d796d94e94867f3c7c0680bdd27c2379938dd50f9de372a25b113fb5d1 SHA512 cc1c928bba49c4a851705036b81e7bd7a5e2348311eb80c6c880858d029db4df5e8720227292e1f8a168ca8be6e8479e3f5a02dc4d9800233e9b7623c602fe7c
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-7.0.8.tar.gz 18678513 BLAKE2B b29edba975a71acbe2602221c7cc3ee349e4b530589568a879223edfa25137b7cb1e821b0273e1f622065d035b1832ce211df44d0832815482a3638e68475d8c SHA512 a128ebb9e318a7bfb0ff54902bc4e93cbdfbe4469921db30e45631ffc5c35c5f489a88efa1c1eb9fcc44abcbfc46bd0746b2f4a0c61f344a49b34890834d6e31
|
||||
|
@ -1,28 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_PV="$(ver_cut 1-3)"
|
||||
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
MY_P="${MY_PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="PUEL extensions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="PUEL-11"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64"
|
||||
RESTRICT="bindist mirror strip"
|
||||
|
||||
RDEPEND=">=app-emulation/virtualbox-${MY_PV}"
|
||||
|
||||
QA_PREBUILT="usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/*"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_PV="$(ver_cut 1-3)"
|
||||
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
MY_P="${MY_PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="PUEL extensions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="PUEL-11"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64"
|
||||
RESTRICT="bindist mirror strip"
|
||||
|
||||
RDEPEND="=app-emulation/virtualbox-${MY_PV}*"
|
||||
|
||||
QA_PREBUILT="usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/*"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
}
|
@ -1,6 +1,4 @@
|
||||
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.8a.tar.bz2 199387757 BLAKE2B 0ba397825277ecbb851bd4ea94c85448e2966fd96ef8edcaf3102f8515553736d6ceee84c0647fa37443c1875256353fdd029d6c505aa99834079acb957b24a0 SHA512 fcbf907f6f7f2396ebff5a31af6ec00b38f09799380bac4847cc9044455832de058659edaa9f621b0054fa402bfacef1b5444498c9faeb3671d02da1505c952d
|
||||
DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
|
||||
DIST virtualbox-patches-7.0.8.tar.bz2 2733 BLAKE2B 044dfe02a5bd5e757091318b394b0e5918677b5bbce9caef4a18d4d8df54821559f0df6ffbdd6f52d4934bc4018e9c9d908571c5d3d8804fd3b0f22a7a1aed84 SHA512 93a06aa3f9508d3a8743ca8494a958159b5bc3fd7a0a08ff23414d05c4f31084cf0f1c82a3866e222c83e6996ba004546f0bd33c6eb9a90eec8e548b8b3f2fbf
|
||||
|
@ -1,283 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edo linux-mod systemd toolchain-funcs udev
|
||||
|
||||
MY_PN="VirtualBox"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
|
||||
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"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="X +dbus"
|
||||
|
||||
# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
|
||||
RDEPEND="
|
||||
acct-group/vboxguest
|
||||
acct-group/vboxsf
|
||||
acct-user/vboxguest
|
||||
sys-libs/pam
|
||||
sys-libs/zlib
|
||||
dbus? ( sys-apps/dbus )
|
||||
X? (
|
||||
x11-apps/xrandr
|
||||
x11-apps/xrefresh
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
X? (
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libXau
|
||||
x11-libs/libXdmcp
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
<=dev-util/kbuild-0.1.9998.3500
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-power/iasl
|
||||
"
|
||||
PDEPEND="
|
||||
X? ( x11-drivers/xf86-video-vboxvideo )
|
||||
"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
|
||||
VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
|
||||
MODULESD_VBOXSF_ALIASES=("fs-vboxsf vboxsf") # 485996
|
||||
|
||||
pkg_setup() {
|
||||
export DISTCC_DISABLE=1 #674256
|
||||
MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
|
||||
vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
|
||||
use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
|
||||
|
||||
linux-mod_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
rm -r kBuild/bin tools || die
|
||||
|
||||
# Provide kernel sources
|
||||
pushd src/VBox/Additions &>/dev/null || die
|
||||
ebegin "Extracting guest kernel module sources"
|
||||
kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null
|
||||
eend $? || die
|
||||
popd &>/dev/null || die
|
||||
|
||||
# PaX fixes (see bug #298988)
|
||||
pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
|
||||
eapply "${FILESDIR}"/vboxguest-6.1.36-log-use-c99.patch
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Disable things unused or splitted into separate ebuilds
|
||||
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
|
||||
use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
|
||||
|
||||
# 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
|
||||
|
||||
eapply "${WORKDIR}/virtualbox-patches-6.1.36/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}
|
||||
--with-linux="${KV_OUT_DIR}"
|
||||
--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[@]}"
|
||||
|
||||
# Now creating the kernel modules. We must do this _after_
|
||||
# we compiled the user-space tools as we need two of the
|
||||
# automatically generated header files. (>=3.2.0)
|
||||
# Move this here for bug 836037
|
||||
BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
|
||||
linux-mod_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
|
||||
cd "${S}"/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 X ; 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
|
||||
|
||||
# sample xorg.conf
|
||||
dodoc "${FILESDIR}"/xorg.conf.vbox
|
||||
docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
udev_reload
|
||||
if ! use X ; then
|
||||
elog "use flag X is off, enable it to install the"
|
||||
elog "X Window System video driver."
|
||||
fi
|
||||
elog ""
|
||||
elog "Please add users to the \"vboxguest\" group so they can"
|
||||
elog "benefit from seamless mode, auto-resize and clipboard."
|
||||
elog ""
|
||||
elog "The vboxsf group has been added to make automount services work."
|
||||
elog "These services are part of the shared folders support."
|
||||
elog ""
|
||||
elog "Please add:"
|
||||
elog "/etc/init.d/${PN}"
|
||||
elog "to the default runlevel in order to start"
|
||||
elog "needed services."
|
||||
elog "To use the VirtualBox X driver, use the following"
|
||||
elog "file as your /etc/X11/xorg.conf:"
|
||||
elog " /usr/share/doc/${PF}/xorg.conf.vbox"
|
||||
elog ""
|
||||
elog "An autostart .desktop file has been installed to start"
|
||||
elog "VBoxClient in desktop sessions."
|
||||
elog ""
|
||||
elog "You can mount shared folders with:"
|
||||
elog " mount -t vboxsf <shared_folder_name> <mount_point>"
|
||||
elog ""
|
||||
elog "Warning:"
|
||||
elog "this ebuild is only needed if you are running gentoo"
|
||||
elog "inside a VirtualBox Virtual Machine, you don't need"
|
||||
elog "it to run VirtualBox itself."
|
||||
elog ""
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
linux-mod_pkg_postrm
|
||||
udev_reload
|
||||
}
|
@ -1,289 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edo linux-mod systemd toolchain-funcs udev
|
||||
|
||||
MY_PN="VirtualBox"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
|
||||
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}"
|
||||
|
||||
# Reminder: see the LICENSE related comment in app-emulation/virtualbox-additions ebuild
|
||||
LICENSE="GPL-3 LGPL-2.1+ MIT || ( GPL-3 CDDL )"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="+dbus gui"
|
||||
|
||||
# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
|
||||
# TODO: find out what this is, remove comment if obsolete
|
||||
|
||||
RDEPEND="
|
||||
acct-group/vboxguest
|
||||
acct-group/vboxsf
|
||||
acct-user/vboxguest
|
||||
sys-libs/pam
|
||||
sys-libs/zlib
|
||||
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-util/kbuild-0.1.9998.3127
|
||||
sys-devel/bin86
|
||||
sys-power/iasl
|
||||
"
|
||||
PDEPEND="
|
||||
gui? ( x11-drivers/xf86-video-vboxvideo )
|
||||
"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
|
||||
VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
|
||||
MODULESD_VBOXSF_ALIASES=("fs-vboxsf vboxsf") # 485996
|
||||
|
||||
pkg_setup() {
|
||||
export DISTCC_DISABLE=1 #674256
|
||||
MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
|
||||
vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
|
||||
use gui && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
|
||||
|
||||
linux-mod_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
rm -r kBuild/bin tools || die
|
||||
|
||||
# Provide kernel sources
|
||||
pushd src/VBox/Additions &>/dev/null || die
|
||||
ebegin "Extracting guest kernel module sources"
|
||||
kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null
|
||||
eend $? || die
|
||||
popd &>/dev/null || die
|
||||
|
||||
# PaX fixes (see bug #298988)
|
||||
pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
|
||||
eapply "${FILESDIR}"/vboxguest-6.1.36-log-use-c99.patch
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Disable things unused or splitted into separate ebuilds
|
||||
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
|
||||
if ! use gui; then
|
||||
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 "${WORKDIR}/virtualbox-patches-6.1.36/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}
|
||||
--with-linux="${KV_OUT_DIR}"
|
||||
--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[@]}"
|
||||
|
||||
# Now creating the kernel modules. We must do this _after_
|
||||
# we compiled the user-space tools as we need two of the
|
||||
# automatically generated header files. (>=3.2.0)
|
||||
# Move this here for bug 836037
|
||||
BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
|
||||
linux-mod_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
|
||||
cd "${S}"/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
|
||||
|
||||
# sample xorg.conf
|
||||
dodoc "${FILESDIR}"/xorg.conf.vbox
|
||||
docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
udev_reload
|
||||
if ! use gui ; then
|
||||
elog "use flag gui is off, enable it to install the"
|
||||
elog "X Window System video driver."
|
||||
fi
|
||||
elog ""
|
||||
elog "Please add users to the \"vboxguest\" group so they can"
|
||||
elog "benefit from seamless mode, auto-resize and clipboard."
|
||||
elog ""
|
||||
elog "The vboxsf group has been added to make automount services work."
|
||||
elog "These services are part of the shared folders support."
|
||||
elog ""
|
||||
elog "Please add:"
|
||||
elog "/etc/init.d/${PN}"
|
||||
elog "to the default runlevel in order to start"
|
||||
elog "needed services."
|
||||
elog "To use the VirtualBox X driver, use the following"
|
||||
elog "file as your /etc/X11/xorg.conf:"
|
||||
elog " /usr/share/doc/${PF}/xorg.conf.vbox"
|
||||
elog ""
|
||||
elog "An autostart .desktop file has been installed to start"
|
||||
elog "VBoxClient in desktop sessions."
|
||||
elog ""
|
||||
elog "You can mount shared folders with:"
|
||||
elog " mount -t vboxsf <shared_folder_name> <mount_point>"
|
||||
elog ""
|
||||
elog "Warning:"
|
||||
elog "this ebuild is only needed if you are running gentoo"
|
||||
elog "inside a VirtualBox Virtual Machine, you don't need"
|
||||
elog "it to run VirtualBox itself."
|
||||
elog ""
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
linux-mod_pkg_postrm
|
||||
udev_reload
|
||||
}
|
@ -1,4 +1,2 @@
|
||||
DIST vbox-kernel-module-src-6.1.42.tar.xz 679052 BLAKE2B d89324cee9cfc71e2762f5d2b7dfff33297b0d2eab5714ad9ddcfb762b1263ca17acbe5fdffe53170936fe0a0faffbc69989b62cdcc0b979f394fcff35f5b69c SHA512 3bb363c8f163b5958edc11c971122c35977275c0995eab832262277720c7486150939d50a0640170fa7a5cd32c1dc2918c5e3430ec90a836400d0a774b48d886
|
||||
DIST vbox-kernel-module-src-6.1.44.tar.xz 678920 BLAKE2B d18bd899205b1baa476b6a17b29c8f210238ddcf5949dd5f7b73e06854c85a816422b8f24045d3d0c1adb3cf1fcadbe089e61c2b9764262a14b04b2beaede8be SHA512 a682c94e61ad1c6090223348522123ee7ba87cdd69aaa0bc09a268068bebc2f9d7c8a156c52d82237999f26664790dddb1c8aca72ac4b5ba2133e35086f6516c
|
||||
DIST vbox-kernel-module-src-7.0.6.tar.xz 718156 BLAKE2B 9f855482c77b14e233ed247f7d94df7c23a00e0f9fca27926921f8c18fa6ab2205075f1b9be61429cfbee325d5f22805c850c0c79fd4fa9ccf7668dcb714f345 SHA512 fca794fd36203b296ce14d7d06022360bb9d94a6e06d8d9c77cc0221f63a898b6482b423e7deb6bd7b0355ee98fc3c7bbe11c9a1fa5dcf1d634eebc4fe537dc3
|
||||
DIST vbox-kernel-module-src-7.0.8.tar.xz 718032 BLAKE2B f8993f6668d12f6bb6a4ab81376e02b11f806012e9ef101ab7d1cbe17004ce34c9214691e1047aa0b5a82b25b91521b9c9ab20a8b7638136cc64e44f1dda89e6 SHA512 5f56a94cdac2490a2dfea3f006f7fb0229e7467d7a71029063c200d42dbf4fbeb65d3d0612f862c5c303f8cd5b60a9ab58dc7a8f593f128e7e6b3f89c53eaefc
|
||||
|
@ -1,61 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from VirtualBox-*.run
|
||||
# XXX: update: now it is split from virtualbox-*-Debian~bullseye_amd64.deb
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-mod toolchain-funcs
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${MY_P}.tar.xz"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
|
||||
MODULESD_VBOXDRV_ENABLED="yes"
|
||||
MODULESD_VBOXNETADP_ENABLED="no"
|
||||
MODULESD_VBOXNETFLT_ENABLED="no"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/virtualbox-modules-7.0.6-kernel-6.3.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=\"$(tc-getBUILD_CC)\" KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
if linux_chkconfig_present CC_IS_CLANG; then
|
||||
ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
|
||||
|
||||
BUILD_PARAMS+=' CC=${CHOST}-clang'
|
||||
if linux_chkconfig_present LD_IS_LLD; then
|
||||
BUILD_PARAMS+=' LD=ld.lld'
|
||||
if linux_chkconfig_present LTO_CLANG_THIN; then
|
||||
# kernel enables cache by default leading to sandbox violations
|
||||
BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Remove vboxpci.ko from current running kernel
|
||||
# This module is obsolete, removed in december 2019, so it may be missing. No || die
|
||||
# TODO: consider removing this line in the near future
|
||||
find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
|
||||
linux-mod_pkg_postinst
|
||||
}
|
@ -1,57 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from VirtualBox-*.run
|
||||
# XXX: update: now it is split from virtualbox-*-Debian~bullseye_amd64.deb
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-mod toolchain-funcs
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${MY_P}.tar.xz"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
|
||||
MODULESD_VBOXDRV_ENABLED="yes"
|
||||
MODULESD_VBOXNETADP_ENABLED="no"
|
||||
MODULESD_VBOXNETFLT_ENABLED="no"
|
||||
|
||||
pkg_setup() {
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=\"$(tc-getBUILD_CC)\" KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
if linux_chkconfig_present CC_IS_CLANG; then
|
||||
ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
|
||||
|
||||
BUILD_PARAMS+=' CC=${CHOST}-clang'
|
||||
if linux_chkconfig_present LD_IS_LLD; then
|
||||
BUILD_PARAMS+=' LD=ld.lld'
|
||||
if linux_chkconfig_present LTO_CLANG_THIN; then
|
||||
# kernel enables cache by default leading to sandbox violations
|
||||
BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Remove vboxpci.ko from current running kernel
|
||||
# This module is obsolete, removed in december 2019, so it may be missing. No || die
|
||||
# TODO: consider removing this line in the near future
|
||||
find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
|
||||
linux-mod_pkg_postinst
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from VirtualBox-*.run
|
||||
# XXX: update: now it is split from virtualbox-*-Debian~bullseye_amd64.deb
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-mod toolchain-funcs
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${MY_P}.tar.xz"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
|
||||
MODULESD_VBOXDRV_ENABLED="yes"
|
||||
MODULESD_VBOXNETADP_ENABLED="no"
|
||||
MODULESD_VBOXNETFLT_ENABLED="no"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/virtualbox-modules-7.0.6-kernel-6.3.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=\"$(tc-getBUILD_CC)\" KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
if linux_chkconfig_present CC_IS_CLANG; then
|
||||
ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
|
||||
|
||||
BUILD_PARAMS+=' CC=${CHOST}-clang'
|
||||
if linux_chkconfig_present LD_IS_LLD; then
|
||||
BUILD_PARAMS+=' LD=ld.lld'
|
||||
if linux_chkconfig_present LTO_CLANG_THIN; then
|
||||
# kernel enables cache by default leading to sandbox violations
|
||||
BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Remove vboxpci.ko from current running kernel
|
||||
# This module is obsolete, removed in december 2019, so it may be missing. No || die
|
||||
# TODO: consider removing this line in the near future
|
||||
find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
|
||||
linux-mod_pkg_postinst
|
||||
}
|
@ -1,57 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from VirtualBox-*.run
|
||||
# XXX: update: now it is split from virtualbox-*-Debian~bullseye_amd64.deb
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-mod toolchain-funcs
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${MY_P}.tar.xz"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="amd64"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
|
||||
MODULESD_VBOXDRV_ENABLED="yes"
|
||||
MODULESD_VBOXNETADP_ENABLED="no"
|
||||
MODULESD_VBOXNETFLT_ENABLED="no"
|
||||
|
||||
pkg_setup() {
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=\"$(tc-getBUILD_CC)\" KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
if linux_chkconfig_present CC_IS_CLANG; then
|
||||
ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
|
||||
|
||||
BUILD_PARAMS+=' CC=${CHOST}-clang'
|
||||
if linux_chkconfig_present LD_IS_LLD; then
|
||||
BUILD_PARAMS+=' LD=ld.lld'
|
||||
if linux_chkconfig_present LTO_CLANG_THIN; then
|
||||
# kernel enables cache by default leading to sandbox violations
|
||||
BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Remove vboxpci.ko from current running kernel
|
||||
# This module is obsolete, removed in december 2019, so it may be missing. No || die
|
||||
# TODO: consider removing this line in the near future
|
||||
find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
|
||||
linux-mod_pkg_postinst
|
||||
}
|
@ -1,8 +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-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
|
||||
DIST virtualbox-patches-7.0.8.tar.bz2 2733 BLAKE2B 044dfe02a5bd5e757091318b394b0e5918677b5bbce9caef4a18d4d8df54821559f0df6ffbdd6f52d4934bc4018e9c9d908571c5d3d8804fd3b0f22a7a1aed84 SHA512 93a06aa3f9508d3a8743ca8494a958159b5bc3fd7a0a08ff23414d05c4f31084cf0f1c82a3866e222c83e6996ba004546f0bd33c6eb9a90eec8e548b8b3f2fbf
|
||||
|
@ -1,90 +0,0 @@
|
||||
Add support for python 3.11
|
||||
|
||||
Virtualbox 7.0.0 will only build a lib named VBoxPython3.so, regardless of the
|
||||
actual python version used when compiling. Remove VBoxPython3m.so, we don't
|
||||
use it.
|
||||
|
||||
--- a/src/libs/xpcom18a4/python/Makefile.kmk
|
||||
+++ b/src/libs/xpcom18a4/python/Makefile.kmk
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
#
|
||||
# List of supported Python versions, defining a number of
|
||||
-# VBOX_PYTHON[26|27|31|32|32M|33|33M|34|34M|35|35M|36|36M|37|37M|38|38M|39|39M|310|310M|DEF]_[INC|LIB] variables
|
||||
+# VBOX_PYTHON[26|27|31|32|32M|33|33M|34|34M|35|35M|36|36M|37|37M|38|38M|39|39M|310|310M|311|311M|DEF]_[INC|LIB] variables
|
||||
# which get picked up below.
|
||||
#
|
||||
ifeq ($(KBUILD_TARGET),darwin) # Relatively predictable, don't script.
|
||||
@@ -702,6 +702,52 @@
|
||||
endif
|
||||
endif
|
||||
|
||||
+ifdef VBOX_PYTHON311_INC
|
||||
+#
|
||||
+# Python 3.11 version
|
||||
+#
|
||||
+DLLS += VBoxPython3_11
|
||||
+VBoxPython3_11_EXTENDS = VBoxPythonBase
|
||||
+VBoxPython3_11_EXTENDS_BY = appending
|
||||
+VBoxPython3_11_TEMPLATE = XPCOM
|
||||
+VBoxPython3_11_INCS = $(VBOX_PYTHON311_INC)
|
||||
+VBoxPython3_11_LIBS = $(VBOX_PYTHON311_LIB)
|
||||
+
|
||||
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
|
||||
+ ifdef VBOX_PYTHON311_LIB_X86
|
||||
+DLLS += VBoxPython3_11_x86
|
||||
+VBoxPython3_11_x86_EXTENDS = VBoxPythonBase_x86
|
||||
+VBoxPython3_11_x86_EXTENDS_BY = appending
|
||||
+VBoxPython3_11_x86_TEMPLATE = XPCOM
|
||||
+VBoxPython3_11_x86_INCS = $(VBOX_PYTHON311_INC)
|
||||
+VBoxPython3_11_x86_LIBS = $(VBOX_PYTHON311_LIB_X86)
|
||||
+ endif
|
||||
+ endif
|
||||
+endif
|
||||
+
|
||||
+ifdef VBOX_PYTHON311M_INC
|
||||
+#
|
||||
+# Python 3.11 version with pymalloc
|
||||
+#
|
||||
+DLLS += VBoxPython3_11m
|
||||
+VBoxPython3_11m_EXTENDS = VBoxPythonBase_m
|
||||
+VBoxPython3_11m_EXTENDS_BY = appending
|
||||
+VBoxPython3_11m_TEMPLATE = XPCOM
|
||||
+VBoxPython3_11m_INCS = $(VBOX_PYTHON311M_INC)
|
||||
+VBoxPython3_11m_LIBS = $(VBOX_PYTHON311M_LIB)
|
||||
+
|
||||
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
|
||||
+ ifdef VBOX_PYTHON311M_LIB_X86
|
||||
+DLLS += VBoxPython3_11m_x86
|
||||
+VBoxPython3_11m_x86_EXTENDS = VBoxPythonBase_x86_m
|
||||
+VBoxPython3_11m_x86_EXTENDS_BY = appending
|
||||
+VBoxPython3_11m_x86_TEMPLATE_ = XPCOM
|
||||
+VBoxPython3_11m_x86_INCS = $(VBOX_PYTHON311M_INC)
|
||||
+VBoxPython3_11m_x86_LIBS = $(VBOX_PYTHON311M_LIB_X86)
|
||||
+ endif
|
||||
+ endif
|
||||
+endif
|
||||
+
|
||||
ifdef VBOX_PYTHONDEF_INC
|
||||
#
|
||||
# Python without versioning
|
||||
@@ -744,18 +790,13 @@
|
||||
# TODO: ASSUMING that we don't need a different headers for pymalloc
|
||||
# ('m' builds < 3.8) and CRT malloc.
|
||||
#
|
||||
-VBOX_PYTHON_LIMITED_API_VER := $(firstword $(foreach ver, 35 36 38 39 310 34 33 \
|
||||
+VBOX_PYTHON_LIMITED_API_VER := $(firstword $(foreach ver, 35 36 38 39 310 311 34 33 \
|
||||
,$(if-expr defined(VBOX_PYTHON$(ver)_INC),$(ver),)$(if-expr defined(VBOX_PYTHON$(ver)M_INC),$(ver)M,)))
|
||||
ifneq ($(VBOX_PYTHON_LIMITED_API_VER),)
|
||||
DLLS += VBoxPython3
|
||||
VBoxPython3_EXTENDS = VBoxPythonBase
|
||||
VBoxPython3_DEFS = $(filter-out VBOX_PYXPCOM_VERSIONED,$(VBoxPythonBase_DEFS)) Py_LIMITED_API=0x03030000
|
||||
VBoxPython3_INCS = $(VBoxPythonBase_INCS) $(VBOX_PYTHON$(VBOX_PYTHON_LIMITED_API_VER)_INC)
|
||||
-
|
||||
-DLLS += VBoxPython3m
|
||||
-VBoxPython3m_EXTENDS = VBoxPythonBase_m
|
||||
-VBoxPython3m_DEFS = $(filter-out VBOX_PYXPCOM_VERSIONED,$(VBoxPythonBase_m_DEFS)) Py_LIMITED_API=0x03030000
|
||||
-VBoxPython3m_INCS = $(VBoxPythonBase_m_INCS) $(VBOX_PYTHON$(VBOX_PYTHON_LIMITED_API_VER)_INC)
|
||||
endif
|
||||
endif # VBOX_WITH_PYTHON_LIMITED_API
|
||||
|
@ -1,26 +0,0 @@
|
||||
Fix compilation if VBOX_WITH_AUDIO_OSS is defined while VBOX_WITH_AUDIO_PULSE and VBOX_WITH_AUDIO_ALSA are not
|
||||
|
||||
--- a/src/VBox/Main/xml/Settings.cpp
|
||||
+++ b/src/VBox/Main/xml/Settings.cpp
|
||||
@@ -8931,6 +8931,9 @@
|
||||
RTCLock lock(s_mtx);
|
||||
if (s_enmLinuxDriver == AudioDriverType_Null)
|
||||
{
|
||||
+# ifdef VBOX_WITH_AUDIO_OSS
|
||||
+ s_enmLinuxDriver = AudioDriverType_OSS;
|
||||
+# endif /* VBOX_WITH_AUDIO_OSS */
|
||||
# ifdef VBOX_WITH_AUDIO_PULSE
|
||||
/* Check for the pulse library & that the pulse audio daemon is running. */
|
||||
if (RTProcIsRunningByName("pulseaudio") &&
|
||||
@@ -8943,10 +8946,7 @@
|
||||
if (RTLdrIsLoadable("libasound.so.2"))
|
||||
s_enmLinuxDriver = AudioDriverType_ALSA;
|
||||
# endif /* VBOX_WITH_AUDIO_ALSA */
|
||||
-# ifdef VBOX_WITH_AUDIO_OSS
|
||||
- else
|
||||
- s_enmLinuxDriver = AudioDriverType_OSS;
|
||||
-# endif /* VBOX_WITH_AUDIO_OSS */
|
||||
+ ;
|
||||
}
|
||||
return s_enmLinuxDriver;
|
||||
|
@ -1,665 +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 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-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
|
||||
}
|
@ -1,730 +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
|
||||
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/libsdl:0[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-sound/pulseaudio )
|
||||
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.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
|
||||
"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
|
||||
"${FILESDIR}"/${PN}-7.0.6-fix-libxml2.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/ /\ /g' \
|
||||
-e 's/–/\–/g' \
|
||||
-e 's/←/\←/g' \
|
||||
-e 's/→/\→/g' \
|
||||
-e 's/↔/\↔/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/'[^&]*\(vboxdrv setup\|vboxconfig\)'/\'emerge -1 virtualbox-modules\'/' {} \+ || 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
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,12 +0,0 @@
|
||||
[Unit]
|
||||
Description=Mosquitto MQTT Broker daemon
|
||||
ConditionPathExists=/etc/mosquitto/mosquitto.conf
|
||||
Requires=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
@ -1,125 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
|
||||
inherit python-any-r1 systemd toolchain-funcs
|
||||
|
||||
DESCRIPTION="An Open Source MQTT v3 Broker"
|
||||
HOMEPAGE="https://mosquitto.org/ https://github.com/eclipse/mosquitto"
|
||||
SRC_URI="https://mosquitto.org/files/source/${P}.tar.gz"
|
||||
|
||||
LICENSE="EPL-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm ~arm64 x86"
|
||||
IUSE="bridge examples +persistence +srv ssl tcpd test websockets"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
REQUIRED_USE="test? ( bridge )"
|
||||
|
||||
RDEPEND="
|
||||
acct-user/mosquitto
|
||||
acct-group/mosquitto
|
||||
dev-libs/cJSON:=
|
||||
srv? ( net-dns/c-ares:= )
|
||||
ssl? (
|
||||
dev-libs/openssl:0=
|
||||
)
|
||||
tcpd? ( sys-apps/tcp-wrappers )
|
||||
websockets? ( net-libs/libwebsockets[lejp] )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
test? ( dev-util/cunit )
|
||||
"
|
||||
BDEPEND="
|
||||
test? ( ${PYTHON_DEPS} )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use test && python_setup
|
||||
}
|
||||
|
||||
_emake() {
|
||||
local LIBDIR=$(get_libdir)
|
||||
emake \
|
||||
CC="$(tc-getCC)" \
|
||||
CXX="$(tc-getCXX)" \
|
||||
CLIENT_LDFLAGS="${LDFLAGS}" \
|
||||
LIB_SUFFIX="${LIBDIR:3}" \
|
||||
WITH_BRIDGE="$(usex bridge)" \
|
||||
WITH_PERSISTENCE="$(usex persistence)" \
|
||||
WITH_SRV="$(usex srv)" \
|
||||
WITH_TLS="$(usex ssl)" \
|
||||
WITH_WEBSOCKETS="$(usex websockets)" \
|
||||
WITH_WRAP="$(usex tcpd)" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
if use persistence; then
|
||||
sed -i -e "/^#autosave_interval/s|^#||" \
|
||||
-e "s|^#persistence false$|persistence true|" \
|
||||
-e "/^#persistence_file/s|^#||" \
|
||||
-e "s|#persistence_location|persistence_location /var/lib/mosquitto/|" \
|
||||
mosquitto.conf || die
|
||||
fi
|
||||
|
||||
# Remove failing tests
|
||||
sed -i \
|
||||
-e '/06-bridge-reconnect-local-out.py/d' \
|
||||
test/broker/Makefile || die
|
||||
sed -i \
|
||||
-e '/02-subscribe-qos1-async2.test/d' \
|
||||
test/lib/Makefile || die
|
||||
|
||||
# Extend test timeout to prevent spurious failures
|
||||
sed -i -e 's/SUB_TIMEOUT=1/SUB_TIMEOUT=3/' \
|
||||
test/client/test.sh || die
|
||||
|
||||
use test && python_fix_shebang test
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
_emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
_emake test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
_emake DESTDIR="${D}" prefix=/usr install
|
||||
keepdir /var/lib/mosquitto
|
||||
fowners mosquitto:mosquitto /var/lib/mosquitto
|
||||
dodoc README.md CONTRIBUTING.md ChangeLog.txt
|
||||
doinitd "${FILESDIR}"/mosquitto
|
||||
insinto /etc/mosquitto
|
||||
doins mosquitto.conf
|
||||
insinto /usr/share/mosquitto
|
||||
doins misc/letsencrypt/mosquitto-copy.sh
|
||||
systemd_dounit "${FILESDIR}/mosquitto.service"
|
||||
|
||||
if use examples; then
|
||||
docompress -x "/usr/share/doc/${PF}/examples"
|
||||
dodoc -r examples
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
for v in ${REPLACING_VERSIONS}; do
|
||||
if [[ $(ver_cut 1 "$v") -lt 2 ]]; then
|
||||
elog
|
||||
elog "Please read the migration guide at:"
|
||||
elog "https://mosquitto.org/documentation/migrating-to-2-0/"
|
||||
elog
|
||||
elog "If you use Lets Encrypt TLS certificates, take note of"
|
||||
elog "the changes required to run the daemon as the unprivileged"
|
||||
elog "mosquitto user. The mosquitto-copy.sh script has been"
|
||||
elog "installed to /usr/share/mosquitto/ for your convenience."
|
||||
elog
|
||||
fi
|
||||
done
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST vit-2.2.0.tar.gz 65815 BLAKE2B d7643490d00e5f4b1e3c2ed07d1df859c62696adaecb1225a83dc7c025b1c1f7fb3510c754b5a2f063ceedd5d3b361b9b0bef88436fecabab872c57bc8cd96ae SHA512 5301a6cd0e9d2226f006346feef900ebf984f4a98fa933ef20a3864d487e0393dc801ad66723dda956db411a1797f4e759bd161ddc4fe5c1185599c605d1532e
|
||||
DIST vit-2.3.0.tar.gz 72136 BLAKE2B d2988924d9fce8ac2a14f812654ab385bc84f112f3c4d5d150fa04e8151c4cbad7dc5d2d161cc890aa40ceb8a66ac629a1ff53f99531b6166747b379b45764c5 SHA512 49574ebb5dd3127936ec45ab825d927e221c96c32d0966d2c35220b27f5de1df556ff168769aca0b9c22e25f7b86e39d985d326fafe4a33712a3f0c5fa8d9d02
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue