Sync with portage [Sun Jan 22 23:23:04 MSK 2023].

master 2385
root 1 year ago
parent c11cee70ac
commit b643e72e19

Binary file not shown.

Binary file not shown.

@ -0,0 +1,26 @@
https://github.com/tstack/lnav/pull/1112
From e25d3e3c69fcf57bbaec2333846b9a43c4d1fc90 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sat, 21 Jan 2023 18:11:20 +0000
Subject: [PATCH] Fix build with GCC 13 (add missing <cstdint> include)
GCC 13 (as usual for new compiler releases) shuffles around some
internal includes and so <cstdint> is no longer transitively included.
Explicitly include <cstdint> for uint32_t.
Signed-off-by: Sam James <sam@gentoo.org>
--- a/src/base/lnav_log.hh
+++ b/src/base/lnav_log.hh
@@ -32,6 +32,7 @@
#ifndef lnav_log_hh
#define lnav_log_hh
+#include <cstdint>
#include <string>
#include <stdio.h>
--
2.39.1

@ -36,6 +36,7 @@ DOCS=( AUTHORS NEWS.md README )
PATCHES=(
"${FILESDIR}"/${PN}-0.11.0-disable-tests.patch
"${FILESDIR}"/${PN}-0.11.1-0001-Fix-build-with-GCC-13-add-missing-cstdint-include.patch
)
src_prepare() {

@ -1 +1,2 @@
DIST rasdaemon-0.6.8.tar.gz 161343 BLAKE2B 95dab212e404480d45e5b07fa0f9ec7361036c9295a81dd082657c71cf8ad1114cc28f163b8975733e2042dfeb957f8da71dc52440249c75c24653c1ce235e86 SHA512 634638154c6b0bf7a079d6aba884a55e540c9edc3c25715a792ad7535c68629618e9cef8b6ec7e20845f78bd57f712d437be4d772523020f09d30cce42759a30
DIST rasdaemon-0.7.0.tar.bz2 433555 BLAKE2B cf73f59558d8a6f3138fea20e7096a1b1214dd44a4518da88a4b1f0c4c92a6df4eb7922e9a2e76d5012364219067cf66e220d8f54588ab22acf09937e41aa2dc SHA512 a7938ccd8171d849b5d89df6ab90942278c824a3dbd17abda8ae3d80ce5227cbc3fe23b31806609114482606d780ec7f0676a0fedfa950ed8cb5a59f3583bd57

@ -0,0 +1,66 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic linux-info systemd
DESCRIPTION="Reliability, Availability and Serviceability logging tool"
HOMEPAGE="https://github.com/mchehab/rasdaemon"
SRC_URI="https://github.com/mchehab/rasdaemon/releases/download/v${PV}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
DEPEND="
dev-db/sqlite
elibc_musl? ( sys-libs/argp-standalone )
"
RDEPEND="
${DEPEND}
dev-perl/DBI
dev-perl/DBD-SQLite
sys-apps/dmidecode
"
BDEPEND="sys-devel/gettext"
pkg_setup() {
linux-info_pkg_setup
local CONFIG_CHECK="~ACPI_EXTLOG ~DEBUG_FS"
check_extra_config
}
src_configure() {
local myconfargs=(
--enable-sqlite3
--enable-abrt-report
--enable-aer
--enable-arm
--enable-extlog
--enable-hisi-ns-decode
--enable-mce
--enable-non-standard
--enable-devlink
--enable-diskerror
--enable-memory-ce-pfa
--includedir="/usr/include/${PN}"
--localstatedir=/var
)
use elibc_musl && append-libs -largp
econf "${myconfargs[@]}"
}
src_install() {
default
keepdir "/var/lib/${PN}"
systemd_dounit misc/*.service
newinitd "${FILESDIR}/rasdaemon.openrc-r2" rasdaemon
newinitd "${FILESDIR}/ras-mc-ctl.openrc-r1" ras-mc-ctl
newconfd "${FILESDIR}"/rasdaemon.confd rasdaemon
}

Binary file not shown.

@ -1,2 +1,3 @@
DIST advancecomp-2.3.tar.gz 1292157 BLAKE2B 7fdbbc4c53c58a4988339189d5e2e2412e782a69081b6ba39f86f4c2b101b03d8400f8104091eb8b22d2d4969515c8126011e79e346787bddba77d67387a6efe SHA512 87dc6a25139708b975ff138f73555fb2053c0fb8310412823624de7786a2034657fc3b4ddb6eeda332788073bbe21ea955b7368707186ee3bb61d1fe59e672e3
DIST advancecomp-2.4.tar.gz 1315369 BLAKE2B fba921473efb54493590cc225a7ece2d05a5e7a047e38cebdd14ec6141856b5f7efe0aafd279d399bca7bb836f73a586cd4711e75f2a11047e063bf72d67f15a SHA512 667e0e898208df578a676b6084ca6c8dae119a6006f716b1dfa29cd0ec5b022f7b5fd099d09c25e520bdf90bc5531a7e36ed120472ca732303b719818cc5b712
DIST advancecomp-2.5.tar.gz 1315529 BLAKE2B 6d5844e64595f611ecf5a1ae69fa0208d324745fde91e63e2d934ca7c7ea6ce67da88063563ccfb67d8762eccff0723bc8f0e47b9322691a67bc7cc80a2039b0 SHA512 3beb26e9afdafb62ab13c3c56902b71b5dabccfa458c9930bdfd0a835149c46bed22bfac7b529c341f241bb8f7670c4cda4c50fd34df31b9a3902f8b8b655049

@ -0,0 +1,44 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Recompress ZIP, PNG and MNG, considerably improving compression"
HOMEPAGE="
https://www.advancemame.it/comp-readme.html
https://github.com/amadvance/advancecomp/
"
SRC_URI="
https://github.com/amadvance/advancecomp/releases/download/v${PV}/${P}.tar.gz
"
LICENSE="GPL-2+ Apache-2.0 LGPL-2.1+ MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
RDEPEND="
app-arch/bzip2:=
sys-libs/zlib:=
"
DEPEND="
${RDEPEND}
"
# Tests seem to rely on exact output:
# https://sourceforge.net/p/advancemame/bugs/270/
RESTRICT="test"
src_configure() {
local myconf=(
--enable-bzip2
# (--disable-* arguments are mishandled)
# --disable-debug
# --disable-valgrind
)
econf "${myconf[@]}"
}
src_install() {
default
dodoc HISTORY
}

Binary file not shown.

@ -24,7 +24,7 @@ LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="X acl ceph clientonly +director glusterfs ipv6 lmdb
logwatch ndmp readline scsi-crypto
logwatch ndmp readline scsi-crypto split-usr
static +storage-daemon systemd tcpd test vim-syntax vmware xattr"
# get cmake variables from core/cmake/BareosSetVariableDefaults.cmake
@ -236,10 +236,12 @@ src_install() {
# remove duplicate binaries being installed in /usr/sbin and replace
# them by symlinks to not break systems that still use split-usr
for f in bwild bregex bsmtp bconsole; do
rm -f "${D}/usr/sbin/$f" || die
ln -s "../bin/$f" "${D}/usr/sbin/$f" || die
done
if use split-usr; then
for f in bwild bregex bsmtp bconsole; do
rm -f "${D}/usr/sbin/$f" || die
ln -s "../bin/$f" "${D}/usr/sbin/$f" || die
done
fi
# get rid of py2 stuff
rm -rf "$D"/usr/lib64/python2.7 || die

Binary file not shown.

@ -1,190 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 go-module linux-info optfeature systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://linuxcontainers.org/lxd/introduction/ https://github.com/lxc/lxd"
SRC_URI="https://linuxcontainers.org/downloads/lxd/${P}.tar.gz
verify-sig? ( https://linuxcontainers.org/downloads/lxd/${P}.tar.gz.asc )"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm64 ~x86"
IUSE="apparmor ipv6 nls verify-sig"
DEPEND="acct-group/lxd
app-arch/xz-utils
>=app-containers/lxc-3.0.0[apparmor?,seccomp(+)]
dev-db/sqlite:3
dev-libs/dqlite:=
dev-libs/lzo
dev-libs/raft[lz4]
>=dev-util/xdelta-3.0[lzma(+)]
net-dns/dnsmasq[dhcp,ipv6(+)?]
sys-libs/libcap
virtual/udev"
RDEPEND="${DEPEND}
net-firewall/ebtables
net-firewall/iptables[ipv6(+)?]
sys-apps/iproute2[ipv6(+)?]
sys-fs/fuse:*
>=sys-fs/lxcfs-5.0.0
sys-fs/squashfs-tools[lzma]
virtual/acl"
BDEPEND="dev-lang/go
nls? ( sys-devel/gettext )
verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )"
CONFIG_CHECK="
~CGROUPS
~IPC_NS
~NET_NS
~PID_NS
~SECCOMP
~USER_NS
~UTS_NS
~KVM
~MACVTAP
~VHOST_VSOCK
"
ERROR_IPC_NS="CONFIG_IPC_NS is required."
ERROR_NET_NS="CONFIG_NET_NS is required."
ERROR_PID_NS="CONFIG_PID_NS is required."
ERROR_SECCOMP="CONFIG_SECCOMP is required."
ERROR_UTS_NS="CONFIG_UTS_NS is required."
WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines."
WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines."
WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines."
# Go magic.
QA_PREBUILT="/usr/bin/fuidshift
/usr/bin/lxc
/usr/bin/lxc-to-lxd
/usr/bin/lxd-agent
/usr/bin/lxd-benchmark
/usr/bin/lxd-migrate
/usr/sbin/lxd"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
# The testsuite must be run as root.
# make: *** [Makefile:156: check] Error 1
RESTRICT="test"
GOPATH="${S}/_dist"
src_prepare() {
export GOPATH="${S}/_dist"
default
sed -i \
-e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/lxd:g" \
-e "s:make:make ${MAKEOPTS}:g" \
Makefile || die
# Fix hardcoded ovmf file path, see bug 763180
sed -i \
-e "s:/usr/share/OVMF:/usr/share/edk2-ovmf:g" \
-e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \
doc/environment.md \
lxd/apparmor/instance.go \
lxd/apparmor/instance_qemu.go \
lxd/instance/drivers/driver_qemu.go || die "Failed to fix hardcoded ovmf paths."
# Fix hardcoded virtfs-proxy-helper file path, see bug 798924
sed -i \
-e "s:/usr/lib/qemu/virtfs-proxy-helper:/usr/libexec/virtfs-proxy-helper:g" \
lxd/device/device_utils_disk.go || die "Failed to fix virtfs-proxy-helper path."
cp "${FILESDIR}"/lxd-4.0.9-r1.service "${T}"/lxd.service || die
if use apparmor; then
sed -i \
'/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \
"${T}"/lxd.service || die
fi
# Disable -Werror's from go modules.
find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die
}
src_configure() { :; }
src_compile() {
export GOPATH="${S}/_dist"
export CGO_LDFLAGS_ALLOW="-Wl,-z,now"
for k in fuidshift lxd-benchmark lxc lxc-to-lxd; do
go install -v -x "${S}/${k}" || die "failed compiling ${k}"
done
go install -v -x -tags libsqlite3 "${S}"/lxd || die "Failed to build the daemon"
# Needs to be built statically
CGO_ENABLED=0 go install -v -tags netgo "${S}"/lxd-migrate
CGO_ENABLED=0 go install -v -tags agent,netgo "${S}"/lxd-agent
use nls && emake build-mo
}
src_test() {
emake check
}
src_install() {
export GOPATH="${S}/_dist"
local bindir="_dist/bin"
dosbin ${bindir}/lxd
for l in fuidshift lxd-agent lxd-benchmark lxd-migrate lxc lxc-to-lxd; do
dobin ${bindir}/${l}
done
newbashcomp scripts/bash/lxd-client lxc
newconfd "${FILESDIR}"/lxd-4.0.0.confd lxd
newinitd "${FILESDIR}"/lxd-4.0.9.initd lxd
systemd_dounit "${T}"/lxd.service
systemd_newunit "${FILESDIR}"/lxd-containers-4.0.0.service lxd-containers.service
systemd_newunit "${FILESDIR}"/lxd-4.0.0.socket lxd.socket
dodoc AUTHORS
dodoc -r doc/*
use nls && domo po/*.mo
}
pkg_postinst() {
elog
elog "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
elog "including a Quick Start."
elog "For virtual machine support, see:"
elog "https://wiki.gentoo.org/wiki/LXD#Virtual_machines"
elog
elog "Please run 'lxc-checkconfig' to see all optional kernel features."
elog
optfeature "virtual machine support" app-emulation/qemu[spice,usbredir,virtfs]
optfeature "btrfs storage backend" sys-fs/btrfs-progs
optfeature "lvm2 storage backend" sys-fs/lvm2
optfeature "zfs storage backend" sys-fs/zfs
elog
elog "Be sure to add your local user to the lxd group."
if [[ -n ${REPLACING_VERSIONS} ]] && has_version app-emulation/qemu[spice,usbredir,virtfs]; then
ewarn ""
ewarn "You're updating from <5.0.1. Due to incompatible API updates in the lxd-agent"
ewarn "product, you'll have to restart any running virtual machines before they work"
ewarn "properly."
ewarn ""
ewarn "Run: 'lxc restart your-vm' after the update for your vm's managed by lxd."
ewarn ""
fi
}

@ -25,13 +25,13 @@ DEPEND="acct-group/lxd
dev-libs/lzo
dev-libs/raft[lz4]
>=dev-util/xdelta-3.0[lzma(+)]
net-dns/dnsmasq[dhcp,ipv6(+)]
net-dns/dnsmasq[dhcp]
sys-libs/libcap
virtual/udev"
RDEPEND="${DEPEND}
net-firewall/ebtables
net-firewall/iptables[ipv6(+)]
sys-apps/iproute2[ipv6(+)]
net-firewall/iptables
sys-apps/iproute2
sys-fs/fuse:*
>=sys-fs/lxcfs-5.0.0
sys-fs/squashfs-tools[lzma]
@ -187,6 +187,7 @@ pkg_postinst() {
elog
optfeature "virtual machine support" app-emulation/qemu[spice,usbredir,virtfs]
optfeature "btrfs storage backend" sys-fs/btrfs-progs
optfeature "ipv6 support" net-dns/dnsmasq[ipv6]
optfeature "lvm2 storage backend" sys-fs/lvm2
optfeature "zfs storage backend" sys-fs/zfs
elog

@ -23,13 +23,13 @@ DEPEND="acct-group/lxd
dev-libs/lzo
>=dev-libs/raft-0.17.1:=[lz4]
>=dev-util/xdelta-3.0[lzma(+)]
net-dns/dnsmasq[dhcp,ipv6(+)]
net-dns/dnsmasq[dhcp]
sys-libs/libcap
virtual/udev"
RDEPEND="${DEPEND}
net-firewall/ebtables
net-firewall/iptables[ipv6(+)]
sys-apps/iproute2[ipv6(+)]
net-firewall/iptables
sys-apps/iproute2
sys-fs/fuse:*
>=sys-fs/lxcfs-5.0.0
sys-fs/squashfs-tools[lzma]
@ -175,6 +175,7 @@ pkg_postinst() {
elog
optfeature "virtual machine support" app-emulation/qemu[spice,usbredir,virtfs]
optfeature "btrfs storage backend" sys-fs/btrfs-progs
optfeature "ipv6 support" net-dns/dnsmasq[ipv6]
optfeature "lvm2 storage backend" sys-fs/lvm2
optfeature "zfs storage backend" sys-fs/zfs
elog

Binary file not shown.

@ -205,7 +205,7 @@ SOFTMMU_TOOLS_DEPEND="
media-libs/mesa[egl(+),gbm(+)]
)
pam? ( sys-libs/pam )
png? ( media-libs/libpng:0=[static-libs(+)] )
png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] )
pulseaudio? ( media-sound/pulseaudio )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
@ -219,8 +219,8 @@ SOFTMMU_TOOLS_DEPEND="
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.12.3
>=app-emulation/spice-0.12.0[static-libs(+)]
>=app-emulation/spice-protocol-0.14.0
>=app-emulation/spice-0.14.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev:= )

@ -1,2 +1,4 @@
DIST VBoxGuestAdditions_6.1.40.iso 63883264 BLAKE2B b9a22604b7dc135e9944bb46e7fb59e6202e692dd75de89763c6fe432328f65bacf4d893221a5e6f90ed3236fd36af2f6608932402e0ae967eb1ed24f6b1153a SHA512 149311a826c20f9bc8212e7580d3b552b4cd82f7e9dbaf4e44f363807f8132f0a81eb39082fc8876fcd5fb527d7d7c8ae1b3b6d8372b9bb39273d88fbd84a185
DIST VBoxGuestAdditions_6.1.42.iso 63946752 BLAKE2B 56cb4bcb256e9def35fa0c2ff2b9cc18ec52d8d8d5def2b2619861a0bee18970314b7c26a8413ba8317183612d0f4762d7b20524d4422ccdcf11e82455aed238 SHA512 b2bbe3e3defc1131eec1769b508fd604835ba0e28e4b77ddbaa838ee6d3b0b8a0b89841226750cc8b7dc8b5fa918b613b6c9083449cb1da9b6fe1f410d501315
DIST VBoxGuestAdditions_7.0.4.iso 52969472 BLAKE2B ac8d724fbbb928bf0ddb10994ec2d4cce31ce0a95f4765f663ade0ab459685e384e86224057705ae9820dede0b69a40018ab481ac6bb1eec3f4bbccbcb395a20 SHA512 cbbc2141a7d98992fa07756fdaadab49c8686d181037db675ceb9b8c3257edb05be1d3183198255259c93b5e01b5eb72a118a64a04051197edfe179fd2ebeac4
DIST VBoxGuestAdditions_7.0.6.iso 53049344 BLAKE2B df18a10dd6af3b4fd6a7d8e0d14b70d3a93274eb60b41e419c69ffe68bac3e5780782c32ace3a402c7755310f614ab42560d969f016f89d2ef5e32e06a6a260c SHA512 ba948b05209cad10d0772009af7529339faa44c31f75e0e10811887bd280f5fb7ed545dec315380ea99532bcbfc72833740c3c8b55502e8ec883d809c2bce47f

@ -0,0 +1,25 @@
# 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
}

@ -0,0 +1,25 @@
# 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,2 +1,4 @@
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.40.tar.gz 11233264 BLAKE2B c169747b6c0214bd850c5e639d5245e2084701c1ee764e8798a779545d95b8eb8ec0cf4622d5156c0a17126a6a522d041ec126984062b72e71a2283ae9652bd7 SHA512 6d8ff0f7f0c4eaaf9c6fcf965133fddc1d4057cffb98a10ade6cf0065e9f656bc49656bb3ac817694cbf9ca2fb4226f3e9ac9b1383ab07cdcbe05ffe18809ce1
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.42.tar.gz 11233419 BLAKE2B c380b83ae5e5cad91f83ad99805bd8627b3e1101840cc8bfcc352fdb44369ff73f7f9ae2503e3fb4aeeac2ce4182e69273a4758eb6c71dd60c89cfcadcc22cd1 SHA512 9b5643a37319113d7f9e93c49d88d7aef319060a7be4bdfb0f09044916f03a203ddeb6799b7d99c2c0f83faa7f610c72058649ef763af18f662781f8e0c10f83
DIST Oracle_VM_VirtualBox_Extension_Pack-7.0.4.tar.gz 18515711 BLAKE2B 07e8ef3d638e7985830b78147849ebada0a4f2140458ea76e236dac53efb867135b860d5c2d29545f4127de934d2b059be60849466cbf6763fcc558afaf4786a SHA512 405042ae9aeff48ce86ec6f7dba294a8be1d26e0a4b1c5a85daacc231d64243a30f301ba6a4108546a8a4b702d01b109bc0936abded572f71bdd147c178615a2
DIST Oracle_VM_VirtualBox_Extension_Pack-7.0.6.tar.gz 18544293 BLAKE2B 9bed5e3edb713e0908adc1bc2f95a102abe79119318aa7670646b4d98f2de8c77bf8f8c07d1e41aa428cbee5e60eecdc6aaf07d9516e8eeb2441139d8bb33e4e SHA512 f8498e8a8dc9a9c2b3f25c75f1f644c0464ba3b078ba0b6590149d56dbd480ed798cf2942cd88a62b75da55d7b69bbc1b71daba06b97f8a7a25650058fdb13cf

@ -0,0 +1,28 @@
# 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
}

@ -0,0 +1,28 @@
# 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,3 +1,5 @@
DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
DIST VirtualBox-7.0.4.tar.bz2 199658172 BLAKE2B 51bde109805e8f3e25f179a05fac532de7a428010955c7cc2a7c9e8c072246d69c5f51f8a51e39b6a1b9f246bd945edc38e0f0cc0630c357a5e9641c38dcac21 SHA512 70f2031c4897249177131795281bf6bd5a75166067d1921db70fd1e21f5638285b5a0c3298a7070e272ac2f093a60c35eb3cab4e5f7d16a68d17b211f637b0bc
DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

@ -0,0 +1,282 @@
# 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-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
}

@ -0,0 +1,289 @@
# 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,2 +1,4 @@
DIST vbox-kernel-module-src-6.1.40.tar.xz 680112 BLAKE2B 95bcb598bc3823c8bf4bfeb734a5d812a4830d072b186c999ed8632552550d0d21318bc50419fd18301cd6e8e58d091a4f6363c9ee86725d6bf8e74050b552d2 SHA512 8eec3c960077205d53b3d2a8367ce562edb02a6d90fe0a4bd06e1dfa256760e128b9895fc8005ceeb50a72eda6509533a28c6ee264d10a2cd30601ed5ced2eeb
DIST vbox-kernel-module-src-6.1.42.tar.xz 679052 BLAKE2B d89324cee9cfc71e2762f5d2b7dfff33297b0d2eab5714ad9ddcfb762b1263ca17acbe5fdffe53170936fe0a0faffbc69989b62cdcc0b979f394fcff35f5b69c SHA512 3bb363c8f163b5958edc11c971122c35977275c0995eab832262277720c7486150939d50a0640170fa7a5cd32c1dc2918c5e3430ec90a836400d0a774b48d886
DIST vbox-kernel-module-src-7.0.4.tar.xz 719552 BLAKE2B 5db9ef68acb0da28096dbb89b746261dfac830b626fbed669c02eab6399e681b2c5667d0fe547c8cc8c7e1cbf66d4c6696d9badf0faa617ef2cd0d7372ec9cbe SHA512 521994ffcc27766ee5bbf19595c41a292ce266247249e8ed701fca802d0a1bb82883959eb10bc06bc78abfd6b5230605e6620717526ca528f0b2e1d8d62a8dc4
DIST vbox-kernel-module-src-7.0.6.tar.xz 718156 BLAKE2B 9f855482c77b14e233ed247f7d94df7c23a00e0f9fca27926921f8c18fa6ab2205075f1b9be61429cfbee325d5f22805c850c0c79fd4fa9ccf7668dcb714f345 SHA512 fca794fd36203b296ce14d7d06022360bb9d94a6e06d8d9c77cc0221f63a898b6482b423e7deb6bd7b0355ee98fc3c7bbe11c9a1fa5dcf1d634eebc4fe537dc3

@ -0,0 +1,57 @@
# 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
}

@ -0,0 +1,57 @@
# 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,3 +1,5 @@
DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
DIST VirtualBox-6.1.42.tar.bz2 165554573 BLAKE2B 8419793d9e4c4d0804baba926443a27259b012ab90d1bb27c8f9d90b018ddbef83d1cc47e9f5b88e6e247f22c186603584a5ddee4b0c04fe842eba56f3fd103a SHA512 a4861b44ee85d6d1d72ba1d19b5598873503feeb6d562cf7d8c770cc9b466741bdfa5abe74dc4e7952ff189d14c6caf60f584731492c38f688a360baba019ab2
DIST VirtualBox-7.0.4.tar.bz2 199658172 BLAKE2B 51bde109805e8f3e25f179a05fac532de7a428010955c7cc2a7c9e8c072246d69c5f51f8a51e39b6a1b9f246bd945edc38e0f0cc0630c357a5e9641c38dcac21 SHA512 70f2031c4897249177131795281bf6bd5a75166067d1921db70fd1e21f5638285b5a0c3298a7070e272ac2f093a60c35eb3cab4e5f7d16a68d17b211f637b0bc
DIST VirtualBox-7.0.6.tar.bz2 199512172 BLAKE2B cfe4d7abd57dfdb0294177759e80aa9fda797b9b5433f214771a57764cb23404450169e8c7c30cda13de85b8e02a37024584c7b1f0b5a44b10b100aa66b8d5c5 SHA512 f9db7a154e392f550f50abe774fc6263eb0b6f86dccc069f2c5012fedbe2debbf5b8ba62cca44ea0d5d5475652188176bfb888266f69197677b22854f02b64a0
DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57

@ -0,0 +1,81 @@
Add Python 3.11 support to virtualbox 6.1
--- a/src/libs/xpcom18a4/python/Makefile.kmk
+++ b/src/libs/xpcom18a4/python/Makefile.kmk
@@ -26,7 +26,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.
@@ -624,6 +624,52 @@
endif
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
#
--- a/src/libs/xpcom18a4/python/src/module/_xpcom.cpp
+++ b/src/libs/xpcom18a4/python/src/module/_xpcom.cpp
@@ -84,7 +84,11 @@
# define MANGLE_MODULE_INIT(a_Name) RT_CONCAT(a_Name, MODULE_NAME_SUFFIX)
# endif
# ifdef VBOX_PYXPCOM_VERSIONED
-# if PY_VERSION_HEX >= 0x030a0000 && PY_VERSION_HEX < 0x030b0000
+# if PY_VERSION_HEX >= 0x030b0000 && PY_VERSION_HEX < 0x030c0000
+# define MODULE_NAME MANGLE_MODULE_NAME("VBoxPython3_11")
+# define initVBoxPython MANGLE_MODULE_INIT(PyInit_VBoxPython3_11)
+
+# elif PY_VERSION_HEX >= 0x030a0000 && PY_VERSION_HEX < 0x030b0000
# define MODULE_NAME MANGLE_MODULE_NAME("VBoxPython3_10")
# define initVBoxPython MANGLE_MODULE_INIT(PyInit_VBoxPython3_10)

@ -0,0 +1,664 @@
# 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
>=dev-util/kbuild-0.1.9998.3127
>=dev-lang/yasm-0.6.2
dev-libs/libIDL
sys-apps/which
sys-devel/bin86
sys-libs/libcap
sys-power/iasl
virtual/pkgconfig
doc? (
app-text/docbook-sgml-dtd:4.4
dev-texlive/texlive-basic
dev-texlive/texlive-latex
dev-texlive/texlive-latexrecommended
dev-texlive/texlive-latexextra
dev-texlive/texlive-fontsrecommended
dev-texlive/texlive-fontsextra
)
java? ( virtual/jdk:1.8 )
qt5? ( dev-qt/linguist-tools:5 )
"
RDEPEND="
${COMMON_DEPEND}
java? ( virtual/jre:1.8 )
"
QA_FLAGS_IGNORED="
usr/lib64/virtualbox/VBoxDDR0.r0
usr/lib64/virtualbox/VMMR0.r0
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug
"
QA_TEXTRELS="
usr/lib64/virtualbox/VMMR0.r0
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
"
QA_EXECSTACK="
usr/lib64/virtualbox/iPxeBaseBin
usr/lib64/virtualbox/VMMR0.r0
usr/lib64/virtualbox/VBoxDDR0.r0
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug
"
QA_WX_LOAD="
usr/lib64/virtualbox/iPxeBaseBin
"
QA_PRESTRIPPED="
usr/lib64/virtualbox/VMMR0.r0
usr/lib64/virtualbox/VBoxDDR0.r0
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
"
REQUIRED_USE="
java? ( sdk )
python? ( sdk )
vboxwebsrv? ( java )
${PYTHON_REQUIRED_USE}
"
PATCHES=(
"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
# This patch is needed to avoid automagic detection based on a hardcoded
# list of Pythons in configure. It's necessary but not sufficient
# (see the rest of the ebuild's logic for the remainder) to handle
# proper Python selection.
"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
"${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
}

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

@ -1,4 +1,4 @@
# Copyright 2022 Gentoo Authors
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -153,7 +153,7 @@ src_unpack() {
EGIT_CHECKOUT_DIR=${WORKDIR}/${P}
git-r3_src_unpack
EGIT_COMMIT=$(<"${EGIT_CHECKOUT_DIR}"/staging/upstream-commit) || die
EGIT_COMMIT=$("${BASH}" "${EGIT_CHECKOUT_DIR}"/patches/patchinstall.sh --upstream-commit) || die
EGIT_REPO_URI=${WINE_EGIT_REPO_URI}
EGIT_CHECKOUT_DIR=${S}
einfo "Fetching Wine commit matching the current patchset by default (${EGIT_COMMIT})"

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -14,7 +14,7 @@ SRC_URI="https://cfhcable.dl.sourceforge.net/project/podofo/podofo/${PV}/${P}.ta
LICENSE="GPL-2 LGPL-2.1"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~sparc x86"
IUSE="+boost idn debug test +tools"
RESTRICT="test"
REQUIRED_USE="${LUA_REQUIRED_USE}

@ -15,7 +15,7 @@ else
SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
SRC_URI+=" verify-sig? ( https://poppler.freedesktop.org/${P}.tar.xz.sig )"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SLOT="0/126" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
fi

Binary file not shown.

@ -1,2 +1,3 @@
DIST edencommon-2022.08.29.00.gh.tar.gz 143430 BLAKE2B a66bae35413097140b24c9313b12d55d52cbd98396ff1afacc751eb9752d4116ab19aeb9320dead5500189d74b4d91fdc09d9648fc6b5fbb55a706328488e7ef SHA512 6622c5de2dbff96717a345c82aaf9335745ed57262bb55c7a6704a68259ce81376ff0a2e9f3818ed1c1f08434da704f31fd4e3d8c48dd13646f0202e7564b2c7
DIST edencommon-2022.09.12.00.gh.tar.gz 143483 BLAKE2B 414060f4d43e16e92f654a0d5d74fede2621bf7f39b880588e3c172dca6cffc59c88de15ece3ce42e1860c351bdef16b1f4daa6ba4fa203aef91d714e43b63ea SHA512 3c6da5425228ada48510208978facfd9fd233e607be076f05c3f431a473098329b23a81609ac8c4766ecf16d8e887aa8667d76c4e48219f0ab61074dbe207333
DIST edencommon-2023.01.16.00.gh.tar.gz 144525 BLAKE2B 5c30a7bcc2fec9fc18461bb1b71090bd6e6fe6a5dfba587dcd649cc0de1cd9fcd96f83d8f2651f37af7ae1066f73d1671ab3dea464c19bf7c1dc4aa75209655a SHA512 103a3b4a8f2a510fd5e31fd8ce3e0974290b409f2ea9ff6ab655f85833d3fda49c9f552a846ba52d6e6db2198cb8cdda64e148ba3fe4e48f692378f87ee080e7

@ -0,0 +1,41 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# These must be bumped together:
# dev-cpp/edencommon
# dev-cpp/folly
# dev-util/watchman
inherit cmake
DESCRIPTION="Shared library for Watchman and Eden projects"
HOMEPAGE="https://github.com/facebookexperimental/edencommon"
SRC_URI="https://github.com/facebookexperimental/edencommon/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="llvm-libunwind"
RDEPEND="
dev-cpp/gflags:=
dev-cpp/glog:=[gflags]
dev-cpp/folly:=
llvm-libunwind? ( sys-libs/llvm-libunwind:= )
!llvm-libunwind? ( sys-libs/libunwind:= )
"
DEPEND="
${RDEPEND}
dev-cpp/gtest
"
src_configure() {
local mycmakeargs=(
-DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
-DLIB_INSTALL_DIR="$(get_libdir)"
)
cmake_src_configure
}

@ -1,2 +1,3 @@
DIST folly-v2022.08.29.00.tar.gz 3696645 BLAKE2B c1ff618be8b6a73bf0a1249212cf904ac472711086e54da73dd631ecf002761e30496e8631d6591f51e279b736ae9b3fe50959de6b1f86f01f9d6bc08fe675fc SHA512 1437a1314e26624715a0bb781049e19300eb3a67648287b319c55ce0dfbc867a09bd9d2f0cece6fc75fc62b21899aa94b464ae49c12687be7c94fdf0c7b95790
DIST folly-v2022.09.12.00.tar.gz 3710760 BLAKE2B af59580ebee3229a6564c4b29e1d24bc405f4ae3b79751af315245c87472293f97c2d78348c92620d3196d1d41a7b55af9627cd42d23f74cbf6f00d129b3b77c SHA512 f9d0ca44f6f0c343d16e8ee5408808830b30155d42a257c48e627f9a82bb4a57568a7feeba01cf73704db68af1eee7424971540635d5dfe1728fc2ae73953940
DIST folly-v2023.01.16.00.tar.gz 3774935 BLAKE2B e6c5925de0e571d83ac6db363a92f3d8c2fa7e911efc3db8f41b702dacd64aed5247313102ca12ca36a27a6fd8d8d5168ca8e98835f4000b425c10560a39e392 SHA512 941e09c90fab9e668d5f6b77f22caeff1da4347324c017ad64359748e18fc7c713d13f839d90a116164005041824c8a8d2039cfcc7687e23d9be8fa5acbd61ec

@ -0,0 +1,24 @@
https://github.com/facebook/folly/pull/1922
From e3cba5dd4f59c695d9cbf6bd02249af7103cc300 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sun, 22 Jan 2023 05:06:16 +0000
Subject: [PATCH] Fix build with GCC 13 (add missing includes)
GCC 13 (as usual for new compiler releases) shuffles around some
internal includes and so <stdexcept> etc is no longer transitively included.
Signed-off-by: Sam James <sam@gentoo.org>
--- a/folly/system/AtFork.cpp
+++ b/folly/system/AtFork.cpp
@@ -14,6 +14,9 @@
* limitations under the License.
*/
+#include <stdexcept>
+#include <system_error>
+
#include <folly/system/AtFork.h>
#include <folly/ScopeGuard.h>

@ -0,0 +1,54 @@
https://bugs.gentoo.org/891633
https://github.com/facebook/folly/issues/1908
https://github.com/facebook/folly/commit/259c9d6a4f0eb6d80e0263c2fe5d1af5bff116dc
From 259c9d6a4f0eb6d80e0263c2fe5d1af5bff116dc Mon Sep 17 00:00:00 2001
From: Dylan Yudaken <dylany@meta.com>
Date: Mon, 16 Jan 2023 01:20:04 -0800
Subject: [PATCH] io_uring: implement io_uring_enable_rings locally (#1915)
Summary:
Pull Request resolved: https://github.com/facebook/folly/pull/1915
io_uring_enable_rings was missing from liburing upstream (see https://github.com/axboe/liburing/issues/773) which is breaking the open source build. See https://github.com/facebook/folly/issues/1908
Instead just implement it locally, as it's trivial
Reviewed By: dmm-fb
Differential Revision: D42497664
fbshipit-source-id: 7241785a36046e867f907bfe74623aaeb38c4b70
--- a/folly/experimental/io/IoUringBackend.cpp
+++ b/folly/experimental/io/IoUringBackend.cpp
@@ -56,6 +56,20 @@ namespace folly {
namespace {
+#if FOLLY_IO_URING_UP_TO_DATE
+int ioUringEnableRings(FOLLY_MAYBE_UNUSED struct io_uring* ring) {
+ // Ideally this would call ::io_uring_enable_rings directly which just runs
+ // the below however this was missing from a stable version of liburing, which
+ // means that some distributions were not able to compile it. see
+ // https://github.com/axboe/liburing/issues/773
+
+ // since it is so simple, just implement it here until the fix rolls out to an
+ // acceptable number of OSS distributions.
+ return ::io_uring_register(
+ ring->ring_fd, IORING_REGISTER_ENABLE_RINGS, nullptr, 0);
+}
+#endif
+
struct SignalRegistry {
struct SigInfo {
struct sigaction sa_ {};
@@ -1360,7 +1374,7 @@ void IoUringBackend::delayedInit() {
if (usingDeferTaskrun_) {
// usingDeferTaskrun_ is guarded already on having an up to date liburing
#if FOLLY_IO_URING_UP_TO_DATE
- int ret = ::io_uring_enable_rings(&ioRing_);
+ int ret = ioUringEnableRings(&ioRing_);
if (ret) {
LOG(ERROR) << "io_uring_enable_rings gave " << folly::errnoStr(-ret);
}

@ -0,0 +1,104 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# These must be bumped together:
# dev-cpp/edencommon
# dev-cpp/folly
# dev-util/watchman
inherit cmake toolchain-funcs
DESCRIPTION="An open-source C++ library developed and used at Facebook"
HOMEPAGE="https://github.com/facebook/folly"
SRC_URI="https://github.com/facebook/folly/releases/download/v${PV}/${PN}-v${PV}.tar.gz"
S="${WORKDIR}"
LICENSE="Apache-2.0"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="llvm-libunwind test"
RESTRICT="!test? ( test )"
RDEPEND="app-arch/bzip2
app-arch/lz4:=
app-arch/snappy:=
app-arch/xz-utils
app-arch/zstd:=
dev-cpp/gflags:=
dev-cpp/glog:=[gflags]
dev-libs/boost:=[context]
dev-libs/double-conversion:=
dev-libs/libaio
dev-libs/libevent:=
dev-libs/libfmt:=
dev-libs/libsodium:=
dev-libs/openssl:=
>=sys-libs/liburing-2.2:=
sys-libs/zlib
llvm-libunwind? ( sys-libs/llvm-libunwind:= )
!llvm-libunwind? ( sys-libs/libunwind:= )"
# libiberty is linked statically
DEPEND="${RDEPEND}
sys-libs/binutils-libs
test? ( dev-cpp/gtest )"
BDEPEND="test? ( sys-devel/clang )"
PATCHES=(
"${FILESDIR}"/${PN}-2022.07.04.00-musl-fix.patch
"${FILESDIR}"/${PN}-2023.01.16.00-gcc13.patch
"${FILESDIR}"/${P}-liburing.patch
)
pkg_setup() {
[[ ${BUILD_TYPE} == binary ]] && return
if use test && ! tc-is-clang ; then
# Always build w/ Clang for now to avoid gcc ICE
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106230
#if [[ $(gcc-major-version) -eq 12 ]] ; then
# return
#fi
## Only older GCC 11 is broken
#if [[ $(gcc-major-version) -eq 11 && $(gcc-minor-version) -ge 3 && $(gcc-micro-version) -ge 1 ]] ; then
# return
#fi
ewarn "Forcing build with Clang due to GCC bug (because tests are enabled)"
#ewarn "(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104008)"
export CC=${CHOST}-clang
export CXX=${CHOST}-clang++
fi
}
src_configure() {
# Fragile when changing compilers
export CCACHE_DISABLE=1
# TODO: liburing could in theory be optional but fails to link
local mycmakeargs=(
-DLIB_INSTALL_DIR="$(get_libdir)"
-DBUILD_TESTS=$(usex test)
)
cmake_src_configure
}
src_test() {
local myctestargs=(
# - timeseries_histogram_test.TimeseriesHistogram.Percentile|HHWheelTimerTest
# Long-standing known test failure
# TODO: report upstream
# - HHWheelTimerTest.HHWheelTimerTest.CancelTimeout
# Timeouts are fragile
# - concurrent_hash_map_test.*
# TODO: All SIGSEGV, report upstream!
-E "(timeseries_histogram_test.TimeseriesHistogram.Percentile|HHWheelTimerTest.HHWheelTimerTest.CancelTimeout|concurrent_hash_map_test.*)"
)
cmake_src_test
}

Binary file not shown.

@ -15,7 +15,7 @@ if [[ ${PV} = *9999* ]] ; then
else
PGIS="$(ver_cut 1-2)"
SRC_URI="https://download.osgeo.org/postgis/source/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="Geographic Objects for PostgreSQL"

Binary file not shown.

@ -4,6 +4,7 @@ DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.17_8.tar.gz 190830566 BLAKE2B fe5
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.15_10.tar.gz 181012868 BLAKE2B b52d2330291ae8f8d74ba98b4679414e86c9018ad364bb27f09b5f192369c0b934654e5b4d8a07027e001da96fb89bd62a18ab5c1acea3c2cea2cc31e20a1481 SHA512 abe8469f5fa4f46f71e35785c6972b2901f003e311086352df6eff6911393c31c01ff965c74772656e2255e0bbb15eee6b761db472c886b60a8cda046fb46764
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.16.1_1.tar.gz 181437038 BLAKE2B d87e38a9600e2f4289637f9b54044bb25777cd7a434eae89800945515ecb3965eae8f4660d18e96f1fb95e2401133e6630d98b3b23d826425bff5bd88e5b99b8 SHA512 72e2846718fc2e2a85a23cb97f49acf9314b7da78a79d3fe9cd0a91d34867bb2a3b6ace359b366caf564bb5d026f19400564e31064691016e9827a450b5e1a6a
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.17_8.tar.gz 181771684 BLAKE2B 17999bd2e1599b1a129f50f4139bcb12fbd4ad0fdd30f2e8024a17a24912820aaa24fab747938f802c1f30d3dea9c696cf8ca858c1438b944ab1c45c1ee21fbf SHA512 8adab075049b52b7b80bb4bd48a8cac0633c7bd6e6b05932464753e03883f33665cd9609038519f048e2cc73e0d78b51ab2d7ca0716ca12ecf6883522c7448d1
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.18_10.tar.gz 181837466 BLAKE2B df9935b4a2b8255439a0691b06636c4c40cd6d15dbcdf6b722eb57219cf67f1a7e44bf1eee3d7f8b65ca854c83d61a942d8384add454384f5b0f0113767173c2 SHA512 0b8a7e7a856d310ead1fbae214473a11ce41fef00b19b4e5a9553d076d4d6f692852983ea6afc3fb06800c8478e79c510e60d7157e7b13a710663ee01939bfad
DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.15_10.tar.gz 175250283 BLAKE2B 4b4fe6a5018cfa40ac71cfcf41c261887890e339d9e5f57aac55f494abb7a4e99263db151d85698690513caf670acfef29a83616e49d6f845e02cef024624fd6 SHA512 98adf9689782aa78d61f485e671c434cfdfae7ba92a7ce0c2401164250b7def2f881e201835e1ca2ab56a3ae4967c0923f4856171c2a4918f7190adf4b5e0bca
DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.16.1_1.tar.gz 175833123 BLAKE2B c027ac3c128ee8cc6e62e375c66a642931a9344bd7d06cad6025094a8569d135a2982ead3057da7841ebcc5a02fc8c8db653f8aa09bcc8179122e1c1e6018be0 SHA512 f3af5dc335d0573ed89037a6227e96e75ec2031af6653f3a034b2d5e0737f1edc875aa883050783c6d556ce5a55ce4f9cd7859b574915b994b58fb26d906fbfd
DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.17_8.tar.gz 176227429 BLAKE2B 7b8dd16eabec342d606d4a342d25f669d879a7ab259f9b88a2fc95fd11bc0883ad2d21d69881c6e25d71ef500be9326eda4c17c79aa00c075c50bb69b0cf94e7 SHA512 bfedee850260e7d9dcd441832859de59f572626ca7c48eb52ab2122a31f6de3857cd766a582159508a2782dbd63abfa175f32a4963ef72d7070e2749164d7824
@ -13,18 +14,22 @@ DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.17_8.tar.gz 192983282 BLAKE2B
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.15_10.tar.gz 193245074 BLAKE2B 0a559bd0513984c2bc93e31ab7afcb8f5fc152c9984d957359bf1901e46b25b25ddee81c4c8fc0f560e65b343f74e39c55a1af61526fceec0eb530309eb65383 SHA512 85b21da3ff777b6239df5534ee3539b256a1de5d02abf4f537bca38d2cbf8006b4130d8bde2e24835a8da7a651fc8852df2c5060d26b9d594927f4d609912554
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.16.1_1.tar.gz 193754645 BLAKE2B 5ab76378de497da3e59b5c33025322aacfa67edfa9766fbee346399f8dca71309aa9e6c6ad43a59c2bc7033fc01806b045832ee6b57f08956a2d696e760c247d SHA512 38aa02b8ab14b678b226891ffb2d2ab1248202d595e8c37ded3479d3d0a210355df75cabb62b03ccfae5369965e80ab4872cf7f530d0ddbc4cbf4c9a0f922e37
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.17_8.tar.gz 194082362 BLAKE2B 14dc6f09cadc774b7f69914c468daafb00686fca376f22acb5b7777d8d767e22baa58201aa062c4ab229d77f4311116dbc1b02c49c56439612c4c5e0df5ccecf SHA512 f74b704581f3cfb66d4df79f9583ce0e3e94ff0b4930188485c57594af507359dcd579d22aeb9dede3c2d7bc2e8a51212c615f9a367ddcc180fe8a318efaf95b
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.18_10.tar.gz 194100197 BLAKE2B 751034d006335d3c48f5394d797d963b13a1eb4f30688dbae2be29cdc4c21855a8dd5f1faac895e17c0a56c43bd64b0a73bad61b845dd1cc1b0ce0d62019bcb9 SHA512 8d3e285b850b6f5d81481d7d2ffa1951a28ad383eda6ecbede3f2653437bd7d978a4b8613d870613a0b97e76325ee03e97b3b89e0cd124ffdf3c9bd2e16426d2
DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.15_10.tar.gz 186328533 BLAKE2B 72f662e4aed529de853e47b848b46c15fade1a8c120f83b3409492801084114724f1d3875fedf1607133192ef5a612dbab828e578bff98adf1605fd990a24b21 SHA512 af69ea99e3d3b7ae84405190a12f788348162fd235aa5df8ce7ea3127d961e015b51cf70277aefa0e29a434ba10876812e997a063c5aaedafa460fc5451783c7
DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.16.1_1.tar.gz 186335152 BLAKE2B ce97404fe164c89cc43d053e14a4abd596c104a6dfa355cc011de274aa5e1b9d2d5cb881299fad7877fd0b49bf1f738672eb565d4c543720d059663b34fd5da6 SHA512 6ccbbf271e23d6d2315ac62e5ea574991e728a4298cbf217aa7fffb3717c6a13cd82a467d15a0be9699e7b9e9a062ed0f10772165a40604f2f3c8e02729a6eaa
DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.17_8.tar.gz 186594836 BLAKE2B 00d52b8e2f750335e87358df56bd94082370832b2ae01cc200c1fb96c8401e7dc941cd1eeb6a8f9c33319440a82d2f98d243a1c14a0c15620e0226280e159c96 SHA512 342a68be1779680161174cc24a8111e72bb9bd2ff5a92a67d4b901538a81dd694fb90eee1f890ea6d8e2a89727a31ea2dc8b97091cc8e43c9f842b114530f485
DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.18_10.tar.gz 187254949 BLAKE2B 063f437ae64b3b6e30dacca5c01b02118ec7752cc91ece1ddaef16994629a6f5e8912fc4c11fdb44d521929a620803f1c3906911a45f5cec67a705b62bb279a3 SHA512 d9ed4bc73965672752392fd2741372a92dff4d2262c45dff31d95e13970afd31f513bc3ad93071e568c3e9e8afbf9af89f758d80f4922dc364ff332df08e762c
DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.3_7.tar.gz 190142132 BLAKE2B e6b0fb199ba788a31b6238d3bc458216baf37f1517a449be63668c412dfe7662d644ffdb312194533d4af089ac2753c164059978d65eddd951bb98bfc108da87 SHA512 f406ae289659e902dd3314d40485c1f3b04915451794c2bebfb1eeda7c83dbf051c26461aec7fe07c1a43f5319f80044aefc99c9177e2a9ca0a31a9c9f06c157
DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.4.1_1.tar.gz 189797923 BLAKE2B 8732ba8ce23d8ebdcac7fbb2c6035c3cafd11eda4853b948327c6c9839a88294d5c89a03006d542c8ab797b3d4d570aefc6289ff97338d68089387d0ed742d3c SHA512 d2bcf2b766e3135320f28de1df47c3d3f9012281501390ffb6a4c01f59c72fccd348139f4eeb0a9bcce747ed8cfb04f2c8d78161dda2f2f6e0728993f8953061
DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.5_8.tar.gz 190100891 BLAKE2B dcf1aca6db5af78d39a0e27422c3c9d17b7e459dad73fa74a475881a221a235f8ffbba1633a1d4858efa4e38d11a5f6e15a2eeb5a580edb0ce3ba7eebb559967 SHA512 7d16ee70f6f8a17cd22adfddd29d23e8cc74c24cae7a33cced6f73e16767da217c9959e82033cadf9c20d887f521a6807304ec80a23a033040b179b348312034
DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.6_10.tar.gz 190151132 BLAKE2B f602ebc908f111d6c3aceb5cf6fabdc0940bd3aafb840b78fdda64e98a247f0dfa7fc648827cc62cb46c16ce084ca1cf51274c9629b28580d028a9ac4b2be8a0 SHA512 f8a46cbc32160ebeee9c2047e6ac7837fbdc73549257c61d197486675fcb9420def98400779a0ec40a73652dc919daa5a9442bafe4f9129891527e24a109bb99
DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.3_7.tar.gz 177467402 BLAKE2B 38b8508e81bcbaf90a1db9bfe3f804da9838cc43b6043c328d19523c83dc5d953465a1018a9054979163140a28f5e213815634005cf096f6932407e8f7ccf9a6 SHA512 0433dc839a98b810cad9fe0d98c46cabccec5ceb44fd5bc67fff0c27962f183a3814b9aab521768b578d8f11bda97934629bf9fce5c010cdc93c685b842566e7
DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.4.1_1.tar.gz 177121101 BLAKE2B bfbbdfdf77e5f52bdef3bc9ab387590f2d02ed7f039ab49b15127b9a09430b0a9cfadde04cdb70668812d68ed4279dce3fceee6183d469e0ff4b37f43bff60cb SHA512 36403f81c06c4d7bb76058bae6a4e5c94d3c134f9b6ff9ec4b9f8ab9437195f0e2e2c2770cea4d765a182a0b2fdfc4b7fc4343fa5170af5720343d3fe0302e02
DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.5_8.tar.gz 177335828 BLAKE2B 9c4748b4099f2d6d3bcdd709c294f1d1f7fe8731a389362d30e2717acf79d79279f1c8d6d05bb6a11a8d3fad0cabcc166ce7db44a4a31dee9f3b45f4565c7c18 SHA512 858dd4ebb5844acd40a517dd849d284521375286d5e025558c50fc406306d1aa6160af07ecfa43f35f7e30c2bd3845c63814edbe2e6c85f611aacb8da2e2019d
DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.3_7.tar.gz 188309462 BLAKE2B e47b98ebcb661631732e3238ce3cd1630a0a2103d7e32beabb49d1a0ff216c34c0c39fac11a848474a36dd2c98f6724c58900e3026d04cb7e4f7f00adbe1fe18 SHA512 9158821b22633177866ac0a5c4ffd774d2d750adea2de2adce661060ab7d28cf67fc703eb9e0e200149fa03eb040a05dc45ac944dacd140e0d0fa06515584795
DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.4.1_1.tar.gz 187944772 BLAKE2B 6e04360ff4abec1bb76d5e73bc21716a935224ccd799ab4ee09f989a996ba4684677cd28545f90ef9a5d53e1ecb46a0e1d641c6c41aa93f74992b53cc19ece5e SHA512 850a0241ee1c67b5f8c2350432de82d3d264015cad7455f98d392b5bf32bc0b44aeaf1fc9b42035a2a13f157f57e833667329970e61f4626b88bbb4fcfd39482
DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.5_8.tar.gz 188272844 BLAKE2B 7a86c2c4f27322ffe9e2296ab8a0042b0f3e900c11605a06c64bb5817dc9d9e0235e55e27d08ebd53ecbc7b85cc0ce6f3421b8f87e3779e5585104533a371bfb SHA512 dfbddc376da65abf7cf73fc4a9bd5e85488f996035c7b9d1d8e5624e999b688c76ffb53030d09d8e482c91c79771bfb10e7536a081537eee3bac8ba54b624690
DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.6_10.tar.gz 188314167 BLAKE2B 71d8de8745dc5777cbec614f7ea254919b485d225e1eda0d43dde6c21bda20e5cb19c751af851471e5aa0d7399737df769758f7962932b63a85e00dabe746675 SHA512 7bd7a1a638088cf12b5722320c90504a661ab684dfd3f13fd87e24f12b94f5f2abcc98570d8939da9fe89d8f62e0de939db883b4d1e4f1262dae1e63610b4b6b
DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.3_7.tar.gz 190898839 BLAKE2B b5188190ab30393ff789724ca99ce89232d8a4d81c22205111da4cc60cc258fe5bee47a5550cf032937542d7fb677af0de9aebbe39fe20b4af223a6d7d3211e5 SHA512 e1f1ade72f12c21eef9d34d05e2a4a8228320138d0c626c4eb31431ac9d5e5123ec8ef24c168005e3bb3508537c826399122461a0ce8de1310ccab40d8d21145
DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.4.1_1.tar.gz 190474121 BLAKE2B ac8b741cf29816960de615999d5030f03677fc3a370c0c430d408802535cbbb2b304aa18d036529d29c1939c2d43ff84bdddeb15dde5a22bbda7c807ddc900db SHA512 04c9182fc503369b7dcf53729e3c5e7f16828477e168d279806c7968482588ee5a04b1c31407c2baa1c1d24468592e1e416a9ea2115391113b83e792457e31b1
DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.5_8.tar.gz 190798083 BLAKE2B 5750a7a908f2b679edf337b7f6795ea598a57bc2298ab9ef2ccaf7e6b2d6f81802eae120c8f971ed79ea8f8b6ee9607f28a2113e37005bb6528b37a33f6dd670 SHA512 636ad7c5363c1173655ca734f4184ad2ffaeac49ec20520fa75d337c52bf3517ac86d9f7552e0158adb73def293372eaa14625cdec927f09062596586b861b1a
@ -34,6 +39,7 @@ DIST OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.5_8.tar.gz 190792800 BLAKE2B 6
DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.3_7.tar.gz 191514138 BLAKE2B 3e2d64cdf15c63f2f50148576bc8ed085ec808a28a07113910f7b04c5729a1a56840751da627d8012751a7b533f6730c3a9bb99914382caf82f63e5a65dad40a SHA512 144f1e1c0f9558bd0be0536b48b89081579d1232d75c00fcfb7be2460475a4eaf3a6ae89007e683fd6148b4ebf33c2d9492419db96090e07f4ae52afc71df861
DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.4.1_1.tar.gz 191174859 BLAKE2B e6552e71279ca4a6d04a6e6d5a1707720fa7900c03fb31e312dfacf44d4dd699f657fe2f672881783a1918bac1598a99b4c56d90bb42b2c28a75762ea647f2c3 SHA512 db61842d4482da4fd5b86aee5b1c7f7c28218a58d73850513f272153a1ab09374462cd0d6f631b69f30204e5cfaca44357fa481dc4ebc67a50eda5b71a761082
DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.5_8.tar.gz 191466567 BLAKE2B 688a939a48f39ae112c415ec4523a65f6bb311250142fdb66efc4a986744306b44704450aa0abc5ad5608293b6300c82956131d832d8e8577772a4e9b71e96d9 SHA512 c77a59ef59690108c90677125f6ad93959f1618096334d28cf9c9d22db96a728576bd25e6ac2df62cc0f8656cf4b9f6b9a72743f31fb40ba74c794a2a8226380
DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.6_10.tar.gz 191502157 BLAKE2B 7de684d2529e63e6e28f726c57c139c4890caa7f2f753199eb1a5ac623d2f554c22f43b4b32fd1030c29c0cb6b9ad74ca27b1c7c4bb422bb889d48ba597726ef SHA512 71f0f14647d672ceff9a53db7bd6a158c787a3fb3196498a57ccd94c7da46af2550c04ab7ba95a549fe4f3d6482ecd7c77c4b20057ec2b32beb9a2a46c9ad0a5
DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.3_7.tar.gz 187277835 BLAKE2B 2a6766ae47281222a570485bbb67b10b78b2d17399a2fd76e254be3d30808a09002fe6fcf5814be044c4a95c3f791af4b45df9320cea5ec212f9db38329b1630 SHA512 00cb5c5628ef2fcbc44ffcb2f81b8cae8c57107df8c456b4f3bf6897269daebdbd9ce0fe78af686cebedbd2426fa85095b198d47578828404a1b046eb0cbca60
DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.4.1_1.tar.gz 186906753 BLAKE2B e86da7cb28aa43fde9ab947fbe886ed2ce4985d15a3aabf846f5bfc647203fe330f5333c9a7bf30936b2b566424c695c83b246baeda10b32de1b59a118414fb4 SHA512 b4911f006af320acf7ce18ae981a3a29d72d6fc1190bf4a0cd47f389d415de4980f65a0007a7cdcd8f15b7434b2e0e772acf4dcb3b76daa32841c7b4016e9458
DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.5_8.tar.gz 187174050 BLAKE2B df8a7369f7beb49f57bdba9e291471f805d427bdd019528cfc7874b49335b8598e614cacf82b64c0f6a3dfca055c174eaa30a0a3723effc958c40f826d1c10cc SHA512 29f848434cee5345d23434fae28e20fb722ae181cfbd0ec966aa730e05937015586a31d694cba4556fcbccb96752373fc8c13c2748f9ee5a30a243f3ce239989
@ -46,9 +52,12 @@ DIST OpenJDK8U-jdk_arm_linux_hotspot_8u352b08.tar.gz 98283632 BLAKE2B 936091ac36
DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u332b09.tar.gz 100484069 BLAKE2B 7e3b0186947f19094d88140304e756b7b2728560299f330c84ed8f9ac77c40fb046c2731d22c5d30e5d2837b878caccb19e8f1174f272c2fb29905db15500640 SHA512 adcfa446254c7de8b80f040e7f9960625c0314dabc8b457dee9d95216050f9aedc0c59528c29f7f1bc950c3ed0b713f3234dd9f9fb2a5bab7e706dbdb2eef42d
DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u345b01.tar.gz 100474631 BLAKE2B 32c98c9b0c97b427b880589c26002fa67f90980b099090a8b43a0c4b3d71319617126b55da7102abe9d15b0b3569fdd7f4288936607258a278fe805e875d469e SHA512 37501b2c3ebe224404c34a847ed643a95ebf85aa6b8412bc3405ff3afdbecb9a69b2324b774d96d9cb5ba44170d84f6ac0026ea66c1074c13ef06c330952c9fb
DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u352b08.tar.gz 100508249 BLAKE2B 0fe530829d3205904b2ae239598c6c5d158e1be5c87ee3616b15f23088b40f5d800fc5f2fd5ad0aa9342508297eb8b3b33d0c2d4149e12b6a261be7d57764628 SHA512 9592e64484b62bef89071862eb5a6e4fde412a99a43c0eaf3f412964016ead60b73fde844b4f1909dd4e839cc7509f65184f9f9445a06642365104f642758a9b
DIST OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u352b08.tar.gz 100852175 BLAKE2B 7732a508bfa18a42f9e476aebcac6c2f0477d5fae1eeea6e0f7a3e48b503de0fd05d306d4c5255194eae8cf47703779e3a3bb99bc731d90a3c1bb171baac87a3 SHA512 bcabd24baad890f3520d0713d12da0327b19a733e89484edade02b9a12b2e4295fcd34c8ebf914920be04abca6213c0973153898c7c1d09a331db59b84700b1c
DIST OpenJDK8U-jdk_x64_linux_hotspot_8u332b09.tar.gz 102918585 BLAKE2B 55d7ef116ee28f37ab1a96cb8ffe021d1784b208ad248e78d6f0a7f22429364364e00ef17fe6159fac2fde6a0765a20125db6ce17694992dbc9e3b3e054adddf SHA512 9f387fb8b872b65fc6a545151c185b9ad1aaac7ad7cffac4d2b936dedbca116a7d74e56754353ffa4caed394497ca659852f0e5e3803ead10f8fa95d562e28a8
DIST OpenJDK8U-jdk_x64_linux_hotspot_8u345b01.tar.gz 102925260 BLAKE2B ce4e79c98f5f3b2119fafd0ad43ca64bc823ff9adf20cd76e4e8c0de34ddc11cce7311d0ffc1cdcaab70632b3c18dca5b57c916a01230b22fcc74c4e8e08e3c9 SHA512 92bafba262a269ec3be7d83d8ca36468ad69d850d44b373c04c92a14c74a9aa89314f2aa68a6565c41b302c60fb8d19f1cf0f3075924a497e8be05e8a08ce95d
DIST OpenJDK8U-jdk_x64_linux_hotspot_8u352b08.tar.gz 102942531 BLAKE2B 3e59f7495e7c79e93b39e596f445738b6c809388367b1f41b5925b6f63bd81feff05dc6587d8bbca6c56187f22c048bf108032a45373096ef95389cc1fba7ebb SHA512 a6dfbc34a95f91749db11fed76e918288f2eb64234bc63f1e39db73cce918de419df6dd7a69fc4aaffac559d0b35c9ed2c782ef061e026096183028ffe24ae95
DIST OpenJDK8U-jdk_x64_linux_hotspot_8u362b09.tar.gz 102949829 BLAKE2B 039d35113c156e929ca9b49a2a63ab326b9ed036f4cfe4facfcb88d4cd2984005e81a20c842f2abbd5dce8f9da864908de5379e68b72ef1e0f6f5ccfc241db1b SHA512 20bb587023cd5a6148ad06337cd5fc182275c3ebcaac95f65937e66b2bc75879a225e2fd2ef945ea45ba7886c983df3d24c2f01a1c1f9fce38f265dabed47ee9
DIST OpenJDK8U-jdk_x64_mac_hotspot_8u332b09.tar.gz 107924497 BLAKE2B f1f283b33f2e81a15f6ba01b7c2c63093b8a12dd0c9853ff9a2cea8d5352b6994266e8653135574f59a24da7294e602c5dd2fb3524065aa53e21b8313d3b0d33 SHA512 c7474e6a81d9e44e7c48388917de87733bfcb13c99a6d253ba180ac8b826ec79f1871d57dcc3e2edb4929f2687541156770c7568162a95389cdf1606d8e65397
DIST OpenJDK8U-jdk_x64_mac_hotspot_8u345b01.tar.gz 107934646 BLAKE2B 766fc30b428283a5c4bebad76043e0d6fbdc31c747a09ce4f9440ef1493b4127dd7c0a9d0bf04ca0a6fe9215556224d157355b7cf14e685ed3791b6ca5d226fc SHA512 3a70f6587c858b675adce10063197fa97683157b4e3506dcae2649edeffe32ff8914bddee63a6856c3390c91f97fb79a11ed799f95a73526f48fb96cb92be26b
DIST OpenJDK8U-jdk_x64_mac_hotspot_8u352b08.tar.gz 107947323 BLAKE2B d1d725cb13ffac50a044a78daf02062aefd421b46c5205069b770b310b2c1403cd36e557ea37de9ad8591ce5f2c5b5eccfba32314987524a4de62b6d16a3b7f1 SHA512 2831a84e1da3f6f979a3b76670676f176b700dbae3cdd5e634056c5f0239b4fdebc6a0ec5cdf11bd930ea10708a6f7ef9c58b46888009c52217c2e0fb324a4af
DIST OpenJDK8U-jdk_x64_mac_hotspot_8u362b09.tar.gz 107290360 BLAKE2B 03f4ef48266779a9117bc6164b50298a2f23dc66b1d90370da64cd6bff7670cae09340f08e3358d43a5c051bff831020b568994cf59b3ba5a1b6c7938f5db12c SHA512 9923fda6021d5bacd598b13460f4b0668d156e92d0b3972e3746b996e3ee6275269e2deab14f7fd9ce8183670648df936efa9133cbe9b908f67e38b7e907387d

@ -0,0 +1,136 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2 toolchain-funcs
abi_uri() {
local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
local musl=
local os=linux
case ${2} in
*-macos) os=mac ;;
*-solaris) os=solaris ;;
esac
if [[ ${3} == musl ]]; then
os=alpine-linux
musl=true
fi
echo "${2-$1}? (
${musl:+ elibc_musl? ( }
${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
${musl:+ ) } )"
}
MY_PV=${PV/_p/+}
SLOT=$(ver_cut 1)
SRC_URI="
$(abi_uri arm)
$(abi_uri x64 amd64)
$(abi_uri x64 x64-macos)
"
# $(abi_uri aarch64 arm64)
# $(abi_uri ppc64le ppc64)
# $(abi_uri x64 amd64 musl)
DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptium.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="amd64 ~arm ~x64-macos"
#KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
IUSE="alsa cups headless-awt selinux source"
RDEPEND="
>=sys-apps/baselayout-java-0.1.0-r1
kernel_linux? (
media-libs/fontconfig:1.0
media-libs/freetype:2
media-libs/harfbuzz
elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
elibc_musl? ( sys-libs/musl )
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}"
pkg_pretend() {
if [[ "$(tc-is-softfloat)" != "no" ]]; then
die "These binaries require a hardfloat system."
fi
}
src_unpack() {
default
if [[ ${A} == *_mac_* ]] ; then
mv -v "${S}/Contents/Home/"* "${S}" || die
rm -Rf "${S}/Contents" # drop macOS executable
fi
}
src_install() {
local dest="/opt/${P}"
local ddest="${ED}/${dest#/}"
# on macOS if they would exist they would be called .dylib, but most
# importantly, there are no different providers, so everything
# that's shipped works.
if [[ ${A} != *_mac_* ]] ; then
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# prefer system copy # https://bugs.gentoo.org/776676
rm -vf lib/libharfbuzz.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
fi
if ! use source ; then
rm -v lib/src.zip || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
}

@ -0,0 +1,137 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2 toolchain-funcs
abi_uri() {
local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
local musl=
local os=linux
case ${2} in
*-macos) os=mac ;;
*-solaris) os=solaris ;;
esac
if [[ ${3} == musl ]]; then
os=alpine-linux
musl=true
fi
echo "${2-$1}? (
${musl:+ elibc_musl? ( }
${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
${musl:+ ) } )"
}
MY_PV=${PV/_p/+}
SLOT=$(ver_cut 1)
SRC_URI="
$(abi_uri aarch64 arm64)
$(abi_uri arm)
$(abi_uri x64 amd64)
"
# $(abi_uri ppc64le ppc64)
# $(abi_uri x64 amd64 musl)
# $(abi_uri aarch64 arm64-macos)
# $(abi_uri x64 x64-macos)
DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptium.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="amd64 ~arm arm64"
#KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
IUSE="alsa cups headless-awt selinux source"
RDEPEND="
>=sys-apps/baselayout-java-0.1.0-r1
kernel_linux? (
media-libs/fontconfig:1.0
media-libs/freetype:2
media-libs/harfbuzz
elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
elibc_musl? ( sys-libs/musl )
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}"
pkg_pretend() {
if [[ "$(tc-is-softfloat)" != "no" ]]; then
die "These binaries require a hardfloat system."
fi
}
src_unpack() {
default
if [[ ${A} == *_mac_* ]] ; then
mv -v "${S}/Contents/Home/"* "${S}" || die
rm -Rf "${S}/Contents" # drop macOS executable
fi
}
src_install() {
local dest="/opt/${P}"
local ddest="${ED}/${dest#/}"
# on macOS if they would exist they would be called .dylib, but most
# importantly, there are no different providers, so everything
# that's shipped works.
if [[ ${A} != *_mac_* ]] ; then
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# prefer system copy # https://bugs.gentoo.org/776676
rm -vf lib/libharfbuzz.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
fi
if ! use source ; then
rm -v lib/src.zip || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -6,20 +6,26 @@ EAPI=8
inherit java-vm-2
abi_uri() {
local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}"
local musl=
local os=linux
case ${2} in
*-macos) os=mac ;;
*-solaris) os=solaris ;;
esac
if [[ ${3} == musl ]]; then
os=alpine-linux
musl=true
fi
echo "${2-$1}? (
https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jdk_${1}_${os}_hotspot_${3-${MY_PV/-/}}.tar.gz
)"
${musl:+ elibc_musl? ( }
${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//-/}.tar.gz
${musl:+ ) } )"
}
# they have different tarball names for different arches...
# https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u282b08.tar.gz
# https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_jdk8u282-b08.tar.gz
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
SLOT=$(ver_cut 1)
@ -30,6 +36,7 @@ SRC_URI="
$(abi_uri aarch64 arm64)
$(abi_uri ppc64le ppc64)
$(abi_uri x64 amd64)
$(abi_uri x64 amd64 musl)
$(abi_uri x64 x64-macos)
"
@ -43,7 +50,8 @@ RDEPEND="
kernel_linux? (
media-libs/fontconfig:1.0
media-libs/freetype:2
>=sys-libs/glibc-2.2.5:*
elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
elibc_musl? ( sys-libs/musl )
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
arm? ( dev-libs/libffi-compat:6 )

@ -0,0 +1,133 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2
abi_uri() {
local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}"
local musl=
local os=linux
case ${2} in
*-macos) os=mac ;;
*-solaris) os=solaris ;;
esac
if [[ ${3} == musl ]]; then
os=alpine-linux
musl=true
fi
echo "${2-$1}? (
${musl:+ elibc_musl? ( }
${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//-/}.tar.gz
${musl:+ ) } )"
}
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
SLOT=$(ver_cut 1)
DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptium.net"
SRC_URI="
$(abi_uri x64 amd64)
$(abi_uri x64 x64-macos)
"
# uncomment after tarballs appear at https://adoptium.net/temurin/releases/?version=8
# $(abi_uri arm)
# $(abi_uri aarch64 arm64)
# $(abi_uri ppc64le ppc64)
# $(abi_uri x64 amd64 musl)
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="amd64 ~x64-macos"
#KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
IUSE="alsa cups examples headless-awt selinux source"
RDEPEND="
>=sys-apps/baselayout-java-0.1.0-r1
kernel_linux? (
media-libs/fontconfig:1.0
media-libs/freetype:2
elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
elibc_musl? ( sys-libs/musl )
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
arm? ( dev-libs/libffi-compat:6 )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)
)
"
RESTRICT="preserve-libs strip"
QA_PREBUILT="*"
S="${WORKDIR}/jdk${MY_PV}"
src_unpack() {
default
# 753575
if use arm; then
mv -v "${S}"* "${S}" || die
elif [[ ${A} == *_mac_* ]] ; then
mv -v "${S}/Contents/Home/"* "${S}" || die
rm -Rf "${S}/Contents" # drop macOS executable
fi
}
src_install() {
local dest="/opt/${P}"
local ddest="${ED}/${dest#/}"
rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
# on macOS if they would exist they would be called .dylib, but most
# importantly, there are no different providers, so everything
# that's shipped works.
if [[ ${A} != *_mac_* ]] ; then
# this does not exist on arm64 hence -f
rm -fv jre/lib/*/libfreetype.so* || die
if ! use alsa ; then
rm -v jre/lib/*/libjsoundalsa.so* || die
fi
if ! use examples ; then
rm -vr sample || die
fi
if use headless-awt ; then
rm -fvr {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
{,jre/}bin/policytool bin/appletviewer || die
fi
fi
if ! use source ; then
rm -v src.zip || die
fi
rm -v jre/lib/security/cacerts || die
dosym ../../../../../etc/ssl/certs/java/cacerts \
"${dest}"/jre/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}

@ -1,11 +1,6 @@
DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.14_9.tar.gz 42435138 BLAKE2B 0f972a78221b74be4b8c87845f52d331eb6caf84eef06d291d0cd25ce4357b7072f938fd0390a9c54647d4ddcfe4c0184ddf84583e017e1bf78338b7939437bc SHA512 9ee64498d83d16cefc5a155393d9477bb78338d43a3b4b1699f4358644415a6be5601f7b2a87a82f2a95cafd6485b6db7b30bd0d21096110211b942e95deed64
DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.15_10.tar.gz 42471028 BLAKE2B a88fa041ffdcedabbcdadbb1eb4a0052456666ba779eb0f82bc27ea7f2923a1b2e538d14d5f615869e456b1bce48859211134c6bd9d31c2c082068686b68fd59 SHA512 a8a8a9c9f243aaf9b051bd0c35009ec96a28dcf47b53139dd59891a5ff2ced590e56961edb093cf67b8239d92a4b407f631b389fdff986fdb746316f420abf34
DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.16.1_1.tar.gz 42705612 BLAKE2B 02b0239a613f0738c7980105cd8595c0bbf456ba13f669dd11071313260d1fdbe1bc0c91e9fc9252cb04078ec7da36fdb4cf8a3408d1afdb7298f88bb75a75d8 SHA512 21af841b9e14ea32e13dd45fb2e693c0dfcbf65e99ebaaee44f14188c8b30c2cd76de816dc184b7bc9f376b26ab6bb9741be84f37bb99bec4dc381aa7ce9ada9
DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.17_8.tar.gz 42827817 BLAKE2B b904eb70da1ef73def0475c379bc91790e348cad830783cbd492c386498a5d09bdf8f117614b53c6a708c0aaa5881dd300b144e2d71e99cfa14fe99a05059d11 SHA512 4866c5f06b92e7e82e4427ec012a6e1421ba5e5aaf8624cb683ff86f950eb15f5d32962b585047d571f8a54e6a5df31f222eec15d530bcc4713c63d612d20d7f
DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.18_10.tar.gz 42824761 BLAKE2B 481317f316bac10e098d706a04e94b57bad4388c94168da27403e18489f66d322177f7f9b59c5ebdfc6f3e70080550f6f5e5fc922e9b21a9a59dcc60116243be SHA512 07a0483b4536129974706ee79864e9fd737810b396a605170e68c74dacdb3c65e10ccde9073e8ec0c907709172dd2e08e7c454a5bd88cf0e92f879ace1eedbd0
DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.3_7.tar.gz 45971131 BLAKE2B dc8a358b10b0d3a6fac60f340ee5224c348aa4b2683e5f7b3396eaca180a12212260d45b8347b472f80671ef86a91f764727897146e4d36bc08b24c7920635fa SHA512 27da884a807c980386b7295f7ea5e253c03b497eff6e21e0cb35ea050552eaf9a3f71060cbd1a2f0cd6069a55ae00b43e46edcf09ab36c142587ea2ab781ad14
DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.4.1_1.tar.gz 45941557 BLAKE2B 877a194672bfb950203d466191c1c220fffcca86559c0179c573e85152b9e63d253891989ed825181f3e034dd9d6f5cfba10986cf1c019e7faf73ad9a89bee48 SHA512 0bea14d42df99771e8e02f705f9233fc666904667607ca66e47be57fb09131b0a9d70b7bd4cc5b322805cc09cb14ad711db60348e9d17f9714884006185a928c
DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.5_8.tar.gz 46080826 BLAKE2B b6c92f8bad0f8806f7138da0cbb79876b32d0abd0be8fc25c016e555a7c8a9297d63b85ee4c778a812e5fa3bce7b48e320285f4dec93a6176498ab52d111632a SHA512 6d228cadc7ecf46deb571124870a6d37604759024de1e4e1df9f45c86d988326a91799e3ede866a1fa564b5d73ccf859888f640bf6a9c8c0596f6ac75c4a8241
DIST OpenJDK8U-jre_x64_linux_hotspot_8u322b06.tar.gz 41317897 BLAKE2B b96b39d4b3f7fe54f9b04698d4f24879ce617e61ade298b7de1472cb85fbf7d5f297f009c0e881a17bcdaf9baaf3187acef531b0ace97a1f2ab099811995c815 SHA512 4a3acc1330056011f0097aaca77858779e2c89d214598ef66736956984204b8de804549e42c51f8392806753f3d534d34ad93ef6df9f2f45a369e04f6a0694ac
DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.6_10.tar.gz 46078462 BLAKE2B 2d0bc958f64da82e82b3a8a9d6bc686ecd2a09943e851f0f1a8efcec7cf0135b76a65abfa7f1175d09bc42583d151a4161d891a9861050751ae0c8aa4b1bbdc2 SHA512 253a030ab87e949091b24bacd638a91c673d775e76f3a83e8ab0c1824f697516405fe8fcf7d3b460bd25ddbb441685fa396b390e7ab8bc802294ea36b4700fac
DIST OpenJDK8U-jre_x64_linux_hotspot_8u332b09.tar.gz 41336220 BLAKE2B 52eb9aa2623335bca7be71d1aca6b4292a029554ef9f9e0e1209a7fa0892931c37b670f9f90586d4ff3cd35540a3a7cb230f20789481836d20f04d4cfcc56596 SHA512 c62002aa1a28547b0b0cefea3f83af2cf6507002bf296b1b83bd04406f4c362f4c74940209ebbd3803513395bec7503882aac7f8d35dcbf6a6e02e9155a53cdd
DIST OpenJDK8U-jre_x64_linux_hotspot_8u345b01.tar.gz 41336188 BLAKE2B 05c1ff3f0561410dafb88f1ce1486decbe56f528cebde4f5d05d589e5a7c706e84bf23f89cda68b19212dbd9b109546a7b78b407a8453c9f040b9e95f5f9c35f SHA512 15cb0be04c9a516476405107fc472470b4576b3893aca8f926b8f007fcb21b6eba1d87a52a806ec698cb3a8b17bae8f557445e9201be2f2d7246a67e28df0be4
DIST OpenJDK8U-jre_x64_linux_hotspot_8u352b08.tar.gz 41349408 BLAKE2B 98b4b57f6839b09bff112894360587f5bc745506830795d9329e1db26cf676a77cf7d06813e850c44619b1b03d86926b98bdc4f3672d2bb73c1dbb081ad47bae SHA512 36f76d74d69afc488e3d992f5f97d522c22736999904a6045205da9d514bd02d5f00e21e8e5344632d80fd85d50a8496c9950bea368b9a6b332cd5062134d2b5
DIST OpenJDK8U-jre_x64_linux_hotspot_8u362b09.tar.gz 41359704 BLAKE2B ae4238725544b03abdc32f82fcb1e13fe2aba460c13a48ccc8ccd608f1e8b0f5ac6036b06e941e89b936f01250a4fc3f6fb0f9d7eb5ae9129b8cd5de6c1da33a SHA512 6cb0bdc28596e23807f3e7f31c40f095d20395492bf30dae26a735686f82d9d216110403d59c769700a23dd3187a2603832bd84204051800d474af24c68c8cbc

@ -1,83 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
)"
}
MY_PV=${PV/_p/+}
SLOT=${MY_PV%%[.+]*}
SRC_URI="
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="amd64"
IUSE="alsa cups +gentoo-vm headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}-jre"
src_install() {
local dest="/opt/${PN}-${SLOT}"
local ddest="${ED}/${dest#/}"
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -21,7 +21,7 @@ SRC_URI="
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE="alsa cups headless-awt selinux"
RDEPEND="

@ -1,83 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
)"
}
MY_PV=${PV/_p/+}
SLOT=${MY_PV%%[.+]*}
SRC_URI="
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
IUSE="alsa cups headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}-jre"
src_install() {
local dest="/opt/${PN}-${SLOT}"
local ddest="${ED}/${dest#/}"
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
}

@ -1,83 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
)"
}
MY_PV=${PV/_p/+}
SLOT=${MY_PV%%[.+]*}
SRC_URI="
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
IUSE="alsa cups headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}-jre"
src_install() {
local dest="/opt/${PN}-${SLOT}"
local ddest="${ED}/${dest#/}"
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -21,7 +21,7 @@ SRC_URI="
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE="alsa cups headless-awt selinux"
RDEPEND="

@ -1,82 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
)"
}
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
SLOT="$(ver_cut 1)"
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptium.net"
SRC_URI="
$(abi_uri x64 amd64)
"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
IUSE="alsa cups headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk${MY_PV}-jre"
src_install() {
local dest="/opt/${P}"
local ddest="${ED}/${dest#/}"
rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
# this does not exist on arm64 hence -f
rm -fv lib/*/libfreetype.so* || die
if ! use alsa ; then
rm -v lib/*/libjsoundalsa.so* || die
fi
if use headless-awt ; then
rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
bin/policytool || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}

@ -1,82 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
)"
}
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
SLOT="$(ver_cut 1)"
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
HOMEPAGE="https://adoptium.net"
SRC_URI="
$(abi_uri x64 amd64)
"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
IUSE="alsa cups headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk${MY_PV}-jre"
src_install() {
local dest="/opt/${P}"
local ddest="${ED}/${dest#/}"
rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
# this does not exist on arm64 hence -f
rm -fv lib/*/libfreetype.so* || die
if ! use alsa ; then
rm -v lib/*/libjsoundalsa.so* || die
fi
if use headless-awt ; then
rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
bin/policytool || die
fi
rm -v lib/security/cacerts || die
dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8

@ -49,7 +49,7 @@ SRC_URI="
"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"

@ -51,7 +51,7 @@ SRC_URI="
# riscv patch origin: https://raw.githubusercontent.com/felixonmars/archriscv-packages/master/java17-openjdk/java17-riscv64.patch
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"

@ -21,7 +21,7 @@ HOMEPAGE="https://openjdk.org"
SRC_URI="https://github.com/openjdk/jdk${SLOT}u/archive/refs/tags/jdk${MY_PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
KEYWORDS="amd64 arm64 ppc64 x86"
IUSE="alsa debug cups doc examples headless-awt javafx +jbootstrap selinux source"
COMMON_DEPEND="

Binary file not shown.

@ -0,0 +1,11 @@
--- a/libpolyml/xwindows.cpp 2023-01-22 10:40:35.855024465 +0100
+++ b/libpolyml/xwindows.cpp 2023-01-22 10:41:00.798613288 +0100
@@ -7274,7 +7274,7 @@
: printf("Old Display <%p>",P.AsAddress()));
return;
- default: printf("Pointer "ZERO_X"%p",P.AsAddress());
+ default: printf("Pointer %p",P.AsAddress());
return;
}
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -23,6 +23,7 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${PN}-5.8.2-configure.patch
"${FILESDIR}"/${P}-c++11.patch
)
src_prepare() {

Binary file not shown.

@ -16,7 +16,7 @@ S="${WORKDIR}/${PN}_${MY_PV}"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead of the major version due to bug 486122
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="bzip2 context debug doc icu lzma +nls mpi numpy python tools zlib zstd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# the tests will never fail because these are not intended as sanity

@ -1,3 +1,2 @@
DIST dqlite-1.12.0.tar.gz 181709 BLAKE2B efb35aa9d0c348cd55eb190e27ad155b7d748ccbcb80822f33ce4589d56bc0090f5c0703d769e7090bb8da1b8908cbd73d1076568108661d5b85e55103795a9f SHA512 2a3dc17fcaa0ec2fc5481d3ff57a7bee42c8930f0e6ac7030d51e1a61ae3ce4d7b24f47921b29602a65353c1a51931a82d9af302ee580b19bdce561e6547e940
DIST dqlite-1.13.0.tar.gz 190627 BLAKE2B 02880a112a7b070ee19653b60f19dbb49030b1d0d1bd3671577137ce281fd1af9c135f138d692fcc1c14592972cc9321198b3a2003fa0e81829c8ae462604964 SHA512 da56c622c75dcdc1df814d2b7acfeb08cb046fa7b74691d63575ddb3d30f91b441b8f58cc72466872b4c5e0028706b6505846d8f3d06583be844baefdd85f8a9
DIST dqlite-1.14.0.tar.gz 190757 BLAKE2B 5304ff10134c7775c4475f77bbe60cc6892cc35c3f2a7b4813743cd27fc1176a1d513d66ebf22b47ed7e83fa833be1408f44f781fbd8200bfd3f4465ea1d6011 SHA512 4305b289903766f00c26e278cce3f761c778b67105a6d7e51e66cc1cbf85564fd41f27689b6895c6f182968d851e10a40d052570d55e22007e9eb5c2929dabd9

@ -1,45 +0,0 @@
# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="Embeddable, replicated and fault tolerant SQL engine"
HOMEPAGE="https://dqlite.io/ https://github.com/canonical/dqlite"
SRC_URI="https://github.com/canonical/dqlite/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3-with-linking-exception"
SLOT="0/1.12.0"
KEYWORDS="amd64 ~arm64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="dev-db/sqlite:3
dev-libs/libuv:=
>=dev-libs/raft-0.14.0"
DEPEND="${RDEPEND}
test? ( >=dev-libs/raft-0.13.0[lz4,test] )"
BDEPEND="virtual/pkgconfig"
PATCHES=( "${FILESDIR}"/dqlite-1.12.0-disable-werror.patch )
src_prepare() {
default
eautoreconf
}
src_configure() {
local myeconfargs=(
--disable-debug
--disable-sanitize
--disable-static
)
econf "${myeconfargs[@]}"
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}

@ -12,7 +12,7 @@ if [[ "${PV}" == *9999 ]] ; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/ell/ell.git"
else
SRC_URI="https://mirrors.edge.kernel.org/pub/linux/libs/${PN}/${P}.tar.xz"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc x86"
fi
LICENSE="LGPL-2.1"
SLOT="0"

@ -1,3 +1,4 @@
DIST flatbuffers-2.0.6.tar.gz 1724250 BLAKE2B b6969b28dba753c4551b33d27409d9925c10a640ae860264f8054c19a470ce3da366c0bf7917bf7fe4f6cb57acbfbe1837f175fde40b84d311df6d1378d146ce SHA512 be631f34064c28d81876bf137c796e9736623cf2cc4f2a05dd45372e7195729c99fad1fa795f8ce71a408756a842edbdc0c3bc714a7cf63203a1de8681d86fb6
DIST flatbuffers-22.12.06.gh.tar.gz 2172096 BLAKE2B 92bf0c56c10fa369e7a8a53a7f903af6b5f17560a3558587914c29ab8a655f3ee078c3e261426ca5d9ad0587419d4f0049459edc552e25958f80b80ba9539d59 SHA512 1b2c8eaa2ebeb92c3ebc363888b34b817d7b62a568e40bce2b037814f1f0103d4cb7db8507ec9ca05421be61b0b2be3edd6c4d564f75d1ce39278d73f8442ac1
DIST flatbuffers-23.1.21.gh.tar.gz 2181861 BLAKE2B 6368358c21e677feb466245a746b86cebb6d6a4058bb6d593de81bf3c32ddfb9fd475e4bb225d4529ea106253456a5ed1ee6d024b1e2521e02efef171750f428 SHA512 fa62188f773ad044644a58caf1e25bef417dfdea47c9da8a2ea7f997154b4f3976019e32e73cc533696a3d4e45ec4a8402b6df140878dfa2ff078740d61b4b0f
DIST flatbuffers-23.1.4.gh.tar.gz 2178791 BLAKE2B 8c354c539378f7d8e05307f7ba0f5393265a6183fc8868d48b8da5ab7d39a3e7a7f85631db00f0dc57bf396d20652049303a79fbf31f07639d80596d300a7701 SHA512 8b3e1b9596a76548faca529fe5070e775be50bfdea079ba4f66014f5a1bfb93f8edd7e56f97363c897d2db8391277a9099a61d14e4298c3669ab7068bbf07865

@ -0,0 +1,35 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
DESCRIPTION="Memory efficient serialization library"
HOMEPAGE="
https://google.github.io/flatbuffers/
https://github.com/google/flatbuffers/
"
SRC_URI="
https://github.com/google/flatbuffers/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="Apache-2.0"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
IUSE="static-libs test"
RESTRICT="!test? ( test )"
DOCS=( readme.md )
src_configure() {
local mycmakeargs=(
-DFLATBUFFERS_BUILD_FLATLIB=$(usex static-libs)
-DFLATBUFFERS_BUILD_SHAREDLIB=ON
-DFLATBUFFERS_BUILD_TESTS=$(usex test)
-DFLATBUFFERS_BUILD_BENCHMARKS=OFF
)
cmake_src_configure
}

@ -1,3 +1,4 @@
DIST glib-2.74.3-patches-2.tar.xz 23576 BLAKE2B f3746bdf961890d9f4e7ad20b107b83b7ceb8dcc36e288c1d526bac31a0e1dd9d1f13323f512355085c77d186ad66c3f52c1154f34c1d6fd6a5e64a074b2920c SHA512 945c131c27f02044db6154f0a63f458d6317c8a4e841fb392947b16756e25d92adeb2b34d793c9e19441b825d1aee71ae9b08fdcbefa1bc9de1d5af9e903e82c
DIST glib-2.74.3.tar.xz 5181732 BLAKE2B 46c37be9519866af040b2aaf35129a9cfae6e2c74636c01755b901002fa77f4e2305025691d7a8279acfbae1298a4b5b1e095b333bed3b067e9820547b6eca97 SHA512 a9aa7e84187abb57aeeff9c7f4c4125be742a510ae5d39b6b62696ad1a715c36b353c6c14222caeb1e87bed930fb54184dba77118b991c42f1857a292c6aa77b
DIST glib-2.74.4.tar.xz 5208484 BLAKE2B 01a2818e63469019abcd1215fa85521b9a2e55644040e8fe2797f68cabe897a191ae2c1cc2ab75d5ba9980d63adbfc00636b295ee942d70579e7eba1e1f49502 SHA512 912f6b0559fcb5ad55fa36837a348228b8e2498c490271204ced9f2e4a9eab804de4745f3ec439a198eb275d7263f18bc670f45460e2be55a2cbe45466b02fc6
DIST glib-2.74.5.tar.xz 5211852 BLAKE2B 5bf0069cbf949a946357127682e4f687c7e7b8565037024a232b3e905e65bebb86d016832b6274f743005ec8fe5fcd31eaf99ccece82d9d7c3f924d17502c409 SHA512 2716e0fe984cc5d0714e91fe0de47ee71a8bd0b4c85caee337ddb7e02ac2fb3c8c007ccc1207b29cf901c30a7ec8e3bcca75d69c6fab2a32a8cf14bff974e614

@ -0,0 +1,287 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_REQ_USE="xml(+)"
PYTHON_COMPAT=( python3_{9..11} )
inherit flag-o-matic gnome.org gnome2-utils linux-info meson-multilib multilib python-any-r1 toolchain-funcs xdg
DESCRIPTION="The GLib library of C routines"
HOMEPAGE="https://www.gtk.org/"
LICENSE="LGPL-2.1+"
SLOT="2"
IUSE="dbus debug +elf gtk-doc +mime selinux static-libs sysprof systemtap test utils xattr"
RESTRICT="!test? ( test )"
#REQUIRED_USE="gtk-doc? ( test )" # Bug #777636
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
# * elfutils (via libelf) does not build on Windows. gresources are not embedded
# within ELF binaries on that platform anyway and inspecting ELF binaries from
# other platforms is not that useful so exclude the dependency in this case.
# * Technically static-libs is needed on zlib, util-linux and perhaps more, but
# these are used by GIO, which glib[static-libs] consumers don't really seem
# to need at all, thus not imposing the deps for now and once some consumers
# are actually found to static link libgio-2.0.a, we can revisit and either add
# them or just put the (build) deps in that rare consumer instead of recursive
# RDEPEND here (due to lack of recursive DEPEND).
RDEPEND="
!<dev-util/gdbus-codegen-${PV}
>=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
>=dev-libs/libpcre2-10.32:0=[${MULTILIB_USEDEP},unicode(+),static-libs?]
>=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}]
>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
>=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] )
selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] )
xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) )
elf? ( virtual/libelf:0= )
sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}"
# libxml2 used for optional tests that get automatically skipped
BDEPEND="
app-text/docbook-xsl-stylesheets
dev-libs/libxslt
>=sys-devel/gettext-0.19.8
gtk-doc? ( >=dev-util/gtk-doc-1.33
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5 )
systemtap? ( >=dev-util/systemtap-1.3 )
${PYTHON_DEPS}
test? ( >=sys-apps/dbus-1.2.14 )
virtual/pkgconfig
"
# TODO: >=dev-util/gdbus-codegen-${PV} test dep once we modify gio/tests/meson.build to use external gdbus-codegen
PDEPEND="
dbus? ( gnome-base/dconf )
mime? ( x11-misc/shared-mime-info )
"
# shared-mime-info needed for gio/xdgmime, bug #409481
# dconf is needed to be able to save settings, bug #498436
MULTILIB_CHOST_TOOLS=(
/usr/bin/gio-querymodules$(get_exeext)
)
PATCHES=(
"${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
)
pkg_setup() {
if use kernel_linux ; then
CONFIG_CHECK="~INOTIFY_USER"
if use test ; then
CONFIG_CHECK="~IPV6"
WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them."
fi
linux-info_pkg_setup
fi
python-any-r1_pkg_setup
}
src_prepare() {
if use test; then
# TODO: Review the test exclusions, especially now with meson
# Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629, upstream bug #629163
if ! has_version dev-util/desktop-file-utils ; then
ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system,"
ewarn "think on installing it to get these tests run."
sed -i -e "/appinfo\/associations/d" gio/tests/appinfo.c || die
sed -i -e "/g_test_add_func/d" gio/tests/desktop-app-info.c || die
fi
# gdesktopappinfo requires existing terminal (gnome-terminal or any
# other), falling back to xterm if one doesn't exist
#if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then
# ewarn "Some tests will be skipped due to missing terminal program"
# These tests seem to sometimes fail even with a terminal; skip for now and reevulate with meson
# Also try https://gitlab.gnome.org/GNOME/glib/issues/1601 once ready for backport (or in a bump) and file new issue if still fails
sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die
# desktop-app-info/launch* might fail similarly
sed -i -e "/desktop-app-info\/launch-as-manager/d" gio/tests/desktop-app-info.c || die
#fi
# https://bugzilla.gnome.org/show_bug.cgi?id=722604
sed -i -e "/timer\/stop/d" glib/tests/timer.c || die
sed -i -e "/timer\/basic/d" glib/tests/timer.c || die
ewarn "Tests for search-utils have been skipped"
sed -i -e "/search-utils/d" glib/tests/meson.build || die
# Play nice with network-sandbox, but this approach would defeat the purpose of the test
#sed -i -e "s/localhost/127.0.0.1/g" gio/tests/gsocketclient-slow.c || die
else
# Don't build tests, also prevents extra deps, bug #512022
sed -i -e '/subdir.*tests/d' {.,gio,glib}/meson.build || die
fi
# Don't build fuzzing binaries - not used
sed -i -e '/subdir.*fuzzing/d' meson.build || die
# gdbus-codegen is a separate package
sed -i -e '/install_dir/d' gio/gdbus-2.0/codegen/meson.build || die
# Same kind of meson-0.50 issue with some installed-tests files; will likely be fixed upstream soon
sed -i -e '/install_dir/d' gio/tests/meson.build || die
cat > "${T}/glib-test-ld-wrapper" <<-EOF
#!/usr/bin/env sh
exec \${LD:-ld} "\$@"
EOF
chmod a+x "${T}/glib-test-ld-wrapper" || die
sed -i -e "s|'ld'|'${T}/glib-test-ld-wrapper'|g" gio/tests/meson.build || die
default
gnome2_environment_reset
# TODO: python_name sedding for correct python shebang? Might be relevant mainly for glib-utils only
}
multilib_src_configure() {
if use debug; then
append-cflags -DG_ENABLE_DEBUG
else
append-cflags -DG_DISABLE_CAST_CHECKS # https://gitlab.gnome.org/GNOME/glib/issues/1833
fi
# TODO: figure a way to pass appropriate values for all cross properties that glib uses (search for get_cross_property)
#if tc-is-cross-compiler ; then
# https://bugzilla.gnome.org/show_bug.cgi?id=756473
# TODO-meson: This should be in meson cross file as 'growing_stack' property; and more, look at get_cross_property
#case ${CHOST} in
#hppa*|metag*) export glib_cv_stack_grows=yes ;;
#*) export glib_cv_stack_grows=no ;;
#esac
#fi
local emesonargs=(
-Ddefault_library=$(usex static-libs both shared)
$(meson_feature selinux)
$(meson_use xattr)
-Dlibmount=enabled # only used if host_system == 'linux'
-Dman=true
$(meson_use systemtap dtrace)
$(meson_use systemtap)
$(meson_feature sysprof)
$(meson_native_use_bool gtk-doc gtk_doc)
$(meson_use test tests)
-Dinstalled_tests=false
-Dnls=enabled
-Doss_fuzz=disabled
$(meson_native_use_feature elf libelf)
-Dmultiarch=false
)
meson_src_configure
}
multilib_src_test() {
export XDG_CONFIG_DIRS=/etc/xdg
export XDG_DATA_DIRS=/usr/local/share:/usr/share
export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
export LC_TIME=C # bug #411967
export TZ=UTC
unset GSETTINGS_BACKEND # bug #596380
python_setup
# https://bugs.gentoo.org/839807
local -x SANDBOX_PREDICT=${SANDBOX_PREDICT}
addpredict /usr/b
# Related test is a bit nitpicking
mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
meson_src_test --timeout-multiplier 2 --no-suite flaky
}
multilib_src_install() {
meson_src_install
keepdir /usr/$(get_libdir)/gio/modules
}
multilib_src_install_all() {
# These are installed by dev-util/glib-utils
# TODO: With patching we might be able to get rid of the python-any deps and removals, and test depend on glib-utils instead; revisit now with meson
rm "${ED}/usr/bin/glib-genmarshal" || die
rm "${ED}/usr/share/man/man1/glib-genmarshal.1" || die
rm "${ED}/usr/bin/glib-mkenums" || die
rm "${ED}/usr/share/man/man1/glib-mkenums.1" || die
rm "${ED}/usr/bin/gtester-report" || die
rm "${ED}/usr/share/man/man1/gtester-report.1" || die
# gdbus-codegen manpage installed by dev-util/gdbus-codegen
rm "${ED}/usr/share/man/man1/gdbus-codegen.1" || die
}
pkg_preinst() {
xdg_pkg_preinst
# Make gschemas.compiled belong to glib alone
local cache="/usr/share/glib-2.0/schemas/gschemas.compiled"
if [[ -e ${EROOT}${cache} ]]; then
cp "${EROOT}"${cache} "${ED}"/${cache} || die
else
touch "${ED}"${cache} || die
fi
multilib_pkg_preinst() {
# Make giomodule.cache belong to glib alone
local cache="/usr/$(get_libdir)/gio/modules/giomodule.cache"
if [[ -e ${EROOT}${cache} ]]; then
cp "${EROOT}"${cache} "${ED}"${cache} || die
else
touch "${ED}"${cache} || die
fi
}
# Don't run the cache ownership when cross-compiling, as it would end up with an empty cache
# file due to inability to create it and GIO might not look at any of the modules there
if ! tc-is-cross-compiler ; then
multilib_foreach_abi multilib_pkg_preinst
fi
}
pkg_postinst() {
xdg_pkg_postinst
# glib installs no schemas itself, but we force update for fresh install in case
# something has dropped in a schemas file without direct glib dep; and for upgrades
# in case the compiled schema format could have changed
gnome2_schemas_update
multilib_pkg_postinst() {
gnome2_giomodule_cache_update \
|| die "Update GIO modules cache failed (for ${ABI})"
}
if ! tc-is-cross-compiler ; then
multilib_foreach_abi multilib_pkg_postinst
else
ewarn "Updating of GIO modules cache skipped due to cross-compilation."
ewarn "You might want to run gio-querymodules manually on the target for"
ewarn "your final image for performance reasons and re-run it when packages"
ewarn "installing GIO modules get upgraded or added to the image."
fi
for v in ${REPLACING_VERSIONS}; do
if ver_test "$v" "-lt" "2.63.6"; then
ewarn "glib no longer installs the gio-launch-desktop binary. You may need"
ewarn "to restart your session for \"Open With\" dialogs to work."
fi
done
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
if [[ -z ${REPLACED_BY_VERSION} ]]; then
multilib_pkg_postrm() {
rm -f "${EROOT}"/usr/$(get_libdir)/gio/modules/giomodule.cache
}
multilib_foreach_abi multilib_pkg_postrm
rm -f "${EROOT}"/usr/share/glib-2.0/schemas/gschemas.compiled
fi
}

@ -10,7 +10,7 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3 autotools
else
SRC_URI="https://sf.net/projects/libwpd/files/${PN}/${P}/${P}.tar.xz"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
fi
DESCRIPTION="Helper library for REVerse ENGineered formats filters"

@ -76,6 +76,7 @@ multilib_src_configure() {
if use debug; then
myconf+=( --enable-debug )
else
myconf+=( --disable-debug )
myconf+=( --enable-optimize="${my_optlvl}" )
fi

@ -8,4 +8,7 @@
<use>
<flag name="tools">Build command line utilities</flag>
</use>
<upstream>
<remote-id type="github">drobilla/sord</remote-id>
</upstream>
</pkgmetadata>

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -27,7 +27,7 @@ BDEPEND="
"
RDEPEND="
dev-libs/libpcre
dev-libs/serd
>=dev-libs/serd-0.30.10
"
DEPEND="${RDEPEND}"

Binary file not shown.

@ -1 +1,2 @@
DIST gcl-2.6.13_pre99.tar.xz 10030460 BLAKE2B 8750d641062bcad5a124173013d38403f37ad352c7c436e89d4e329d997200be399a100dcefc4ce484e3f85f46e2dd90ee02947e5e728e001782e973c4122b0e SHA512 a3ad2bd639157ca2a80b534e87c169f6e07002a1b9ca8039483cff336af764123dec9e749da045b656b990e0a97c70881c798420ec4bd0e4494f43d0d040e413
DIST gcl-2.6.14.tar.gz 11725385 BLAKE2B 3e6a7fc359f94897d1062f5e5e31a0ae36f5d24ca0155fd22044cb967f1fd6a0303572dafe25b1a7abbc936db4e8caa93d0e50b1779886e2ba40e148fa868b8f SHA512 1a69f5e8195783c88b618a613253da1089b13e390dd259056df52f1ed95cf0c99358c34d3782c8eb297c07fda74deb7db359e6b9bf94590ee7fc34e94742eb14

@ -0,0 +1,104 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit elisp-common flag-o-matic
DESCRIPTION="GNU Common Lisp"
HOMEPAGE="https://www.gnu.org/software/gcl/gcl.html"
SRC_URI="https://ftp.gnu.org/gnu/${PN}/${P}.tar.gz"
LICENSE="LGPL-2+ GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
IUSE="+ansi athena emacs +readline tk X"
RESTRICT="strip" #205803
RDEPEND="dev-libs/gmp
virtual/latex-base
emacs? ( app-editors/emacs:= )
readline? ( sys-libs/readline:= )
athena? ( x11-libs/libXaw )
tk? ( dev-lang/tk:= )
X? ( x11-libs/libXt x11-libs/libXext x11-libs/libXmu x11-libs/libXaw )"
DEPEND="${RDEPEND}
virtual/texi2dvi
app-text/texi2html
>=sys-devel/autoconf-2.52"
src_configure() {
strip-flags
filter-flags -fstack-protector -fstack-protector-all
# breaks linking on multiple defined syms
#append-cflags $(test-flags-CC -fgnu89-inline)
local tcl=""
if use tk; then
tcl="--enable-tclconfig=/usr/lib --enable-tkconfig=/usr/lib"
fi
econf --enable-dynsysgmp \
--disable-xdr \
--enable-emacsdir=/usr/share/emacs/site-lisp/gcl \
$(use_enable readline) \
$(use_enable ansi) \
$(use_enable athena xgcl) \
$(use_with X x) \
${tcl}
}
src_compile() {
emake -j1
}
src_test() {
local make_ansi_tests_clean="rm -f test.out *.fasl *.o *.so *~ *.fn *.x86f *.fasl *.ufsl"
if use ansi; then
cd ansi-tests
( make clean && make test-unixport ) \
|| die "make ansi-tests failed!"
cat "${FILESDIR}/bootstrap-gcl" \
| ../unixport/saved_ansi_gcl
cat "${FILESDIR}/bootstrap-gcl" \
|sed s/bootstrapped_ansi_gcl/bootstrapped_r_ansi_gcl/g \
| ./bootstrapped_ansi_gcl
( ${make_ansi_tests_clean} && \
echo "(load \"gclload.lsp\")" \
| ./bootstrapped_r_ansi_gcl ) \
|| die "Phase 2, bootstraped compiler failed in tests"
fi
}
src_install() {
emake DESTDIR="${D}" install
rm elisp/add-defaults.el
dodoc readme readme.gmp readme.xgcl ChangeLog doc/* info/*.pdf
dodoc -r info/gcl-si
doman man/man1/gcl.1
doinfo info/gcl.info* info/gcl-si.info
use athena && dodoc xgcl-2/*.pdf
if use tk; then
dodoc -r info/gcl-tk
doinfo info/gcl-tk.info*
fi
if use emacs; then
elisp-site-file-install "${FILESDIR}"/64${PN}-gentoo.el
elisp-install ${PN} elisp/*.el
fi
}
pkg_postinst() {
use emacs && elisp-site-regen
}
pkg_postrm() {
use emacs && elisp-site-regen
}

Binary file not shown.

@ -0,0 +1,12 @@
--- a/compiler/Makefile 2023-01-21 22:23:29.676828969 +0100
+++ b/compiler/Makefile 2023-01-21 22:24:16.204141261 +0100
@@ -73,6 +73,9 @@
.ml.cmo:
$(CAMLCOMP) $(COMPFLAGS) -I ../support $<
+maincompile.cmo: copyright.cmo
+maincompile.cmx: copyright.cmx
+
depend: parser.ml parser.mli lexer.ml pplex.ml ppyac.ml ppyac.mli
$(CAMLDEP) *.mli *.ml > .depend

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -23,6 +23,7 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}/findlib.patch"
"${FILESDIR}"/${PN}-8.06.9-configure-clang16.patch
"${FILESDIR}"/${P}-shuffle.patch
)
src_prepare() {

@ -28,7 +28,7 @@ src_compile() {
}
src_test() {
emake -j1 TARGETS=${exts} test
emake -j1 TARGETS="${exts}" test
}
src_install() {

Binary file not shown.

@ -19,7 +19,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/packaging-19.0[${PYTHON_USEDEP}]

@ -1 +1,2 @@
DIST clint-0.5.1.gh.tar.gz 81140 BLAKE2B 5b42e7d46321f0416d3ffb51edf66c53476d3e4a211e971f36cab54a412f6b0f0ec26486c2b95871956ab09e7e4adf68e8329dd7e9e3c7ed1adb3f8a0dd2a728 SHA512 3ad8bfc587acb1322c7d7c3e73756a07c98f3b4215a3d4dc409b5a2067bc70dce2dd98d19250b8122b319b7bcf5e2859251de2829780345de06f93b35447c4e8
DIST clint-0.5.1.tar.gz 81140 BLAKE2B 5b42e7d46321f0416d3ffb51edf66c53476d3e4a211e971f36cab54a412f6b0f0ec26486c2b95871956ab09e7e4adf68e8329dd7e9e3c7ed1adb3f8a0dd2a728 SHA512 3ad8bfc587acb1322c7d7c3e73756a07c98f3b4215a3d4dc409b5a2067bc70dce2dd98d19250b8122b319b7bcf5e2859251de2829780345de06f93b35447c4e8

@ -0,0 +1,37 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( pypy3 python3_{9..11} )
inherit distutils-r1
DESCRIPTION="Python Command-line Application Tools"
HOMEPAGE="https://github.com/kennethreitz-archive/clint"
SRC_URI="
https://github.com/kennethreitz-archive/${PN}/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="ISC"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
IUSE="examples"
# https://github.com/kennethreitz-archive/clint/pull/180
PATCHES=( "${FILESDIR}/${P}-disable-args-dependency.patch" )
distutils_enable_sphinx docs --no-autodoc
distutils_enable_tests pytest
python_install_all() {
if use examples; then
docompress -x "/usr/share/doc/${PF}/examples"
docinto examples
dodoc -r examples/.
fi
distutils-r1_python_install_all
}

@ -1,2 +1,3 @@
DIST flatbuffers-22.12.06.gh.tar.gz 2172096 BLAKE2B 92bf0c56c10fa369e7a8a53a7f903af6b5f17560a3558587914c29ab8a655f3ee078c3e261426ca5d9ad0587419d4f0049459edc552e25958f80b80ba9539d59 SHA512 1b2c8eaa2ebeb92c3ebc363888b34b817d7b62a568e40bce2b037814f1f0103d4cb7db8507ec9ca05421be61b0b2be3edd6c4d564f75d1ce39278d73f8442ac1
DIST flatbuffers-23.1.21.gh.tar.gz 2181861 BLAKE2B 6368358c21e677feb466245a746b86cebb6d6a4058bb6d593de81bf3c32ddfb9fd475e4bb225d4529ea106253456a5ed1ee6d024b1e2521e02efef171750f428 SHA512 fa62188f773ad044644a58caf1e25bef417dfdea47c9da8a2ea7f997154b4f3976019e32e73cc533696a3d4e45ec4a8402b6df140878dfa2ff078740d61b4b0f
DIST flatbuffers-23.1.4.gh.tar.gz 2178791 BLAKE2B 8c354c539378f7d8e05307f7ba0f5393265a6183fc8868d48b8da5ab7d39a3e7a7f85631db00f0dc57bf396d20652049303a79fbf31f07639d80596d300a7701 SHA512 8b3e1b9596a76548faca529fe5070e775be50bfdea079ba4f66014f5a1bfb93f8edd7e56f97363c897d2db8391277a9099a61d14e4298c3669ab7068bbf07865

@ -0,0 +1,39 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..11} )
inherit distutils-r1
DESCRIPTION="RFC 7049 - Concise Binary Object Representation"
HOMEPAGE="
https://github.com/google/flatbuffers/
https://pypi.org/project/flatbuffers/
"
SRC_URI="
https://github.com/google/${PN}/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
S=${WORKDIR}/${P}/python
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
test? (
dev-python/numpy[${PYTHON_USEDEP}]
)
"
python_test() {
cd "${WORKDIR}/${P}/tests" || die
# zeroes means without benchmarks
"${EPYTHON}" py_test.py 0 0 0 false || die
"${EPYTHON}" py_flexbuffers_test.py -v || die
}

@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( python3_{9..10} pypy3 )
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1
DESCRIPTION="Simplified packaging of Python modules"

@ -19,7 +19,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
RDEPEND="
dev-python/jaraco-context[${PYTHON_USEDEP}]

@ -1,6 +1,7 @@
DIST pip-run-10.0.1.gh.tar.gz 25236 BLAKE2B 319f67420f44c4df1ea950f920de16f3187f1465c619fb628123a07ce56b3c63c96490cc9705f38f273a6fe71d868c9cb31193236af50aff903a34755991a241 SHA512 d4ddca5395a1be291b763555f7d634f5740515167bb38f670b1c3af81d7196e1e084b5659f0d981f2328adb340632bfd452e2913f3d56ea012a2587623b28364
DIST pip-run-10.0.2.gh.tar.gz 25253 BLAKE2B 9ed3066e70109e64a907426752757881d1c95af304f5f114a270e767945d327ec49eebf2bcae1f2f469151446626cb5204d419c63e8701ec90091a4522a9cd7b SHA512 2d0e8e891aa93b36daefa9259a437ea29860bdc07d986f244ad3fc485351a50f68b5ba53fe6431e42b7a04c437195ef58342674b247f001a4aea5181f31ee03d
DIST pip-run-10.0.3.gh.tar.gz 25330 BLAKE2B 43a1e21674cd717be2059bcc599f80db10529f06f6dd903bb7ea1d0e65fa63ce7f6996945c9a123981009a05b87e22819df5266ff07f9ca20f45764698d83d88 SHA512 47e94382985d144bc2bb4ea528ad54ee54c98c8d217d3dff3b7bbe6eeb4e1221b66735f2c930354ae0045a7d7631fd8514e439a0e6b15299784c8b2c47c4070a
DIST pip-run-10.0.4.gh.tar.gz 25454 BLAKE2B c159f9e581d87d7c0b8e9f10ecfe200b4088205a2a5d50092b4d0032288e93a0fda168a80d330c5f6aab9d32d7d15ff461313073cb3235a92ba660d6461ee65c SHA512 fd7e26e62a2c27032b0161b757b2efdd1f8bd64f78b24843c16a67bb856773b7d6350af7e09ec4aafe13cb290d352134c5e7ddb39c339622a6526f44f37c9178
DIST pip-run-9.0.0.gh.tar.gz 23171 BLAKE2B ca1bee27f4d1826029aa2520dbad9807d22ce66326fd917f0b7687284ce3daf9abcd45e593d735633fb86186ea88ffa0b71780f9b56e27458798763db309bd9d SHA512 117b2260fe628dcc5aae47335ab645c2db47ca9b4d5cd0446ef11bb399c0e91df3a32b61aa7a228aca4d7b837228ddb41fe010896f7debf5fbca6111398cce73
DIST pip-run-9.2.1.gh.tar.gz 24104 BLAKE2B ebb26cd5356a5919d74c6601b36deed0046c0d67d7533f5817b62b7b7ba74240ef44dd2425be7143f8432d3f8a3f611a051f099b6059e64479eadd77e8f39b45 SHA512 f320da7641817df5c9418094fb49792e3368907ddac551ef22d97ab45b5183cb84f40338da106d5a47d238ca68ca376cbfc6d6c3528b9fca1db02bf910bd3d28
DIST pip-run-9.4.0.gh.tar.gz 25821 BLAKE2B 8d4d9712f0563d3edf8d963e14221fde89cffc14c3fb26afc2b18bdeca9917cacb27c88a815d398d2b67f10112e888c9f60b497c3c1bf59d0105a4c972aef15d SHA512 c266e6eb30f21ddfd89cc25dee5c56542b3734497d59315751c190e7bd985c6746b95802255ec05da19d5cec8822f4fa169eba4218989013e36a2c118d560f4d

@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
RDEPEND="
dev-python/autocommand[${PYTHON_USEDEP}]

@ -0,0 +1,64 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1
DESCRIPTION="Install packages and run Python with them"
HOMEPAGE="
https://github.com/jaraco/pip-run/
https://pypi.org/project/pip-run/
"
SRC_URI="
https://github.com/jaraco/pip-run/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
RDEPEND="
dev-python/autocommand[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
dev-python/importlib_resources[${PYTHON_USEDEP}]
' 3.8)
dev-python/jaraco-context[${PYTHON_USEDEP}]
dev-python/jaraco-functools[${PYTHON_USEDEP}]
dev-python/jaraco-text[${PYTHON_USEDEP}]
>=dev-python/more-itertools-8.3[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/path[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/platformdirs[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/jaraco-path[${PYTHON_USEDEP}]
>=dev-python/jaraco-test-5.3[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
dev-python/nbformat[${PYTHON_USEDEP}]
' 'python*')
)
"
distutils_enable_tests pytest
export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
python_test() {
local EPYTEST_IGNORE=()
if ! has_version "dev-python/nbformat[${PYTHON_USEDEP}]"; then
EPYTEST_IGNORE+=(
tests/test_scripts.py
)
fi
epytest -m "not network"
}

@ -0,0 +1 @@
DIST pkgcraft-0.0.3.tar.gz 1239742 BLAKE2B c9148d3ac34d80c47db5d1080b3806e6b64fffa226d595a11499215626342286efc19b86fd1e158a8ca0021ab8946d35e4393fceaf8a318c258114a6c2e1ffdf SHA512 53ae196d073271654807ef5587c38d83e10b606f59baf63e3c8da7ce1b1d80d7acd1e3e201ebba1346c14d101eded666d6ad9bdf972b36c574c9b494147baa4a

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>sam@gentoo.org</email>
<name>Sam James</name>
</maintainer>
<maintainer type="project">
<email>python@gentoo.org</email>
</maintainer>
<upstream>
<remote-id type="github">pkgcraft/pkgcraft-python</remote-id>
<remote-id type="pypi">pkgcraft</remote-id>
</upstream>
</pkgmetadata>

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save