summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/Manifest.gzbin20728 -> 20726 bytes
-rw-r--r--app-emulation/lxc/Manifest4
-rw-r--r--app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync1.patch29
-rw-r--r--app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync2.patch28
-rw-r--r--app-emulation/lxc/lxc-4.0.11_p1.ebuild (renamed from app-emulation/lxc/lxc-4.0.11.ebuild)15
-rw-r--r--app-emulation/podman/Manifest2
-rw-r--r--app-emulation/podman/podman-3.4.1.ebuild164
-rw-r--r--app-emulation/qemu/Manifest2
-rw-r--r--app-emulation/qemu/qemu-6.0.1.ebuild911
-rw-r--r--[-rwxr-xr-x]app-emulation/simplevirt/files/simplevirtd.initd0
-rw-r--r--app-emulation/vice/Manifest3
-rw-r--r--app-emulation/vice/files/vice-pkg-config-3.4_p38553.patch29
-rw-r--r--app-emulation/vice/vice-3.4_p38553.ebuild185
13 files changed, 1149 insertions, 223 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 062e5dfcc3e9..e5b841d9838d 100644
--- a/app-emulation/Manifest.gz
+++ b/app-emulation/Manifest.gz
Binary files differ
diff --git a/app-emulation/lxc/Manifest b/app-emulation/lxc/Manifest
index 7f60d79124f5..1b6f38a93f18 100644
--- a/app-emulation/lxc/Manifest
+++ b/app-emulation/lxc/Manifest
@@ -1,5 +1,7 @@
AUX lxc-2.0.5-omit-sysconfig.patch 259 BLAKE2B 977e151fbb8c9d98e89aaa5ee0426e64ab4286b4440af1582086a0ced8c6568efb470ccf68786da6ea52c82d1f4e81feac45bec411febc04fc31d108f05ccde2 SHA512 0aed9aca687accc6df79e97f48ab333043256e8ae68c8643f2b2452cc8013191238867d64ec71f7d399c59a43d3ba698b35d965090c5cb149b4f41302432e6e7
AUX lxc-3.0.0-bash-completion.patch 915 BLAKE2B 8bb879e391cec349d211b47d321c64ea091c8475ac9a8c4adfb45918c044f6c49d9b9bce546082907d696f697baf0870893c4427abeafa496db89f99190cd091 SHA512 2f3728fcf5e88eecc1ae05bf038ef83baa375194c5bef0d0ef68feaf4d8092cdd8efef6b3c27207c4abd28b085f087af517242c65747b47d0a8fa840f6b9d279
+AUX lxc-4.0.11_p1-liburing-sync1.patch 972 BLAKE2B 0384058169c0b601d4f3f86ebd368c35af86d5975c89972b7e78212e8b76525ea28065e81537d3dff09c270e556596465bdadf3808cda9b9ce5755d5a930193a SHA512 56806b85094f488815da3fcde33089dbfac59b62491b5ea11fbdb50b7fd585aee0458ec70a60b843074e8d0f6be12a3bbf4fc20a5d6756b893e61fa87187e9e7
+AUX lxc-4.0.11_p1-liburing-sync2.patch 923 BLAKE2B a366d3717730943b315fe7eb8a9f5e65e03634d7093b4406c1f1e2f64265fe55b407bea3849d3b098b5e92ad6d971cc42f545fbc01fcde48b57fd60c0b0e2940 SHA512 70a6d23309bfd1a38ced46eaad2b28ceac6f2a48e40f5b0bf5287334b4a9867a8d2d7bdf551127445cb6b8e92e46b8ed10fb1484a0117f5f98739a21c49b8451
AUX lxc.initd.8 3669 BLAKE2B 50d41e0923ba26b9653ca3b5b559dd0905e61ec81969e709650fe7f1b26a4dcdc17158b7e449d666e2103047d9f196e53df8beca15fffd529fa8e743de97bd82 SHA512 1182b53a65399746f6d6bced0df5c1fde09c1ede4a28bfe95b5ed0bbd969d6f6423f63021d4b6f1dc62c7b2703f6963c03d881291650bdf21cfcf8432586c1b4
AUX lxc_at.service.4.0.0 284 BLAKE2B 1adc76b9861f2499b7b703f7076782a258f9b21a3d1e32b69334f753faca9ecd8c6fb2a03baf04698e765f079e73ee683434d8c7c6d3b3082427a6af74ab33b1 SHA512 4c2f9846ca60bb78df7e652309900c0e788b45d569f268a9e5b98842518542b35fce253e2aedeb0eded3d37274390988ef887b01d1d37859ccddf6225286b4bb
DIST lxc-4.0.10.tar.gz 1515002 BLAKE2B 2a5b94ad767c8a11a5c34d19f12d812bd284337045ad5021c80a5f69be608085ac465edde8c385cc558e45638c9f061793c0c9db616ccbe0614554b4fbf62005 SHA512 ec3ccf344a91b50b30985562c54ad93d2db2d29c24d31da8e3a69e801c8bd23c1560274c1850c39eb7e984940ba86d3ebae75db136320d6bbc5eb03bda4c5318
@@ -7,5 +9,5 @@ DIST lxc-4.0.10.tar.gz.asc 833 BLAKE2B 3dd6e8793d1b725ab9eb73d4fa78ce2767bf830fb
DIST lxc-4.0.11.tar.gz 1543031 BLAKE2B 0309bbb96938e60e4cbe145fa0cc3c0a85d9154282a889d74167128b6166a280bb4d53df266990a529a98935ef2c12e8d2214e9a8f6cb293d47aa5808ebad82f SHA512 23287e468da8939334f4261bfcbb52eadcbe5806bd97896db38c84eb42f32143dc17bb8b9bb7f7f88584b72056553c9edc33ddb693a345ecf88f3177573fa9c0
DIST lxc-4.0.11.tar.gz.asc 833 BLAKE2B 68804d1d5ad09e388541b3a95a98ca14202c513ea3544a7389a49f4e13ecffc17715bb023675134fd99047c727cffe09cbd0a89883054b82650ebd23366823a7 SHA512 49a54aaf018772db40e1dadc0a10e7d727a2b14b34c0a3c704fd3f7a12e60082abf4628cc0a489ee620ef2210c7542abbdb6d1432e4297ceef52cdd6b158a5f8
EBUILD lxc-4.0.10.ebuild 4702 BLAKE2B 7e549ac644545bf600f8af1231a29c99b34d4c72e0b95f5eab3a0739ea2277e978abba2c00a66404e28a6dc4597fd3f6834d1aac8a46caa3d27902af114f9f7b SHA512 17c2d30d229e0c2c2909aeade12c06613c3b22ed291a12abd37d08cfcef22a4ebeac8864eaf76ead5e40d969bd88e468ef7eb7c439a02a63fb4db62982b81ff1
-EBUILD lxc-4.0.11.ebuild 5169 BLAKE2B fd3bdf310c46e0396c121617fd7ff1630cb5470c410f07f4008d3a308fd96063f9cfe6e8ba373ea7223569d6c956ecad57dccc263b5284f4aab49738f8ad598f SHA512 4074d36b59ca2ad83b0f84823ba102db86f1bb583276ab52a5d3a86ffe2b60159f3244edb53cb27e1c50f0023480087daefd53dfc95c4710b96d8aa35e726167
+EBUILD lxc-4.0.11_p1.ebuild 5320 BLAKE2B 8f8429dd35c1f19f3e6979077359fc5a956ced17d790331c3659e6e5442039518d29ff7a187410d5320c04aef3692c95c1091f5b6fda8542f34672fd9605bcae SHA512 10687f770a569d366c387066cb0ea1ea8ad33fb4eabc6775df2653a0b1931b7a38f8cbb4059cfb3b0dacca34cbdb231a7ca490203484079d68e18387d2ca3415
MISC metadata.xml 713 BLAKE2B 982d13dbe2adffcdb473804981effa8eabc89ca95dc2f39ae6ebdbdce0f786311333c8f9cbfe2105faf55dcbaf7a63a09b46e6b7c7987ba629f5e87de24a348c SHA512 4c9d018afe1967708c18747f504b98487f110b6a021cd97c94693fa4b39d892b148ad19ae64399396b34502ed6f598d7515418b69d0b22031776366a9f172f3b
diff --git a/app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync1.patch b/app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync1.patch
new file mode 100644
index 000000000000..cd497a755523
--- /dev/null
+++ b/app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync1.patch
@@ -0,0 +1,29 @@
+From aac3f106ff012e1d6835b20c250dcf09c364530c Mon Sep 17 00:00:00 2001
+From: Christian Brauner <christian.brauner@ubuntu.com>
+Date: Thu, 28 Oct 2021 17:39:11 +0200
+Subject: [PATCH] mainloop: make sure that descr->ring is allocated
+
+This is future proofing more than anything else.
+
+Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
+---
+ src/lxc/mainloop.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/lxc/mainloop.c b/src/lxc/mainloop.c
+index 7c8f5d86af..17a4d55293 100644
+--- a/src/lxc/mainloop.c
++++ b/src/lxc/mainloop.c
+@@ -515,8 +515,10 @@ void lxc_mainloop_close(struct lxc_async_descr *descr)
+
+ if (descr->type == LXC_MAINLOOP_IO_URING) {
+ #if HAVE_LIBURING
+- io_uring_queue_exit(descr->ring);
+- munmap(descr->ring, sizeof(struct io_uring));
++ if (descr->ring) {
++ io_uring_queue_exit(descr->ring);
++ munmap(descr->ring, sizeof(struct io_uring));
++ }
+ #else
+ ERROR("Unsupported io_uring mainloop");
+ #endif
diff --git a/app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync2.patch b/app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync2.patch
new file mode 100644
index 000000000000..33b8554193d3
--- /dev/null
+++ b/app-emulation/lxc/files/lxc-4.0.11_p1-liburing-sync2.patch
@@ -0,0 +1,28 @@
+From a585382b972c25ee8489147d94918d001ef439a7 Mon Sep 17 00:00:00 2001
+From: Christian Brauner <christian.brauner@ubuntu.com>
+Date: Thu, 28 Oct 2021 17:39:42 +0200
+Subject: [PATCH] start: check event loop type before closing fd
+
+Since this is a union we might otherwise stomp on io_uring mmap()ed
+memory.
+
+Fixes: #4016
+Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
+---
+ src/lxc/start.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/lxc/start.c b/src/lxc/start.c
+index 8f7173ec8c..1a6046c7a4 100644
+--- a/src/lxc/start.c
++++ b/src/lxc/start.c
+@@ -629,7 +629,8 @@ int lxc_poll(const char *name, struct lxc_handler *handler)
+ TRACE("Mainloop is ready");
+
+ ret = lxc_mainloop(&descr, -1);
+- close_prot_errno_disarm(descr.epfd);
++ if (descr.type == LXC_MAINLOOP_EPOLL)
++ close_prot_errno_disarm(descr.epfd);
+ if (ret < 0 || !handler->init_died)
+ goto out_mainloop_console;
+
diff --git a/app-emulation/lxc/lxc-4.0.11.ebuild b/app-emulation/lxc/lxc-4.0.11_p1.ebuild
index 0a763d495217..e7de06da0aee 100644
--- a/app-emulation/lxc/lxc-4.0.11.ebuild
+++ b/app-emulation/lxc/lxc-4.0.11_p1.ebuild
@@ -7,8 +7,8 @@ inherit autotools bash-completion-r1 linux-info flag-o-matic optfeature pam read
DESCRIPTION="A userspace interface for the Linux kernel containment features"
HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc"
-SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz
- verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )"
+SRC_URI="https://linuxcontainers.org/downloads/lxc/${P/_p1}.tar.gz
+ verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P/_p1}.tar.gz.asc )"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
@@ -33,7 +33,8 @@ RDEPEND="acct-group/lxc
DEPEND="${RDEPEND}
>=sys-kernel/linux-headers-4
apparmor? ( sys-apps/apparmor )"
-BDEPEND="doc? ( app-doc/doxygen[dot] )
+BDEPEND="virtual/pkgconfig
+ doc? ( app-doc/doxygen[dot] )
man? ( app-text/docbook-sgml-utils )
verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
@@ -74,10 +75,14 @@ pkg_setup() {
PATCHES=(
"${FILESDIR}"/${PN}-2.0.5-omit-sysconfig.patch # bug 558854
+ "${FILESDIR}"/${P}-liburing-sync1.patch #820545
+ "${FILESDIR}"/${P}-liburing-sync2.patch #820545
)
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
+S="${WORKDIR}/${PN}-${PV/_p1}"
+
src_prepare() {
default
@@ -153,11 +158,11 @@ src_install() {
find "${D}" -name '*.la' -delete -o -name '*.a' -delete || die
# Gentoo-specific additions!
- newinitd "${FILESDIR}/${PN}.initd.8" ${PN}
+ newinitd "${FILESDIR}/lxc.initd.8" lxc
# Remember to compare our systemd unit file with the upstream one
# config/init/systemd/lxc.service.in
- systemd_newunit "${FILESDIR}"/${PN}_at.service.4.0.0 "lxc@.service"
+ systemd_newunit "${FILESDIR}"/lxc_at.service.4.0.0 "lxc@.service"
DOC_CONTENTS="
For openrc, there is an init script provided with the package.
diff --git a/app-emulation/podman/Manifest b/app-emulation/podman/Manifest
index 187af279f8aa..3dcf3f2c8104 100644
--- a/app-emulation/podman/Manifest
+++ b/app-emulation/podman/Manifest
@@ -3,6 +3,8 @@ AUX podman.initd 704 BLAKE2B 2fc4ffaa3b971774957ea244e05d851fa2797ec074529ea7c23
AUX podman.logrotated 85 BLAKE2B 730899f93ee354e476629276b69224cfeaaa1603b6690cac3c0cd905cd75add19179f99e26f29edbd963d5f44c38a3a2db0b5a3613dc665ab801654eac13dc2e SHA512 0136d063b15b07c41a9370ba1845c4f368ec46a7a30683b7ff7cbb0b12e5b2711c9a45329f5102af6a969e562edcec006a8de9055e43e1caf9395847d0c5ec45
DIST podman-3.3.1.tar.gz 10917305 BLAKE2B fe7856c2ad8893e40ec42fb242a088794ea18910388d5e8089885013cab45c98e03bef99a5e911749f95ce469518e6fa5b6d30400f52696645c9ba8c140ba445 SHA512 19003f63c17c1c5788f34d0d6426a366035fc76aa2312e6355464d204d6536e5f78652abaf01643d4be7c2ee5224c25717b41760a4be4f6de8031cca9b06efaa
DIST podman-3.4.0.tar.gz 10950594 BLAKE2B 4a96b9be980f336bc7cfa6efa0f955da90b67e1ff3e45c34097b9eb4fcd611b3454860048410238aeb1063331b246e9c156f738813e7f585d2254a1568d20642 SHA512 195354b15beaaed19b4d5f71f5dbfcd1ebfc5c80c07db91043b76e3254d62b5fd001c52c536773656e5eba65954511c1639a50b955a9992fa4d18a55e573c2a1
+DIST podman-3.4.1.tar.gz 10953738 BLAKE2B 423aaecabce5242ae87887e36e9caaf499b3d5c18978e47b738ef3b6a0a094c64f18f5fef614193157c3de0a6c0d88a232efcdcb60de4ae8ab14abbe266ad512 SHA512 b8602464358ab73429a9003262c92c38c9a06e1133c776fd0c4ce65dae26639db66f8f5ad510528f3e6e7bc2fe692746fcf1d90d4e95d701d102006d9a83b27e
EBUILD podman-3.3.1.ebuild 4708 BLAKE2B 81122dfab3c2cc5f2b9011bbaeac253865662b4d0966125a405d3beadc09798d5b19694a0672d0f44b75cee00c2c1598cc385ac4632a75e22b9d7cd75ab4ef92 SHA512 a4415f1be56365bcba5a9be5dade198ac22ac20111fffcd660d9f3ccd47f2e7cddb3002a57d6d18cf6506c713a3220ff88137758d010b25a6d3b88360f29d98e
EBUILD podman-3.4.0.ebuild 4710 BLAKE2B 6cbec602bebed87db289b4029da7e319b03ff078a1cdbf66bd20693da612a990074b665ef21644d2439c97eee7346bdcd7077cf92839b9145dddc132ebafa0e7 SHA512 4cd475ca845858efd12c6e13c790f454f64c68b4a99b077c0a40e6fa58df000f3fb4983c941522adf1a53231c30ff9155d167923f59220f2e77c8afc19c94353
+EBUILD podman-3.4.1.ebuild 4710 BLAKE2B a86d14a9a55f7a22d13b20959436d6f89c95d0104dc40e173c4c748eaf8a48c19103fd1298409dd34118caff547a4e1338232ad872b1c4111cf907cea3549781 SHA512 86e246e2bed4dafa6873024bf5e2f2ac7a6d1865f0a4d1b0c23de4fc36ca54a720436a21270222d2ea09352dab4a19734fd736446f0225a712b54e96547fa38b
MISC metadata.xml 1161 BLAKE2B 2102871bd12b9db7469f59ba58dcd19f4d5916eb4820d18abc9f36528c00c3439f82ab3988686bbd5b18bc3e8a40a3eddd0e9ed579747ad8c19e9c2d89017e74 SHA512 5d138c94ea82af17594a94667f8306ca96dfb6c12dade1ea1681fedd42e83454f88b2de6dacec6e678b879ef66f3c8cd8d5fae0852c9e3b18239e9c881b4d268
diff --git a/app-emulation/podman/podman-3.4.1.ebuild b/app-emulation/podman/podman-3.4.1.ebuild
new file mode 100644
index 000000000000..d76775b96a6c
--- /dev/null
+++ b/app-emulation/podman/podman-3.4.1.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+EGIT_COMMIT="a6493ae6904a5b7dde2395a374cb77fc45c8a3bc"
+
+inherit bash-completion-r1 flag-o-matic go-module tmpfiles
+
+DESCRIPTION="Library and podman tool for running OCI-based containers in Pods"
+HOMEPAGE="https://github.com/containers/podman/"
+MY_PN=podman
+MY_P=${MY_PN}-${PV}
+SRC_URI="https://github.com/containers/podman/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
+SLOT="0"
+
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="apparmor btrfs +fuse +rootless selinux"
+RESTRICT+=" test"
+
+COMMON_DEPEND="
+ app-crypt/gpgme:=
+ >=app-emulation/conmon-2.0.0
+ || ( >=app-emulation/runc-1.0.0_rc6 app-emulation/crun )
+ dev-libs/libassuan:=
+ dev-libs/libgpg-error:=
+ >=net-misc/cni-plugins-0.8.6
+ sys-fs/lvm2
+ sys-libs/libseccomp:=
+
+ apparmor? ( sys-libs/libapparmor )
+ btrfs? ( sys-fs/btrfs-progs )
+ rootless? ( app-emulation/slirp4netns )
+ selinux? ( sys-libs/libselinux:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-go/go-md2man"
+RDEPEND="${COMMON_DEPEND}
+ fuse? ( sys-fs/fuse-overlayfs )"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ default
+
+ # Disable installation of python modules here, since those are
+ # installed by separate ebuilds.
+ local makefile_sed_args=(
+ -e '/^GIT_.*/d'
+ -e 's/$(GO) build/$(GO) build -v -work -x/'
+ -e 's/^\(install:.*\) install\.python$/\1/'
+ -e 's|^pkg/varlink/iopodman.go: .gopathok pkg/varlink/io.podman.varlink$|pkg/varlink/iopodman.go: pkg/varlink/io.podman.varlink|'
+ )
+
+ has_version -b '>=dev-lang/go-1.13.9' || makefile_sed_args+=(-e 's:GO111MODULE=off:GO111MODULE=on:')
+
+ sed "${makefile_sed_args[@]}" -i Makefile || die
+
+ sed -e 's|OUTPUT="${CIRRUS_TAG:.*|OUTPUT='v${PV}'|' \
+ -i hack/get_release_info.sh || die
+}
+
+src_compile() {
+ local git_commiT=${EGIT_COMMIT}
+
+ # Filter unsupported linker flags
+ filter-flags '-Wl,*'
+
+ [[ -f hack/apparmor_tag.sh ]] || die
+ if use apparmor; then
+ echo -e "#!/bin/sh\necho apparmor" > hack/apparmor_tag.sh || die
+ else
+ echo -e "#!/bin/sh\ntrue" > hack/apparmor_tag.sh || die
+ fi
+
+ [[ -f hack/btrfs_installed_tag.sh ]] || die
+ if use btrfs; then
+ echo -e "#!/bin/sh\ntrue" > hack/btrfs_installed_tag.sh || die
+ else
+ echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
+ hack/btrfs_installed_tag.sh || die
+ fi
+
+ [[ -f hack/selinux_tag.sh ]] || die
+ if use selinux; then
+ echo -e "#!/bin/sh\necho selinux" > hack/selinux_tag.sh || die
+ else
+ echo -e "#!/bin/sh\ntrue" > hack/selinux_tag.sh || die
+ fi
+
+ # Avoid this error when generating pkg/varlink/iopodman.go:
+ # cannot find package "github.com/varlink/go/varlink/idl"
+ mkdir -p _output || die
+ ln -snf ../vendor _output/src || die
+ GO111MODULE=off GOPATH=${PWD}/_output go generate ./pkg/varlink/... || die
+ rm _output/src || die
+
+ export -n GOCACHE GOPATH XDG_CACHE_HOME
+ GOBIN="${S}/bin" \
+ emake all \
+ GIT_BRANCH=master \
+ GIT_BRANCH_CLEAN=master \
+ COMMIT_NO="${git_commit}" \
+ GIT_COMMIT="${git_commit}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install
+
+ insinto /etc/containers
+ newins test/registries.conf registries.conf.example
+ newins test/policy.json policy.json.example
+
+ insinto /usr/share/containers
+ doins vendor/github.com/containers/common/pkg/seccomp/seccomp.json
+
+ newconfd "${FILESDIR}"/podman.confd podman
+ newinitd "${FILESDIR}"/podman.initd podman
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/podman.logrotated" podman
+
+ dobashcomp completions/bash/*
+
+ insinto /usr/share/zsh/site-functions
+ doins completions/zsh/*
+
+ insinto /usr/share/fish/vendor_completions.d
+ doins completions/fish/*
+
+ keepdir /var/lib/containers
+}
+
+pkg_preinst() {
+ PODMAN_ROOTLESS_UPGRADE=false
+ if use rootless; then
+ has_version 'app-emulation/podman[rootless]' || PODMAN_ROOTLESS_UPGRADE=true
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process podman.conf
+
+ local want_newline=false
+ if [[ ! ( -e ${EROOT%/*}/etc/containers/policy.json && -e ${EROOT%/*}/etc/containers/registries.conf ) ]]; then
+ elog "You need to create the following config files:"
+ elog "/etc/containers/registries.conf"
+ elog "/etc/containers/policy.json"
+ elog "To copy over default examples, use:"
+ elog "cp /etc/containers/registries.conf{.example,}"
+ elog "cp /etc/containers/policy.json{.example,}"
+ want_newline=true
+ fi
+ if [[ ${PODMAN_ROOTLESS_UPGRADE} == true ]] ; then
+ ${want_newline} && elog ""
+ elog "For rootless operation, you need to configure subuid/subgid"
+ elog "for user running podman. In case subuid/subgid has only been"
+ elog "configured for root, run:"
+ elog "usermod --add-subuids 1065536-1131071 <user>"
+ elog "usermod --add-subgids 1065536-1131071 <user>"
+ want_newline=true
+ fi
+}
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest
index d62f289661d9..8adc60681645 100644
--- a/app-emulation/qemu/Manifest
+++ b/app-emulation/qemu/Manifest
@@ -11,9 +11,11 @@ AUX qemu-6.1.0-strings.patch 882 BLAKE2B 9c35aca28371c15e037af5e9deaa90edcad769b
AUX qemu-binfmt.initd.head 1442 BLAKE2B 23aa5338914aa7c47f9b1cc1d28291abd0ea037a33cca81f990decfafac2907c86c042350c9dd45591d16330846d4e11d2c8a2a409a68ad81656d9c2c51964c0 SHA512 3fec8946a37bfbd2089f5d95089ed5987a198fc0139ee7482d4bb38c2ffa0e165667a7853afcf2b458bc3e2a6540f172c929ca5a334a00db47e2d0f881382c0e
AUX qemu-binfmt.initd.tail 245 BLAKE2B dd59f2944c6e3f0c4d282b94b687a9b5c51dd77c5103fb9889bd9ce56874495397676ae6c8375d9e9e23094828477240778d9e0f361e68cdd63fdad574851561 SHA512 bcca16805f8380d52cc591ea3d65a8f6e5de456730618f6aee301510edb75d235a22d4d7aeed224882210392840adb403eb53234b6cb76a4cb24533852a8b737
DIST qemu-6.0.0.tar.xz 107333232 BLAKE2B 7746329d3e13782b7c346ce4052cc517cfc65cd9b2d514d199e4d5b8570ca79566ec04b0c114db2e97c84e68eb551e0d4cdce1b14b91a88fe08d2a5f682c1418 SHA512 ee3ff00aebec4d8891d2ff6dabe4e667e510b2a4fe3f6190aa34673a91ea32dcd2db2e9bf94c2f1bf05aa79788f17cfbbedc6027c0988ea08a92587b79ee05e4
+DIST qemu-6.0.1.tar.xz 107084292 BLAKE2B 53f4adc1a4ba99aaf03659db499d557c57d0c2559955980591594bf0ed06aaf485f0192d7f8f68338b97e0d4d0a114e4431bae5e5b3f3fc82aef08616429d8ed SHA512 2e37ae97a56c4de71412ebabe0e0a59908a7ca7d353440e046831319456d4020614f0909af07cb2a8bb23423e84880a89b5aa4e463e95d1ad37a64fbf8021337
DIST qemu-6.1.0.tar.xz 111258808 BLAKE2B 412eecf6d39debd6089b26d3b22e5d25c6c8c30d2eaf31b17c25cc2b3a1b10794a30218dfb151c78801aa295255aa974b297f1fe05b93f14334f203c2af5ccee SHA512 3378ae21c75b77ee6a759827f1fcf7b2a50a0fef07e3b0e89117108022a8d8655fa977e4d65596f4f24f7c735c6594d44b0c6f69732ea4465e88a7406b1d5d3c
EBUILD qemu-6.0.0-r3.ebuild 25707 BLAKE2B e42d63e7b996356466a1aaecc99b6b6435d8a7c733694b9afd5279cebc973c9236e8544dc806d3117a60ee725e1a5a0bb3a2fbbecc0d7053b57fb4b5e66211b8 SHA512 26ff7c7d12b427621dbfea2a6fb9e5e79ae8e5ee6eb8bebfd6c0512bed547bb62c99629592d23ca2f24611fb17fd37f15a43ae063b5b4b8bf9c9ad0712c3c1ec
EBUILD qemu-6.0.0-r53.ebuild 25771 BLAKE2B 24747bb80a6be10aeee0a57544fd888ea6f07c4df4185366243f8716f47e54f4efce6eee7294ec4418046f88e7a02b52ab2e672cc66fa1876414bbf4d5648e57 SHA512 c818fb678899e76b9b6e16f84328b0d1def41614272d49067a0719b8540e46b950daa9229cc2b055b32877287e5356751d5e5db07541d27762ccaf124c970fc6
+EBUILD qemu-6.0.1.ebuild 25775 BLAKE2B 1c5359d679f8285aae9f858e5ea090ef35934788574083de0eedc7983f37eb706a974bec0e058c92d97b4eedf8863f57ae7a8cd0f8165e580033a47aec3ae7e1 SHA512 7be0cc552c5b38a6e42d72fa46ebbcaabc53bdcfcea6540726254b174feb0bd61532b9e952187f7d53cd802c9eeebf82b5f573092f7b488bb3b235f01d977a71
EBUILD qemu-6.1.0.ebuild 25776 BLAKE2B 8e9e76c6839891b180a81c5a8563b3103fadf0bdc9a7e9608d22d1068007066788cb04b31140522745d5805ed0a91bf091d7b912a2666ef4410a71dd0d4213f2 SHA512 c2f1eb8cf381ac37f017fceb93f6ea0f5a62294dce66d4c157b78f8e29c04f313077fdf4ab0c4cbad32a0fd87d282804d3a0d84379e08dd45203997c36e388b4
EBUILD qemu-9999.ebuild 25643 BLAKE2B 662ee64944087293a48267ce2c2e09ae940b088a50bf1ff6e09efddaf2656119267511130b8030c1d4e05fa3eabfc6c69ed7c302da6d1e952679c743a16e9dda SHA512 7389c614c6f092a0e333d5f9deca972d85dbc08fdd9bcfc3894aa14b506bcbcfa2810ac8ca097de7415eb1c3915a02c5984ea483db2dd9260a71aafcad407009
MISC metadata.xml 4482 BLAKE2B 0444445c2cd94eb4c5446bd05ebb40e6bef98483f399a6c976affd36535962cc0c60b870b94dbd3dc7d184fad11eb7b6f401aacef016bce677e44450609661d8 SHA512 88bdbadca89a143d8dcb4a1d00629feff7ab8ac87878a23207933f9f3f414f76023b329c0aa91dfbc025ace7c138b5d08c5c7ddb51d61a6933c225511c040b47
diff --git a/app-emulation/qemu/qemu-6.0.1.ebuild b/app-emulation/qemu/qemu-6.0.1.ebuild
new file mode 100644
index 000000000000..f48029f03bb9
--- /dev/null
+++ b/app-emulation/qemu/qemu-6.0.1.ebuild
@@ -0,0 +1,911 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+PYTHON_REQ_USE="ncurses,readline"
+
+FIRMWARE_ABI_VERSION="6.0.0-r50"
+
+inherit eutils linux-info toolchain-funcs multilib python-r1
+inherit udev fcaps readme.gentoo-r1 pax-utils xdg-utils
+
+if [[ ${PV} = *9999* ]]; then
+ EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
+ EGIT_SUBMODULES=(
+ meson
+ tests/fp/berkeley-softfloat-3
+ tests/fp/berkeley-testfloat-3
+ ui/keycodemapdb
+ )
+ inherit git-r3
+ SRC_URI=""
+else
+ SRC_URI="https://download.qemu.org/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
+fi
+
+DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
+HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
+
+LICENSE="GPL-2 LGPL-2 BSD-2"
+SLOT="0"
+
+IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug +doc
+ +fdt fuse glusterfs gnutls gtk infiniband iscsi io-uring
+ jack jemalloc +jpeg kernel_linux
+ kernel_FreeBSD lzo multipath
+ ncurses nfs nls numa opengl +oss +pin-upstream-blobs
+ plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+ +slirp
+ smartcard snappy spice ssh static static-user systemtap test udev usb
+ usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
+ xfs zstd"
+
+COMMON_TARGETS="
+ aarch64
+ alpha
+ arm
+ cris
+ hppa
+ i386
+ m68k
+ microblaze
+ microblazeel
+ mips
+ mips64
+ mips64el
+ mipsel
+ nios2
+ or1k
+ ppc
+ ppc64
+ riscv32
+ riscv64
+ s390x
+ sh4
+ sh4eb
+ sparc
+ sparc64
+ x86_64
+ xtensa
+ xtensaeb
+"
+IUSE_SOFTMMU_TARGETS="
+ ${COMMON_TARGETS}
+ avr
+ lm32
+ moxie
+ rx
+ tricore
+ unicore32
+"
+IUSE_USER_TARGETS="
+ ${COMMON_TARGETS}
+ aarch64_be
+ armeb
+ hexagon
+ mipsn32
+ mipsn32el
+ ppc64abi32
+ ppc64le
+ sparc32plus
+"
+
+use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
+use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
+IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
+
+RESTRICT="!test? ( test )"
+# Allow no targets to be built so that people can get a tools-only build.
+# Block USE flag configurations known to not work.
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ qemu_softmmu_targets_arm? ( fdt )
+ qemu_softmmu_targets_microblaze? ( fdt )
+ qemu_softmmu_targets_mips64el? ( fdt )
+ qemu_softmmu_targets_ppc64? ( fdt )
+ qemu_softmmu_targets_ppc? ( fdt )
+ qemu_softmmu_targets_riscv32? ( fdt )
+ qemu_softmmu_targets_riscv64? ( fdt )
+ sdl-image? ( sdl )
+ static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy !udev )
+ static-user? ( !plugins )
+ vhost-user-fs? ( caps seccomp )
+ virgl? ( opengl )
+ virtfs? ( caps xattr )
+ vte? ( gtk )
+ multipath? ( udev )
+ plugins? ( !static !static-user )
+"
+
+# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
+# and user/softmmu targets (qemu-*, qemu-system-*).
+#
+# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
+#
+# The attr lib isn't always linked in (although the USE flag is always
+# respected). This is because qemu supports using the C library's API
+# when available rather than always using the external library.
+ALL_DEPEND="
+ >=dev-libs/glib-2.0[static-libs(+)]
+ sys-libs/zlib[static-libs(+)]
+ python? ( ${PYTHON_DEPS} )
+ systemtap? ( dev-util/systemtap )
+ xattr? ( sys-apps/attr[static-libs(+)] )"
+
+# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
+# softmmu targets (qemu-system-*).
+SOFTMMU_TOOLS_DEPEND="
+ dev-libs/libxml2[static-libs(+)]
+ >=x11-libs/pixman-0.28.0[static-libs(+)]
+ accessibility? (
+ app-accessibility/brltty[api]
+ app-accessibility/brltty[static-libs(+)]
+ )
+ aio? ( dev-libs/libaio[static-libs(+)] )
+ alsa? ( >=media-libs/alsa-lib-1.0.13 )
+ bzip2? ( app-arch/bzip2[static-libs(+)] )
+ capstone? ( dev-libs/capstone:= )
+ caps? ( sys-libs/libcap-ng[static-libs(+)] )
+ curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
+ fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
+ fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
+ glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
+ gnutls? (
+ dev-libs/nettle:=[static-libs(+)]
+ >=net-libs/gnutls-3.0:=[static-libs(+)]
+ )
+ gtk? (
+ x11-libs/gtk+:3
+ vte? ( x11-libs/vte:2.91 )
+ )
+ infiniband? (
+ sys-fabric/libibumad:=[static-libs(+)]
+ sys-fabric/libibverbs:=[static-libs(+)]
+ sys-fabric/librdmacm:=[static-libs(+)]
+ )
+ iscsi? ( net-libs/libiscsi )
+ io-uring? ( sys-libs/liburing:=[static-libs(+)] )
+ jack? ( virtual/jack )
+ jemalloc? ( dev-libs/jemalloc )
+ jpeg? ( virtual/jpeg:0=[static-libs(+)] )
+ lzo? ( dev-libs/lzo:2[static-libs(+)] )
+ multipath? ( sys-fs/multipath-tools )
+ ncurses? (
+ sys-libs/ncurses:=[unicode(+)]
+ sys-libs/ncurses:=[static-libs(+)]
+ )
+ nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
+ numa? ( sys-process/numactl[static-libs(+)] )
+ opengl? (
+ virtual/opengl
+ media-libs/libepoxy[static-libs(+)]
+ media-libs/mesa[static-libs(+)]
+ media-libs/mesa[egl,gbm]
+ )
+ png? ( media-libs/libpng:0=[static-libs(+)] )
+ pulseaudio? ( media-sound/pulseaudio )
+ rbd? ( sys-cluster/ceph )
+ sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
+ sdl? (
+ media-libs/libsdl2[video]
+ media-libs/libsdl2[static-libs(+)]
+ )
+ sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
+ seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
+ slirp? ( net-libs/libslirp[static-libs(+)] )
+ 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(+)]
+ )
+ ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
+ udev? ( virtual/libudev:= )
+ usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
+ usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
+ vde? ( net-misc/vde[static-libs(+)] )
+ virgl? ( media-libs/virglrenderer[static-libs(+)] )
+ virtfs? ( sys-libs/libcap )
+ xen? ( app-emulation/xen-tools:= )
+ xfs? ( sys-fs/xfsprogs[static-libs(+)] )
+ zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
+"
+
+EDK2_OVMF_VERSION="202105"
+SEABIOS_VERSION="1.14.0"
+
+X86_FIRMWARE_DEPEND="
+ pin-upstream-blobs? (
+ ~sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}[binary]
+ ~sys-firmware/ipxe-1.21.1[binary,qemu]
+ ~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
+ ~sys-firmware/sgabios-0.1_pre10[binary]
+ )
+ !pin-upstream-blobs? (
+ >=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
+ sys-firmware/ipxe[qemu]
+ >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
+ sys-firmware/sgabios
+ )"
+PPC_FIRMWARE_DEPEND="
+ pin-upstream-blobs? (
+ ~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
+ )
+ !pin-upstream-blobs? (
+ >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
+ )
+"
+
+BDEPEND="
+ $(python_gen_impl_dep)
+ dev-lang/perl
+ sys-apps/texinfo
+ virtual/pkgconfig
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ gtk? ( nls? ( sys-devel/gettext ) )
+ test? (
+ dev-libs/glib[utils]
+ sys-devel/bc
+ )
+"
+CDEPEND="
+ !static? (
+ ${ALL_DEPEND//\[static-libs(+)]}
+ ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
+ )
+ qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
+ qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
+ qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
+ qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
+"
+DEPEND="${CDEPEND}
+ kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
+ static? (
+ ${ALL_DEPEND}
+ ${SOFTMMU_TOOLS_DEPEND}
+ )
+ static-user? ( ${ALL_DEPEND} )"
+RDEPEND="${CDEPEND}
+ acct-group/kvm
+ selinux? ( sec-policy/selinux-qemu )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
+ "${FILESDIR}"/${PN}-5.2.0-strings.patch
+ "${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
+ "${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
+ "${FILESDIR}"/${PN}-5.2.0-dce-locks.patch
+ "${FILESDIR}"/${PN}-6.0.0-make.patch
+)
+
+QA_PREBUILT="
+ usr/share/qemu/hppa-firmware.img
+ usr/share/qemu/openbios-ppc
+ usr/share/qemu/openbios-sparc64
+ usr/share/qemu/openbios-sparc32
+ usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
+ usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
+ usr/share/qemu/palcode-clipper
+ usr/share/qemu/s390-ccw.img
+ usr/share/qemu/s390-netboot.img
+ usr/share/qemu/u-boot.e500
+"
+
+QA_WX_LOAD="usr/bin/qemu-i386
+ usr/bin/qemu-x86_64
+ usr/bin/qemu-alpha
+ usr/bin/qemu-arm
+ usr/bin/qemu-cris
+ usr/bin/qemu-m68k
+ usr/bin/qemu-microblaze
+ usr/bin/qemu-microblazeel
+ usr/bin/qemu-mips
+ usr/bin/qemu-mipsel
+ usr/bin/qemu-or1k
+ usr/bin/qemu-ppc
+ usr/bin/qemu-ppc64
+ usr/bin/qemu-ppc64abi32
+ usr/bin/qemu-sh4
+ usr/bin/qemu-sh4eb
+ usr/bin/qemu-sparc
+ usr/bin/qemu-sparc64
+ usr/bin/qemu-armeb
+ usr/bin/qemu-sparc32plus
+ usr/bin/qemu-s390x
+ usr/bin/qemu-unicore32
+"
+
+DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
+kernel module loaded before running kvm. The easiest way to ensure that the
+kernel module is loaded is to load it on boot.
+ For AMD CPUs the module is called 'kvm-amd'.
+ For Intel CPUs the module is called 'kvm-intel'.
+Please review /etc/conf.d/modules for how to load these.
+
+Make sure your user is in the 'kvm' group. Just run
+ $ gpasswd -a <USER> kvm
+then have <USER> re-login.
+
+For brand new installs, the default permissions on /dev/kvm might not let
+you access it. You can tell udev to reset ownership/perms:
+ $ udevadm trigger -c add /dev/kvm
+
+If you want to register binfmt handlers for qemu user targets:
+For openrc:
+ # rc-update add qemu-binfmt
+For systemd:
+ # ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
+
+pkg_pretend() {
+ if use kernel_linux && kernel_is lt 2 6 25; then
+ eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
+ elif use kernel_linux; then
+ if ! linux_config_exists; then
+ eerror "Unable to check your kernel for KVM support"
+ else
+ CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
+ ERROR_KVM="You must enable KVM in your kernel to continue"
+ ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
+ ERROR_KVM_AMD+=" your kernel configuration."
+ ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
+ ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
+ ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
+ ERROR_TUN+=" into your kernel or loaded as a module to use the"
+ ERROR_TUN+=" virtual network device if using -net tap."
+ ERROR_BRIDGE="You will also need support for 802.1d"
+ ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
+ use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
+ ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
+ ERROR_VHOST_NET+=" support"
+
+ if use amd64 || use x86 || use amd64-linux || use x86-linux; then
+ if grep -q AuthenticAMD /proc/cpuinfo; then
+ CONFIG_CHECK+=" ~KVM_AMD"
+ elif grep -q GenuineIntel /proc/cpuinfo; then
+ CONFIG_CHECK+=" ~KVM_INTEL"
+ fi
+ fi
+
+ use python && CONFIG_CHECK+=" ~DEBUG_FS"
+ ERROR_DEBUG_FS="debugFS support required for kvm_stat"
+
+ # Now do the actual checks setup above
+ check_extra_config
+ fi
+ fi
+
+ if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
+ eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
+ eerror "instances are still pointing to it. Please update your"
+ eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
+ eerror "and the right system binary (e.g. qemu-system-x86_64)."
+ die "update your virt configs to not use qemu-kvm"
+ fi
+}
+
+# Sanity check to make sure target lists are kept up-to-date.
+check_targets() {
+ local var=$1 mak=$2
+ local detected sorted
+
+ pushd "${S}"/default-configs/targets/ >/dev/null || die
+
+ # Force C locale until glibc is updated. #564936
+ detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
+ sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
+ if [[ ${sorted} != "${detected}" ]] ; then
+ eerror "The ebuild needs to be kept in sync."
+ eerror "${var}: ${sorted}"
+ eerror "$(printf '%-*s' ${#var} configure): ${detected}"
+ die "sync ${var} to the list of targets"
+ fi
+
+ popd >/dev/null
+}
+
+src_prepare() {
+ check_targets IUSE_SOFTMMU_TARGETS softmmu
+ check_targets IUSE_USER_TARGETS linux-user
+
+ default
+
+ # Use correct toolchain to fix cross-compiling
+ tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
+ export WINDRES=${CHOST}-windres
+
+ # Verbose builds
+ MAKEOPTS+=" V=1"
+
+ # Remove bundled copy of libfdt
+ rm -r dtc || die
+}
+
+##
+# configures qemu based on the build directory and the build type
+# we are using.
+#
+qemu_src_configure() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ local buildtype=$1
+ local builddir="${S}/${buildtype}-build"
+
+ mkdir "${builddir}"
+
+ local conf_opts=(
+ --prefix=/usr
+ --sysconfdir=/etc
+ --bindir=/usr/bin
+ --libdir=/usr/$(get_libdir)
+ --datadir=/usr/share
+ --docdir=/usr/share/doc/${PF}/html
+ --mandir=/usr/share/man
+ --localstatedir=/var
+ --disable-bsd-user
+ --disable-containers # bug #732972
+ --disable-guest-agent
+ --disable-strip
+
+ # bug #746752: TCG interpreter has a few limitations:
+ # - it does not support FPU
+ # - it's generally slower on non-self-modifying code
+ # It's advantage is support for host architectures
+ # where native codegeneration is not implemented.
+ # Gentoo has qemu keyworded only on targets with
+ # native code generation available. Avoid the interpreter.
+ --disable-tcg-interpreter
+
+ --disable-werror
+ # We support gnutls/nettle for crypto operations. It is possible
+ # to use gcrypt when gnutls/nettle are disabled (but not when they
+ # are enabled), but it's not really worth the hassle. Disable it
+ # all the time to avoid automatically detecting it. #568856
+ --disable-gcrypt
+ --python="${PYTHON}"
+ --cc="$(tc-getCC)"
+ --cxx="$(tc-getCXX)"
+ --host-cc="$(tc-getBUILD_CC)"
+ $(use_enable debug debug-info)
+ $(use_enable debug debug-tcg)
+ $(use_enable doc docs)
+ $(use_enable nls gettext)
+ $(use_enable plugins)
+ $(use_enable xattr attr)
+ )
+
+ # Disable options not used by user targets. This simplifies building
+ # static user targets (USE=static-user) considerably.
+ conf_notuser() {
+ if [[ ${buildtype} == "user" ]] ; then
+ echo "--disable-${2:-$1}"
+ else
+ use_enable "$@"
+ fi
+ }
+ # Enable option only for softmmu build, but not 'user' or 'tools'
+ conf_softmmu() {
+ if [[ ${buildtype} == "softmmu" ]] ; then
+ use_enable "$@"
+ else
+ echo "--disable-${2:-$1}"
+ fi
+ }
+ # Enable option only for tools build, but not 'user' or 'softmmu'
+ conf_tools() {
+ if [[ ${buildtype} == "tools" ]] ; then
+ use_enable "$@"
+ else
+ echo "--disable-${2:-$1}"
+ fi
+ }
+ conf_opts+=(
+ $(conf_notuser accessibility brlapi)
+ $(conf_notuser aio linux-aio)
+ $(conf_notuser bzip2)
+ $(conf_notuser capstone)
+ $(conf_notuser caps cap-ng)
+ $(conf_notuser curl)
+ $(conf_notuser fdt)
+ $(conf_notuser fuse)
+ $(conf_notuser glusterfs)
+ $(conf_notuser gnutls)
+ $(conf_notuser gnutls nettle)
+ $(conf_notuser gtk)
+ $(conf_notuser infiniband rdma)
+ $(conf_notuser iscsi libiscsi)
+ $(conf_notuser io-uring linux-io-uring)
+ $(conf_notuser jemalloc jemalloc)
+ $(conf_notuser jpeg vnc-jpeg)
+ $(conf_notuser kernel_linux kvm)
+ $(conf_notuser lzo)
+ $(conf_notuser multipath mpath)
+ $(conf_notuser ncurses curses)
+ $(conf_notuser nfs libnfs)
+ $(conf_notuser numa)
+ $(conf_notuser opengl)
+ $(conf_notuser png vnc-png)
+ $(conf_notuser rbd)
+ $(conf_notuser sasl vnc-sasl)
+ $(conf_notuser sdl)
+ $(conf_softmmu sdl-image)
+ $(conf_notuser seccomp)
+ $(conf_notuser slirp slirp system)
+ $(conf_notuser smartcard)
+ $(conf_notuser snappy)
+ $(conf_notuser spice)
+ $(conf_notuser ssh libssh)
+ $(conf_notuser udev libudev)
+ $(conf_notuser usb libusb)
+ $(conf_notuser usbredir usb-redir)
+ $(conf_notuser vde)
+ $(conf_notuser vhost-net)
+ $(conf_notuser vhost-user-fs)
+ $(conf_tools vhost-user-fs virtiofsd)
+ $(conf_notuser virgl virglrenderer)
+ $(conf_softmmu virtfs)
+ $(conf_notuser vnc)
+ $(conf_notuser vte)
+ $(conf_notuser xen)
+ $(conf_notuser xen xen-pci-passthrough)
+ $(conf_notuser xfs xfsctl)
+ # use prebuilt keymaps, bug #759604
+ --disable-xkbcommon
+ $(conf_notuser zstd)
+ )
+
+ if [[ ${buildtype} == "user" ]] ; then
+ conf_opts+=( --disable-libxml2 )
+ else
+ conf_opts+=( --enable-libxml2 )
+ fi
+
+ if [[ ! ${buildtype} == "user" ]] ; then
+ # audio options
+ local audio_opts=(
+ # Note: backend order matters here: #716202
+ # We iterate from higher-level to lower level.
+ $(usex pulseaudio pa "")
+ $(usev jack)
+ $(usev sdl)
+ $(usev alsa)
+ $(usev oss)
+ )
+ conf_opts+=(
+ --audio-drv-list=$(printf "%s," "${audio_opts[@]}")
+ )
+ fi
+
+ case ${buildtype} in
+ user)
+ conf_opts+=(
+ --enable-linux-user
+ --disable-system
+ --disable-blobs
+ --disable-tools
+ )
+ local static_flag="static-user"
+ ;;
+ softmmu)
+ conf_opts+=(
+ --disable-linux-user
+ --enable-system
+ --disable-tools
+ )
+ local static_flag="static"
+ ;;
+ tools)
+ conf_opts+=(
+ --disable-linux-user
+ --disable-system
+ --disable-blobs
+ --enable-tools
+ )
+ local static_flag="static"
+ ;;
+ esac
+
+ local targets="${buildtype}_targets"
+ [[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
+
+ # Add support for SystemTAP
+ use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
+
+ # We always want to attempt to build with PIE support as it results
+ # in a more secure binary. But it doesn't work with static or if
+ # the current GCC doesn't have PIE support.
+ if use ${static_flag}; then
+ conf_opts+=( --static --disable-pie )
+ else
+ tc-enables-pie && conf_opts+=( --enable-pie )
+ fi
+
+ # Meson will not use a cross-file unless cross_prefix is set.
+ tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
+
+ # Plumb through equivalent of EXTRA_ECONF to allow experiments
+ # like bug #747928.
+ conf_opts+=( ${EXTRA_CONF_QEMU} )
+
+ echo "../configure ${conf_opts[*]}"
+ cd "${builddir}"
+ ../configure "${conf_opts[@]}" || die "configure failed"
+
+ # FreeBSD's kernel does not support QEMU assigning/grabbing
+ # host USB devices yet
+ use kernel_FreeBSD && \
+ sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
+}
+
+src_configure() {
+ local target
+
+ python_setup
+
+ softmmu_targets= softmmu_bins=()
+ user_targets= user_bins=()
+
+ for target in ${IUSE_SOFTMMU_TARGETS} ; do
+ if use "qemu_softmmu_targets_${target}"; then
+ softmmu_targets+=",${target}-softmmu"
+ softmmu_bins+=( "qemu-system-${target}" )
+ fi
+ done
+
+ for target in ${IUSE_USER_TARGETS} ; do
+ if use "qemu_user_targets_${target}"; then
+ user_targets+=",${target}-linux-user"
+ user_bins+=( "qemu-${target}" )
+ fi
+ done
+
+ softmmu_targets=${softmmu_targets#,}
+ user_targets=${user_targets#,}
+
+ [[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
+ [[ -n ${user_targets} ]] && qemu_src_configure "user"
+ qemu_src_configure "tools"
+}
+
+src_compile() {
+ if [[ -n ${user_targets} ]]; then
+ cd "${S}/user-build"
+ default
+ fi
+
+ if [[ -n ${softmmu_targets} ]]; then
+ cd "${S}/softmmu-build"
+ default
+ fi
+
+ cd "${S}/tools-build"
+ default
+}
+
+src_test() {
+ if [[ -n ${softmmu_targets} ]]; then
+ cd "${S}/softmmu-build"
+ pax-mark m */qemu-system-* #515550
+ emake check
+ fi
+}
+
+qemu_python_install() {
+ python_domodule "${S}/python/qemu"
+
+ python_doscript "${S}/scripts/kvm/vmxcap"
+ python_doscript "${S}/scripts/qmp/qmp-shell"
+ python_doscript "${S}/scripts/qmp/qemu-ga-client"
+}
+
+# Generate binfmt support files.
+# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
+# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
+generate_initd() {
+ local out="${T}/qemu-binfmt"
+ local out_systemd="${T}/qemu.conf"
+ local d="${T}/binfmt.d"
+
+ einfo "Generating qemu binfmt scripts and configuration files"
+
+ # Generate the debian fragments first.
+ mkdir -p "${d}"
+ "${S}"/scripts/qemu-binfmt-conf.sh \
+ --debian \
+ --exportdir "${d}" \
+ --qemu-path "${EPREFIX}/usr/bin" \
+ || die
+ # Then turn the fragments into a shell script we can source.
+ sed -E -i \
+ -e 's:^([^ ]+) (.*)$:\1="\2":' \
+ "${d}"/* || die
+
+ # Generate the init.d script by assembling the fragments from above.
+ local f qcpu package interpreter magic mask
+ cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
+ for f in "${d}"/qemu-* ; do
+ source "${f}"
+
+ # Normalize the cpu logic like we do in the init.d for the native cpu.
+ qcpu=${package#qemu-}
+ case ${qcpu} in
+ arm*) qcpu="arm";;
+ mips*) qcpu="mips";;
+ ppc*) qcpu="ppc";;
+ s390*) qcpu="s390";;
+ sh*) qcpu="sh";;
+ sparc*) qcpu="sparc";;
+ esac
+
+ # we use 'printf' here to be portable across 'sh'
+ # implementations: #679168
+ cat <<EOF >>"${out}"
+ if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
+ printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
+ fi
+EOF
+
+ echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
+
+ done
+ cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
+}
+
+src_install() {
+ if [[ -n ${user_targets} ]]; then
+ cd "${S}/user-build"
+ emake DESTDIR="${ED}" install
+
+ # Install binfmt handler init script for user targets.
+ generate_initd
+ doinitd "${T}/qemu-binfmt"
+
+ # Install binfmt/qemu.conf.
+ insinto "/usr/share/qemu/binfmt.d"
+ doins "${T}/qemu.conf"
+ fi
+
+ if [[ -n ${softmmu_targets} ]]; then
+ cd "${S}/softmmu-build"
+ emake DESTDIR="${ED}" install
+
+ # This might not exist if the test failed. #512010
+ [[ -e check-report.html ]] && dodoc check-report.html
+
+ if use kernel_linux; then
+ udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
+ fi
+
+ if use python; then
+ python_foreach_impl qemu_python_install
+ fi
+ fi
+
+ cd "${S}/tools-build"
+ emake DESTDIR="${ED}" install
+
+ # Disable mprotect on the qemu binaries as they use JITs to be fast #459348
+ pushd "${ED}"/usr/bin >/dev/null
+ pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
+ popd >/dev/null
+
+ # Install config file example for qemu-bridge-helper
+ insinto "/etc/qemu"
+ doins "${FILESDIR}/bridge.conf"
+
+ cd "${S}"
+ dodoc MAINTAINERS docs/specs/pci-ids.txt
+ newdoc pc-bios/README README.pc-bios
+
+ # Disallow stripping of prebuilt firmware files.
+ dostrip -x ${QA_PREBUILT}
+
+ if [[ -n ${softmmu_targets} ]]; then
+ # Remove SeaBIOS since we're using the SeaBIOS packaged one
+ rm "${ED}/usr/share/qemu/bios.bin"
+ rm "${ED}/usr/share/qemu/bios-256k.bin"
+ if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
+ dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
+ dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
+ fi
+
+ # Remove vgabios since we're using the seavgabios packaged one
+ rm "${ED}/usr/share/qemu/vgabios.bin"
+ rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
+ rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
+ rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
+ rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
+ rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
+ # PPC/PPC64 loads vgabios-stdvga
+ if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
+ dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
+ dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
+ dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
+ dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
+ dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
+ dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
+ fi
+
+ # Remove sgabios since we're using the sgabios packaged one
+ rm "${ED}/usr/share/qemu/sgabios.bin"
+ if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
+ dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
+ fi
+
+ # Remove iPXE since we're using the iPXE packaged one
+ rm "${ED}"/usr/share/qemu/pxe-*.rom
+ if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
+ dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
+ dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
+ dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
+ dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
+ dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
+ dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
+ fi
+ fi
+
+ DISABLE_AUTOFORMATTING=true
+ readme.gentoo_create_doc
+}
+
+firmware_abi_change() {
+ local pv
+ for pv in ${REPLACING_VERSIONS}; do
+ if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
+ return 0
+ fi
+ done
+ return 1
+}
+
+pkg_postinst() {
+ if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
+ udev_reload
+ fi
+
+ xdg_icon_cache_update
+
+ [[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
+ fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
+
+ DISABLE_AUTOFORMATTING=true
+ readme.gentoo_print_elog
+
+ if use pin-upstream-blobs && firmware_abi_change; then
+ ewarn "This version of qemu pins new versions of firmware blobs:"
+ ewarn " $(best_version sys-firmware/edk2-ovmf)"
+ ewarn " $(best_version sys-firmware/ipxe)"
+ ewarn " $(best_version sys-firmware/seabios)"
+ ewarn " $(best_version sys-firmware/sgabios)"
+ ewarn "This might break resume of hibernated guests (started with a different"
+ ewarn "firmware version) and live migration to/from qemu versions with different"
+ ewarn "firmware. Please (cold) restart all running guests. For functional"
+ ewarn "guest migration ensure that all"
+ ewarn "hosts run at least"
+ ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
+ fi
+}
+
+pkg_info() {
+ echo "Using:"
+ echo " $(best_version app-emulation/spice-protocol)"
+ echo " $(best_version sys-firmware/edk2-ovmf)"
+ if has_version 'sys-firmware/edk2-ovmf[binary]'; then
+ echo " USE=binary"
+ else
+ echo " USE=''"
+ fi
+ echo " $(best_version sys-firmware/ipxe)"
+ echo " $(best_version sys-firmware/seabios)"
+ if has_version 'sys-firmware/seabios[binary]'; then
+ echo " USE=binary"
+ else
+ echo " USE=''"
+ fi
+ echo " $(best_version sys-firmware/sgabios)"
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}
diff --git a/app-emulation/simplevirt/files/simplevirtd.initd b/app-emulation/simplevirt/files/simplevirtd.initd
index d8dfadbcb69b..d8dfadbcb69b 100755..100644
--- a/app-emulation/simplevirt/files/simplevirtd.initd
+++ b/app-emulation/simplevirt/files/simplevirtd.initd
diff --git a/app-emulation/vice/Manifest b/app-emulation/vice/Manifest
index 6d9b2857d93e..702efbe20e83 100644
--- a/app-emulation/vice/Manifest
+++ b/app-emulation/vice/Manifest
@@ -1,6 +1,3 @@
-AUX vice-pkg-config-3.4_p38553.patch 816 BLAKE2B 58fdde3647c520b12434b221197b91d363a65640fc72df27e991f783c8fbea2b2bf962fca00384fe673a577cc354aa03861482dfadb9de6f6afa91b48b673022 SHA512 cd6b6068a4e3c521bfbcf60986ae770a379d373723e005816ad599a9a199af973f75ef9b8806f486223d2017fa118eb3a814f5efb0e3eea81c7eadeaedc54d90
DIST vice-3.5.tar.gz 22557578 BLAKE2B 5573951052c2c7b2beb4dd194ad8612c53e484e47a4d935e0dbc880f2f06611252add3631f99c9656f2c941088d0147b0783020ffcc5a29505bab75ef8dc128e SHA512 02f364c1645138cacb461346d44de8f524fb2aba7d980181caf039c46ca9d30db98466e5b0e56e6a41417cd7bbd63d73bf6eb110af1271e23732e320dd1fab70
-DIST vice-emu-code-r38553-trunk-vice.zip 27146846 BLAKE2B 5139e4b1e9269c3885313889dffc055298c52152da77e5a824270feb0af6ba61a1726160a6d259e9f8840fefe486cc184f5bfda3ba1797e0359159ccf1e9824f SHA512 c4d3f132bae2980163e74695126e979bd68dddecb17c2eea8227edbb675985d1f04ade665b946a5e3c707bc17e260efb61f57aa141b6ef712385d4d85a68ef86
-EBUILD vice-3.4_p38553.ebuild 4410 BLAKE2B ea6539484a88baac8d3d98bbff3c4f589c4bac49c76586496b8453e7b1cfa5c402ff5a1e7a029483da5cf07d78006bc35a3557a67a63230bc85a8b12f3f469d6 SHA512 dd7a3ad05ceb453a71667e0628d8d925b03c864d07c90857d283e5737e0105895222f6bf635c28f0274c005c1f03324dfffef57610b9f32c031b76e2782339eb
EBUILD vice-3.5-r1.ebuild 4077 BLAKE2B cf446708e7d2b3b84db74d7e59557a9cd078ea28cc3e3f3ec2024a14865f0ed5b8157a968bf9a53cb08c1c88c7ca1bb4937ec4b3c568fe70e9107619a5dd4942 SHA512 e207be81ee7ecd8f4049e69befd6171bcae1758538a34704e538d7903141c28b7a179c9ab2b3afddfeaabb3d410f31261f1cd525113a612d90e736c8f8f027ae
MISC metadata.xml 785 BLAKE2B 1dc59c7b40fda968680e97b1ad83e741faf223143bbc1ab2d523e37312badd3a3aaedc3bbffbd158531c74ae73dab1bb1ee03666a081eb17d819dc9e0b783ee2 SHA512 b483d325702723d1395bca771d215709fc68b6ca8309c4297c6a668d5940502c9c8d5d4149e1f52b8fd6d5062cf04b2e3d7046ecfc0555d2703b064e329af283
diff --git a/app-emulation/vice/files/vice-pkg-config-3.4_p38553.patch b/app-emulation/vice/files/vice-pkg-config-3.4_p38553.patch
deleted file mode 100644
index 557c0a927318..000000000000
--- a/app-emulation/vice/files/vice-pkg-config-3.4_p38553.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-https://sourceforge.net/p/vice-emu/patches/218/
-
-Index: configure.ac
-===================================================================
---- a/configure.ac (revision 38502)
-+++ b/configure.ac (working copy)
-@@ -1275,6 +1275,14 @@
- fi
-
- if test x"$found_sdl2" != "xyes"; then
-+ PKG_CHECK_MODULES(SDL2, sdl2, [
-+ use_sdl_prefix=no
-+ use_sdl2_prefix=no
-+ found_sdl2=yes
-+ VICE_CFLAGS="$VICE_CFLAGS $SDL2_CFLAGS"
-+ VICE_CXXFLAGS="$VICE_CXXFLAGS $SDL2_CFLAGS"
-+ LIBS="$LIBS $SDL2_LIBS"
-+ ], [
- dnl Check for sdl2-config
- if test x"$sdl2_config" != "xno"; then
- user_CFLAGS="$CFLAGS"
-@@ -1311,6 +1319,7 @@
- CFLAGS="$user_CFLAGS"
- CXXFLAGS="$user_CXXFLAGS"
- fi
-+ ])
- fi
-
- dnl fail if SDL2 ui was requested, otherwise restore flags and continue
diff --git a/app-emulation/vice/vice-3.4_p38553.ebuild b/app-emulation/vice/vice-3.4_p38553.ebuild
deleted file mode 100644
index 17bb3310b2ab..000000000000
--- a/app-emulation/vice/vice-3.4_p38553.ebuild
+++ /dev/null
@@ -1,185 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools multibuild xdg
-
-MY_P="vice-emu-code-r${PV##*_p}-trunk-vice"
-
-DESCRIPTION="The Versatile Commodore Emulator"
-HOMEPAGE="https://vice-emu.sourceforge.io/"
-#SRC_URI="mirror://sourceforge/vice-emu/releases/${P}.tar.gz"
-SRC_URI="https://sourceforge.net/code-snapshots/svn/v/vi/vice-emu/code/${MY_P}.zip"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="alsa debug doc ethernet ffmpeg flac gif +gtk headless ipv6 jpeg lame mpg123 ogg oss +opengl parport pci png portaudio pulseaudio sdl zlib"
-REQUIRED_USE="|| ( gtk headless sdl ) gtk? ( zlib )"
-
-RDEPEND="
- sys-libs/readline:0=
- virtual/libintl
- alsa? ( media-libs/alsa-lib )
- ethernet? (
- >=net-libs/libpcap-0.9.8
- >=net-libs/libnet-1.1.2.1:1.1
- )
- ffmpeg? ( media-video/ffmpeg:= )
- flac? ( media-libs/flac )
- gif? ( media-libs/giflib:= )
- gtk? (
- dev-libs/glib:2
- media-libs/fontconfig:1.0
- x11-libs/cairo
- x11-libs/gtk+:3
- x11-libs/pango
- opengl? (
- media-libs/glew:0=
- virtual/opengl
- )
- )
- jpeg? ( virtual/jpeg )
- lame? ( media-sound/lame )
- mpg123? ( media-sound/mpg123 )
- ogg? (
- media-libs/libogg
- media-libs/libvorbis
- )
- parport? ( sys-libs/libieee1284 )
- pci? ( sys-apps/pciutils )
- png? ( media-libs/libpng:0= )
- portaudio? ( media-libs/portaudio )
- pulseaudio? ( media-sound/pulseaudio )
- sdl? ( media-libs/libsdl2[video] )
- zlib? ( sys-libs/zlib )
-"
-
-DEPEND="
- ${RDEPEND}
- x11-base/xorg-proto
-"
-
-BDEPEND="
- app-arch/unzip
- app-text/dos2unix
- dev-embedded/xa
- dev-lang/perl
- sys-apps/texinfo
- sys-devel/flex
- sys-devel/gettext
- virtual/pkgconfig
- virtual/yacc
- doc? ( virtual/texi2dvi )
- gtk? ( x11-misc/xdg-utils )
-"
-
-S="${WORKDIR}/${MY_P}"
-ECONF_SOURCE="${S}"
-
-PATCHES=(
- "${FILESDIR}"/vice-pkg-config-${PV}.patch
-)
-
-src_prepare() {
- default
-
- # Delete some bundled libraries.
- rm -r src/lib/lib{ffmpeg,lame,x264} || die
-
- local DIR
- for DIR in src/resid src/resid-dtv .; do
- pushd "${DIR}" || die
- AT_NO_RECURSIVE=1 eautoreconf
- popd || die
- done
-
- # Strip the predefined C(XX)FLAGS.
- sed -i -r 's:(VICE_C(XX)?FLAGS=)"[^$]+":\1:' configure || die
-}
-
-src_configure() {
- MULTIBUILD_VARIANTS=(
- $(usev gtk)
- $(usev headless)
- $(usev sdl)
- )
-
- multibuild_foreach_variant run_in_build_dir multibuild_src_configure
-}
-
-multibuild_enable() {
- if [[ ${MULTIBUILD_VARIANT} == $1 ]]; then
- printf -- "--enable-%s\n" "$2"
- else
- printf -- "--disable-%s\n" "$2"
- fi
-}
-
-multibuild_src_configure() {
- # Some dependencies lack configure options so prevent them becoming
- # automagic by using configure cache variables.
- use pci || export ac_cv_header_pci_pci_h=no
-
- # Ensure we use giflib, not ungif.
- export ac_cv_lib_ungif_EGifPutLine=no
-
- # Append ".variant" to x* programs if building multiple variants.
- if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then
- xform="/^x/s/\$/.${MULTIBUILD_VARIANT}/"
- else
- unset xform
- fi
-
- econf \
- --program-transform-name="${xform}" \
- --disable-arch \
- $(use_enable debug) \
- $(use_enable debug debug-gtk3ui) \
- $(use_enable ffmpeg external-ffmpeg) \
- $(multibuild_enable headless headlessui) \
- --enable-html-docs \
- $(use_enable ethernet) \
- $(use_enable opengl hwscale) \
- $(use_enable ipv6) \
- $(use_enable lame) \
- $(use_enable parport libieee1284) \
- $(multibuild_enable gtk native-gtk3ui) \
- $(use_enable doc pdf-docs) \
- $(use_enable portaudio) \
- --disable-sdlui \
- $(multibuild_enable sdl sdlui2) \
- --disable-shared-ffmpeg \
- --disable-static-ffmpeg \
- $(multibuild_enable gtk desktop-files) \
- $(use_with alsa) \
- $(use_with gif) \
- $(use_with jpeg) \
- $(use_with oss) \
- $(use_with png) \
- $(use_with pulseaudio pulse) \
- $(use_with zlib) \
- $(use_with mpg123) \
- $(use_with ogg vorbis) \
- $(use_with flac)
-}
-
-src_compile() {
- multibuild_foreach_variant run_in_build_dir emake
-}
-
-src_install() {
- # Get xdg-desktop-menu to play nicely while doing the install.
- dodir /etc/xdg/menus /usr/share/{applications,desktop-directories}
- XDG_UTILS_INSTALL_MODE=system \
- XDG_DATA_DIRS="${ED}"/usr/share \
- XDG_CONFIG_DIRS="${ED}"/etc/xdg \
- multibuild_foreach_variant run_in_build_dir default
- rm -f "${ED}"/usr/share/applications/*.cache || die
- dodoc FEEDBACK
-
- # Delete the bundled fonts. These could be packaged separately but
- # they're only for the HTML documentation.
- rm -r "${ED}"/usr/share/doc/${PF}/html/fonts/ || die
-}