summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-08-04 08:53:53 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-08-04 08:53:53 +0100
commite3872864be25f7421015bef2732fa57c0c9fb726 (patch)
tree9cb29a544215119b5c5538e37211b994ce1c87ae /app-emulation
parent480486b52ea64765faf696c88b2c6a26a5a454d4 (diff)
gentoo resync : 04.08.2018
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/Manifest.gzbin19839 -> 19841 bytes
-rw-r--r--app-emulation/buildah/Manifest2
-rw-r--r--app-emulation/buildah/buildah-1.2.ebuild56
-rw-r--r--app-emulation/cadvisor/Manifest2
-rw-r--r--app-emulation/cadvisor/cadvisor-0.30.2.ebuild43
-rw-r--r--app-emulation/containerd/Manifest4
-rw-r--r--app-emulation/containerd/containerd-1.1.1.ebuild2
-rw-r--r--app-emulation/containerd/containerd-1.1.2.ebuild2
-rw-r--r--app-emulation/ganeti-instance-debootstrap/Manifest2
-rw-r--r--app-emulation/ganeti-instance-debootstrap/ganeti-instance-debootstrap-0.12.ebuild34
-rw-r--r--app-emulation/img/Manifest6
-rw-r--r--app-emulation/img/img-0.4.7.ebuild32
-rw-r--r--app-emulation/img/img-0.4.8.ebuild (renamed from app-emulation/img/img-0.4.6.ebuild)2
-rw-r--r--app-emulation/kompose/Manifest2
-rw-r--r--app-emulation/kompose/kompose-1.16.0.ebuild30
-rw-r--r--app-emulation/libvirt/Manifest2
-rw-r--r--app-emulation/libvirt/libvirt-9999.ebuild4
-rw-r--r--app-emulation/lxc-templates/Manifest2
-rw-r--r--app-emulation/lxc-templates/lxc-templates-3.0.1.ebuild2
-rw-r--r--app-emulation/lxc/Manifest5
-rw-r--r--app-emulation/lxc/files/lxc_at.service12
-rw-r--r--app-emulation/lxc/lxc-3.0.0.ebuild170
-rw-r--r--app-emulation/lxc/lxc-3.0.1.ebuild2
-rw-r--r--app-emulation/lxd/Manifest4
-rw-r--r--app-emulation/lxd/lxd-3.2.ebuild2
-rw-r--r--app-emulation/lxd/lxd-3.3.ebuild183
-rw-r--r--app-emulation/qemu/Manifest2
-rw-r--r--app-emulation/qemu/files/qemu-2.12.0-aarch64-simd-fix.patch36
-rw-r--r--app-emulation/qemu/qemu-2.12.0-r4.ebuild819
-rw-r--r--app-emulation/vagrant/Manifest2
-rw-r--r--app-emulation/vagrant/vagrant-2.1.2-r1.ebuild6
-rw-r--r--app-emulation/virtualbox-additions/Manifest2
-rw-r--r--app-emulation/virtualbox-additions/virtualbox-additions-5.2.14.ebuild2
-rw-r--r--app-emulation/virtualbox-bin/Manifest2
-rw-r--r--app-emulation/virtualbox-bin/virtualbox-bin-5.2.14.123301.ebuild2
-rw-r--r--app-emulation/virtualbox-extpack-oracle/Manifest2
-rw-r--r--app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.14.123301.ebuild2
-rw-r--r--app-emulation/virtualbox-guest-additions/Manifest2
-rw-r--r--app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.14.ebuild2
-rw-r--r--app-emulation/virtualbox-modules/Manifest2
-rw-r--r--app-emulation/virtualbox-modules/virtualbox-modules-5.2.14.ebuild2
-rw-r--r--app-emulation/virtualbox/Manifest2
-rw-r--r--app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild2
-rw-r--r--app-emulation/wine-any/Manifest3
-rw-r--r--app-emulation/wine-any/wine-any-3.13-r1.ebuild640
-rw-r--r--app-emulation/wine-any/wine-any-9999.ebuild2
-rw-r--r--app-emulation/wine-d3d9/Manifest3
-rw-r--r--app-emulation/wine-d3d9/wine-d3d9-3.13-r1.ebuild574
-rw-r--r--app-emulation/wine-d3d9/wine-d3d9-9999.ebuild2
-rw-r--r--app-emulation/wine-mono/Manifest2
-rw-r--r--app-emulation/wine-mono/wine-mono-4.7.3.ebuild21
-rw-r--r--app-emulation/wine-staging/Manifest3
-rw-r--r--app-emulation/wine-staging/wine-staging-3.13-r1.ebuild611
-rw-r--r--app-emulation/wine-staging/wine-staging-9999.ebuild2
-rw-r--r--app-emulation/wine-vanilla/Manifest3
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-3.13-r1.ebuild531
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-9999.ebuild2
57 files changed, 3602 insertions, 293 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index d4834c971d0a..fa7be5b31104 100644
--- a/app-emulation/Manifest.gz
+++ b/app-emulation/Manifest.gz
Binary files differ
diff --git a/app-emulation/buildah/Manifest b/app-emulation/buildah/Manifest
index 87b0c2bb15b6..6f9187f6cec2 100644
--- a/app-emulation/buildah/Manifest
+++ b/app-emulation/buildah/Manifest
@@ -1,3 +1,5 @@
DIST buildah-1.1.tar.gz 4253820 BLAKE2B ae30a677a2f569d87da0ab85732078912598cf25f7b22ad25540f5d89797983a8549eef1bc8d151d4e0be078b97e024df145bb882bdd8443becb07774bfb5875 SHA512 9957590d7413436195307746682496616fd2350b832242f33fb4cb07c1144addae445eeff062f403d26a68329f1153468489032bc9bbcf870839c760a720ef95
+DIST buildah-1.2.tar.gz 4403310 BLAKE2B df3a1d12a41e9d585d3191103140fc232a2c247283996f394bd151f61615057b15d934e165be47794465c30217c32b3e6b53fbf4d2ef5a2f3349840dadad8171 SHA512 0aac0a80c3c50f0171199e549c0321ce1a756ca838dd9d92b0b0d58bd6b4e212390642c8a4a2aea794616292058624ab0c8707d2ea0cdcbcc555b387df611dc2
EBUILD buildah-1.1.ebuild 1388 BLAKE2B 8dd9609a8d7c8e2f132e7f0d07b311c05fb0a364cd9c63d3f68c065e40bfe4776c3b1650463064ff96b40dc64ebaec9c87c6ed346705f371925822b2d097a7db SHA512 fb2c0381296021c4e4e60649532413b154c2a5e28fcc91fa3998e8be1e845d0c5f215bb17b0397441df63fd5bfea7d72b9f281ec891cf11b1bd309b2e52d8bcb
+EBUILD buildah-1.2.ebuild 1407 BLAKE2B b57e8bf75b9db19b56b8a9f4bda2cf0c9347a2919b41c22194b17a88880ea98b7e3e75f00bdc4bea61b314ad90d511c64732fe7dd0f37409b9cc727a394f2ca3 SHA512 3a69febb77c2a22d93e5bf868db42b498b5d464e73182916f4754fabe7e55f91033cfc302c025ac45519f559f48f32524daad04e0ee89ded3b964d6481035f90
MISC metadata.xml 433 BLAKE2B 5b06389433033a1cf28f5fcae5dd41f4ebe0582d9537e8e163fad82046a66477a6ac3ed26ea63e60ea392919afcd3f0f45ae8ddabefd3a518707d5adff04e9d6 SHA512 3ab67ceda6ca0c8bd10f8868172d9686c8eeaa856760453be1c3ba907abb734ba37f5e9885547a16f69c67aa8d96e576de1ddf3208c08f4d44c2d90b081c74a6
diff --git a/app-emulation/buildah/buildah-1.2.ebuild b/app-emulation/buildah/buildah-1.2.ebuild
new file mode 100644
index 000000000000..437d140179f6
--- /dev/null
+++ b/app-emulation/buildah/buildah-1.2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit bash-completion-r1 golang-vcs-snapshot
+
+KEYWORDS="~amd64"
+DESCRIPTION="A tool that facilitates building OCI images"
+HOMEPAGE="https://github.com/projectatomic/buildah"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="ostree selinux"
+EGO_PN="${HOMEPAGE#*//}"
+EGIT_COMMIT="v${PV}"
+GIT_COMMIT="be87762"
+SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+RDEPEND="app-crypt/gpgme:=
+ app-emulation/skopeo
+ dev-libs/libgpg-error:=
+ dev-libs/libassuan:=
+ sys-fs/lvm2:=
+ sys-libs/libseccomp:=
+ selinux? ( sys-libs/libselinux:= )"
+DEPEND="${RDEPEND}"
+RESTRICT="test"
+REQUIRED_USE="!selinux? ( !ostree )"
+S="${WORKDIR}/${P}/src/${EGO_PN}"
+
+src_prepare() {
+ default
+ sed -e 's|^\(GIT_COMMIT := \).*|\1'${GIT_COMMIT}'|' -i Makefile || die
+
+ [[ -f ostree_tag.sh ]] || die
+ use ostree || { echo -e "#!/bin/sh\necho containers_image_ostree_stub" > \
+ ostree_tag.sh || die; }
+
+ [[ -f selinux_tag.sh ]] || die
+ use selinux || { echo -e "#!/bin/sh\ntrue" > \
+ selinux_tag.sh || die; }
+}
+
+src_compile() {
+ GOPATH="${WORKDIR}/${P}" emake all
+}
+
+src_install() {
+ dodoc CHANGELOG.md CONTRIBUTING.md README.md troubleshooting.md
+ doman docs/*.1
+ dodoc -r docs/tutorials
+ dobin ${PN} imgtype
+ dobashcomp contrib/completions/bash/buildah
+}
+
+src_test() {
+ GOPATH="${WORKDIR}/${P}" emake test-unit
+}
diff --git a/app-emulation/cadvisor/Manifest b/app-emulation/cadvisor/Manifest
index 6a06e4d5b824..46ab012a03cc 100644
--- a/app-emulation/cadvisor/Manifest
+++ b/app-emulation/cadvisor/Manifest
@@ -1,6 +1,8 @@
AUX cadvisor.initd 555 BLAKE2B eaea61c2f974f9cfd97244243581d20da2f0312b4772f732193a2e3cededa3807ddfebcb417086c4d6d61257ce209019766b01f11b68eb0225cd131c90d4bf34 SHA512 c38d258b2416070076a51354f0b78be42809c571064a2b4098482137130b63c731fe8c97f9d8295170302b04d6bd5b5313c682594a36787f66193dc3d4f67429
DIST cadvisor-0.28.3.tar.gz 4110487 BLAKE2B d6b9d6de67e5672a3ba57ea0c28f38e2e96ec43910f8f5bbbe17b377ccbadf026d4418928234149e9ad3936f4c0871d7c371dda2bea49111735a33520154b2d3 SHA512 da111d74bfa3485c42a03a027ccbf833886e561f3244a081ad5439f7a714767cf4666c43c17b0b976089ea40916089aaa2c6070ec4aefc19798a1d5325e005e4
DIST cadvisor-0.29.1.tar.gz 4152413 BLAKE2B 7eca61553f98a27b9d42f81618b67ebec2003c047557ea2bb749d0d36545c9c5ed76b67f8558ba335f396f16b6c496271875dd68b0d9f3554f92e20a63cc0cf5 SHA512 ce3a937607be2725388434cecb23ea8417bf3ddbd662cedcf128f090d52cc96c052dc016eeab32c34d3338fbb5b56091ee62720c32fb3313a5d41a556bc0b575
+DIST cadvisor-0.30.2.tar.gz 4126305 BLAKE2B c0ded9a4e4d9f2942b2ae92dbc8037a4e6310686f82ff256dabdc6acc966b684621e213702ac97aac1648bd4dfcc6f757ce0c3a100b6830caa9d72e442a419c4 SHA512 415e89879c768d236dba1ad8a470b416406f53fc29d9654c011bf511b507c531e0be073c43110bba9c46f284a9235f76b743959f3363dcdc9d76a5631da530e2
EBUILD cadvisor-0.28.3-r1.ebuild 1067 BLAKE2B abc96e7260ef9e215c4c9343484b4247d8d492537103e25c12dc890a0bc707eb2a1509f860aac3c1228548c8d0f7e91ff25d2441805be6ba0564bed95ce1f8b2 SHA512 c995afee18eef221f57339d58588a3ae98a659e83da0079b84175b98e36cf2e512d216e78e4b72ed0498497dfd5955438130a2eb9694b1fa2cccfdbcb2afd92d
EBUILD cadvisor-0.29.1.ebuild 1067 BLAKE2B 83487dadf84efd4ff521d7918e73ad3bafd3ffb8cb5ef8a85d5d9bcf9420e8058b6ea590be27becd4f6757de97237eef90658d470b912f1d1b96b0ad4584dc71 SHA512 587fa4ca9c97602f9e4a40c01c98ee9b5bd3226d4acd2b1ce69f79700a57d5a0b87ee0ac2f13892521038c824ef2add7e35babb5d39addde60e069b16c0d84dd
+EBUILD cadvisor-0.30.2.ebuild 1067 BLAKE2B 57f0ef43b289b9002a2df0c774fca3d75c7e52a0ae24ec66412808595050a9329a9751bf7953be15de6173577bb8c280ceac00307963833acf69657fd0dc5adb SHA512 fb3993d343c2181cae6c1f85c6a4f411c607e2ac5bcd50ad48da209f8ced9be9d576ef1b8287174d26b0c981f99458a9929d0bcfcedb7c23da3ebb9d9580450a
MISC metadata.xml 325 BLAKE2B 3a83be7d0ee504a5ef4b25d8826101878da8bac2228afbe0598ec0aef7435d69ed6d754b88453336fd84a1ef38ab1646eb890bfbff1e8549836aa12c7d497f4b SHA512 d083dae5366eaea34ba9697c49a4399e822000a19b11cffffe82e08f4a331eb0f4672c8271ac342cebb79a66c1a245e41a17ff1d40ecbad2354940bfa14c1b06
diff --git a/app-emulation/cadvisor/cadvisor-0.30.2.ebuild b/app-emulation/cadvisor/cadvisor-0.30.2.ebuild
new file mode 100644
index 000000000000..8ab87087b4f9
--- /dev/null
+++ b/app-emulation/cadvisor/cadvisor-0.30.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+EGO_PN="github.com/google/cadvisor"
+
+inherit user golang-build golang-vcs-snapshot
+SRC_URI="https://${EGO_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+COMMIT="de723a0"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Analyzes resource usage and performance characteristics of running containers"
+HOMEPAGE="https://github.com/google/cadvisor"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /dev/null ${PN}
+}
+
+src_prepare() {
+ sed -i -e "/go get/d" src/${EGO_PN}/build/assets.sh || die
+ sed -i -e "s/git describe.*/echo ${PV} )/"\
+ -e "s/git rev-parse --short HEAD.*/echo ${COMMIT} )/"\
+ src/${EGO_PN}/build/build.sh || die
+ default
+}
+
+src_compile() {
+ pushd "src/${EGO_PN}"
+ GO_FLAGS="-v -work -x" VERBOSE="true" GOPATH="${S}:$(get_golibdir_gopath)" emake build
+ popd || die
+}
+
+src_install() {
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ dobin src/${EGO_PN}/${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-emulation/containerd/Manifest b/app-emulation/containerd/Manifest
index ec2ca93f6adf..f72b94711743 100644
--- a/app-emulation/containerd/Manifest
+++ b/app-emulation/containerd/Manifest
@@ -3,7 +3,7 @@ DIST containerd-1.0.3.tar.gz 3776722 BLAKE2B 31e9f2e56b23d09341e4cdd546198233517
DIST containerd-1.1.1.tar.gz 5123253 BLAKE2B e3e14311f4b444531b9b5d22ad7babd3fe9e7f4bf540c98153ebfc7445c34dad9c1268863e90a383bdab8630fc6576d1425e3e6a7f37e25fe6fb392aac389e2f SHA512 429070dbe0b486f8bbf5411c037e020f50fd008741091d6db1c13a0b526b2b4d0b22bb458401dd2ed142dc34e9bdcbd1ea30eabba39f11a50c294b94ce9867bd
DIST containerd-1.1.2.tar.gz 5124208 BLAKE2B d989519d6bef4e12d1fa04aa00bfee223e94676a90525304d4357f4caf46326b4d2b897b885e9e137fe01ce66b93bc92fb7da7bd2b5dd5019edda5bb0bbc6d0a SHA512 fe4121a43e72a354cd87577b5227f2c2e0d54674244001e6fdb695da78873b3fd3f46b6bda6bbd0c8793b33f50e0d725cb356bb75b789a273c862bbe7d4f719c
EBUILD containerd-1.0.3.ebuild 1238 BLAKE2B 57722c15880f5484d32e4ab7247210ff96588b1f66537c10cac26e08da553eb636995e0db4959847795542c8354ee1d6a32dfc074bb97ae6496f53aad72cca07 SHA512 55a5317e985b95878e31b2b28907bff8a10b35ae90cc3c83e24534f1d0f33aeccdf321b1bdf34ecc0450853218476015a546b6191817d7747567d573a80aa2cc
-EBUILD containerd-1.1.1.ebuild 1289 BLAKE2B e5ace69d6c9a0cd9271ae86da50bd75a224c2cc6c5d04b5dfee43cee92f4fa3084337978a409408c4dc447ea86964e4ec22868bffaae547bbd0ea3dec6b4299f SHA512 9ea0297903f3317aff7de788300920b3a30a77c892c6942f2a2e99e22da8b3aad25af24db398f890e760c0c707eb1acad9caa8a158d140064a8c5fff6e2826e7
-EBUILD containerd-1.1.2.ebuild 1443 BLAKE2B d89b48bc2afd30e2a194f4eb9a1d62c517638f32c5c944b8ab9b06b08455476afb0d935daeb5c452c19490daecce7e52c5cb0f2eac7a3ccadc209cba0daab437 SHA512 f635fd95faf1651974cca042a2c7183de014f22bcfc29359c55e3d50648efa53ff6ee47214042e3e84917dc7bdf7c5dbd4ddcb03dc189a0fd36e88ec020c5cda
+EBUILD containerd-1.1.1.ebuild 1296 BLAKE2B 19ac8685f774a4ccafbe0433a11b15a2b31c270af9b199a6f543789f93403f1715ac021d24f68e2a7278fab25065900ba02c3efca92e18aa44589d54667d6571 SHA512 f37c5cacabd3f6713af25a9343cb532ba6f73ec842d5d7cbe600bed510a4e11e3c7b27541666af6542dda2be658129c144929c4d2e7a0d8824e308983b4a0a66
+EBUILD containerd-1.1.2.ebuild 1450 BLAKE2B 0174e508f81a91dea17e850be32381ac4da751afef576d87edace87416553d833cbc231fd00f49f92348e2ff23a745c4daa26bf32fa6a552ffe323b4185c7139 SHA512 d51bb4e28649c9d0de1ada72e8b6089fd1a7e28620fb3d79941ca826bb8ee7eb2850c75c0e08be412dd4cf0300614763e9d3290774bcd940ff8b46b1c624e2d9
EBUILD containerd-9999.ebuild 965 BLAKE2B b671ff0dd3c5b8c72f2d713c04926047a304b7eec201051b5051a4ce49550176683a934d0b03350d5302fdff242e8e11f31b3db0b3962b73bcac85a0ed1a116d SHA512 b2acd6bd1c237a1058cec02875877d82e2e8c568bf3143cca020c64e13a0649975e3adcdb68540216e8ce1bcdbc7141eda8476c1c01ee2ca313120eca2850012
MISC metadata.xml 1088 BLAKE2B c4002c4c1278d979180f2bb2819f5485f0d415b09e85f83e14969842b16ce93970743d2df77f2b72f9d1e7f253f1dfacc7dbdba6aa872c4f866df48cc3b723f7 SHA512 edd35f07b6ebb489442c514d078831409fca1be2e3da7e77bf8ee3e7f422e288f68373cbb59f83fadc6c707476d7909fe64563ae48a4ea972041c0d2a3aecda3
diff --git a/app-emulation/containerd/containerd-1.1.1.ebuild b/app-emulation/containerd/containerd-1.1.1.ebuild
index d3c39d6cfab5..0dc6845f4ea2 100644
--- a/app-emulation/containerd/containerd-1.1.1.ebuild
+++ b/app-emulation/containerd/containerd-1.1.1.ebuild
@@ -13,7 +13,7 @@ else
EGIT_COMMIT="v${MY_PV}"
CONTAINERD_COMMIT="d64c661f1d51c48782c9cec8fda7604785f93587"
SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~ppc64"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
inherit golang-vcs-snapshot
fi
diff --git a/app-emulation/containerd/containerd-1.1.2.ebuild b/app-emulation/containerd/containerd-1.1.2.ebuild
index 2aebd40c4137..4bd98d13a3b3 100644
--- a/app-emulation/containerd/containerd-1.1.2.ebuild
+++ b/app-emulation/containerd/containerd-1.1.2.ebuild
@@ -13,7 +13,7 @@ else
EGIT_COMMIT="v${MY_PV}"
CONTAINERD_COMMIT="468a545b9edcd5932818eb9de8e72413e616e86e"
SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~ppc64"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
inherit golang-vcs-snapshot
fi
diff --git a/app-emulation/ganeti-instance-debootstrap/Manifest b/app-emulation/ganeti-instance-debootstrap/Manifest
index 610f882bd759..716461053f5f 100644
--- a/app-emulation/ganeti-instance-debootstrap/Manifest
+++ b/app-emulation/ganeti-instance-debootstrap/Manifest
@@ -1,7 +1,5 @@
DIST ganeti-instance-debootstrap-0.11.tar.gz 67946 BLAKE2B 0dbf3d16ae4058f0093adcd0a33c473719cf6de267dbc4e99e3326a2885d57693e2d0408b1079681056be88c7db23ab168e38f38d4051e8847d3b552fa42d4a1 SHA512 d39ae29b49e3e0e25e9052ee5201d5aeeedfa229cc0b8674ea01a26b1b615b262c1464ca16b5268884a0fa28981e5126eec084d7bb9298a4b405574925b85b4e
-DIST ganeti-instance-debootstrap-0.12.tar.gz 69835 BLAKE2B 096bd1534a41de21cb26883397f1f07db2e9ea5991cfea05d8c4e44344659d642fded54ed90e350b1db3225385badd350f88c5137e9c035d5ee7fa24bd7098c2 SHA512 5f1813510071addca9bee5e36f7b34a5cbd06f53db8222f6345cb788af8d686aeb94d11ec098eb63b8e11ded18a03c233dd99237f2db9190894bab6189353ab5
DIST ganeti-instance-debootstrap-0.16.tar.gz 23020 BLAKE2B 8e96597ee94e5806de78ade571f5287e68c5442a91fb8ef3f6e2dbb95301e036fa79225b3c8a2517b05ff14eba0fb541c792556218d0f9a9346f1ebe524a6b38 SHA512 43197d034d719b81ea8737ea60763d43bf71bc9b15b0fbee60bd42e5b0c0f3821805986d4f564db91207a83c2396e87fe081180eec3a5da77d18f2d510fbff1f
EBUILD ganeti-instance-debootstrap-0.11.ebuild 754 BLAKE2B b2127379cb20e6a727a9ddd04c5f233ddcf1dc61184b580edbb82955f8b2943ef4f134eb8b5fe43c024b23b8dbefd1a9f3642fbf24f6c14f27c9953408cdd100 SHA512 8b7567e8ca01eb60cac1052ea9aa1f2decff3c7f051846ac94fa7de986fc28e30ab788f1b6973dc3c5ff3b8d58cc0560a473f46947f7d152df888d6b0f21ca27
-EBUILD ganeti-instance-debootstrap-0.12.ebuild 756 BLAKE2B 2bad6ddd56879f8c16c439f57ca956decf925e28e65e025a2b03af7eb230bb292dafc23acbee4df1309a27efe898ac22b0092f47fc180ca7692a865e8851880f SHA512 c7501faf82959a41f3d1bde365d41f53a9b23852ea93f3c11768ab3b97b3908870e6aa7ea6b2212c6f287b624ac30ba308a1aa72536192131985335f1ea5142e
EBUILD ganeti-instance-debootstrap-0.16.ebuild 846 BLAKE2B 1958a53d66b67c49c2534e775cbefbeff8ce5ff43d8a3f5cd11ece43c9b2636b776b6e6e41178dc676ce7d38e13b09128f2fe8ea01940bb1efff8d27d903d7b0 SHA512 49a465b86bc87209fa0e55c6ad21541476a8b4a6f28b03c905ae9339f72de06109b7d389cfe92e811eda69ddf136efe92c3e7b2e1e9acc129b82b7ec1c090111
MISC metadata.xml 693 BLAKE2B 8e67678f49377a1e982361b80d67e2af5b4a093996d7416e1ac98925ee3cd9f3a79fcd23f9146df831c55b6aa9aa8ed4e7c5e735d9fd191b48406b256757d340 SHA512 5cc8e1aa819d16acfd1645a8f4921343e931423af0e4e6414d92599d3d9a0ea301b1549a767b9c768cb7f35d9bf580657ddf25d1165ccf59cdda54e0099fbcb3
diff --git a/app-emulation/ganeti-instance-debootstrap/ganeti-instance-debootstrap-0.12.ebuild b/app-emulation/ganeti-instance-debootstrap/ganeti-instance-debootstrap-0.12.ebuild
deleted file mode 100644
index 8d6740a836aa..000000000000
--- a/app-emulation/ganeti-instance-debootstrap/ganeti-instance-debootstrap-0.12.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=2
-
-inherit eutils
-
-DESCRIPTION="Scripts to build Ganeti VMs with debootstrap"
-HOMEPAGE="http://www.ganeti.org/"
-SRC_URI="https://ganeti.googlecode.com/files/ganeti-instance-debootstrap-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="app-arch/dpkg
- app-arch/dump
- app-emulation/ganeti
- dev-util/debootstrap
- >=sys-apps/coreutils-6.10-r1
- sys-apps/util-linux
- sys-fs/e2fsprogs"
-
-src_configure() {
- econf --docdir=/usr/share/doc/${P} || die "econf failed"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die "install failed"
- insinto /etc/ganeti/instance-debootstrap/hooks
- doins examples/hooks/*
-}
diff --git a/app-emulation/img/Manifest b/app-emulation/img/Manifest
index e75537b3c387..59d5a9eec63b 100644
--- a/app-emulation/img/Manifest
+++ b/app-emulation/img/Manifest
@@ -1,5 +1,3 @@
-DIST img-0.4.6.tar.gz 5635103 BLAKE2B 88e0ae3bdc0b9e1784d4d67635d119084a5e9dbe258b55da10f549b97f2d566f312226687bef0d28ad1ae3b13c764a44071bfe10ec0a189ad4bcf0bc8c83df5f SHA512 7f75d66237fe5ccf5923774e1d40ef04d9447f3e7de6641167679a1bf5b6305880a046e664fa7adb93dc4bd28e9f0e1ee790ecf2a225aa98b0202e47b8d01987
-DIST img-0.4.7.tar.gz 5642840 BLAKE2B 0cff71ad2e3ee7e7a21273bd7171a1cafb51b932a55981081bcd809f62c463e8a58d739ed5e7e46355a596650e272a90b848eb6c1818e948e6512cb07ac5fc5e SHA512 23e059537baedf20c17724f972db2fa2b81677bf7d62ce3f78cabde9984f10923f4fe56d3f02252f578b15e06112066c5ea7e6b41d61554bcafc618cca85d014
-EBUILD img-0.4.6.ebuild 921 BLAKE2B a0fc0c56c0bc10a929fa4932d1095f8d6e3f1af6bd65125eb85f8011fefdcc5e89aa12ba0755ea75b562cfe3f23c60d42ed1b7e094dddefc487ecd3e34baee71 SHA512 78ee9d32a0493d3d1bd8bd4611d81a25dfc69502a56e1b4ec5000d0f8c3356dd8f72569866ed74e75959834801a24536465316b34180905b693e5353a15c7cc9
-EBUILD img-0.4.7.ebuild 921 BLAKE2B 5993ad25c6e4aeec106c4919eae7748bafabb977151953c2f66944b282f70f327dd716916d4a4e6243463119ddef8c409d8837bcc04fa755215392a505087100 SHA512 e7a44443f989aade1b86db9fb7114b843cc3323b218fcd2f813354d8e79c7b21462d84cf3ee32b9269e82026bc51d59d0bf3f24eb80e97d778c598fd419cc9dd
+DIST img-0.4.8.tar.gz 5587652 BLAKE2B 5b74ff24e6f36674b66b3f87abe928a9d8c8361835eb61cb04ddfce6bfc7cb7b8e6e1f41d61d9f75c09c3646d0d697074882e1f7b87259b60d7c53303718e325 SHA512 fb5b97c4794798dc2dba5d4c9493da9708a55a9e5e7b2259585409c4e7973fecd362132dabb81c72f20b61956c5a8bc67b58db49c22e7ce56eaec784bbb51ca5
+EBUILD img-0.4.8.ebuild 921 BLAKE2B 050b449fa9c34e4171573810ccb204ae2eba7e0ad9a50da5e3c0673f0b9c74b81e611d9a6e07506b560e4570fc2ee5ffc7455d95ba071ab6e23aef9abdf413cf SHA512 9871ad935ed3382eddc90a3955ce68462a6e34a0f8c4299fec30ff0791924c7bd6ab75e02767afd36a2283aa705636d7c28683fea53b1ecc19352319ac0792a1
MISC metadata.xml 326 BLAKE2B bade1307a8d5bd0a9945fbb417b8506b7aaa4b66d5a502e18af1f7b008e325b5514e0fc018932396aba1116b5a3c11b12b89c43d925f7e97c8a75efcd9ef4f3d SHA512 a75050de970991e19edf7b7560ca46d27c959b9a91dcf87d40d31532c85c7af24ab29743d7295c731a3153774d33b03afa5c92470ca0c0c572d50c6ec65e5692
diff --git a/app-emulation/img/img-0.4.7.ebuild b/app-emulation/img/img-0.4.7.ebuild
deleted file mode 100644
index 2b843d8ad2b3..000000000000
--- a/app-emulation/img/img-0.4.7.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit golang-build golang-vcs-snapshot
-
-EGO_PN="github.com/genuinetools/img"
-EGIT_COMMIT="v${PV}"
-GIT_COMMIT="e76c25809631da79d0071966901675f9acb16edb"
-ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64"
-
-DESCRIPTION="Standalone daemon-less unprivileged Dockerfile and OCI container image builder"
-HOMEPAGE="https://github.com/genuinetools/img"
-SRC_URI="${ARCHIVE_URI}"
-LICENSE="MIT"
-SLOT="0"
-IUSE="seccomp"
-
-RESTRICT="test"
-
-src_compile() {
- local TAGS=$(usex seccomp 'seccomp' '')
- pushd src/${EGO_PN} || die
- GOPATH="${S}" go build -tags "noembed ${TAGS}" -v -ldflags "-X ${EGO_PN}/version.GITCOMMIT=${GIT_COMMIT} -X ${EGO_PN}/version.VERSION=${PV}" -o "${S}"/bin/img . || die
- popd || die
-}
-
-src_install() {
- dobin bin/*
- dodoc -r src/${EGO_PN}/README.md
-}
diff --git a/app-emulation/img/img-0.4.6.ebuild b/app-emulation/img/img-0.4.8.ebuild
index 00b9e9fe0d17..8c9d8c988abb 100644
--- a/app-emulation/img/img-0.4.6.ebuild
+++ b/app-emulation/img/img-0.4.8.ebuild
@@ -6,7 +6,7 @@ inherit golang-build golang-vcs-snapshot
EGO_PN="github.com/genuinetools/img"
EGIT_COMMIT="v${PV}"
-GIT_COMMIT="9c9f6f6fa351ddf9afd6a39cdb1a44ab290dd6a3"
+GIT_COMMIT="88f96d872335cf2746380fa87ba62fd5b63540b4"
ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
diff --git a/app-emulation/kompose/Manifest b/app-emulation/kompose/Manifest
index 38fb6960e616..59e76deb361d 100644
--- a/app-emulation/kompose/Manifest
+++ b/app-emulation/kompose/Manifest
@@ -1,7 +1,9 @@
DIST kompose-1.13.0.tar.gz 5238799 BLAKE2B 8f51d9c4b162104636578b5b6b044060997d7c8fbd8a58fdf42d8db1e5fbce51cbfd2e010e84e80707462edc29603da3a6ac729f95873f2c84b7a43baeac8284 SHA512 6ec870f03762bde138e2c22e9b8a85a1e974897f3857f096e1fcd56bd402d1f3379936752b075ee57497e5d4f1c7c7d0c82b09d6c4e90860cc04aee434123419
DIST kompose-1.14.0.tar.gz 5238716 BLAKE2B 27c054b58d2804fcb37627652d2d48ff377504203f9319c4321fcba08e9c8dd9c41f307ff599de3b65ae9a177370322d63314b70e5cb80edf1ce071eeaf15e24 SHA512 f356f2f38c99f0ca9d8f58a4dfa171ba0c41b3127b66ab887484c3bbc76b66470fbe8f52ca3eeba700b57a86e0ff264066ee92645f71a93bfe77077655f81e97
DIST kompose-1.15.0.tar.gz 5239685 BLAKE2B fed8d978584e6f8006eac44c732476745520d28c83b122613baee24aba71723446c269b6e60197e0eec5f4e3cf481ed38756fb7c2c8840d3f885b9a790529f73 SHA512 55296b1227324e77c5febbb9a3701c8548049e8fb22b97c86e6a936024b00dcc55b7bc101469783656fdc05fdd72f8ba2282b3619e75e0f04ebe0d2446c1e245
+DIST kompose-1.16.0.tar.gz 5241785 BLAKE2B 9958b200827b70c94a499981880cc7a5d8137354205d96657d854aefebbd877e332ac3047f59e13b62dd6b9a9235d1ed83bb8b8de973d59f81906b3f376176a0 SHA512 267601ba51f5cfcbb95b9fbf52bbb99f9c810de8edb301b635a50936d7a714dc8410352ff3a4aa8819de1659a45cbb42caf5e552023cfa594a0eb8e99db57522
EBUILD kompose-1.13.0.ebuild 914 BLAKE2B 3d7a24dac2a68fda2454e96b829dd4b8bfb330939cf136283fa52fe2ee5f9636077c08cc86d1aec9495faf18a99df4659435eaa2a473833858093ee727a7ad33 SHA512 4b245704d29c8ad0fda59264a777133b92b75bdc84813280afff3740cea4f1b53bcea556f0f55548f6cef3e81f0133d9faaed35392ceaec8994450bb96abfb89
EBUILD kompose-1.14.0.ebuild 914 BLAKE2B 0136b088d67eb8856ed41190273942f699d8a1fa5867d763b40e3ad6070dde0ffd5a266bd730dd456ffabfcc335f334f1c0549696aadfefff71326f0c0615dee SHA512 709f2ea7683c4aa2011a1f618f0425eaf96eb99c7f5cd8f7c0ac5bf9451e1f1bae56d6a32fd4f3344c7fc7412b0fe75702494e9c3a2ed542aa6dc273ad88a251
EBUILD kompose-1.15.0.ebuild 914 BLAKE2B 92200964849693ad38399ec431ec8586b0a4f62df0ac2fa6186b925f81e906526a9c54eb1bd9344c7a25e32d528b0a795d577281cafcfc5c1864da90b34279d6 SHA512 82ef8d3fdcc7b80854841e2bd91a77dc76ba076c3e887c46958038e29835fea8981235aa0ed610da79ae3ba05a9f71aa80d7290661007313e9a21ee0e8282709
+EBUILD kompose-1.16.0.ebuild 914 BLAKE2B 135028b699263569332cc9e7e1d9559ac448ddcae5517505bf170a17b591a581b3513eb9d29deda4d103a93b556ddc2bc77f052b80ab4f786f7f4003254f63e6 SHA512 ad339be916fe398edd62cab08a67c47b83eb91cd91603402520609e9e3dc4218d3ed5d206f386cad75c8b0b0b0a63efc13cf1514166b1eacab9b63663a2e6231
MISC metadata.xml 328 BLAKE2B ad1e8cb1083ed13de1f3f341fdbe9bba7ba3ab4364c8c36c9e3b63f63688da6926fc6bebc9f72aada52dfac1a4834b11cb27eee04aaaae484192b8ed74214aa6 SHA512 e2091ec84a909ad6c2453bd832817461e39b7c355c28bd99c19d9e85dc4a621606c34066f596a68585c3762b6b156455ca012495c5c336b9ba929d163b923042
diff --git a/app-emulation/kompose/kompose-1.16.0.ebuild b/app-emulation/kompose/kompose-1.16.0.ebuild
new file mode 100644
index 000000000000..8804d097f4eb
--- /dev/null
+++ b/app-emulation/kompose/kompose-1.16.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit golang-build golang-vcs-snapshot
+
+EGO_PN="github.com/kubernetes/kompose"
+EGIT_COMMIT="v${PV}"
+GIT_COMMIT="0c01309fe899c587e8cb02e9c31196ee66ab5093"
+ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Tool to move from docker-compose to Kubernetes"
+HOMEPAGE="https://github.com/kubernetes/kompose https://kompose.io"
+SRC_URI="${ARCHIVE_URI}"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="hardened"
+
+RESTRICT="test"
+
+src_compile() {
+ export CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')"
+ GOPATH="${S}" go build -v -ldflags="-X github.com/kubernetes/kompose/cmd.GITCOMMIT=${GIT_COMMIT}" -o bin/kompose src/${EGO_PN}/main.go || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc -r src/${EGO_PN}/{docs,{README,RELEASE,ROADMAP,CHANGELOG,CONTRIBUTING}.md}
+}
diff --git a/app-emulation/libvirt/Manifest b/app-emulation/libvirt/Manifest
index 0fb8cc066e16..1d7083d04d9a 100644
--- a/app-emulation/libvirt/Manifest
+++ b/app-emulation/libvirt/Manifest
@@ -19,5 +19,5 @@ DIST libvirt-4.5.0.tar.xz 14743956 BLAKE2B 930852765104b1b22744df0ec4f1c74d89bc0
EBUILD libvirt-4.3.0.ebuild 9634 BLAKE2B 3c3b4e444e212646c214ae782697fc6ce015285974c24c74438e241ed2435921e67f457283a72c114f6c697e9dd3c2ad862e64e33202070e4a3601b6dd51d82e SHA512 c3e74163883e4c97a234b848170a9aea0c29d0af9d06e469e98a5e688874616c05ef68dc43c01c2f7b08463ad90d9b732a317291c1460263ed2e9fb3b97e8409
EBUILD libvirt-4.4.0-r1.ebuild 9523 BLAKE2B 08efe71e6b957c611fd44c67173c103780d47b14f853c1f99fa41c5c90a211e3e48dd57fe9cc13350a364f3da9accb3ab8ba6a52328dfbebc0bfbff201a8f0f3 SHA512 91f42cbf16cf8918182e427d574dbcfaa90698715e725e60a0106b38347df21fa11dffcb3dcbd8cb7de2597e3024c14f8ad27236e9981349cac5bb5005b61187
EBUILD libvirt-4.5.0-r1.ebuild 9582 BLAKE2B d46f83fcc183d0c1e5621dc327f00fc96ad5bbcbb5c748445fb7d662a1be69481c7f7169d81eca3f96f4d6f189be528d35e6657bc7d3ac7afc364b7b74a0a106 SHA512 dbb648d799768d65ed975aed8177272f972a24358ba667d25dad1e06aec5dd9f31afe3006c1c4a399cefeced87a3533bca1ebf494d6ca388c5f4dcef2a1e2c20
-EBUILD libvirt-9999.ebuild 9538 BLAKE2B 6775030c2af741aeae1f6e54d1dcf7cdfe84b57250201f7b19e0554732e1d881b4e32b72dc571826b925c00334464013f821215ca96f4cfcd31d0ed6452a2f65 SHA512 817ad093814fb2810928ef27e98a039f96548e69bf719bd0b4121282e420560df7a4f14459d35a8b37173518aa96cc27249e776a2acac134c400d0e408395c37
+EBUILD libvirt-9999.ebuild 9544 BLAKE2B ac7c45f69d26ca59bbfcc8254f645d52bbbedf629d8c49a24d2a8cf35fec71cf9d947d4476864c2d3fc3c7046699a780cdee050b771ab9ef3084461564fe5b1d SHA512 7d8b0994e94b76efd85290e81f7d8e63a98174287e2a11d0bb5bb0259d76b10d30eed36c00772602270b5fabb0c18be23856de2fbe6d446b22518e599f9e9806
MISC metadata.xml 3766 BLAKE2B 38d8b1dfb815871ca19c35c80ab390a422e1833b6ef09c6691889d5d6c01e25bb9fb5d187231456c443cb22764583312a56ed8e1a772f810b58050752ba9f2de SHA512 10d96f652bdcf32e34ea415a37de0c3c4aae3a716403a0ca73228af640788734119cbf4ade26a450cc3cda81ef6182391a6f590a851a6834d52394b7c81c49ed
diff --git a/app-emulation/libvirt/libvirt-9999.ebuild b/app-emulation/libvirt/libvirt-9999.ebuild
index 7ffce4b394e3..3743f3a0b723 100644
--- a/app-emulation/libvirt/libvirt-9999.ebuild
+++ b/app-emulation/libvirt/libvirt-9999.ebuild
@@ -89,7 +89,7 @@ RDEPEND="
policykit? ( >=sys-auth/polkit-0.9 )
qemu? (
>=app-emulation/qemu-0.13.0
- dev-libs/yajl
+ dev-libs/jansson
)
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl )
@@ -263,7 +263,7 @@ src_configure() {
$(use_with phyp)
$(use_with policykit polkit)
$(use_with qemu)
- $(use_with qemu yajl)
+ $(use_with qemu jansson)
$(use_with rbd storage-rbd)
$(use_with sasl)
$(use_with selinux)
diff --git a/app-emulation/lxc-templates/Manifest b/app-emulation/lxc-templates/Manifest
index ddeccde351a8..e1923cae974c 100644
--- a/app-emulation/lxc-templates/Manifest
+++ b/app-emulation/lxc-templates/Manifest
@@ -1,4 +1,4 @@
AUX lxc-templates-3.0.1-no-cache-dir.patch 241 BLAKE2B ba9fc4fe3d663384a64600977de1c5aba413e876e6ca43464b5f5986d21d5e01729c82eb1e6ea03b087644611b9fc7bf083436e467bc69e2b3779020ca287984 SHA512 504721074d9aa4c1d71e5fb5f59c8179cbb0247b6d56d7622a68a7c55a5fdd5fa25cb92199e5400457f1bf2e4bc8e2d91d5169fb02180688c7bbca655881bdb5
DIST lxc-templates-3.0.1.tar.gz 256074 BLAKE2B 8a5dab2d69fbc29e0246a0853690726c07d24e0fe6d4e761d8ec8b4559cdf285a82e17c8f4d2a6bf2355896c667000d4341511b3c5f1805a55849b4812eb7efe SHA512 cae47b670654dc6c143827d196f0477c5354cb6d81ae4028192622fb73912e8bb3b62a0a68786e9212885bb52b593c6e742cfbfefb70ec33260d599e5d5c8290
-EBUILD lxc-templates-3.0.1.ebuild 516 BLAKE2B 33bfbce343805b0a4ff0a8f154d57a89027ed83047fd27fed299c3155908a4943b89ab18ae9c84e294d8249a752b8f1bd0c5db8efa4d5de42c1913267602bab8 SHA512 9d2d40937d4a87937322538fe0a99f3f9e4364203b318c503cc0bdfaf9cff9810c7c89a54950d2b83744d49e9b795c0ad22d375e8e17ee4a15b54be095d51bc4
+EBUILD lxc-templates-3.0.1.ebuild 513 BLAKE2B 15749a19b3c24df787d3d4eb8d7f6ebf902cff1c22fe0ee4bed0eafb8b5eb53860b5ff20d54e9775ef659f4ad46e160fccbd95bc2331a3f8b167c6332585aed0 SHA512 428a61af6aba82737427a699275522f992f6aba3eb870719e298f1b7b4a24842a21a33af2b7dfbd2a0e05f78b8316224f907ddaedfa2984d0117a67f0e064025
MISC metadata.xml 446 BLAKE2B d0b14eed14b0882b35ddb982ba432f6a5a3b63fdf8bb1c926c9d0db7b9cf7757c78cccca1244cd039d0db7e52c360e99c3fc0a2e915653543d5416054fec62af SHA512 473e0a28d72d39643f91e17910481331b1732b07e4cd74bac024c8a5a933e40a838948d5a8b0bef808332eac751422f7f88ec91501f63b779763606b71696acc
diff --git a/app-emulation/lxc-templates/lxc-templates-3.0.1.ebuild b/app-emulation/lxc-templates/lxc-templates-3.0.1.ebuild
index 528f6b711d1d..df31caace625 100644
--- a/app-emulation/lxc-templates/lxc-templates-3.0.1.ebuild
+++ b/app-emulation/lxc-templates/lxc-templates-3.0.1.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Old style template scripts for LXC"
HOMEPAGE="https://linuxcontainers.org/"
SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
LICENSE="LGPL-3"
SLOT="0"
diff --git a/app-emulation/lxc/Manifest b/app-emulation/lxc/Manifest
index b9ce1e275878..fa83fd403c2a 100644
--- a/app-emulation/lxc/Manifest
+++ b/app-emulation/lxc/Manifest
@@ -4,12 +4,9 @@ AUX lxc-2.1.1-cgroups-enable-container-without-CAP_SYS_ADMIN.patch 5145 BLAKE2B
AUX lxc-2.1.1-fix-cgroup2-detection.patch 856 BLAKE2B e877e8a968d059c2034a2b5c23946241a6b45172f893e313bff30a7f798e3b1440e5a1e8ee277816308fb509901b52584a44021a156a91671e299964dd69b1bd SHA512 eb0fc8dee5a59d1641e8b3024bf79be2273aa15131fd7eaee98d80585c39ddb93d8d9cfe98c7f866ab2461fe8c6c7e3c038ec1a1263a6f9b02ed323a267b87f2
AUX lxc-3.0.0-bash-completion.patch 915 BLAKE2B 8bb879e391cec349d211b47d321c64ea091c8475ac9a8c4adfb45918c044f6c49d9b9bce546082907d696f697baf0870893c4427abeafa496db89f99190cd091 SHA512 2f3728fcf5e88eecc1ae05bf038ef83baa375194c5bef0d0ef68feaf4d8092cdd8efef6b3c27207c4abd28b085f087af517242c65747b47d0a8fa840f6b9d279
AUX lxc.initd.7 3468 BLAKE2B 37b0d044594f1c66631f991315e49c4ceea4640bf6c459e6bba713fb76ef9a8ee1fcbc49da68bd0f1e2929cf9904e0113a3b321166f7c3d360fcebeab6665e5a SHA512 c5841cff7d8b58d4283a26719e8a5db1be2c4add0f31065393b863b6626460180d91632106bc50cde4d3e74ae46a57d581fa1f01140dfa95522aba12277f9eaa
-AUX lxc_at.service 232 BLAKE2B 12dd7142330cbaeda69d5f4c6ef14dae6ab435d2668e4a3279d8d54dac05f54a877afdc1705aa5a18db1855d6bcf68518f86431aa5105058598e97604fe00133 SHA512 4c3bab4f2cc9aea8b0753dcaf2fd7ed5f1cd7d97d286d6204b2fc17505b6edaac2f536bbda5c1466856311d0e93d75de91dec51e9b0f665d67afedbf40c19170
AUX lxc_at.service.4 265 BLAKE2B 4454528e69a5c986c23c0c4ccc10ebe03a0650e47cd30208355d2f4a70a4cb46392473eccddd736988f1b72954948876601aaf99977d8e6014a7c774a416160f SHA512 d61e7103e90e6ffb3202533e7d7555d8c02b943f06ec6c0d673713c1c0ede58641312c65d6dd6a15907c1171522e6148c2313d7b11acbd85d59fe65758cd52b3
DIST lxc-2.1.1.tar.gz 1378640 BLAKE2B 5fca516540a886729434579ff99acf3baa06977fa0e0b6f24dbf15094626335fc073597d308276e3dd20e27ceabf1477cc8e99d1fd24cf50b9aed2720b887b69 SHA512 2989d57acddfe091adcf8031721c3c9a2f8eff5476bd6155366b76ea7511e0f6120e669276e056e3963863e0f0acf3b095d44c36fa6652e67c197671f28cbdd4
-DIST lxc-3.0.0.tar.gz 1233316 BLAKE2B ba726a07f48b1d32366012c8d885a853e33f88d8c45c910b061d9deecf472d940f7d45a1e742c8194517ba3231e1875a49bbf303b2c3fd2c9ece33b941670bb7 SHA512 21372e6fe4d38e2cf54707fab4133137793deff1dd500ed7ed02c03bbaa809de56c7490971594cddbdcb2b96f0c03ab5dfb43a8582a584598a12c5943b7ca490
DIST lxc-3.0.1.tar.gz 1239920 BLAKE2B 7be668c11d7211540fe7e2fb6318d38eac0d8d493914f4705d097fca4c004a8d2191609d02bd9e1d9204c3c0b9ea937084d3f9050fc841f6d777768067af3d19 SHA512 f51b0844f61f64d4efc530454eae1fa499f7f1b908bd3b40d7031e7f311a402893a7504bddbc53f2ef9da2b3154d1b047fc4d876b99f0d487d7c79de64eea505
EBUILD lxc-2.1.1.ebuild 6763 BLAKE2B a4d6e09451ebb728147e1ebeca98292422472040eea4a7664e8659d2d00774933b16e264b2af3a0ad6a90750586369a02cc6149959bb3a218a528f4f8f0aa773 SHA512 e5838b9a63d096284905d3f000c268a6c398835c2054c2d0bb92e3e6ed2d0b3aaeb2a417d2c04b8182ced7447a47fa9e1340e89f92d0fd6dd48238544684a727
-EBUILD lxc-3.0.0.ebuild 5546 BLAKE2B dbb5955ff8aa1a3de063548c6447f90d4f050ab08fe252662d5eaf29a64336660d40108aab32bcdf19d250d118c7ea39e7b3b567aea19aaa6ca942711874eb52 SHA512 395ae0dff135e503d20cdeb65782b67510c1fed00e21d88b00ebfd76457ae7506dd66d77ce7ad142b32c57de7faa074a807f486cdd6519197cec3c22093272ae
-EBUILD lxc-3.0.1.ebuild 5139 BLAKE2B 680faa18d1cc190114b57463edbef7a6d74a3656c5a8189212b39245243299dbd64832163de7505629c77914b7526b6bee8cae16a9ad22e8bad27d040b6a8abb SHA512 75ac0fc7c240581991ea7b27b3aa3bc31f08861cca2cd715e4c44397451c1df2ebf969133fd3b805e9a71cf756b2bd6101cfd96070708543be611719d5b1f271
+EBUILD lxc-3.0.1.ebuild 5136 BLAKE2B 3e439cf609c87cbd2d88e0d9c646b64998f072a7cc2c04b0e5f5537d0297d9f0d66ff39e184d03a8828fec5f32ea959b76bb5b4c9471d546102bceee46577329 SHA512 1f02404f7d8ad22bb7517d0ed25987ce1ef73034736f6a1d2f7ff2b804d1be8ae712545575725736a9ac4019e316629b43bed0e21ebe60e5ed094334840c67fa
MISC metadata.xml 670 BLAKE2B 1318dc9a17178a46375589bcc92685e1a49146cd7384e36d996e675875a55c8402e2a037546dadd2ce1399557b77366f03179d8ef51cdbe106e9b27c3f3dbff9 SHA512 c1d3d15e52953b8dcd280c90d73467258cdf41d6f6505f231c0c031f40b0a467147798651bb327b498dd4ac694783441896584941a0c05d34e45af8dc9c6db70
diff --git a/app-emulation/lxc/files/lxc_at.service b/app-emulation/lxc/files/lxc_at.service
deleted file mode 100644
index 1ef449775306..000000000000
--- a/app-emulation/lxc/files/lxc_at.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Linux Container %I
-After=network.target
-
-[Service]
-Restart=always
-ExecStart=/usr/sbin/lxc-start -n %i
-ExecReload=/usr/sbin/lxc-restart -n %i
-ExecStop=/usr/sbin/lxc-stop -n %i
-
-[Install]
-WantedBy=multi-user.target
diff --git a/app-emulation/lxc/lxc-3.0.0.ebuild b/app-emulation/lxc/lxc-3.0.0.ebuild
deleted file mode 100644
index 4122c2e8599d..000000000000
--- a/app-emulation/lxc/lxc-3.0.0.ebuild
+++ /dev/null
@@ -1,170 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools bash-completion-r1 linux-info flag-o-matic systemd readme.gentoo-r1 pam
-
-DESCRIPTION="LinuX Containers userspace utilities"
-HOMEPAGE="https://linuxcontainers.org/"
-SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-LICENSE="LGPL-3"
-SLOT="0"
-IUSE="examples pam seccomp selinux"
-
-RDEPEND="
- net-libs/gnutls
- sys-libs/libcap
- pam? ( virtual/pam )
- seccomp? ( sys-libs/libseccomp )
- selinux? ( sys-libs/libselinux )"
-
-DEPEND="${RDEPEND}
- >=app-text/docbook-sgml-utils-0.6.14-r2
- >=sys-kernel/linux-headers-3.2"
-
-RDEPEND="${RDEPEND}
- sys-apps/util-linux
- app-misc/pax-utils
- virtual/awk"
-
-CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE
- ~CPUSETS ~CGROUP_CPUACCT
- ~CGROUP_SCHED
-
- ~NAMESPACES
- ~IPC_NS ~USER_NS ~PID_NS
-
- ~NETLINK_DIAG ~PACKET_DIAG
- ~INET_UDP_DIAG ~INET_TCP_DIAG
- ~UNIX_DIAG ~CHECKPOINT_RESTORE
-
- ~CGROUP_FREEZER
- ~UTS_NS ~NET_NS
- ~VETH ~MACVLAN
-
- ~POSIX_MQUEUE
- ~!NETPRIO_CGROUP
-
- ~!GRKERNSEC_CHROOT_MOUNT
- ~!GRKERNSEC_CHROOT_DOUBLE
- ~!GRKERNSEC_CHROOT_PIVOT
- ~!GRKERNSEC_CHROOT_CHMOD
- ~!GRKERNSEC_CHROOT_CAPS
- ~!GRKERNSEC_PROC
- ~!GRKERNSEC_SYSFS_RESTRICT
-"
-
-ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container"
-
-ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
-
-ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
-ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
-
-ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
-ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
-
-ERROR_NETLINK_DIAG="CONFIG_NETLINK_DIAG: needed for lxc-checkpoint"
-ERROR_PACKET_DIAG="CONFIG_PACKET_DIAG: needed for lxc-checkpoint"
-ERROR_INET_UDP_DIAG="CONFIG_INET_UDP_DIAG: needed for lxc-checkpoint"
-ERROR_INET_TCP_DIAG="CONFIG_INET_TCP_DIAG: needed for lxc-checkpoint"
-ERROR_UNIX_DIAG="CONFIG_UNIX_DIAG: needed for lxc-checkpoint"
-ERROR_CHECKPOINT_RESTORE="CONFIG_CHECKPOINT_RESTORE: needed for lxc-checkpoint"
-
-ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
-
-ERROR_NETPRIO_CGROUP="CONFIG_NETPRIO_CGROUP: as of kernel 3.3 and lxc 0.8.0_rc1 this causes LXCs to fail booting."
-
-ERROR_GRKERNSEC_CHROOT_MOUNT="CONFIG_GRKERNSEC_CHROOT_MOUNT: some GRSEC features make LXC unusable see postinst notes"
-ERROR_GRKERNSEC_CHROOT_DOUBLE="CONFIG_GRKERNSEC_CHROOT_DOUBLE: some GRSEC features make LXC unusable see postinst notes"
-ERROR_GRKERNSEC_CHROOT_PIVOT="CONFIG_GRKERNSEC_CHROOT_PIVOT: some GRSEC features make LXC unusable see postinst notes"
-ERROR_GRKERNSEC_CHROOT_CHMOD="CONFIG_GRKERNSEC_CHROOT_CHMOD: some GRSEC features make LXC unusable see postinst notes"
-ERROR_GRKERNSEC_CHROOT_CAPS="CONFIG_GRKERNSEC_CHROOT_CAPS: some GRSEC features make LXC unusable see postinst notes"
-ERROR_GRKERNSEC_PROC="CONFIG_GRKERNSEC_PROC: this GRSEC feature is incompatible with unprivileged containers"
-ERROR_GRKERNSEC_SYSFS_RESTRICT="CONFIG_GRKERNSEC_SYSFS_RESTRICT: this GRSEC feature is incompatible with unprivileged containers"
-
-DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt)
-
-pkg_setup() {
- kernel_is -lt 4 7 && CONFIG_CHECK="${CONFIG_CHECK} ~DEVPTS_MULTIPLE_INSTANCES"
- linux-info_pkg_setup
-}
-
-src_prepare() {
- eapply "${FILESDIR}"/${PN}-3.0.0-bash-completion.patch
- #558854
- eapply "${FILESDIR}"/${PN}-2.0.5-omit-sysconfig.patch
- eapply_user
- eautoreconf
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
-
- # I am not sure about the --with-rootfs-path
- # /var/lib/lxc is probably more appropriate than
- # /usr/lib/lxc.
- # Note by holgersson: Why is apparmor disabled?
-
- # --enable-doc is for manpages which is why we don't link it to a "doc"
- # USE flag. We always want man pages.
- econf \
- --localstatedir=/var \
- --bindir=/usr/bin \
- --sbindir=/usr/bin \
- --with-config-path=/var/lib/lxc \
- --with-rootfs-path=/var/lib/lxc/rootfs \
- --with-distro=gentoo \
- --with-runtime-path=/run \
- --disable-apparmor \
- --disable-werror \
- --enable-doc \
- $(use_enable examples) \
- $(use_enable pam) \
- $(use_with pam pamdir $(getpam_mod_dir)) \
- $(use_enable seccomp) \
- $(use_enable selinux)
-}
-
-src_install() {
- default
-
- mv "${ED}"/usr/share/bash-completion/completions/${PN} "${ED}"/$(get_bashcompdir)/${PN}-start || die
- bashcomp_alias ${PN}-start \
- ${PN}-{attach,cgroup,copy,console,create,destroy,device,execute,freeze,info,monitor,snapshot,stop,unfreeze,wait}
-
- keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
- rmdir "${D}"/var/cache/lxc "${D}"/var/cache || die "rmdir failed"
-
- find "${D}" -name '*.la' -delete
-
- # Gentoo-specific additions!
- newinitd "${FILESDIR}/${PN}.initd.7" ${PN}
-
- # Remember to compare our systemd unit file with the upstream one
- # config/init/systemd/lxc.service.in
- systemd_newunit "${FILESDIR}"/${PN}_at.service.4 "lxc@.service"
-
- DOC_CONTENTS="
- For openrc, there is an init script provided with the package.
- You _should_ only need to symlink /etc/init.d/lxc to
- /etc/init.d/lxc.configname to start the container defined in
- /etc/lxc/configname.conf.
-
- Correspondingly, for systemd a service file lxc@.service is installed.
- Enable and start lxc@configname in order to start the container defined
- in /etc/lxc/configname.conf.
-
- If you want checkpoint/restore functionality, please install criu
- (sys-process/criu)."
- DISABLE_AUTOFORMATTING=true
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/app-emulation/lxc/lxc-3.0.1.ebuild b/app-emulation/lxc/lxc-3.0.1.ebuild
index a13e4267ee57..8c26d2c163c9 100644
--- a/app-emulation/lxc/lxc-3.0.1.ebuild
+++ b/app-emulation/lxc/lxc-3.0.1.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="LinuX Containers userspace utilities"
HOMEPAGE="https://linuxcontainers.org/"
SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
LICENSE="LGPL-3"
SLOT="0"
diff --git a/app-emulation/lxd/Manifest b/app-emulation/lxd/Manifest
index e6f75e1bf3fd..8bdf568e3249 100644
--- a/app-emulation/lxd/Manifest
+++ b/app-emulation/lxd/Manifest
@@ -51,7 +51,9 @@ DIST github.com-syndtr-gocapability-db04d3cc01c8b54962a58ec7e491717d06cfcc16.tar
DIST lxd-2.21.tar.gz 882352 BLAKE2B 80542bcc03c05667ee0207dfbfd2bf41c5a6ef69178aec06ad62fe3521ed012ed9b82c68c0254e0299e8e1dfd274a0622f32bde730480a950ab6ba15ddae5f4b SHA512 9a8ec3a97e4c861a80311dbdecbf5a485c0af85d6ba6b20680ca17e6ac877de3f27cfdcf0a111ba0db2b7c562dfe2f41336b562b7c13350c4543505b3c17357e
DIST lxd-3.1.tar.gz 27979442 BLAKE2B 0b74e3f76a7ab835b042b52b469a6fe11e7077d567e0658d13fab2192fd25d99518d65ba319c981a2e4677319e280cccae26f70ef99e9911264dc028ca5628fd SHA512 61f64d08dd80f7f676f386912f4dfc0d0af38cce0287de7865123b9da667b54ab91d22b76ffe03480e04ae0fbd8dc837d7d519d0e34409377c3d7e6624bf636c
DIST lxd-3.2.tar.gz 28183660 BLAKE2B 9aabc9fd0bd66d3b4e0178448a65ca39c69e4e7a14d01309e0e023501de1c17b2b7887a9da5b84fcfde27db3f521cce3451beace9955232da9bd5e5136bc0043 SHA512 82c37e87d75e328a29b1f2876a24fedec43a253bb72f3ea55fa9cdb928d11947eda723a01e758f90ef77ed4492f86ec6dd5f1f88240d05e771d926dfdc9888fb
+DIST lxd-3.3.tar.gz 28414680 BLAKE2B 7f3eecf400761548935e6e3c81d894379cd667ffbe6d8ef67a7dd3ad4f1c13846f524fcefc4cdc306674fb990706bda0b2c4ef390f320c41561fa86cf610586c SHA512 ed5d792c1080f2be7f48f34051fbfa28d138b4ccb5405edb13cd630776ec34312da491a1881f77dddbe1a121e589b44952e73ce1e61f2cba72243f3b8f4c0177
EBUILD lxd-2.21.ebuild 7883 BLAKE2B f933f15dd551c335bbe7cf95a9dbe35f4b272ff720e7aa080f984705e899e5da47c4e6f0617860896467bcec481a50591f6f3c0f731f1f2ff2df0178aaaf8882 SHA512 27167d7c8a2dc7aa988016cbb90bd3ae272732a709d8938ae3b77ffbacf12b818df27bf1ddaec9c3372403ad1380dcc7b9df6f8bce237742d02fb881b60aa552
EBUILD lxd-3.1.ebuild 5334 BLAKE2B 14511c25eb06a4c72ea07c3f297aaec32c9d1dd78248620c6f8326f1b74fe23bf4b149041ad23381c8d196da2a3872b83da53255c98234263b9de39618bfb739 SHA512 f7e998cbfaa91ce34eda0e1694091a51da236dc5d82e10380f66484c0c1454dd852ad5af605e8280a9f03c30aa35292c88014d9393b5a9a29ce12d24ff1831fb
-EBUILD lxd-3.2.ebuild 5378 BLAKE2B 400bea1de1cd22ab422a89bcbbd7449b7009f0fbf756d1fa578133c7b9c7de3804cc01d725ace16c6063f04fe18816fc28f6eb688437ef1173c70d929ddb882a SHA512 c26e49f6a8e242e5ed3be12a9e4a0f5a68e60471f98c5338460bd4b290093504a5d6afc8535d0989da310cddc48c3d0dfc5c00a417261ca08b7bda7d3fe07511
+EBUILD lxd-3.2.ebuild 5377 BLAKE2B 504f1656d7e12e51651198100973e398ceab70c04fcce54c98e5086f3358c60a87c916130d2ed1423a1578c91a0dcea9aa653c139790c7b754d9d7c70f454867 SHA512 2ae8e8837c1ab9694c3aaf6495252567bdaa866ac6b4b6781e1bb9e7790069ab29855d1280a9cd277c5b09312c3dc81d4c4127bee004848060350bccdf772262
+EBUILD lxd-3.3.ebuild 5443 BLAKE2B 6e73f0272c1415f7f17224bd610644be5489d87c7aee4addb054abf67d0619d848a8160864331afd1b6110480cccfef27b6aa631071539fc704a6ea9f9672394 SHA512 ba13c312f9f0dc9aca75119c1246fd7ceb97a6ffe5fdc95ee3e611ab027efe5e2fc57d0e40f32952e44a15e91a4bc3798a19b142135e31e9a334e6e076a6a030
MISC metadata.xml 966 BLAKE2B ea90426aa76918bdf1d5a90d07ad3626990cce2d7161f104a0793121aecc0430750c0e1df5fe973d1304dd6d1077b98345d489989875d1a83c54185ded58fe60 SHA512 4f95b628aa3467ba6213758bfacdd8d41922307d11c51bee12ad3cdff568ac095a0147976a913bacfa4625cc9e6d5f101c68f1077d7d8acac663c06d4411d1e7
diff --git a/app-emulation/lxd/lxd-3.2.ebuild b/app-emulation/lxd/lxd-3.2.ebuild
index 1f0f3db33a23..473f52df5378 100644
--- a/app-emulation/lxd/lxd-3.2.ebuild
+++ b/app-emulation/lxd/lxd-3.2.ebuild
@@ -8,7 +8,7 @@ HOMEPAGE="https://linuxcontainers.org/lxd/introduction/"
LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="+daemon +ipv6 +dnsmasq nls test"
diff --git a/app-emulation/lxd/lxd-3.3.ebuild b/app-emulation/lxd/lxd-3.3.ebuild
new file mode 100644
index 000000000000..16a412be6a96
--- /dev/null
+++ b/app-emulation/lxd/lxd-3.3.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Fast, dense and secure container management"
+HOMEPAGE="https://linuxcontainers.org/lxd/introduction/"
+
+LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="+daemon +ipv6 +dnsmasq nls test"
+
+inherit bash-completion-r1 linux-info systemd user
+
+SRC_URI="https://linuxcontainers.org/downloads/${PN}/${P}.tar.gz"
+
+DEPEND="
+ >=dev-lang/go-1.9.4
+ dev-libs/protobuf
+ nls? ( sys-devel/gettext )
+ test? (
+ app-misc/jq
+ net-misc/curl
+ sys-devel/gettext
+ )
+"
+
+RDEPEND="
+ daemon? (
+ app-arch/xz-utils
+ >=app-emulation/lxc-2.0.7[seccomp]
+ dnsmasq? (
+ net-dns/dnsmasq[dhcp,ipv6?]
+ )
+ net-misc/rsync[xattr]
+ sys-apps/iproute2[ipv6?]
+ sys-fs/squashfs-tools
+ virtual/acl
+ )
+"
+
+CONFIG_CHECK="
+ ~BRIDGE
+ ~DUMMY
+ ~IP6_NF_NAT
+ ~IP6_NF_TARGET_MASQUERADE
+ ~IPV6
+ ~IP_NF_NAT
+ ~IP_NF_TARGET_MASQUERADE
+ ~MACVLAN
+ ~NETFILTER_XT_MATCH_COMMENT
+ ~NET_IPGRE
+ ~NET_IPGRE_DEMUX
+ ~NET_IPIP
+ ~NF_NAT_MASQUERADE_IPV4
+ ~NF_NAT_MASQUERADE_IPV6
+ ~VXLAN
+"
+
+ERROR_BRIDGE="BRIDGE: needed for network commands"
+ERROR_DUMMY="DUMMY: needed for network commands"
+ERROR_IP6_NF_NAT="IP6_NF_NAT: needed for network commands"
+ERROR_IP6_NF_TARGET_MASQUERADE="IP6_NF_TARGET_MASQUERADE: needed for network commands"
+ERROR_IPV6="IPV6: needed for network commands"
+ERROR_IP_NF_NAT="IP_NF_NAT: needed for network commands"
+ERROR_IP_NF_TARGET_MASQUERADE="IP_NF_TARGET_MASQUERADE: needed for network commands"
+ERROR_MACVLAN="MACVLAN: needed for network commands"
+ERROR_NETFILTER_XT_MATCH_COMMENT="NETFILTER_XT_MATCH_COMMENT: needed for network commands"
+ERROR_NET_IPGRE="NET_IPGRE: needed for network commands"
+ERROR_NET_IPGRE_DEMUX="NET_IPGRE_DEMUX: needed for network commands"
+ERROR_NET_IPIP="NET_IPIP: needed for network commands"
+ERROR_NF_NAT_MASQUERADE_IPV4="NF_NAT_MASQUERADE_IPV4: needed for network commands"
+ERROR_NF_NAT_MASQUERADE_IPV6="NF_NAT_MASQUERADE_IPV6: needed for network commands"
+ERROR_VXLAN="VXLAN: needed for network commands"
+
+EGO_PN="github.com/lxc/lxd"
+
+PATCHES=(
+ "${FILESDIR}/ja-translation-newline.patch" # https://github.com/lxc/lxd/pull/4572
+ "${FILESDIR}/de-translation-newline.patch"
+)
+
+# LXD tarball is packaged with a nice "dist" folder containing all dependencies
+# that were vendored by upstream at release time. That saves us the trouble of
+# vendoring the dependencies ourselves. This is why there was this drastic drop
+# in ebuild complexity compared to pre 3.0.0-r2 ebuilds.
+src_compile() {
+ export GOPATH="${S}/dist"
+
+ # We don't use the Makefile here because it builds targets with the
+ # assumption that `pwd` is in a deep gopath namespace, which we're not.
+ # It's simpler to manually call "go install" than patching the Makefile.
+ #
+ # ABOUT "-tags libsqlite3": we used to link to the system's sqlite3 library
+ # but since v3.0.0, LXD depends on github.com/CanonicalLtd/dqlite which
+ # at the time of this writing, depends on patched version of sqlite with
+ # replication capabilities added. We don't have that patch in dev-db/sqlite.
+ # Therefore, we let LXD use its own private copy of sqlite.
+ go install -v -x ${EGO_PN}/lxc || die "Failed to build the client"
+
+ if use daemon; then
+ go install -v -x ${EGO_PN}/fuidshift || die "Failed to build fuidshift"
+ go install -v -x ${EGO_PN}/lxd || die "Failed to build the daemon"
+ fi
+
+ use nls && emake build-mo
+}
+
+src_test() {
+ if use daemon; then
+ export GOPATH="${S}/dist"
+ # This is mostly a copy/paste from the Makefile's "check" rule, but
+ # patching the Makefile to work in a non "fully-qualified" go namespace
+ # was more complicated than this modest copy/paste.
+ # Also: sorry, for now a network connection is needed to run tests.
+ # Will properly bundle test dependencies later.
+ go get -v -x github.com/rogpeppe/godeps
+ go get -v -x github.com/remyoudompheng/go-misc/deadcode
+ go get -v -x github.com/golang/lint/golint
+ go test -v ${EGO_PN}/lxd
+ else
+ einfo "No tests to run for client-only builds"
+ fi
+}
+
+src_install() {
+ local bindir="dist/bin"
+ dobin ${bindir}/lxc
+ if use daemon; then
+ dosbin ${bindir}/lxd
+ dobin ${bindir}/fuidshift
+ fi
+
+ if use nls; then
+ domo po/*.mo
+ fi
+
+ if use daemon; then
+ newinitd "${FILESDIR}"/${PN}.initd lxd
+ newconfd "${FILESDIR}"/${PN}.confd.1 lxd
+
+ systemd_newunit "${FILESDIR}"/${PN}.service ${PN}.service
+ fi
+
+ newbashcomp scripts/bash/lxd-client lxc
+
+ dodoc AUTHORS README.md doc/*
+}
+
+pkg_postinst() {
+ einfo
+ einfo "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
+ einfo "including a Quick Start."
+
+ # The messaging below only applies to daemon installs
+ use daemon || return 0
+
+ # The control socket will be owned by (and writeable by) this group.
+ enewgroup lxd
+
+ # Ubuntu also defines an lxd user but it appears unused (the daemon
+ # must run as root)
+
+ einfo
+ einfo "Though not strictly required, some features are enabled at run-time"
+ einfo "when the relevant helper programs are detected:"
+ einfo "- sys-apps/apparmor"
+ einfo "- sys-fs/btrfs-progs"
+ einfo "- sys-fs/lvm2"
+ einfo "- sys-fs/lxcfs"
+ einfo "- sys-fs/zfs"
+ einfo "- sys-process/criu"
+ einfo
+ einfo "Since these features can't be disabled at build-time they are"
+ einfo "not USE-conditional."
+ einfo
+ einfo "Be sure to add your local user to the lxd group."
+ einfo
+ einfo "Networks with bridge.mode=fan are unsupported due to requiring"
+ einfo "a patched kernel and iproute2."
+}
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest
index 043e112dd12e..7eda6ddb3e02 100644
--- a/app-emulation/qemu/Manifest
+++ b/app-emulation/qemu/Manifest
@@ -2,6 +2,7 @@ AUX 65-kvm.rules-r1 120 BLAKE2B a0d95f60e48f80e5f00b3a7ef3b520861fb781868844aff7
AUX bridge.conf 454 BLAKE2B 2f3e828a001ac77de96c8a11e3fc462149e1c16972c28b8367659c2896b7c3dd147e978ef6401b280fc3474bc959bee50f65d7525bee8bc04c19bc657ba7e22f SHA512 a907ee86b81a1b61033bb7621ded65112504131ef7b698c53e4014b958ee6fc79e66f63069015a01e41362cb70a7d0ed26dd9a03033cf776f4846f0e1f8f1533
AUX qemu-2.11.0-glibc-2.27.patch 1481 BLAKE2B 513430c8c3d10d3e9ec2d16bf95013fc639266a73d7e9d1d285a9daa62cb2567212b167d07235c4d6df31c63d48a4924d180bbcc568f60dc2f042f7087dd7eb0 SHA512 b3fe1d933f43e4a545e3aa6bce024d38b4431fa854cfa2342888875d0735a0a3171a00da2032238da9dc3b7a1ad4fc456a8d5b469394e2de1eea79b0957cbb7c
AUX qemu-2.11.1-capstone_include_path.patch 264 BLAKE2B 955b498c0ea2657ee4c9d0054a32693ac2096232ae8358848fa8518bcb87c1cce5d9145ccf560320ba53d60ae8ed85f6be801b72707a964b247e8f1f1844f9cd SHA512 ebf1d6450b7c499a8e490b19f87a3b4f8bbc50ea44edaac8c12b0993947513a8b616af2d4cf6240c8e265824a44463f917333ffa510e6ffedf379921e28fc3ab
+AUX qemu-2.12.0-aarch64-simd-fix.patch 1362 BLAKE2B 4899fe348b602f0f9544af5cd40fc0409007230e2fc44816c4d046ac8c35bcb71c9bdf5e8dc5e148601d6d9e2a9014fa07d7ad17942ab945c4b676290f1370fa SHA512 7b1dca7c49a140f3347c1bffa0ff64ada9b5ee47a1bc23ebde78171547f49d1e2a6dab0abd6068bb6788ce388d514e524f6d9f77c2fe213c6c9461f61f6e157f
AUX qemu-2.5.0-cflags.patch 410 BLAKE2B 1d072b5dd00369bb565b30c2aa7047de92b441bf103faadb5dd42daf36ad1c5e39c5bdfdc2b5f2bb0bfec2ea1255b4182caeb467614a487f5cfcb341109a4884 SHA512 0194d28de08b4e51c5bd1c9a2cc7965ba7f66dfddb8fd91de3da93677e6cf2d38ad3270f69aaea8a20cf2533c2980018d6e0fed711be2806fe2053fba7c081f3
AUX qemu-2.5.0-sysmacros.patch 333 BLAKE2B 8c38410c6ea789f669d89c7321cdc9e5c734bb3db332272657302977241f157b04fb07e27bda4f67ee560e39a7494344ad79616835e6ff483927f2b72ed9c597 SHA512 329632c5bff846ca3ffcdb4bc94ae62f17c6bdbb566f9bec0784357c943523e8ca7773790b83a9617734cab3b003baa3d636cbd08f7385810a63b0fa0383c4f0
AUX qemu-binfmt.initd.head 1445 BLAKE2B 5762a38034331a13e308f6fc8cb979e38ae01a053691726edfc1d99e1bca1698919ad564a593e018308f1fd00e2f887865fd9db157d8de83941295bc47c1db6c SHA512 a735268ae9ac84d8f2f2893bf018ee6de33231fa94a823bd8502b529bb456635c1ab5cf9b440df5ede8e414291f8bf45fc53898c2f3939c50d5ec4ffa554396a
@@ -12,5 +13,6 @@ DIST qemu-2.12.0-patches-r5.tar.xz 5536 BLAKE2B 751a0fd7a6dd2433542dbfc8a1c9726f
DIST qemu-2.12.0.tar.bz2 41196232 BLAKE2B f258e570558249ea647c3571908f90b8bacdcef9a1814009b98571cf0e96406194d44aa041fd0a97c9b673f39a9eaae8d873824745509778a6784cd85f8398b0 SHA512 91d829f44c431e4c1cd335f3efea5afff9da62d832b0296a92417463ea0826d09ce226c2ea8ac167fe7b99b6bb976c7cb1357aaf17735ee57af6602161e46346
EBUILD qemu-2.11.1-r2.ebuild 23622 BLAKE2B cd2249a4ae34c67ccadfce510e9def671a147d0eb921db68b02d0a5d13ff45548cdbfcca1dd086be1436bed77ddec3c9215139ed361c485fbd5e87de7177177d SHA512 af5677ff0fd37b77305b41f963767cceff6d4dd5074eefc2239447607e64587464f3fb989c3cee7110c65c1aecabd29b47ab48bfee25705007a9edffac533af5
EBUILD qemu-2.12.0-r3.ebuild 24023 BLAKE2B d97adb9b86903c3b4a414c7f4a61bae69e79882d1a2723c2bedc0d874cd6b465a780cb002373e5dfbb9be3642e6c9b9b6e90b3b3aa08e9d36671e16938b23a34 SHA512 e662d443129692f3abc55a90911fbe40c2bafbe8d1679803b580b51a3b450353eae692948bce1f94cef329c44f02579f483c57d31e472d87773b76fe80ef67ff
+EBUILD qemu-2.12.0-r4.ebuild 24076 BLAKE2B e4f21949247f7f2abc076bca7f049132dca38ed13911ed991440b5c5127f87729cc9d6791e09fdd492487a7e9ad26416dce5924873d8830e79af6dd6ced92f57 SHA512 7c6cfa3ff4f844762d956b142f23354235969efb7ef4f8bf4aa24cb1002fe393f5b3ef6a1472cc2f90497b3aa70c60ce8f4fcbbeae8f9c59cc7a52e0bc2a3530
EBUILD qemu-9999.ebuild 23895 BLAKE2B b1745b293f65ebe366c82794e7fd106a5270ee25321220d7f3fd85eff9743cc3c13118fd06c017c7f349029016a5c617550a85ab69b1013ecd277db0b03b9153 SHA512 93a979ac66de5761a1a98313a7cda346afc904315eb2f503e9efb21c2179a8ac6c53ce60d3a2b8017610925f96ef18e7d4f7c080ffdbb69f95ca0d2cfbbfb2b5
MISC metadata.xml 4014 BLAKE2B e3ef3f3da149b756119932e7796ba2daf3327a841776dc64476730f33345e6a10abd45d8a52a45f1881f052d43902c0a6de0f3df02219ab9f8b5ce1fec12b635 SHA512 fd582b65e3eecacef5447b787fb465565fceb84a7fda9cd7079e5ae5b2ef4183ff7cd3187a5e751900bea6877fdda8e8357c792eef5431e76c4d672eb631481b
diff --git a/app-emulation/qemu/files/qemu-2.12.0-aarch64-simd-fix.patch b/app-emulation/qemu/files/qemu-2.12.0-aarch64-simd-fix.patch
new file mode 100644
index 000000000000..c8b8a02354cc
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.12.0-aarch64-simd-fix.patch
@@ -0,0 +1,36 @@
+From: Richard Henderson <richard.henderson@linaro.org>
+To: qemu-devel@nongnu.org
+Cc: Jason@zx2c4.com,
+ qemu-stable@nongnu.org
+Subject: [PATCH for-3.0] tcg/i386: Mark xmm registers call-clobbered
+Date: Sun, 22 Jul 2018 18:29:41 -0700
+Message-Id: <20180723012941.16920-1-richard.henderson@linaro.org>
+X-Mailer: git-send-email 2.17.1
+
+When host vector registers and operations were introduced, I failed
+to mark the registers call clobbered as required by the ABI.
+
+Fixes: 770c2fc7bb7
+Cc: qemu-stable@nongnu.org
+Reported-by: Jason A. Donenfeld <Jason@zx2c4.com>
+Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
+---
+ tcg/i386/tcg-target.inc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tcg/i386/tcg-target.inc.c b/tcg/i386/tcg-target.inc.c
+index e87b0d445e..a91e4f1313 100644
+--- a/tcg/i386/tcg-target.inc.c
++++ b/tcg/i386/tcg-target.inc.c
+@@ -3532,7 +3532,7 @@ static void tcg_target_init(TCGContext *s)
+ tcg_target_available_regs[TCG_TYPE_V256] = ALL_VECTOR_REGS;
+ }
+
+- tcg_target_call_clobber_regs = 0;
++ tcg_target_call_clobber_regs = ALL_VECTOR_REGS;
+ tcg_regset_set_reg(tcg_target_call_clobber_regs, TCG_REG_EAX);
+ tcg_regset_set_reg(tcg_target_call_clobber_regs, TCG_REG_EDX);
+ tcg_regset_set_reg(tcg_target_call_clobber_regs, TCG_REG_ECX);
+--
+2.17.1
+
diff --git a/app-emulation/qemu/qemu-2.12.0-r4.ebuild b/app-emulation/qemu/qemu-2.12.0-r4.ebuild
new file mode 100644
index 000000000000..6ece9e3bd0a2
--- /dev/null
+++ b/app-emulation/qemu/qemu-2.12.0-r4.ebuild
@@ -0,0 +1,819 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+PYTHON_REQ_USE="ncurses,readline"
+
+PLOCALES="bg de_DE fr_FR hu it tr zh_CN"
+
+FIRMWARE_ABI_VERSION="2.11.1-r50"
+
+inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
+ user udev fcaps readme.gentoo-r1 pax-utils l10n
+
+if [[ ${PV} = *9999* ]]; then
+ EGIT_REPO_URI="git://git.qemu.org/qemu.git"
+ inherit git-r3
+ SRC_URI=""
+else
+ SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2"
+ KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
+
+ # Gentoo specific patchsets:
+ SRC_URI+=" https://dev.gentoo.org/~tamiko/distfiles/${P}-patches-r5.tar.xz"
+fi
+
+DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
+HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
+
+LICENSE="GPL-2 LGPL-2 BSD-2"
+SLOT="0"
+IUSE="accessibility +aio alsa bluetooth bzip2 capstone +caps +curl debug
+ +fdt glusterfs gnutls gtk gtk2 infiniband iscsi +jpeg kernel_linux
+ kernel_FreeBSD lzo ncurses nfs nls numa opengl +pin-upstream-blobs +png
+ pulseaudio python rbd sasl +seccomp sdl sdl2 selinux smartcard snappy
+ spice ssh static static-user systemtap tci test usb usbredir vde
+ +vhost-net virgl virtfs +vnc vte xattr xen xfs"
+
+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}
+ lm32 moxie ppcemb tricore unicore32"
+IUSE_USER_TARGETS="${COMMON_TARGETS}
+ aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus
+ tilegx"
+
+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}"
+
+# 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}
+ gtk2? ( gtk )
+ qemu_softmmu_targets_arm? ( fdt )
+ qemu_softmmu_targets_microblaze? ( fdt )
+ qemu_softmmu_targets_mips64el? ( fdt )
+ qemu_softmmu_targets_ppc? ( fdt )
+ qemu_softmmu_targets_ppc64? ( fdt )
+ sdl2? ( sdl )
+ static? ( static-user !alsa !bluetooth !gtk !gtk2 !opengl !pulseaudio !snappy )
+ virtfs? ( xattr )
+ vte? ( gtk )"
+
+# 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/libxkbcommon[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 )
+ bluetooth? ( net-wireless/bluez )
+ 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.4.2[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? (
+ gtk2? (
+ x11-libs/gtk+:2
+ vte? ( x11-libs/vte:0 )
+ )
+ !gtk2? (
+ 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 )
+ jpeg? ( virtual/jpeg:0=[static-libs(+)] )
+ lzo? ( dev-libs/lzo:2[static-libs(+)] )
+ ncurses? (
+ sys-libs/ncurses:0=[unicode]
+ sys-libs/ncurses:0=[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[static-libs(+)] )
+ sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
+ sdl? (
+ !sdl2? (
+ media-libs/libsdl[X]
+ >=media-libs/libsdl-1.2.11[static-libs(+)]
+ )
+ sdl2? (
+ media-libs/libsdl2[X]
+ media-libs/libsdl2[static-libs(+)]
+ )
+ )
+ seccomp? ( >=sys-libs/libseccomp-2.1.0[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/libssh2-1.2.8[static-libs(+)] )
+ 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(+)] )"
+
+X86_FIRMWARE_DEPEND="
+ pin-upstream-blobs? (
+ ~sys-firmware/edk2-ovmf-2017_p20180211[binary]
+ ~sys-firmware/ipxe-1.0.0_p20180211[binary]
+ ~sys-firmware/seabios-1.11.0[binary,seavgabios]
+ ~sys-firmware/sgabios-0.1_pre8[binary]
+ )
+ !pin-upstream-blobs? (
+ sys-firmware/edk2-ovmf
+ sys-firmware/ipxe
+ >=sys-firmware/seabios-1.10.2[seavgabios]
+ sys-firmware/sgabios
+ )"
+PPC64_FIRMWARE_DEPEND="
+ pin-upstream-blobs? (
+ ~sys-firmware/seabios-1.11.0[binary,seavgabios]
+ )
+ !pin-upstream-blobs? (
+ >=sys-firmware/seabios-1.10.2[seavgabios]
+ )
+"
+
+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_ppc64? ( ${PPC64_FIRMWARE_DEPEND} )
+"
+DEPEND="${CDEPEND}
+ dev-lang/perl
+ =dev-lang/python-2*
+ sys-apps/texinfo
+ virtual/pkgconfig
+ kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
+ gtk? ( nls? ( sys-devel/gettext ) )
+ static? (
+ ${ALL_DEPEND}
+ ${SOFTMMU_TOOLS_DEPEND}
+ )
+ static-user? ( ${ALL_DEPEND} )
+ test? (
+ dev-libs/glib[utils]
+ sys-devel/bc
+ )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-qemu )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.5.0-cflags.patch
+ "${FILESDIR}"/${PN}-2.5.0-sysmacros.patch
+ "${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
+ "${FILESDIR}"/${PN}-2.12.0-aarch64-simd-fix.patch
+ "${WORKDIR}"/patches
+)
+
+STRIP_MASK="/usr/share/qemu/palcode-clipper"
+
+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/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 requres 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
+}
+
+pkg_setup() {
+ enewgroup kvm 78
+}
+
+# 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 >/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
+}
+
+handle_locales() {
+ # Make sure locale list is kept up-to-date.
+ local detected sorted
+ detected=$(echo $(cd po && printf '%s\n' *.po | grep -v messages.po | sed 's:.po$::' | sort -u))
+ sorted=$(echo $(printf '%s\n' ${PLOCALES} | sort -u))
+ if [[ ${sorted} != "${detected}" ]] ; then
+ eerror "The ebuild needs to be kept in sync."
+ eerror "PLOCALES: ${sorted}"
+ eerror " po/*.po: ${detected}"
+ die "sync PLOCALES"
+ fi
+
+ # Deal with selective install of locales.
+ if use nls ; then
+ # Delete locales the user does not want. #577814
+ rm_loc() { rm po/$1.po || die; }
+ l10n_for_each_disabled_locale_do rm_loc
+ else
+ # Cheap hack to disable gettext .mo generation.
+ rm -f po/*.po
+ fi
+}
+
+src_prepare() {
+ check_targets IUSE_SOFTMMU_TARGETS softmmu
+ check_targets IUSE_USER_TARGETS linux-user
+
+ # Alter target makefiles to accept CFLAGS set via flag-o
+ sed -i -r \
+ -e 's/^(C|OP_C|HELPER_C)FLAGS=/\1FLAGS+=/' \
+ Makefile Makefile.target || die
+
+ default
+
+ # Fix ld and objcopy being called directly
+ tc-export AR LD OBJCOPY
+
+ # Verbose builds
+ MAKEOPTS+=" V=1"
+
+ # Run after we've applied all patches.
+ handle_locales
+
+ # 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
+ --libdir=/usr/$(get_libdir)
+ --docdir=/usr/share/doc/${PF}/html
+ --disable-bsd-user
+ --disable-guest-agent
+ --disable-strip
+ --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)
+ --enable-docs
+ $(use_enable tci tcg-interpreter)
+ $(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
+ }
+ conf_opts+=(
+ $(conf_notuser accessibility brlapi)
+ $(conf_notuser aio linux-aio)
+ $(conf_notuser bzip2)
+ $(conf_notuser bluetooth bluez)
+ $(conf_notuser capstone)
+ $(conf_notuser caps cap-ng)
+ $(conf_notuser curl)
+ $(conf_notuser fdt)
+ $(conf_notuser glusterfs)
+ $(conf_notuser gnutls)
+ $(conf_notuser gnutls nettle)
+ $(conf_notuser gtk)
+ $(conf_notuser infiniband rdma)
+ $(conf_notuser iscsi libiscsi)
+ $(conf_notuser jpeg vnc-jpeg)
+ $(conf_notuser kernel_linux kvm)
+ $(conf_notuser lzo)
+ $(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_notuser seccomp)
+ $(conf_notuser smartcard)
+ $(conf_notuser snappy)
+ $(conf_notuser spice)
+ $(conf_notuser ssh libssh2)
+ $(conf_notuser usb libusb)
+ $(conf_notuser usbredir usb-redir)
+ $(conf_notuser vde)
+ $(conf_notuser vhost-net)
+ $(conf_notuser virgl virglrenderer)
+ $(conf_notuser virtfs)
+ $(conf_notuser vnc)
+ $(conf_notuser vte)
+ $(conf_notuser xen)
+ $(conf_notuser xen xen-pci-passthrough)
+ $(conf_notuser xfs xfsctl)
+ )
+
+ if [[ ${buildtype} == "user" ]] ; then
+ conf_opts+=( --disable-libxml2 )
+ else
+ conf_opts+=( --enable-libxml2 )
+ fi
+
+ if [[ ! ${buildtype} == "user" ]] ; then
+ # audio options
+ local audio_opts="oss"
+ use alsa && audio_opts="alsa,${audio_opts}"
+ use sdl && audio_opts="sdl,${audio_opts}"
+ use pulseaudio && audio_opts="pa,${audio_opts}"
+ conf_opts+=(
+ --audio-drv-list="${audio_opts}"
+ )
+ use gtk && conf_opts+=( --with-gtkabi=$(usex gtk2 2.0 3.0) )
+ use sdl && conf_opts+=( --with-sdlabi=$(usex sdl2 2.0 1.2) )
+ 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
+
+ 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 -j1 check
+ emake -j1 check-report.html
+ fi
+}
+
+qemu_python_install() {
+ python_domodule "${S}/scripts/qmp/qmp.py"
+
+ 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
+
+ cat <<EOF >>"${out}"
+ if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
+ echo ':${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 ]] && dohtml check-report.html
+
+ if use kernel_linux; then
+ udev_newrules "${FILESDIR}"/65-kvm.rules-r1 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 Changelog MAINTAINERS docs/specs/pci-ids.txt
+ newdoc pc-bios/README README.pc-bios
+
+ 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"
+ # PPC64 loads vgabios-stdvga
+ if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || 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 ! version_is_at_least ${FIRMWARE_ABI_VERSION} ${pv}; then
+ return 0
+ fi
+ done
+ return 1
+}
+
+pkg_postinst() {
+ if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
+ udev_reload
+ fi
+
+ fcaps cap_net_admin /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)"
+}
diff --git a/app-emulation/vagrant/Manifest b/app-emulation/vagrant/Manifest
index f94619a99b4a..12da8bfb2a13 100644
--- a/app-emulation/vagrant/Manifest
+++ b/app-emulation/vagrant/Manifest
@@ -3,6 +3,6 @@ AUX vagrant.in 1872 BLAKE2B 9a5f7f98d1aa0713b2e9777b8d4b5d01f7fc23068c7d920e5117
DIST vagrant-2.1.1.tar.gz 1204711 BLAKE2B 88a6254091104eed702e07a4203a264b883869fb028b8d30fd51ddfc2053aec363683a2e73d1454ce92b705440920d5c80c0f967e4dc110bf425ce17973efccd SHA512 6cc82b4c33b196fce2bc460447afd152e53c3c17b45db5d80958ff631f6747c386b625ff26e3d8830a88b2feca82d550ad1de32e7c7607dffb25960af43092f5
DIST vagrant-2.1.2.tar.gz 1218801 BLAKE2B 742f27ca6c28c9738c09ef61c742be07121b5a804fa401115520633e5840c62c8e879fae078c5532704f6f6f7d7a9081d48e3f7570cfe6e6dd84f8df244a34ae SHA512 d9a2612697842885d23d1a9a452ef9d8b03defa4e6f7a808725ac7c3a87300affcfdd89ee3a42334259601e19f1e56bfd86a5aa7b404eac26bc22dcfd4a57751
EBUILD vagrant-2.1.1.ebuild 2075 BLAKE2B 412016e151348fa62e3f94376a81e7c3420c70ac0dfbe8796314a5e2db27a9929c90087ca4e6ed56ef74bb9895ae7fdedc60ea4d5161ffac5c7727604c2ecd40 SHA512 1da7a6a487a76f98bf41da3f99312c1046ee98f36ce2fa3375d3284378c92feb01ab26539e4676d542f64cc2efe39d8f0f1a736072720c3d6ded73752c0992af
-EBUILD vagrant-2.1.2-r1.ebuild 2085 BLAKE2B b3a07bb29f54786bd9b7393e5deef15b0e15c089809eddd87d09ae68e281aaf39079371e568f09ba6ff517893d0fcb1615cdc2aa8cf05c5ff632c9fda1e64fb6 SHA512 77ed7e9942fad7c94b7fe4d625135da0a82f3372d9344a8ac257542f17fb7c1fc39a06283ffe11fe4dae3c6d51031a97e4b88b6d29cd521c1839591261943bc9
+EBUILD vagrant-2.1.2-r1.ebuild 2357 BLAKE2B 069cdcd2ef93186b0c6c00e75d675f2cdbb62fb43964e8a653237ad5a811221b64409200d624255618398755112d42a7ece2258182deef4205cf96a89ae247ec SHA512 726d646c291ecd830fcbf6b7ca83ab53faac323d5ea1e75e0b32a975034416f407593abe8f5b9690c0784f3903ec75fc61e08b898ba176752f530fb3c871cca6
EBUILD vagrant-2.1.2.ebuild 2075 BLAKE2B 412016e151348fa62e3f94376a81e7c3420c70ac0dfbe8796314a5e2db27a9929c90087ca4e6ed56ef74bb9895ae7fdedc60ea4d5161ffac5c7727604c2ecd40 SHA512 1da7a6a487a76f98bf41da3f99312c1046ee98f36ce2fa3375d3284378c92feb01ab26539e4676d542f64cc2efe39d8f0f1a736072720c3d6ded73752c0992af
MISC metadata.xml 526 BLAKE2B ccdcda8f6095d1efa5a66bd3ef549d1039c719a4aaaa89efa2e776f466e38602f636d0d538a235a29bf0a5ea581bde659d4a77b6b4231da4c51e06913269aaad SHA512 784f97e3a9e96beba6afb232c46e6c42fe318b471125e48926363d9aec430ff4d37d74c82d2ee4efd1e036f89de2fe37415121dbbdd050a56954ba12d666b328
diff --git a/app-emulation/vagrant/vagrant-2.1.2-r1.ebuild b/app-emulation/vagrant/vagrant-2.1.2-r1.ebuild
index c41ac30accbd..77b5794d5670 100644
--- a/app-emulation/vagrant/vagrant-2.1.2-r1.ebuild
+++ b/app-emulation/vagrant/vagrant-2.1.2-r1.ebuild
@@ -41,8 +41,12 @@ ruby_add_rdepend "
<dev-ruby/mime-types-3:*
"
+# upstream specifies rake>=12 but it apparently doesn't need something this
+# recent. Because vagrant builds fine with rake 10 and because stabilizing rake
+# is tricky, we specify a lower dependency requirement here. This way, we'll be
+# able to stabilize vagrant sooner.
ruby_add_bdepend "
- >=dev-ruby/rake-12.0.0
+ >=dev-ruby/rake-10.0.0
"
all_ruby_prepare() {
diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest
index 2377d389ee43..c8cf07f356fb 100644
--- a/app-emulation/virtualbox-additions/Manifest
+++ b/app-emulation/virtualbox-additions/Manifest
@@ -4,6 +4,6 @@ DIST VBoxGuestAdditions_5.2.14.iso 57978880 BLAKE2B de5cb3c5b7e2f3ee018588308573
DIST VBoxGuestAdditions_5.2.16.iso 57976832 BLAKE2B 78c8d71e2a68306efaf2951d73099b7199e15d83d9fc2c70f73266fdf59798948b22815234a5e30eff43471fcb8a5967c74a439d79b5ed47971dd170498145de SHA512 f25bf8ce789f640e5a80ac55c5d1918702bfed711aeacddc951948dcb56a4aa43a5a4e8760e3b8cc6e18eee18eabff032dd8fff8b95cc18bc60177b0a481b592
EBUILD virtualbox-additions-5.1.36-r1.ebuild 729 BLAKE2B f792450477b1a6b5689018926bce6a30608b288db6a9f546ea52bbc2dd463ba1c71c5dbe4a4970bce3a7dd3d92d6b9fa1e30ffc288f7a4597214021b6bacbde9 SHA512 3d90155e5c821b4831a31a154cbb7fcc31dd2b88637853b5dc8c3393158f555d1b6c3b5bff1856b363b12cd6e6ee039e08dec1aace2751ad618aa719dfef7074
EBUILD virtualbox-additions-5.1.38.ebuild 731 BLAKE2B 4784dde2f78825df471f012b87a1af33b1de8c1ed38771f9063eaf03fd186b3410c373012044884107fc9645ad97ccabcb80643215a02754d357fb4b58c68309 SHA512 e0b2b41a355e2d46efbc4205bf7721fe0d8647e479200e93ebc1576b5cbfc1609a4dc35b215798006a53e45908908f75366919226b05527b6cad7647d06b03db
-EBUILD virtualbox-additions-5.2.14.ebuild 715 BLAKE2B 62ab7ae8b0a0fd236b4ca76a01948c1e5cd55def6e61983e73e7270e5cf45a7e679157bb9b0dd82c6fdd159d0a4d03d24beebc3b5c0ba24a3e225b65d52c9340 SHA512 92ad5b98e63888de898eaa86042fcd306b9a97502dac4805da502cff8e0462828200c09cbc59ad110508527ca830a288e311d15917410b42fdc7729ac2b2f49d
+EBUILD virtualbox-additions-5.2.14.ebuild 713 BLAKE2B a15e47b3d4c380d7fcf8c10a9bef4a16ccb0c34e0cad6fcdc7ccbbe20bb6a869a3d9906f98169219e7b6e6e77fc1f18d93859c133fe50dfae34899ddbbf9de44 SHA512 4898ace6d451998c593dffcbaf841c7e6b0944d96e364bde9c301d600f00dd8c0037e96bc0b42c4d0e5f5e5a35d1eb7ed1f8260541505ba8cf88cb17e9fb0e26
EBUILD virtualbox-additions-5.2.16.ebuild 715 BLAKE2B 62ab7ae8b0a0fd236b4ca76a01948c1e5cd55def6e61983e73e7270e5cf45a7e679157bb9b0dd82c6fdd159d0a4d03d24beebc3b5c0ba24a3e225b65d52c9340 SHA512 92ad5b98e63888de898eaa86042fcd306b9a97502dac4805da502cff8e0462828200c09cbc59ad110508527ca830a288e311d15917410b42fdc7729ac2b2f49d
MISC metadata.xml 260 BLAKE2B 55d9eb1793faf23ffb69c904a9daf755cefe1b1e04fc2331e792a81acc1b699591acb85e005a96e70167e4eba8444e0cfc8f03be4fcdc19487ad6b1cea356f4a SHA512 443c9c27369b12fa4d23ac7e9add34dbf93b54d560ca946dac97801698b79401a80d88c6570530e641ad4f7231a8c1419682e1e11af2b171ca2854c598e05635
diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-5.2.14.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-5.2.14.ebuild
index 93e9fc9b6d49..34d1dfef14cd 100644
--- a/app-emulation/virtualbox-additions/virtualbox-additions-5.2.14.ebuild
+++ b/app-emulation/virtualbox-additions/virtualbox-additions-5.2.14.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE=""
RESTRICT="mirror"
diff --git a/app-emulation/virtualbox-bin/Manifest b/app-emulation/virtualbox-bin/Manifest
index 901f92df117f..6c1794466a48 100644
--- a/app-emulation/virtualbox-bin/Manifest
+++ b/app-emulation/virtualbox-bin/Manifest
@@ -22,6 +22,6 @@ DIST VirtualBoxSDK-5.2.14-123301.zip 10154044 BLAKE2B 273219029c59ffd685fffb7e14
DIST VirtualBoxSDK-5.2.16-123759.zip 10158952 BLAKE2B 66140092c221b998919a3840745e2ae58671b65f1db774ddb6691d085e95a35cdfa1e939a84cb032e2f67bd4485bd8f940f5db6d3712569942cbcc2a0f1bf234 SHA512 2b735016ea99e94317876f2e845cf94dd845bf51a86b42e938cae4bee003483f6061a7d89150f3d1fe5b84970a4fa83ae5bed7acf6570b849df5258efc8eb38f
EBUILD virtualbox-bin-5.1.36.122089.ebuild 8381 BLAKE2B 16a4aed3c9ae0fe4621fd97d30ce46808ff7c56783dbc27e2a4c2e6a6a1f290506d71659ad98c4def219d75789ff6f7f66c8d79ff90d2285ca0e1fceec14635a SHA512 a5cd6523a8a08b64f7d60ebd00d56576c7dbb33dbde06dee28b56ae1a31648a3155b7a1f3c3a739e71fa824d427c33b74ccd31dc1fb3520256b759c0e79dd193
EBUILD virtualbox-bin-5.1.38.122592.ebuild 8383 BLAKE2B 0f07fa4a3383dde55f6ee12bebcbc44da33f96c498dd58eacd8dc1fd19bded41f720be5400e2ad9dcd01d80752a9825f89b68ca610105362d1eeffd9e2395c85 SHA512 96ac84742f050251faf70537d768654a21dd9f918ec282ca229f5490071e9d0aa7dd3dda3121bf39534f0f1547b039f1f138a15b1d5fd4b85bf5d82d79df216b
-EBUILD virtualbox-bin-5.2.14.123301.ebuild 8332 BLAKE2B a7ca997e4da4bd000ab990d0aad48c32ab87806d82ddff744c16c9a1d1351f94fe76d640f74cded7caa66925e985a0a8e5930e9266dd67de522d5ec65a212a13 SHA512 907d13a5a2008872f3a336532064c297253f53877198ae95531f06bdc823d789d91d88c2d0a3e6a3c3fba9dd7209512b0805ecaeeec741f3b828acbc3ba2d59e
+EBUILD virtualbox-bin-5.2.14.123301.ebuild 8330 BLAKE2B 6eb8f7e32b98ebede7cfe40e8dc4cfaaa91937b0a119226828b06edd207703981570eda551c78295d5cc78c65338c806ce5ceaa158fe7a219037e8af41753c47 SHA512 e7efb17b49257d1d0a4cec26bf229013e46aae6076dbeef0238faf21f84b81f7223e9986a3c6107ccb202a7aeeaa97ed8ac40d787d5e5e22ba9c8b06bfaae24e
EBUILD virtualbox-bin-5.2.16.123759.ebuild 8332 BLAKE2B a7ca997e4da4bd000ab990d0aad48c32ab87806d82ddff744c16c9a1d1351f94fe76d640f74cded7caa66925e985a0a8e5930e9266dd67de522d5ec65a212a13 SHA512 907d13a5a2008872f3a336532064c297253f53877198ae95531f06bdc823d789d91d88c2d0a3e6a3c3fba9dd7209512b0805ecaeeec741f3b828acbc3ba2d59e
MISC metadata.xml 599 BLAKE2B 2af2e738880f4fb9b684baa124df483d90548177fc8f5a8223dc13a5c96a3bf7f84754a41c4d2bd5821140dd2479874b4d7c8b99b04a83febc5027f4370fb70f SHA512 4306caf88c97be9f63238727dd70ad834011dc33650aa809eaf4ac285febecd7604dc030b285a31167ecb338434fc68eff011528533cda53acdd72ad6a5b5aa0
diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-5.2.14.123301.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-5.2.14.123301.ebuild
index 424d6d96060f..308c711876e1 100644
--- a/app-emulation/virtualbox-bin/virtualbox-bin-5.2.14.123301.ebuild
+++ b/app-emulation/virtualbox-bin/virtualbox-bin-5.2.14.123301.ebuild
@@ -34,7 +34,7 @@ SRC_URI="amd64? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_am
LICENSE="GPL-2 PUEL"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="+additions +chm headless python vboxwebsrv rdesktop-vrdp"
RESTRICT="mirror"
diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest
index 89be27bc8841..d726d77d7a26 100644
--- a/app-emulation/virtualbox-extpack-oracle/Manifest
+++ b/app-emulation/virtualbox-extpack-oracle/Manifest
@@ -4,6 +4,6 @@ DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.14-123301.tar.gz 19589209 BLAKE2B 3
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.16-123759.tar.gz 19588810 BLAKE2B 51fb01ace72f6bc3f0e1ab6804c44ca44463ad24986af08b79c41bb06f43776c9f022d1766d07a4f9a47615119963636cad52d8f7d7bcc9f5e58f51c093f0bcd SHA512 8dfadb83111226a7bbc522d1caf16327051d76ee9382cb62281df5735f87d0e26994dd38a279027dae27c0371120bf95066d5260e79003c5a8982710579ecbce
EBUILD virtualbox-extpack-oracle-5.1.36.122089.ebuild 1087 BLAKE2B 6c233d604a66c0abd454b537e5d374210a83e8a6a1cff28ab07d78af52fd94385f7eda46c9efa320b53f2deb2f6baf6d3581a0ab56bac91e841f074585d5d3c5 SHA512 ce18fe7011e3d6942d4718617d2d1218d19e50bc8fa80e03db4c78a2d16739a6dedee75de58bfaea6a28b45010cc26c8fda09d85ead4e69f229911c5a7f61e05
EBUILD virtualbox-extpack-oracle-5.1.38.122592.ebuild 1089 BLAKE2B 89bfe2611b6f560d44f12abc203e9f3fabdd0ded2c9c6c6315509c989897b71acffa3fa0c33cdc3feb51ffcdcfe3a8daff0dedf13d2360a1f447328978f45673 SHA512 714732f55a0ed46ce33a89a0170247be72d06f0832ef0a0d5adc282a560111842d77898096fb768a63acb26e8e96962d0ede3555bc13aa6ad5985f611f3de8bb
-EBUILD virtualbox-extpack-oracle-5.2.14.123301.ebuild 1010 BLAKE2B 476281386029dc67f5ee851d33a3f35902e7afc90a216fde7f611af20d2445cf53d6d2e356b9334e7db9861a5ea53c1cb5b0b14aa029094a6e162c1fe291875e SHA512 4ec9f04169e5b60ccd2020d888fe0340c921afa363d4484c075aeaa02693906ad0983c0c1836cc80f6f8eb0da3b875e0c4186fe76a75d8e7262dc3a0fdf7eece
+EBUILD virtualbox-extpack-oracle-5.2.14.123301.ebuild 1008 BLAKE2B 5f2de91f90e5eb060a0eb3982b676ddf8956ed2cd730686740198bb5836f373949064c7db28cc699a00f2e40a643fd662bb9b3217bb61dc19ed343589856fb46 SHA512 ac29c2a036b7fdb9088a3ff1d77f1148f6ef8e05783e667b616bfb4243cf6a8f082b282ce76aea06296af56605c65f4c9429de6e5cfed71f905e4b619516e2a5
EBUILD virtualbox-extpack-oracle-5.2.16.123759.ebuild 1010 BLAKE2B 476281386029dc67f5ee851d33a3f35902e7afc90a216fde7f611af20d2445cf53d6d2e356b9334e7db9861a5ea53c1cb5b0b14aa029094a6e162c1fe291875e SHA512 4ec9f04169e5b60ccd2020d888fe0340c921afa363d4484c075aeaa02693906ad0983c0c1836cc80f6f8eb0da3b875e0c4186fe76a75d8e7262dc3a0fdf7eece
MISC metadata.xml 260 BLAKE2B 55d9eb1793faf23ffb69c904a9daf755cefe1b1e04fc2331e792a81acc1b699591acb85e005a96e70167e4eba8444e0cfc8f03be4fcdc19487ad6b1cea356f4a SHA512 443c9c27369b12fa4d23ac7e9add34dbf93b54d560ca946dac97801698b79401a80d88c6570530e641ad4f7231a8c1419682e1e11af2b171ca2854c598e05635
diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.14.123301.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.14.123301.ebuild
index d46e764cf177..dfbdffec4d55 100644
--- a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.14.123301.ebuild
+++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.14.123301.ebuild
@@ -25,7 +25,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpac
LICENSE="PUEL"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE=""
RESTRICT="mirror strip"
diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
index cc3e11207691..96166e4bbcd8 100644
--- a/app-emulation/virtualbox-guest-additions/Manifest
+++ b/app-emulation/virtualbox-guest-additions/Manifest
@@ -13,6 +13,6 @@ DIST virtualbox-5.2.12-patches-01.tar.xz 2616 BLAKE2B 5731484d185414d83588ee227b
DIST virtualbox-5.2.16-patches-01.tar.xz 2952 BLAKE2B 1d23d83bdb4d9576d402b67cc81d4427c5fe9163550d2817546382e1c1087000553d4a9a864f2527a909f52ce389105bcfe5518b5407de1299c7d2a62ee3cc21 SHA512 88c21583c51ae8e22e5fd3f08baae686045e884883153e2e365c35ba19f2773d5964c523a4ad3777fe30ca96bf76fab8819e09beeadf8350193041bff783893d
EBUILD virtualbox-guest-additions-5.1.36.ebuild 5995 BLAKE2B c34c1d3e312781ad4a4a390f12e4986ee197a690f5875f829bf3e87fa7a0741d5eb2c08f506d9a5b43590ea762eb26cf516db591a1b55a2f27e5c36f8fc313e8 SHA512 068ae5ecd8aa8e9f30f5272f1a1f58f8da92b78ee0f62784e335ebcbd63605b34d6654bbb35b16d4b4572bce75478827de217aeacc062bfdd7e206d7d38c7bb6
EBUILD virtualbox-guest-additions-5.1.38.ebuild 5997 BLAKE2B bd1110242825d9eccfa7235ce8de8fafd720610652dee85169f9e14c4fa6c806619736ab8db2b4f8041aef0a7fe0c6fa8dcd7a49a488287d8b0677b099894494 SHA512 b28006deb4ebe0bb199296262dec479bafc5a02c239116f2e3da9cf8198aca5fbbb281f6679b8415d3a0ffb88e3e42de4f71b808b2f0c38203af66cdebb36683
-EBUILD virtualbox-guest-additions-5.2.14.ebuild 6030 BLAKE2B 958d03973c922d1012f46631741fbad9d76374b70d2145a2ae388edbb57dbdc40ae1177351b22890fa169e66898dbd3d60cadf391f3c380c2dd814251c68fd2c SHA512 0896bf89ab514354ec6ea50ba528332a4f12e0feed2b18856accc0dc3a5e02f6a1d10912fb076d660bbe9464df7b385b7c6f32daf581f45294b10269ddf2f644
+EBUILD virtualbox-guest-additions-5.2.14.ebuild 6028 BLAKE2B dc97a2c0a9f8f610ba8b2e5708138ba566d4aaeab741f119919f81955375dbf81ecaf5094046a89f8fd7f588cc3a9fee043ceffcd5ffb067411223f954955844 SHA512 7ae738ffc57edb72d11cfc9131c82456c76497ad4b1d8424b1e32ac14c3686bab2ac7f8132fa05ea73394d7e6a1444574ef739dbffae3a0cecfcfc9030042764
EBUILD virtualbox-guest-additions-5.2.16.ebuild 6072 BLAKE2B 82dd3e0a88c0d4295eea1be44adeddf553459f799b62af523ff624eb3362d75ba524615bf770fb51b59c007ee86e5cf2db6806975ca384916e1308b6d22d8696 SHA512 7901c8bccce613faa42b2b34209a69940cd323a2b5e98a3fc79d9211c46fa74f1c8d707c0693584de7d47d803890c6bad601fb47e1e5c108132c058b2a10c505
MISC metadata.xml 260 BLAKE2B 55d9eb1793faf23ffb69c904a9daf755cefe1b1e04fc2331e792a81acc1b699591acb85e005a96e70167e4eba8444e0cfc8f03be4fcdc19487ad6b1cea356f4a SHA512 443c9c27369b12fa4d23ac7e9add34dbf93b54d560ca946dac97801698b79401a80d88c6570530e641ad4f7231a8c1419682e1e11af2b171ca2854c598e05635
diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.14.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.14.ebuild
index f5c54e455f53..f5deb742885e 100644
--- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.14.ebuild
+++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.14.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="X"
RDEPEND="
diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest
index 2f8b88a6c16a..8ac13e63e62c 100644
--- a/app-emulation/virtualbox-modules/Manifest
+++ b/app-emulation/virtualbox-modules/Manifest
@@ -9,6 +9,6 @@ DIST vbox-kernel-module-src-5.2.14.tar.xz 637352 BLAKE2B 7ccefbb13f25fe995e0f769
DIST vbox-kernel-module-src-5.2.16.tar.xz 638172 BLAKE2B 80a27100bb0be97796f03b368c589965d476e6d0c79424b94a5100561dc84bc2baf28b271a744b7b4ad53e015fb463faf2871d24596fafc83c80ccbe16087730 SHA512 35169a46ca9018f169b25359c0f4bf658622d71ea284768912bf0a8d2ac34ecec94f5dc774f77f0c02d1b83363faad53158baac7423f588deedfe8073a1e56a3
EBUILD virtualbox-modules-5.1.36.ebuild 1431 BLAKE2B 9ea7afbf141d43d3c6a22d5bb934bddb1c67a6afa69d65ac905df930cde73d5c8b921b11f4954e3577b6b63a1b1c156d23c97c9aaceeb2fd51be75d81df1d936 SHA512 e5becf1d7298567966b7653b73e3245a9db59b3eca1659890b004d8116a1c150e8c7042a81bb7fd9c0757328895dfe12c39baee9a49375110903d83f6422c988
EBUILD virtualbox-modules-5.1.38.ebuild 1350 BLAKE2B abf66852d4f907de436721b8c8f06dfd3c3676a0676d6e569147e01aced9b6f5492c9e9a2ddaee5798b38aba0fbc8d812179427d8eb7c45e732ef9093542d40f SHA512 e09b4178d5e20260cdd59597c514a4cc7d78b8caa8e126248f213f3bb4a665762216f07076efb6e81b822920a80c09979a94df11a952488397ced662f8862108
-EBUILD virtualbox-modules-5.2.14.ebuild 1199 BLAKE2B 467a7073743e16f5efb3e1a68402bad71bbe6afef8c9ae9f56e2029ea4d517eeafc46576e8149899f8c63cd6fee30e1e20d179006174714309eb4eab29bbe431 SHA512 67ca645212bd521d7655e38c390d346299ecf13e7485e7a269fe1891eebcdccf98c02cd4832ba563c449a9dbf3b11e9d242b1a2c5be6bc7bfb741282186087f5
+EBUILD virtualbox-modules-5.2.14.ebuild 1197 BLAKE2B ea60276403c90846417bbf24cd2df6bccc67403900987e07697bcdb0a4801422690a7e413be9e87fe2be93eec4fa491d50e4fe1c3035145725bf432738cb0e86 SHA512 cfc1fec4a8fbc000bb40cdc68f66ab7f6b0da91d956fabd462e44fcb7ba7dd2a22b798a8cc129d9abd492d1f04e994da2ab1680467a6d94fa1b23f90381ef548
EBUILD virtualbox-modules-5.2.16.ebuild 1199 BLAKE2B 467a7073743e16f5efb3e1a68402bad71bbe6afef8c9ae9f56e2029ea4d517eeafc46576e8149899f8c63cd6fee30e1e20d179006174714309eb4eab29bbe431 SHA512 67ca645212bd521d7655e38c390d346299ecf13e7485e7a269fe1891eebcdccf98c02cd4832ba563c449a9dbf3b11e9d242b1a2c5be6bc7bfb741282186087f5
MISC metadata.xml 353 BLAKE2B d7de13b3a8966ab3bca54ae77f7f6c7dfd57f2c5941f09ab1b5f79ac798687ffaaa183afdf9c034a9d50fda8507a3aaa2ef0c11d0fdfa6e09a55a1bdb9f30f4a SHA512 40029c9a246dde5ed51119f42ec5448b7ae08a47ee4d6be201fef282305c809d7d3182abf807dd2444ffe1a980abcd670878567d948bcd3661a55c6848a37000
diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-5.2.14.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-5.2.14.ebuild
index 89e331b6d043..83434a84f929 100644
--- a/app-emulation/virtualbox-modules/virtualbox-modules-5.2.14.ebuild
+++ b/app-emulation/virtualbox-modules/virtualbox-modules-5.2.14.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="pax_kernel"
RDEPEND="!=app-emulation/virtualbox-9999"
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 83f4464a1de3..7662eb9124b2 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -19,6 +19,6 @@ DIST virtualbox-5.2.12-patches-01.tar.xz 2616 BLAKE2B 5731484d185414d83588ee227b
DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
EBUILD virtualbox-5.1.36.ebuild 13795 BLAKE2B b988e0db6a107ae6f5f736dd42472e6d3484c5ca99834039156eeb72ef399bc17e06a0d635cd993070450132e4fe847aa0d3b3d4b300cc5fc35507034f4f1fc1 SHA512 5d0cd2e29ebc2603deca6ededf55db38c087a5ecd0245a131fdbc52ea00b293da8f741fb1a44677b39259932930485c27821ea9205ff391011541688f014c01f
EBUILD virtualbox-5.1.38.ebuild 13797 BLAKE2B efbb490230e3ed1468a397ba3257334bbfa7274e609f2d2c9b454e5f98458c6c78bdda845bf227edc59fda60afe92a0ac3d0e07473619166292c30453ca7c9a9 SHA512 e201534862e708eab0088e08b92b524db3723d6c2a4153507b7f760d45d4f85bb2bf4823d145ecebe7fc12ad06790a2b612e9efae7fa85de950a3147e58fd45b
-EBUILD virtualbox-5.2.14-r1.ebuild 13841 BLAKE2B 214d86ba21c8885d3e93641423557017b442b3ed19b9effe2247b0ac7df03d47184068430a97dcefd2ff23c4cea2fb9b0a2298a37538b6a09a47a4d84083d1f2 SHA512 060ecf17a73b3f3a6c45044ffcb1419459e307c6775b15e46368138120d024e2f53bae36da2634293d4922c3bcc416418b980af132001f6b8cbb31e7a0d7b278
+EBUILD virtualbox-5.2.14-r1.ebuild 13839 BLAKE2B 22507a4802ef4e0f8f50e622dbd0bde33ec66e23e968caa3ab22f965f9411aedeeac6fbc4ce716d7c6d48cafc4df89f30274a0ffedb05cfc86c1d230454cca4f SHA512 e0e58c4249c6b62b95f64f190217955ce4bba0b4998084fd3cfa0f5ece4466ecdb9df8084c9baf766d88ae873352dd3adaea354d86fe1bfe71d663c20072195a
EBUILD virtualbox-5.2.16.ebuild 13908 BLAKE2B 400edf7c47f640eadae99e040afdc8fbf5bca74765998da8cae05f20cc5890b3630e4ec6d18fb7b3d12caa4286f28b96afba901bd833945f9c14b148aed632b9 SHA512 69cc9c884a3080d9b2604779c571d754224ab8ccb8f2ce3aa7bce9032a716c8669576403fc228d67e8057cb2d87c806de65c4d9392e57992d0c6db40e41560a4
MISC metadata.xml 805 BLAKE2B 6ff816d3f6e3f51eef32f3695c7892d5be15dbd544fb384404c1409f5297df60383b3f956166230a6f6f7094647093cd4c08b3258017e0513504d74f785788f4 SHA512 5f13d0dd36d8bd45ef142c23a9a60128e31b4f40b388fee30e465100c1ee61172db4d1888dc93363f145181cab40f56ce9ae7c14b8d9f3cc91f076be86099eea
diff --git a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
index 25b19f71be1c..d2a03ffef0d5 100644
--- a/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.2.14-r1.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
RDEPEND="!app-emulation/virtualbox-bin
diff --git a/app-emulation/wine-any/Manifest b/app-emulation/wine-any/Manifest
index 92ae92497591..79515f1f5417 100644
--- a/app-emulation/wine-any/Manifest
+++ b/app-emulation/wine-any/Manifest
@@ -14,6 +14,7 @@ DIST wine-staging-3.13.tar.gz 9936353 BLAKE2B f5791c6f1bc43395860ea938cfadefe88e
EBUILD wine-any-2.0-r1.ebuild 20915 BLAKE2B 7ff1002e303dd2a083267fbf24e4b6cb0e3ff620d6bbf78b8fb15d66fb4d11669812233f1edeea0f46e75b9a0c8a9e63244aa4bebb594b95d158d55fc2506e6d SHA512 8e1bd0d4391f1e9336f9c39ce46d97f921f70cae75d961bc8fe8c7ec6c51bbba621c19a3171f0c351ce6e038d37a7f9a73f6f0bb4622f176e5a994e4a989b2e7
EBUILD wine-any-3.11.ebuild 20850 BLAKE2B 602ff47811c6b486aa28f338d6b8838b303ee9b0078b6d7b775cb62c2fa3bb864ac9c4ee39122be4c4a8f40de72b512e701fe8ec83ab27463a7df4c7c5fe6b67 SHA512 0240bfd7bb01322ed053118fd3a65cec336493e33ecbb8f5db10505e8500a50b4136e2d323ce7af3a58c53396e2c7635203fddef21343924007e59c519ee8820
EBUILD wine-any-3.12.ebuild 20957 BLAKE2B d31df15a6217a94c2ca9b0a6f377dc41d39d400bdc3c67a5d7b45274085b1ce6a362630a7f1fce1100d5500d2ca79042a00faff7e64213eb03d4b18067bc2686 SHA512 dfb9c90b227a78cbd939268e65ae2641bdc06d5e7b1b80d97b707c30cd9b962a2eeb1c2651eb05bbb6284ec2b42791d066dac6d469301d597529f3d2860d46b1
+EBUILD wine-any-3.13-r1.ebuild 20957 BLAKE2B d775aef9f6fb05ecd1ed7e1d0500a4e31839a0290a9372663f636babdc859237b8b44e64e1de0b8b80bfded2cb8cf472471ca99a3142c0fa248c6122adb5f7a5 SHA512 191c03e280fdaf8c3a371d65f5cd3540c02264f4d52665d3c5f150160f95f0bfaa73760f1ee4fb2a0c31b52461a4ea4297d2d205a13ff41f01480c32f5341d60
EBUILD wine-any-3.13.ebuild 20957 BLAKE2B d31df15a6217a94c2ca9b0a6f377dc41d39d400bdc3c67a5d7b45274085b1ce6a362630a7f1fce1100d5500d2ca79042a00faff7e64213eb03d4b18067bc2686 SHA512 dfb9c90b227a78cbd939268e65ae2641bdc06d5e7b1b80d97b707c30cd9b962a2eeb1c2651eb05bbb6284ec2b42791d066dac6d469301d597529f3d2860d46b1
-EBUILD wine-any-9999.ebuild 20957 BLAKE2B d31df15a6217a94c2ca9b0a6f377dc41d39d400bdc3c67a5d7b45274085b1ce6a362630a7f1fce1100d5500d2ca79042a00faff7e64213eb03d4b18067bc2686 SHA512 dfb9c90b227a78cbd939268e65ae2641bdc06d5e7b1b80d97b707c30cd9b962a2eeb1c2651eb05bbb6284ec2b42791d066dac6d469301d597529f3d2860d46b1
+EBUILD wine-any-9999.ebuild 20957 BLAKE2B d775aef9f6fb05ecd1ed7e1d0500a4e31839a0290a9372663f636babdc859237b8b44e64e1de0b8b80bfded2cb8cf472471ca99a3142c0fa248c6122adb5f7a5 SHA512 191c03e280fdaf8c3a371d65f5cd3540c02264f4d52665d3c5f150160f95f0bfaa73760f1ee4fb2a0c31b52461a4ea4297d2d205a13ff41f01480c32f5341d60
MISC metadata.xml 3938 BLAKE2B 229f46077b9df226c74b9001708696aec52d9d52cc14707caae883e6a8d4e16c7cb50cba84caa6c17ff13ff26d3bdc1327630dd03263922c0ca1e79922e8614c SHA512 c3c2d969dae75796e689395def7e18cd3c7988b6fee62841757a616f288a05117ea2fded37d71a5cbbe1fb59df8ff888a764230c218fcf98f2b9ae84e320d07d
diff --git a/app-emulation/wine-any/wine-any-3.13-r1.ebuild b/app-emulation/wine-any/wine-any-3.13-r1.ebuild
new file mode 100644
index 000000000000..8d4e1a7fbcf3
--- /dev/null
+++ b/app-emulation/wine-any/wine-any-3.13-r1.ebuild
@@ -0,0 +1,640 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils
+
+MY_PN="${PN%%-*}"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ MAJOR_V=$(get_version_component_range 1)
+ SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+fi
+S="${WORKDIR}/${MY_P}"
+
+STAGING_P="wine-staging-${PV}"
+STAGING_DIR="${WORKDIR}/${STAGING_P}"
+D3D9_P="wine-d3d9-${PV}"
+D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
+GWP_V="20180120"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, with optional external patchsets"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~np-hardass/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+if [[ ${PV} == "9999" ]] ; then
+ STAGING_EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
+ D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
+else
+ SRC_URI="${SRC_URI}
+ staging? ( https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )
+ d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="${PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc ffmpeg +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ X? ( truetype )
+ elibc_glibc? ( threads )
+ ffmpeg? ( staging )
+ osmesa? ( opengl )
+ pipelight? ( staging )
+ test? ( abi_x86_32 )
+ themes? ( staging )
+ vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+COMMON_DEPEND="
+ X? (
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+ )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ d3d9? (
+ media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libxcb[${MULTILIB_USEDEP}]
+ )
+ ffmpeg? ( >=media-video/ffmpeg-4:=[${MULTILIB_USEDEP}] )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
+ gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+ gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+ )
+ jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5:0=[${MULTILIB_USEDEP}] )
+ lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
+ ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/glu[${MULTILIB_USEDEP}]
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ themes? (
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ x11-libs/cairo[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ )
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
+ vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+ xml? (
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ dev-libs/libxslt[${MULTILIB_USEDEP}]
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/wine-desktop-common
+ >app-eselect/eselect-wine-0.3
+ !app-emulation/wine:0
+ dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+ gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
+ mono? ( app-emulation/wine-mono:4.7.3 )
+ perl? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ pulseaudio? (
+ realtime? ( sys-auth/rtkit )
+ )
+ samba? ( >=net-fs/samba-3.0.25[winbind] )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ sys-devel/flex
+ >=sys-kernel/linux-headers-2.6
+ virtual/pkgconfig
+ virtual/yacc
+ X? ( x11-base/xorg-proto )
+ prelink? ( sys-devel/prelink )
+ staging? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+ "${PATCHDIR}/patches/${MY_PN}-1.5.26-winegcc.patch" #260726
+ "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615
+ "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508
+ "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
+ DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ # GCC-specific bugs
+ if tc-is-gcc; then
+ # bug #549768
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
+ ebegin "Checking for gcc-5 ms_abi compiler bug"
+ $(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
+ # Run in subshell to prevent "Aborted" message
+ ( "${T}"/pr66838 || false ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/549768"
+ eerror
+ return 1
+ fi
+ fi
+ # bug #574044
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
+ ebegin "Checking for gcc-5-3 stack realignment compiler bug"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "Wine cannot be built with this version of gcc-5.3"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/574044"
+ eerror
+ return 1
+ fi
+ fi
+ fi
+
+ # Ensure compiler support
+ if use abi_x86_64; then
+ ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
+ if ! eend $?; then
+ eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
+ eerror
+ eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
+ eerror
+ return 1
+ fi
+ fi
+}
+
+wine_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ if use abi_x86_64; then
+ if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
+ eerror "You need gcc-4.4+ to compile 64-bit wine"
+ die
+ elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
+ eerror "You need clang-3.8+ to compile 64-bit wine"
+ die
+ fi
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
+ ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
+ ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
+ ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
+ if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
+ ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
+ ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
+ ewarn "See package.env in man 5 portage for more information on how to do this."
+ ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
+ fi
+ fi
+
+ if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+ eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+ eerror "See https://bugs.gentoo.org/487864 for more details."
+ eerror
+ return 1
+ fi
+}
+
+wine_env_vcs_vars() {
+ local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+ local pn_live_val="${pn_live_var}"
+ eval pn_live_val='$'${pn_live_val}
+ if [[ ! -z ${pn_live_val} ]]; then
+ if use staging || use d3d9; then
+ eerror "Because of the multi-repo nature of ${MY_PN}, ${pn_live_var}"
+ eerror "cannot be used to set the commit. Instead, you may use the"
+ eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environmental variables"
+ eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+ eerror
+ return 1
+ fi
+}
+
+pkg_pretend() {
+ wine_build_environment_check || die
+
+ # Verify OSS support
+ if use oss && ! use kernel_FreeBSD; then
+ if ! has_version ">=media-sound/oss-4"; then
+ eerror "You cannot build wine with USE=oss without having support from a"
+ eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
+ eerror
+ die
+ fi
+ fi
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+ wine_env_vcs_vars || die
+
+ WINE_VARIANT="${PN#wine}-${PV}"
+ WINE_VARIANT="${WINE_VARIANT#-}"
+
+ MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+ MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+ MY_DATADIR="${MY_DATAROOTDIR}"
+ MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+ MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+ MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+ MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+ MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ EGIT_CHECKOUT_DIR="${S}" EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
+ if use staging; then
+ local CURRENT_WINE_COMMIT=${EGIT_VERSION}
+
+ git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
+ git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
+
+ local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+
+ if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
+ einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
+ einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
+ einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
+ fi
+ fi
+ if use d3d9; then
+ git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
+ git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
+ fi
+ fi
+
+ default
+
+ l10n_find_plocales_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+ eapply_bin(){
+ local patch
+ for patch in ${PATCHES_BIN[@]}; do
+ patchbin --nogit < "${patch}" || die
+ done
+ }
+
+ local md5="$(md5sum server/protocol.def)"
+
+ if use staging; then
+ ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
+ ewarn "Wine bugzilla should explicitly state that staging was used."
+
+ local STAGING_EXCLUDE=""
+ use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
+
+ # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
+ ebegin "Running Wine-Staging patch installer"
+ (
+ set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
+ cd "${STAGING_DIR}/patches"
+ source "${STAGING_DIR}/patches/patchinstall.sh"
+ )
+ eend $? || die "Failed to apply Wine-Staging patches"
+ fi
+ if use d3d9; then
+ if use staging; then
+ PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
+ else
+ PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
+ fi
+ PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
+ fi
+
+ default
+ eapply_bin
+ eautoreconf
+
+ # Modification of the server protocol requires regenerating the server requests
+ if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+ einfo "server/protocol.def was patched; running tools/make_requests"
+ tools/make_requests || die #432348
+ fi
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+ if ! use run-exes; then
+ sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+ fi
+
+ # Edit wine.desktop to work for specific variant
+ sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+ # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+ cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+ l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+ # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+ # Duplicate manpages input files for wine64
+ local f
+ for f in loader/*.man.in; do
+ cp ${f} ${f/wine/wine64} || die
+ done
+ # Add wine64 manpages to Makefile
+ if use abi_x86_64; then
+ sed -i "/wine.man.in/i \
+ \\\twine64.man.in \\\\" loader/Makefile.in || die
+ sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+ fi
+
+ rm_man_file(){
+ local file="${1}"
+ loc=${2}
+ sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+ }
+
+ while read f; do
+ l10n_for_each_disabled_locale_do rm_man_file "${f}"
+ done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+ wine_compiler_check || die
+
+ export LDCONFIG=/bin/true
+ use custom-cflags || strip-flags
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${MY_PREFIX}"
+ --datarootdir="${MY_DATAROOTDIR}"
+ --datadir="${MY_DATADIR}"
+ --docdir="${MY_DOCDIR}"
+ --includedir="${MY_INCLUDEDIR}"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+ --libexecdir="${MY_LIBEXECDIR}"
+ --localstatedir="${MY_LOCALSTATEDIR}"
+ --mandir="${MY_MANDIR}"
+ --sysconfdir=/etc/wine
+ $(use_with alsa)
+ $(use_with capi)
+ $(use_with lcms cms)
+ $(use_with cups)
+ $(use_with ncurses curses)
+ $(use_with udisks dbus)
+ $(use_with ffmpeg)
+ $(use_with fontconfig)
+ $(use_with ssl gnutls)
+ $(use_enable gecko mshtml)
+ $(use_with gphoto2 gphoto)
+ $(use_with gsm)
+ $(use_with gssapi)
+ $(use_with gstreamer)
+ --without-hal
+ $(use_with jpeg)
+ $(use_with kerberos krb5)
+ $(use_with ldap)
+ $(use_enable mono mscoree)
+ $(use_with mp3 mpg123)
+ $(use_with netapi)
+ $(use_with nls gettext)
+ $(use_with openal)
+ $(use_with opencl)
+ $(use_with opengl)
+ $(use_with osmesa)
+ $(use_with oss)
+ $(use_with pcap)
+ $(use_with png)
+ $(use_with pulseaudio pulse)
+ $(use_with threads pthread)
+ $(use_with scanner sane)
+ $(use_with sdl)
+ $(use_enable test tests)
+ $(use_with truetype freetype)
+ $(use_with udev)
+ $(use_with v4l)
+ $(use_with vkd3d)
+ $(use_with vulkan)
+ $(use_with X x)
+ $(use_with X xfixes)
+ $(use_with xcomposite)
+ $(use_with xinerama)
+ $(use_with xml)
+ $(use_with xml xslt)
+ )
+
+ use staging && myconf+=(
+ --with-xattr
+ $(use_with themes gtk3)
+ $(use_with vaapi va)
+ )
+ use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
+
+ local PKG_CONFIG AR RANLIB
+ # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+ # set AR and RANLIB to make QA scripts happy; #483342
+ tc-export PKG_CONFIG AR RANLIB
+
+ if use amd64; then
+ if [[ ${ABI} == amd64 ]]; then
+ myconf+=( --enable-win64 )
+ else
+ myconf+=( --disable-win64 )
+ fi
+
+ # Note: using --with-wine64 results in problems with multilib.eclass
+ # CC/LD hackery. We're using separate tools instead.
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+ emake depend
+}
+
+multilib_src_test() {
+ # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+ if [[ ${ABI} == x86 ]]; then
+ if [[ $(id -u) == 0 ]]; then
+ ewarn "Skipping tests since they cannot be run under the root user."
+ ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+ return
+ fi
+
+ WINEPREFIX="${T}/.wine-${ABI}" \
+ Xemake test
+ fi
+}
+
+multilib_src_install_all() {
+ local DOCS=( ANNOUNCE AUTHORS README )
+ add_locale_docs() {
+ local locale_doc="documentation/README.$1"
+ [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+ }
+ l10n_for_each_locale_do add_locale_docs
+
+ einstalldocs
+ prune_libtool_files --all
+
+ if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+ rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+ "${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+ fi
+
+ # Remove wineconsole if neither backend is installed #551124
+ if ! use X && ! use ncurses; then
+ rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
+ rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
+ rm_wineconsole() {
+ rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
+ }
+ multilib_foreach_abi rm_wineconsole
+ fi
+
+ use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+ use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+ if use abi_x86_64 && ! use abi_x86_32; then
+ dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+ dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+ fi
+
+ # Failglob for binloops, shouldn't be necessary, but including to stay safe
+ eshopts_push -s failglob #615218
+ # Make wrappers for binaries for handling multiple variants
+ # Note: wrappers instead of symlinks because some are shell which use basename
+ local b
+ for b in "${D%/}${MY_PREFIX}"/bin/*; do
+ make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+ done
+ eshopts_pop
+}
+
+pkg_postinst() {
+ eselect wine register ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine register --vanilla ${P} || die
+ else
+ if use staging; then
+ eselect wine register --staging ${P} || die
+ fi
+ if use d3d9; then
+ eselect wine register --d3d9 ${P} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+
+ xdg_desktop_database_update
+
+ if ! use gecko; then
+ ewarn "Without Wine Gecko, wine prefixes will not have a default"
+ ewarn "implementation of iexplore. Many older windows applications"
+ ewarn "rely upon the existence of an iexplore implementation, so"
+ ewarn "you will likely need to install an external one, like via winetricks"
+ fi
+ if ! use mono; then
+ ewarn "Without Wine Mono, wine prefixes will not have a default"
+ ewarn "implementation of .NET. Many windows applications rely upon"
+ ewarn "the existence of a .NET implementation, so you will likely need"
+ ewarn "to install an external one, like via winetricks"
+ fi
+}
+
+pkg_prerm() {
+ eselect wine deregister ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine deregister --vanilla ${P} || die
+ else
+ if use staging; then
+ eselect wine deregister --staging ${P} || die
+ fi
+ if use d3d9; then
+ eselect wine deregister --d3d9 ${P} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-emulation/wine-any/wine-any-9999.ebuild b/app-emulation/wine-any/wine-any-9999.ebuild
index 6380a95584b1..8d4e1a7fbcf3 100644
--- a/app-emulation/wine-any/wine-any-9999.ebuild
+++ b/app-emulation/wine-any/wine-any-9999.ebuild
@@ -138,7 +138,7 @@ RDEPEND="${COMMON_DEPEND}
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
- mono? ( app-emulation/wine-mono:4.7.1 )
+ mono? ( app-emulation/wine-mono:4.7.3 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
diff --git a/app-emulation/wine-d3d9/Manifest b/app-emulation/wine-d3d9/Manifest
index 74a5c76b96b3..c004776dd067 100644
--- a/app-emulation/wine-d3d9/Manifest
+++ b/app-emulation/wine-d3d9/Manifest
@@ -10,6 +10,7 @@ DIST wine-d3d9-3.13.tar.gz 50546 BLAKE2B 2773503ad2c952c47982258c8b7d7486b5822bf
EBUILD wine-d3d9-2.0-r1.ebuild 18408 BLAKE2B d076c6114c7a8044803c22cc9e3b2ade886c2c5fe95f476fcb69558058733d1e75f178a956ebd5fde2c753690cc120df3c3161293af97031043d59a5f4ba4e7c SHA512 c6e0d90d32af5981ab83093680c0119c39c0843d818672270a83e9d40c5cf368641818fc8e82f29c7de07759cfc18d94990f400564987693c17bd24acb18f413
EBUILD wine-d3d9-3.11.ebuild 18573 BLAKE2B 8bc4d2359a4652beaee2ac1b7b459ad03408f2c0d2ff9145ff3889ffa5660797d8378f9e73c612e923d5121ba5af79b5f85fc2d4e81f0129033e5c6147e264c1 SHA512 8558b0e5c6f06bdbca8f26c9a47c9e0befba46a0a80282a90911e416f5b21f2f08a1299a0b4919ae701df1e5ad1db541d50058e3b55b03744e9643c1f1b96c46
EBUILD wine-d3d9-3.12.ebuild 18573 BLAKE2B 8bc4d2359a4652beaee2ac1b7b459ad03408f2c0d2ff9145ff3889ffa5660797d8378f9e73c612e923d5121ba5af79b5f85fc2d4e81f0129033e5c6147e264c1 SHA512 8558b0e5c6f06bdbca8f26c9a47c9e0befba46a0a80282a90911e416f5b21f2f08a1299a0b4919ae701df1e5ad1db541d50058e3b55b03744e9643c1f1b96c46
+EBUILD wine-d3d9-3.13-r1.ebuild 18573 BLAKE2B 2a0d981c8d827a908d74231224893a08216b35aa92985c7dfafe9a09029be4fa323cd899c3f2c0db407ceeb861a49343e5ed00d002ec09e358ed3c28ccafe2ef SHA512 1a561075c0193b47fb6debd8f4a70985635ca1580b87d4367668a2ee6f8278e3af8a15f47fd1b0e0a61e03ab14c2a8f68bbb69678efcfa3f8414bfc4121ec34c
EBUILD wine-d3d9-3.13.ebuild 18573 BLAKE2B 8bc4d2359a4652beaee2ac1b7b459ad03408f2c0d2ff9145ff3889ffa5660797d8378f9e73c612e923d5121ba5af79b5f85fc2d4e81f0129033e5c6147e264c1 SHA512 8558b0e5c6f06bdbca8f26c9a47c9e0befba46a0a80282a90911e416f5b21f2f08a1299a0b4919ae701df1e5ad1db541d50058e3b55b03744e9643c1f1b96c46
-EBUILD wine-d3d9-9999.ebuild 18573 BLAKE2B 8bc4d2359a4652beaee2ac1b7b459ad03408f2c0d2ff9145ff3889ffa5660797d8378f9e73c612e923d5121ba5af79b5f85fc2d4e81f0129033e5c6147e264c1 SHA512 8558b0e5c6f06bdbca8f26c9a47c9e0befba46a0a80282a90911e416f5b21f2f08a1299a0b4919ae701df1e5ad1db541d50058e3b55b03744e9643c1f1b96c46
+EBUILD wine-d3d9-9999.ebuild 18573 BLAKE2B 2a0d981c8d827a908d74231224893a08216b35aa92985c7dfafe9a09029be4fa323cd899c3f2c0db407ceeb861a49343e5ed00d002ec09e358ed3c28ccafe2ef SHA512 1a561075c0193b47fb6debd8f4a70985635ca1580b87d4367668a2ee6f8278e3af8a15f47fd1b0e0a61e03ab14c2a8f68bbb69678efcfa3f8414bfc4121ec34c
MISC metadata.xml 3320 BLAKE2B bbf5e79928f29d124d8a7dd947aa42fdf690d0d7f8905a0e0f43185b7026d4dde787809844ce230c3ab285a3c476c807973b899589d0d383931c96c9f1d54966 SHA512 14e380383fa5345cbd6c5366456f8d122c7bccbf54db863945e5c7673457f29f97e629ec3538030bd991f254d0262045a2d97a467cb100e80e1989728ba65c96
diff --git a/app-emulation/wine-d3d9/wine-d3d9-3.13-r1.ebuild b/app-emulation/wine-d3d9/wine-d3d9-3.13-r1.ebuild
new file mode 100644
index 000000000000..11b99cc481cc
--- /dev/null
+++ b/app-emulation/wine-d3d9/wine-d3d9-3.13-r1.ebuild
@@ -0,0 +1,574 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils
+
+MY_PN="${PN%%-*}"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ MAJOR_V=$(get_version_component_range 1)
+ SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+fi
+S="${WORKDIR}/${MY_P}"
+
+D3D9_P="wine-d3d9-${PV}"
+D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
+GWP_V="20180120"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, with Gallium Nine patchset"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~np-hardass/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+if [[ ${PV} == "9999" ]] ; then
+ D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
+else
+ SRC_URI="${SRC_URI}
+ d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="${PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks v4l vkd3d vulkan +X +xcomposite xinerama +xml"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ X? ( truetype )
+ elibc_glibc? ( threads )
+ osmesa? ( opengl )
+ test? ( abi_x86_32 )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+COMMON_DEPEND="
+ X? (
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+ )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ d3d9? (
+ media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libxcb[${MULTILIB_USEDEP}]
+ )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
+ gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+ gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+ )
+ jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5:0=[${MULTILIB_USEDEP}] )
+ lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
+ ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/glu[${MULTILIB_USEDEP}]
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+ xml? (
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ dev-libs/libxslt[${MULTILIB_USEDEP}]
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/wine-desktop-common
+ >app-eselect/eselect-wine-0.3
+ !app-emulation/wine:0
+ dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+ gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
+ mono? ( app-emulation/wine-mono:4.7.3 )
+ perl? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ pulseaudio? (
+ realtime? ( sys-auth/rtkit )
+ )
+ samba? ( >=net-fs/samba-3.0.25[winbind] )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ sys-devel/flex
+ >=sys-kernel/linux-headers-2.6
+ virtual/pkgconfig
+ virtual/yacc
+ X? ( x11-base/xorg-proto )
+ prelink? ( sys-devel/prelink )
+ xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+ "${PATCHDIR}/patches/${MY_PN}-1.5.26-winegcc.patch" #260726
+ "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615
+ "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508
+ "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
+ DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ # GCC-specific bugs
+ if tc-is-gcc; then
+ # bug #549768
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
+ ebegin "Checking for gcc-5 ms_abi compiler bug"
+ $(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
+ # Run in subshell to prevent "Aborted" message
+ ( "${T}"/pr66838 || false ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/549768"
+ eerror
+ return 1
+ fi
+ fi
+ # bug #574044
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
+ ebegin "Checking for gcc-5-3 stack realignment compiler bug"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "Wine cannot be built with this version of gcc-5.3"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/574044"
+ eerror
+ return 1
+ fi
+ fi
+ fi
+
+ # Ensure compiler support
+ if use abi_x86_64; then
+ ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
+ if ! eend $?; then
+ eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
+ eerror
+ eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
+ eerror
+ return 1
+ fi
+ fi
+}
+
+wine_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ if use abi_x86_64; then
+ if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
+ eerror "You need gcc-4.4+ to compile 64-bit wine"
+ die
+ elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
+ eerror "You need clang-3.8+ to compile 64-bit wine"
+ die
+ fi
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
+ ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
+ ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
+ ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
+ if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
+ ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
+ ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
+ ewarn "See package.env in man 5 portage for more information on how to do this."
+ ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
+ fi
+ fi
+
+ if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+ eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+ eerror "See https://bugs.gentoo.org/487864 for more details."
+ eerror
+ return 1
+ fi
+}
+
+wine_env_vcs_vars() {
+ local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+ local pn_live_val="${pn_live_var}"
+ eval pn_live_val='$'${pn_live_val}
+ if [[ ! -z ${pn_live_val} ]]; then
+ if use d3d9; then
+ eerror "Because of the multi-repo nature of ${MY_PN}, ${pn_live_var}"
+ eerror "cannot be used to set the commit. Instead, you may use the"
+ eerror "environmental variables WINE_COMMIT, and D3D9_COMMIT."
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environmental variables"
+ eerror "WINE_COMMIT, and D3D9_COMMIT"
+ eerror
+ return 1
+ fi
+}
+
+pkg_pretend() {
+ wine_build_environment_check || die
+
+ # Verify OSS support
+ if use oss && ! use kernel_FreeBSD; then
+ if ! has_version ">=media-sound/oss-4"; then
+ eerror "You cannot build wine with USE=oss without having support from a"
+ eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
+ eerror
+ die
+ fi
+ fi
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+ wine_env_vcs_vars || die
+
+ WINE_VARIANT="${PN#wine}-${PV}"
+ WINE_VARIANT="${WINE_VARIANT#-}"
+
+ MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+ MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+ MY_DATADIR="${MY_DATAROOTDIR}"
+ MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+ MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+ MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+ MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+ MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ EGIT_CHECKOUT_DIR="${S}" EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
+ if use d3d9; then
+ git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
+ git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
+ fi
+ fi
+
+ default
+
+ l10n_find_plocales_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+ eapply_bin(){
+ local patch
+ for patch in ${PATCHES_BIN[@]}; do
+ patchbin --nogit < "${patch}" || die
+ done
+ }
+
+ local md5="$(md5sum server/protocol.def)"
+
+ if use d3d9; then
+ PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
+ PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
+ fi
+
+ default
+ eapply_bin
+ eautoreconf
+
+ # Modification of the server protocol requires regenerating the server requests
+ if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+ einfo "server/protocol.def was patched; running tools/make_requests"
+ tools/make_requests || die #432348
+ fi
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+ if ! use run-exes; then
+ sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+ fi
+
+ # Edit wine.desktop to work for specific variant
+ sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+ # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+ cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+ l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+ # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+ # Duplicate manpages input files for wine64
+ local f
+ for f in loader/*.man.in; do
+ cp ${f} ${f/wine/wine64} || die
+ done
+ # Add wine64 manpages to Makefile
+ if use abi_x86_64; then
+ sed -i "/wine.man.in/i \
+ \\\twine64.man.in \\\\" loader/Makefile.in || die
+ sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+ fi
+
+ rm_man_file(){
+ local file="${1}"
+ loc=${2}
+ sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+ }
+
+ while read f; do
+ l10n_for_each_disabled_locale_do rm_man_file "${f}"
+ done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+ wine_compiler_check || die
+
+ export LDCONFIG=/bin/true
+ use custom-cflags || strip-flags
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${MY_PREFIX}"
+ --datarootdir="${MY_DATAROOTDIR}"
+ --datadir="${MY_DATADIR}"
+ --docdir="${MY_DOCDIR}"
+ --includedir="${MY_INCLUDEDIR}"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+ --libexecdir="${MY_LIBEXECDIR}"
+ --localstatedir="${MY_LOCALSTATEDIR}"
+ --mandir="${MY_MANDIR}"
+ --sysconfdir=/etc/wine
+ $(use_with alsa)
+ $(use_with capi)
+ $(use_with lcms cms)
+ $(use_with cups)
+ $(use_with ncurses curses)
+ $(use_with udisks dbus)
+ $(use_with fontconfig)
+ $(use_with ssl gnutls)
+ $(use_enable gecko mshtml)
+ $(use_with gphoto2 gphoto)
+ $(use_with gsm)
+ $(use_with gssapi)
+ $(use_with gstreamer)
+ --without-hal
+ $(use_with jpeg)
+ $(use_with kerberos krb5)
+ $(use_with ldap)
+ $(use_enable mono mscoree)
+ $(use_with mp3 mpg123)
+ $(use_with netapi)
+ $(use_with nls gettext)
+ $(use_with openal)
+ $(use_with opencl)
+ $(use_with opengl)
+ $(use_with osmesa)
+ $(use_with oss)
+ $(use_with pcap)
+ $(use_with png)
+ $(use_with pulseaudio pulse)
+ $(use_with threads pthread)
+ $(use_with scanner sane)
+ $(use_with sdl)
+ $(use_enable test tests)
+ $(use_with truetype freetype)
+ $(use_with udev)
+ $(use_with v4l)
+ $(use_with vkd3d)
+ $(use_with vulkan)
+ $(use_with X x)
+ $(use_with X xfixes)
+ $(use_with xcomposite)
+ $(use_with xinerama)
+ $(use_with xml)
+ $(use_with xml xslt)
+ )
+
+ use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
+
+ local PKG_CONFIG AR RANLIB
+ # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+ # set AR and RANLIB to make QA scripts happy; #483342
+ tc-export PKG_CONFIG AR RANLIB
+
+ if use amd64; then
+ if [[ ${ABI} == amd64 ]]; then
+ myconf+=( --enable-win64 )
+ else
+ myconf+=( --disable-win64 )
+ fi
+
+ # Note: using --with-wine64 results in problems with multilib.eclass
+ # CC/LD hackery. We're using separate tools instead.
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+ emake depend
+}
+
+multilib_src_test() {
+ # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+ if [[ ${ABI} == x86 ]]; then
+ if [[ $(id -u) == 0 ]]; then
+ ewarn "Skipping tests since they cannot be run under the root user."
+ ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+ return
+ fi
+
+ WINEPREFIX="${T}/.wine-${ABI}" \
+ Xemake test
+ fi
+}
+
+multilib_src_install_all() {
+ local DOCS=( ANNOUNCE AUTHORS README )
+ add_locale_docs() {
+ local locale_doc="documentation/README.$1"
+ [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+ }
+ l10n_for_each_locale_do add_locale_docs
+
+ einstalldocs
+ prune_libtool_files --all
+
+ if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+ rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+ "${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+ fi
+
+ # Remove wineconsole if neither backend is installed #551124
+ if ! use X && ! use ncurses; then
+ rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
+ rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
+ rm_wineconsole() {
+ rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
+ }
+ multilib_foreach_abi rm_wineconsole
+ fi
+
+ use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+ use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+ if use abi_x86_64 && ! use abi_x86_32; then
+ dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+ dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+ fi
+
+ # Failglob for binloops, shouldn't be necessary, but including to stay safe
+ eshopts_push -s failglob #615218
+ # Make wrappers for binaries for handling multiple variants
+ # Note: wrappers instead of symlinks because some are shell which use basename
+ local b
+ for b in "${D%/}${MY_PREFIX}"/bin/*; do
+ make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+ done
+ eshopts_pop
+}
+
+pkg_postinst() {
+ eselect wine register ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine register --vanilla ${P} || die
+ else
+ if use d3d9; then
+ eselect wine register --d3d9 ${P} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+
+ xdg_desktop_database_update
+
+ if ! use gecko; then
+ ewarn "Without Wine Gecko, wine prefixes will not have a default"
+ ewarn "implementation of iexplore. Many older windows applications"
+ ewarn "rely upon the existence of an iexplore implementation, so"
+ ewarn "you will likely need to install an external one, like via winetricks"
+ fi
+ if ! use mono; then
+ ewarn "Without Wine Mono, wine prefixes will not have a default"
+ ewarn "implementation of .NET. Many windows applications rely upon"
+ ewarn "the existence of a .NET implementation, so you will likely need"
+ ewarn "to install an external one, like via winetricks"
+ fi
+}
+
+pkg_prerm() {
+ eselect wine deregister ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine deregister --vanilla ${P} || die
+ else
+ if use d3d9; then
+ eselect wine deregister --d3d9 ${P} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-emulation/wine-d3d9/wine-d3d9-9999.ebuild b/app-emulation/wine-d3d9/wine-d3d9-9999.ebuild
index 76dbf2536327..11b99cc481cc 100644
--- a/app-emulation/wine-d3d9/wine-d3d9-9999.ebuild
+++ b/app-emulation/wine-d3d9/wine-d3d9-9999.ebuild
@@ -122,7 +122,7 @@ RDEPEND="${COMMON_DEPEND}
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
- mono? ( app-emulation/wine-mono:4.7.1 )
+ mono? ( app-emulation/wine-mono:4.7.3 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
diff --git a/app-emulation/wine-mono/Manifest b/app-emulation/wine-mono/Manifest
index c06680b5fdf5..689d57518359 100644
--- a/app-emulation/wine-mono/Manifest
+++ b/app-emulation/wine-mono/Manifest
@@ -1,7 +1,9 @@
DIST wine-mono-4.6.4.msi 45592064 BLAKE2B 30099b7f02276e47e350a96af07bf64b43c857b3b3323d0cab85864b753e9810c0d7b5d496e2f53f5b2c3a434eb440a19f9928707c4127303aa0335928e39097 SHA512 1d50df5d4d000998c74fbee79b8ffc691d88ee3b34db9fd7124e0df68d6f84768ece489ac8c3f5f3141c2073c8666b93ae23ca6cd652a6542a821df3d1b66b6d
DIST wine-mono-4.7.0.msi 64625152 BLAKE2B 9c533d9f9a5cec6aefa66ed916e88f0a03ab76e8292f112a669208c5b26855a314657c9950993a205941cd314f0c93a55f621ed71ebb4846a66d30fa9af3c855 SHA512 07cd2b26f3bfe6fc796a126b83e9c0aa655d3e8152af536ae2e8ae419013742706ddae6f93cc2341c94a2f3b8ae7d1b27d12f891d371928189291428f9ed877c
DIST wine-mono-4.7.1.msi 56470528 BLAKE2B b1b9dd832f725cb70b80889c08db524540c389c4eb8c990415f0c1b4a17274fc96390808c943bd0ff42c79f4bbb376b3d599d31ed42b5ebcb4be79dbc273eeec SHA512 d47f21fa3ddb31522366056a2062cf7b77eec0a12f96dc05326561c9d2604405128441ff40d1b9567a6e6cd1c19ee03444d2ba02dd3b8dd2d150030dfb52f765
+DIST wine-mono-4.7.3.msi 56470528 BLAKE2B 59397f851bd0883f060fd359228fcdedea5a32ce06349fd563411dfa603a6c8700496111821fd9e571cfd4586e829acb12321528a4a8330d1fb6f92855482225 SHA512 d51c0e21c8448a4d11c3e4fd530bda340cc93cd420080e08aadd7b704183dcadf8553b0937e02c7a54a8a2fb46a395718a3e807b85f19936b0e4ee7b92052dfe
EBUILD wine-mono-4.6.4.ebuild 504 BLAKE2B 1a454ab2e605655328cc00e7ae539b83fcb8f3f3efca9e4873cb5b9c7036e71e696005a21ab0420cf110a07496b3772a8164eafe1dda7591d02155538ea75367 SHA512 cd729b803383bd1416152ac70567ed6a8231b87ccec1bbd47768abf08dd1bbced711c9356c42759d1e9458fb35b9edd438f2b58c40ef80d15f9bdf5a8b7b4605
EBUILD wine-mono-4.7.0.ebuild 506 BLAKE2B 6219e5761bf91cfc349d872085991688cfee7b9ed5b5aad964f7580e26fa0cc213e21e20a0afcf7f0dae315a27c022511d089f2c2aaea8c7d8cd97033e7b81c1 SHA512 64b8eceae407dba1f415c113c2f1c0a5342a178850d940c22e49bc483e8c4eab2efcb34a1a053d28e8fa0637f3386a9846b1a90ab4baaa84e3b9fb9d71267bc3
EBUILD wine-mono-4.7.1.ebuild 504 BLAKE2B 6f8fa48c32e6ea7e3a768fb04b8255ddf503b5a584ad2015358dd35476ddac5b092bb5d887bde7ca89928442bb03d6f6e398998a7fc30d3fcde958fadb66fab7 SHA512 8531ae9d10aa4d40c7fe2c59eea82007b494bcb6c546253d9211e773c23d8bc61cc67e3dc563219957f9d6364572c00400ae5178bc2ea88e23b9915ae47e4258
+EBUILD wine-mono-4.7.3.ebuild 506 BLAKE2B 1e661c78fd619232d98ecc239126f97e7b0f3a99d472e99c8ad99398c85318f9f827bb2b224747cc621531870c5dec3328c8947a791d29d37b84ab3185e58902 SHA512 823f6a18b5d87dff909817011e6505417c636901a02af09180f7a0d4881d13c4b1322f57ba8d0454facb597e0aa36a1a2e2893e4d63c0607a18b8f9ebc8e09f0
MISC metadata.xml 614 BLAKE2B e45f9e8581cec69afc21a5af29aa71eec05ba7fa626624e6c06000a5f013a3606674074beec999a0f8f91c91fc8912995b20cb88f8ad8a40bffbd964c5bf020f SHA512 5655c4bd737975334e66b4ea0c6cdb447dd647a7a3c76c0cd9782c405c9540ae396c87677bde408d3977b838813e00f12249f0f84267b75894e5554b2c6bcb6c
diff --git a/app-emulation/wine-mono/wine-mono-4.7.3.ebuild b/app-emulation/wine-mono/wine-mono-4.7.3.ebuild
new file mode 100644
index 000000000000..e18bbd1ddb62
--- /dev/null
+++ b/app-emulation/wine-mono/wine-mono-4.7.3.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Wine Mono is a replacement for the .NET runtime and class libraries in Wine"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="https://dl.winehq.org/wine/${PN}/${PV}/${P}.msi"
+
+LICENSE="BSD-2 GPL-2 LGPL-2.1 MIT MPL-1.1"
+SLOT="${PV}"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="!!app-emulation/wine:0"
+
+S="${WORKDIR}"
+
+src_install() {
+ insinto /usr/share/wine/mono
+ doins "${DISTDIR}/${P}.msi"
+}
diff --git a/app-emulation/wine-staging/Manifest b/app-emulation/wine-staging/Manifest
index f7288caaa6bc..dd0a183d3a96 100644
--- a/app-emulation/wine-staging/Manifest
+++ b/app-emulation/wine-staging/Manifest
@@ -10,6 +10,7 @@ DIST wine-staging-3.13.tar.gz 9936353 BLAKE2B f5791c6f1bc43395860ea938cfadefe88e
EBUILD wine-staging-2.0-r1.ebuild 19947 BLAKE2B 44adc4926d0a93bdcb8ef176d0c058eb2a7ec6896ebc00f253e417f541fdd14e7236e4c1123b8aa93e7b386e15a34b356103e573e2a06ca2be4449073180d2ad SHA512 0d1173b27696344bd491f53fe2e6b11e88ba9d5d1b55869c9907ab292c20e248e48fc05b776c573a6f4dd6a49b8cbc247535e59c39990d80633bcbc55ef7c31c
EBUILD wine-staging-3.11.ebuild 19882 BLAKE2B 7db7a015866bfdd71263b163c525bdb74307712ac6a32b8b499278cb948f41addf9e122cd2d01553f97eff7f06614679cd0be6ed80ce388b6dc7de942704a66f SHA512 cf53120963fd78fa5c5dcebce9632f5363317cc0761817cea9ace6d2197da8453736b54127026b392c4cb6a69af630ea83fc13d8a981e5a6690ab2b90698c8da
EBUILD wine-staging-3.12.ebuild 19989 BLAKE2B f0795b778938a606485b6c46689e1581f307031726a1360e934b9697f1a718ff67cab2207cf3c9371615bf0b4c02f0520c002b7c657bc16c1dd54c3280541d04 SHA512 5ff3744b85e543a105c80a498430fbe40aa82472767f942dd852079f4207f08a1cb71f548b6e2f53fcd56f6aa53c89c7b93d2f95e6e49fad7ae690d7edcd990c
+EBUILD wine-staging-3.13-r1.ebuild 19989 BLAKE2B b54f5945ccff622d025a1e199cf8d13978689a19c3ec7cecc8216fa82b0f3a635fc1661441a3bf454700948a2cc77e20f49eeaef272f61914f9a70e046bff017 SHA512 42e601fbf3ba284aedb358f5ab42eafa2a32c55b20aac50e30e9f4fecf4e917c3b305d4d82f63e1266be7cb08203e358da62de9baaabedebc25c588fe2807119
EBUILD wine-staging-3.13.ebuild 19989 BLAKE2B f0795b778938a606485b6c46689e1581f307031726a1360e934b9697f1a718ff67cab2207cf3c9371615bf0b4c02f0520c002b7c657bc16c1dd54c3280541d04 SHA512 5ff3744b85e543a105c80a498430fbe40aa82472767f942dd852079f4207f08a1cb71f548b6e2f53fcd56f6aa53c89c7b93d2f95e6e49fad7ae690d7edcd990c
-EBUILD wine-staging-9999.ebuild 19989 BLAKE2B f0795b778938a606485b6c46689e1581f307031726a1360e934b9697f1a718ff67cab2207cf3c9371615bf0b4c02f0520c002b7c657bc16c1dd54c3280541d04 SHA512 5ff3744b85e543a105c80a498430fbe40aa82472767f942dd852079f4207f08a1cb71f548b6e2f53fcd56f6aa53c89c7b93d2f95e6e49fad7ae690d7edcd990c
+EBUILD wine-staging-9999.ebuild 19989 BLAKE2B b54f5945ccff622d025a1e199cf8d13978689a19c3ec7cecc8216fa82b0f3a635fc1661441a3bf454700948a2cc77e20f49eeaef272f61914f9a70e046bff017 SHA512 42e601fbf3ba284aedb358f5ab42eafa2a32c55b20aac50e30e9f4fecf4e917c3b305d4d82f63e1266be7cb08203e358da62de9baaabedebc25c588fe2807119
MISC metadata.xml 3591 BLAKE2B 748c2fc43338e250665dc5c18cef4aaa96b95b3f4a64768eb4fa97da65ecc3e65713833eb9fdb67f27e102221e621ee6fabc90babf982c97b455a2e9638ecfc1 SHA512 d60cc92fcd7391ffc92a5107b1e294bdb9f1bf6c02bc3495af67dfa9c30f06ee7868802ca7fa8c0e2a79c52edcd088e071d5d12663b3ea83c9112002e01ea524
diff --git a/app-emulation/wine-staging/wine-staging-3.13-r1.ebuild b/app-emulation/wine-staging/wine-staging-3.13-r1.ebuild
new file mode 100644
index 000000000000..5a5e118f347f
--- /dev/null
+++ b/app-emulation/wine-staging/wine-staging-3.13-r1.ebuild
@@ -0,0 +1,611 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils
+
+MY_PN="${PN%%-*}"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ MAJOR_V=$(get_version_component_range 1)
+ SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+fi
+S="${WORKDIR}/${MY_P}"
+
+STAGING_P="wine-staging-${PV}"
+STAGING_DIR="${WORKDIR}/${STAGING_P}"
+GWP_V="20180120"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~np-hardass/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+if [[ ${PV} == "9999" ]] ; then
+ STAGING_EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
+else
+ SRC_URI="${SRC_URI}
+ staging? ( https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="${PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc ffmpeg +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ X? ( truetype )
+ elibc_glibc? ( threads )
+ ffmpeg? ( staging )
+ osmesa? ( opengl )
+ pipelight? ( staging )
+ test? ( abi_x86_32 )
+ themes? ( staging )
+ vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+COMMON_DEPEND="
+ X? (
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+ )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ ffmpeg? ( >=media-video/ffmpeg-4:=[${MULTILIB_USEDEP}] )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
+ gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+ gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+ )
+ jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5:0=[${MULTILIB_USEDEP}] )
+ lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
+ ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/glu[${MULTILIB_USEDEP}]
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ themes? (
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ x11-libs/cairo[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ )
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
+ vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+ xml? (
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ dev-libs/libxslt[${MULTILIB_USEDEP}]
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/wine-desktop-common
+ >app-eselect/eselect-wine-0.3
+ !app-emulation/wine:0
+ dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+ gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
+ mono? ( app-emulation/wine-mono:4.7.3 )
+ perl? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ pulseaudio? (
+ realtime? ( sys-auth/rtkit )
+ )
+ samba? ( >=net-fs/samba-3.0.25[winbind] )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ sys-devel/flex
+ >=sys-kernel/linux-headers-2.6
+ virtual/pkgconfig
+ virtual/yacc
+ X? ( x11-base/xorg-proto )
+ prelink? ( sys-devel/prelink )
+ staging? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+ "${PATCHDIR}/patches/${MY_PN}-1.5.26-winegcc.patch" #260726
+ "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615
+ "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508
+ "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
+ DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ # GCC-specific bugs
+ if tc-is-gcc; then
+ # bug #549768
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
+ ebegin "Checking for gcc-5 ms_abi compiler bug"
+ $(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
+ # Run in subshell to prevent "Aborted" message
+ ( "${T}"/pr66838 || false ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/549768"
+ eerror
+ return 1
+ fi
+ fi
+ # bug #574044
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
+ ebegin "Checking for gcc-5-3 stack realignment compiler bug"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "Wine cannot be built with this version of gcc-5.3"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/574044"
+ eerror
+ return 1
+ fi
+ fi
+ fi
+
+ # Ensure compiler support
+ if use abi_x86_64; then
+ ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
+ if ! eend $?; then
+ eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
+ eerror
+ eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
+ eerror
+ return 1
+ fi
+ fi
+}
+
+wine_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ if use abi_x86_64; then
+ if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
+ eerror "You need gcc-4.4+ to compile 64-bit wine"
+ die
+ elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
+ eerror "You need clang-3.8+ to compile 64-bit wine"
+ die
+ fi
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
+ ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
+ ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
+ ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
+ if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
+ ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
+ ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
+ ewarn "See package.env in man 5 portage for more information on how to do this."
+ ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
+ fi
+ fi
+
+ if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+ eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+ eerror "See https://bugs.gentoo.org/487864 for more details."
+ eerror
+ return 1
+ fi
+}
+
+wine_env_vcs_vars() {
+ local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+ local pn_live_val="${pn_live_var}"
+ eval pn_live_val='$'${pn_live_val}
+ if [[ ! -z ${pn_live_val} ]]; then
+ if use staging; then
+ eerror "Because of the multi-repo nature of ${MY_PN}, ${pn_live_var}"
+ eerror "cannot be used to set the commit. Instead, you may use the"
+ eerror "environmental variables WINE_COMMIT, and STAGING_COMMIT."
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environmental variables"
+ eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+ eerror
+ return 1
+ fi
+}
+
+pkg_pretend() {
+ wine_build_environment_check || die
+
+ # Verify OSS support
+ if use oss && ! use kernel_FreeBSD; then
+ if ! has_version ">=media-sound/oss-4"; then
+ eerror "You cannot build wine with USE=oss without having support from a"
+ eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
+ eerror
+ die
+ fi
+ fi
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+ wine_env_vcs_vars || die
+
+ WINE_VARIANT="${PN#wine}-${PV}"
+ WINE_VARIANT="${WINE_VARIANT#-}"
+
+ MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+ MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+ MY_DATADIR="${MY_DATAROOTDIR}"
+ MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+ MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+ MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+ MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+ MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ EGIT_CHECKOUT_DIR="${S}" EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
+ if use staging; then
+ local CURRENT_WINE_COMMIT=${EGIT_VERSION}
+
+ git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
+ git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
+
+ local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+
+ if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
+ einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
+ einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
+ einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
+ fi
+ fi
+ fi
+
+ default
+
+ l10n_find_plocales_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+ eapply_bin(){
+ local patch
+ for patch in ${PATCHES_BIN[@]}; do
+ patchbin --nogit < "${patch}" || die
+ done
+ }
+
+ local md5="$(md5sum server/protocol.def)"
+
+ if use staging; then
+ ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
+ ewarn "Wine bugzilla should explicitly state that staging was used."
+
+ local STAGING_EXCLUDE=""
+ use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
+
+ # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
+ ebegin "Running Wine-Staging patch installer"
+ (
+ set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
+ cd "${STAGING_DIR}/patches"
+ source "${STAGING_DIR}/patches/patchinstall.sh"
+ )
+ eend $? || die "Failed to apply Wine-Staging patches"
+ fi
+
+ default
+ eapply_bin
+ eautoreconf
+
+ # Modification of the server protocol requires regenerating the server requests
+ if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+ einfo "server/protocol.def was patched; running tools/make_requests"
+ tools/make_requests || die #432348
+ fi
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+ if ! use run-exes; then
+ sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+ fi
+
+ # Edit wine.desktop to work for specific variant
+ sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+ # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+ cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+ l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+ # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+ # Duplicate manpages input files for wine64
+ local f
+ for f in loader/*.man.in; do
+ cp ${f} ${f/wine/wine64} || die
+ done
+ # Add wine64 manpages to Makefile
+ if use abi_x86_64; then
+ sed -i "/wine.man.in/i \
+ \\\twine64.man.in \\\\" loader/Makefile.in || die
+ sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+ fi
+
+ rm_man_file(){
+ local file="${1}"
+ loc=${2}
+ sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+ }
+
+ while read f; do
+ l10n_for_each_disabled_locale_do rm_man_file "${f}"
+ done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+ wine_compiler_check || die
+
+ export LDCONFIG=/bin/true
+ use custom-cflags || strip-flags
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${MY_PREFIX}"
+ --datarootdir="${MY_DATAROOTDIR}"
+ --datadir="${MY_DATADIR}"
+ --docdir="${MY_DOCDIR}"
+ --includedir="${MY_INCLUDEDIR}"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+ --libexecdir="${MY_LIBEXECDIR}"
+ --localstatedir="${MY_LOCALSTATEDIR}"
+ --mandir="${MY_MANDIR}"
+ --sysconfdir=/etc/wine
+ $(use_with alsa)
+ $(use_with capi)
+ $(use_with lcms cms)
+ $(use_with cups)
+ $(use_with ncurses curses)
+ $(use_with udisks dbus)
+ $(use_with ffmpeg)
+ $(use_with fontconfig)
+ $(use_with ssl gnutls)
+ $(use_enable gecko mshtml)
+ $(use_with gphoto2 gphoto)
+ $(use_with gsm)
+ $(use_with gssapi)
+ $(use_with gstreamer)
+ --without-hal
+ $(use_with jpeg)
+ $(use_with kerberos krb5)
+ $(use_with ldap)
+ $(use_enable mono mscoree)
+ $(use_with mp3 mpg123)
+ $(use_with netapi)
+ $(use_with nls gettext)
+ $(use_with openal)
+ $(use_with opencl)
+ $(use_with opengl)
+ $(use_with osmesa)
+ $(use_with oss)
+ $(use_with pcap)
+ $(use_with png)
+ $(use_with pulseaudio pulse)
+ $(use_with threads pthread)
+ $(use_with scanner sane)
+ $(use_with sdl)
+ $(use_enable test tests)
+ $(use_with truetype freetype)
+ $(use_with udev)
+ $(use_with v4l)
+ $(use_with vkd3d)
+ $(use_with vulkan)
+ $(use_with X x)
+ $(use_with X xfixes)
+ $(use_with xcomposite)
+ $(use_with xinerama)
+ $(use_with xml)
+ $(use_with xml xslt)
+ )
+
+ use staging && myconf+=(
+ --with-xattr
+ $(use_with themes gtk3)
+ $(use_with vaapi va)
+ )
+
+ local PKG_CONFIG AR RANLIB
+ # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+ # set AR and RANLIB to make QA scripts happy; #483342
+ tc-export PKG_CONFIG AR RANLIB
+
+ if use amd64; then
+ if [[ ${ABI} == amd64 ]]; then
+ myconf+=( --enable-win64 )
+ else
+ myconf+=( --disable-win64 )
+ fi
+
+ # Note: using --with-wine64 results in problems with multilib.eclass
+ # CC/LD hackery. We're using separate tools instead.
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+ emake depend
+}
+
+multilib_src_test() {
+ # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+ if [[ ${ABI} == x86 ]]; then
+ if [[ $(id -u) == 0 ]]; then
+ ewarn "Skipping tests since they cannot be run under the root user."
+ ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+ return
+ fi
+
+ WINEPREFIX="${T}/.wine-${ABI}" \
+ Xemake test
+ fi
+}
+
+multilib_src_install_all() {
+ local DOCS=( ANNOUNCE AUTHORS README )
+ add_locale_docs() {
+ local locale_doc="documentation/README.$1"
+ [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+ }
+ l10n_for_each_locale_do add_locale_docs
+
+ einstalldocs
+ prune_libtool_files --all
+
+ if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+ rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+ "${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+ fi
+
+ # Remove wineconsole if neither backend is installed #551124
+ if ! use X && ! use ncurses; then
+ rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
+ rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
+ rm_wineconsole() {
+ rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
+ }
+ multilib_foreach_abi rm_wineconsole
+ fi
+
+ use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+ use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+ if use abi_x86_64 && ! use abi_x86_32; then
+ dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+ dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+ fi
+
+ # Failglob for binloops, shouldn't be necessary, but including to stay safe
+ eshopts_push -s failglob #615218
+ # Make wrappers for binaries for handling multiple variants
+ # Note: wrappers instead of symlinks because some are shell which use basename
+ local b
+ for b in "${D%/}${MY_PREFIX}"/bin/*; do
+ make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+ done
+ eshopts_pop
+}
+
+pkg_postinst() {
+ eselect wine register ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine register --vanilla ${P} || die
+ else
+ if use staging; then
+ eselect wine register --staging ${P} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+
+ xdg_desktop_database_update
+
+ if ! use gecko; then
+ ewarn "Without Wine Gecko, wine prefixes will not have a default"
+ ewarn "implementation of iexplore. Many older windows applications"
+ ewarn "rely upon the existence of an iexplore implementation, so"
+ ewarn "you will likely need to install an external one, like via winetricks"
+ fi
+ if ! use mono; then
+ ewarn "Without Wine Mono, wine prefixes will not have a default"
+ ewarn "implementation of .NET. Many windows applications rely upon"
+ ewarn "the existence of a .NET implementation, so you will likely need"
+ ewarn "to install an external one, like via winetricks"
+ fi
+}
+
+pkg_prerm() {
+ eselect wine deregister ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine deregister --vanilla ${P} || die
+ else
+ if use staging; then
+ eselect wine deregister --staging ${P} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-9999.ebuild
index e7da95dd642e..5a5e118f347f 100644
--- a/app-emulation/wine-staging/wine-staging-9999.ebuild
+++ b/app-emulation/wine-staging/wine-staging-9999.ebuild
@@ -128,7 +128,7 @@ RDEPEND="${COMMON_DEPEND}
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
- mono? ( app-emulation/wine-mono:4.7.1 )
+ mono? ( app-emulation/wine-mono:4.7.3 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
diff --git a/app-emulation/wine-vanilla/Manifest b/app-emulation/wine-vanilla/Manifest
index 215ce503fe9e..1d05601237b8 100644
--- a/app-emulation/wine-vanilla/Manifest
+++ b/app-emulation/wine-vanilla/Manifest
@@ -8,6 +8,7 @@ EBUILD wine-vanilla-3.0.1.ebuild 17123 BLAKE2B 5aef4adb2ece22b4abaee6fcff8fc28aa
EBUILD wine-vanilla-3.0.2.ebuild 17125 BLAKE2B 51d4eeb0ef880774cfd8ffce30c8482e9c0a847cbfbecb15159e95497c9a56f62a7ecb1c941bda4f31fe4d89bd11fb740d747f28df28275ead43503af994eaf5 SHA512 011941555712a3a02ff08bdab12b467da71a151efdeb0bce060b9c51c02f8ffec5368b70969a36424b9272ad981e2e8a4725f7de35a8d6064e9e8ad00ccb0f35
EBUILD wine-vanilla-3.11.ebuild 17329 BLAKE2B 4e0f08f51a31405ea56bcd7fa6e27c6e2060bc34fcb23dc7c6342d33abac6d62b5b664da6727094e9cc5105ccef9e026d75bc24a9c3aaa266069fe5fcddd29e1 SHA512 44d9a8470cfd621237c1f7fc389040b11eb0439429804f6472b1488b6372a091b123159f6ea32f2b911df320f303983ea94449e87814cc6840cefbbfedd7887c
EBUILD wine-vanilla-3.12.ebuild 17329 BLAKE2B 4e0f08f51a31405ea56bcd7fa6e27c6e2060bc34fcb23dc7c6342d33abac6d62b5b664da6727094e9cc5105ccef9e026d75bc24a9c3aaa266069fe5fcddd29e1 SHA512 44d9a8470cfd621237c1f7fc389040b11eb0439429804f6472b1488b6372a091b123159f6ea32f2b911df320f303983ea94449e87814cc6840cefbbfedd7887c
+EBUILD wine-vanilla-3.13-r1.ebuild 17329 BLAKE2B 5ed8456f9f3e5961eb828e58f7829b4de2a5f2e4eb30430fecc98968acb0660b2fa1534672018d871222fca26cc9b667b9d570f8bc02121db6ae333322942db3 SHA512 660dcd599cfd1fda4f63d2dbf1bf5e3a8c22efa2a3954e311113b551c9974c23a8ffcf25075f13fcf231ff7076d902e0b739f31704fe7af5ceb3d3e3ddcf85db
EBUILD wine-vanilla-3.13.ebuild 17329 BLAKE2B 4e0f08f51a31405ea56bcd7fa6e27c6e2060bc34fcb23dc7c6342d33abac6d62b5b664da6727094e9cc5105ccef9e026d75bc24a9c3aaa266069fe5fcddd29e1 SHA512 44d9a8470cfd621237c1f7fc389040b11eb0439429804f6472b1488b6372a091b123159f6ea32f2b911df320f303983ea94449e87814cc6840cefbbfedd7887c
-EBUILD wine-vanilla-9999.ebuild 17329 BLAKE2B 4e0f08f51a31405ea56bcd7fa6e27c6e2060bc34fcb23dc7c6342d33abac6d62b5b664da6727094e9cc5105ccef9e026d75bc24a9c3aaa266069fe5fcddd29e1 SHA512 44d9a8470cfd621237c1f7fc389040b11eb0439429804f6472b1488b6372a091b123159f6ea32f2b911df320f303983ea94449e87814cc6840cefbbfedd7887c
+EBUILD wine-vanilla-9999.ebuild 17329 BLAKE2B 5ed8456f9f3e5961eb828e58f7829b4de2a5f2e4eb30430fecc98968acb0660b2fa1534672018d871222fca26cc9b667b9d570f8bc02121db6ae333322942db3 SHA512 660dcd599cfd1fda4f63d2dbf1bf5e3a8c22efa2a3954e311113b551c9974c23a8ffcf25075f13fcf231ff7076d902e0b739f31704fe7af5ceb3d3e3ddcf85db
MISC metadata.xml 3082 BLAKE2B 5ddadb49dd2e5b9da259d3313e2406e37871271f8261e9501508a50220a8ea31a68185d5fcecce968bc4f4915de6901060d980476ce2ddd61d1866d2766b0cfe SHA512 fa40b440a418dd442bdebb7914c84f648f74a18286f91d59726cbfefa1bebec8afab1f9a7b6ed8c7ae2788253dcaea9dc13cb4eff09ca6da56370e280952be70
diff --git a/app-emulation/wine-vanilla/wine-vanilla-3.13-r1.ebuild b/app-emulation/wine-vanilla/wine-vanilla-3.13-r1.ebuild
new file mode 100644
index 000000000000..96e3367ccf48
--- /dev/null
+++ b/app-emulation/wine-vanilla/wine-vanilla-3.13-r1.ebuild
@@ -0,0 +1,531 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator xdg-utils
+
+MY_PN="${PN%%-*}"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ MAJOR_V=$(get_version_component_range 1)
+ SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+fi
+S="${WORKDIR}/${MY_P}"
+
+GWP_V="20180120"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~np-hardass/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+LICENSE="LGPL-2.1"
+SLOT="${PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks v4l vkd3d vulkan +X +xcomposite xinerama +xml"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ X? ( truetype )
+ elibc_glibc? ( threads )
+ osmesa? ( opengl )
+ test? ( abi_x86_32 )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+COMMON_DEPEND="
+ X? (
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+ )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
+ gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+ gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+ )
+ jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
+ ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/glu[${MULTILIB_USEDEP}]
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+ xml? (
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ dev-libs/libxslt[${MULTILIB_USEDEP}]
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/wine-desktop-common
+ >app-eselect/eselect-wine-0.3
+ !app-emulation/wine:0
+ dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+ gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
+ mono? ( app-emulation/wine-mono:4.7.3 )
+ perl? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ pulseaudio? (
+ realtime? ( sys-auth/rtkit )
+ )
+ samba? ( >=net-fs/samba-3.0.25[winbind] )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ sys-devel/flex
+ >=sys-kernel/linux-headers-2.6
+ virtual/pkgconfig
+ virtual/yacc
+ X? ( x11-base/xorg-proto )
+ prelink? ( sys-devel/prelink )
+ xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+ "${PATCHDIR}/patches/${MY_PN}-1.5.26-winegcc.patch" #260726
+ "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615
+ "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508
+ "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
+ DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ # GCC-specific bugs
+ if tc-is-gcc; then
+ # bug #549768
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
+ ebegin "Checking for gcc-5 ms_abi compiler bug"
+ $(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
+ # Run in subshell to prevent "Aborted" message
+ ( "${T}"/pr66838 || false ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/549768"
+ eerror
+ return 1
+ fi
+ fi
+ # bug #574044
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
+ ebegin "Checking for gcc-5-3 stack realignment compiler bug"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
+ if ! eend $?; then
+ eerror "Wine cannot be built with this version of gcc-5.3"
+ eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
+ eerror "or use gcc-config to select a different compiler version."
+ eerror "See https://bugs.gentoo.org/574044"
+ eerror
+ return 1
+ fi
+ fi
+ fi
+
+ # Ensure compiler support
+ if use abi_x86_64; then
+ ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
+ # Compile in subshell to prevent "Aborted" message
+ ( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
+ if ! eend $?; then
+ eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
+ eerror
+ eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
+ eerror
+ return 1
+ fi
+ fi
+}
+
+wine_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ if use abi_x86_64; then
+ if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
+ eerror "You need gcc-4.4+ to compile 64-bit wine"
+ die
+ elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
+ eerror "You need clang-3.8+ to compile 64-bit wine"
+ die
+ fi
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
+ ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
+ ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
+ ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
+ fi
+ if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
+ if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
+ ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
+ ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
+ ewarn "See package.env in man 5 portage for more information on how to do this."
+ ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
+ fi
+ fi
+
+ if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+ eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+ eerror "See https://bugs.gentoo.org/487864 for more details."
+ eerror
+ return 1
+ fi
+}
+
+wine_env_vcs_vars() {
+ local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+ local pn_live_val="${pn_live_var}"
+ eval pn_live_val='$'${pn_live_val}
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environmental variables"
+ eerror "WINE_COMMIT"
+ eerror
+ return 1
+ fi
+}
+
+pkg_pretend() {
+ wine_build_environment_check || die
+
+ # Verify OSS support
+ if use oss && ! use kernel_FreeBSD; then
+ if ! has_version ">=media-sound/oss-4"; then
+ eerror "You cannot build wine with USE=oss without having support from a"
+ eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
+ eerror
+ die
+ fi
+ fi
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+ wine_env_vcs_vars || die
+
+ WINE_VARIANT="${PN#wine}-${PV}"
+ WINE_VARIANT="${WINE_VARIANT#-}"
+
+ MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+ MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+ MY_DATADIR="${MY_DATAROOTDIR}"
+ MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+ MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+ MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+ MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+ MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ EGIT_CHECKOUT_DIR="${S}" EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
+ fi
+
+ default
+
+ l10n_find_plocales_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+ eapply_bin(){
+ local patch
+ for patch in ${PATCHES_BIN[@]}; do
+ patchbin --nogit < "${patch}" || die
+ done
+ }
+
+ local md5="$(md5sum server/protocol.def)"
+
+ default
+ eapply_bin
+ eautoreconf
+
+ # Modification of the server protocol requires regenerating the server requests
+ if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+ einfo "server/protocol.def was patched; running tools/make_requests"
+ tools/make_requests || die #432348
+ fi
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+ if ! use run-exes; then
+ sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+ fi
+
+ # Edit wine.desktop to work for specific variant
+ sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+ # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+ cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+ l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+ # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+ # Duplicate manpages input files for wine64
+ local f
+ for f in loader/*.man.in; do
+ cp ${f} ${f/wine/wine64} || die
+ done
+ # Add wine64 manpages to Makefile
+ if use abi_x86_64; then
+ sed -i "/wine.man.in/i \
+ \\\twine64.man.in \\\\" loader/Makefile.in || die
+ sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+ fi
+
+ rm_man_file(){
+ local file="${1}"
+ loc=${2}
+ sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+ }
+
+ while read f; do
+ l10n_for_each_disabled_locale_do rm_man_file "${f}"
+ done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+ wine_compiler_check || die
+
+ export LDCONFIG=/bin/true
+ use custom-cflags || strip-flags
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${MY_PREFIX}"
+ --datarootdir="${MY_DATAROOTDIR}"
+ --datadir="${MY_DATADIR}"
+ --docdir="${MY_DOCDIR}"
+ --includedir="${MY_INCLUDEDIR}"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+ --libexecdir="${MY_LIBEXECDIR}"
+ --localstatedir="${MY_LOCALSTATEDIR}"
+ --mandir="${MY_MANDIR}"
+ --sysconfdir=/etc/wine
+ $(use_with alsa)
+ $(use_with capi)
+ $(use_with lcms cms)
+ $(use_with cups)
+ $(use_with ncurses curses)
+ $(use_with udisks dbus)
+ $(use_with fontconfig)
+ $(use_with ssl gnutls)
+ $(use_enable gecko mshtml)
+ $(use_with gphoto2 gphoto)
+ $(use_with gsm)
+ $(use_with gssapi)
+ $(use_with gstreamer)
+ --without-hal
+ $(use_with jpeg)
+ $(use_with kerberos krb5)
+ $(use_with ldap)
+ $(use_enable mono mscoree)
+ $(use_with mp3 mpg123)
+ $(use_with netapi)
+ $(use_with nls gettext)
+ $(use_with openal)
+ $(use_with opencl)
+ $(use_with opengl)
+ $(use_with osmesa)
+ $(use_with oss)
+ $(use_with pcap)
+ $(use_with png)
+ $(use_with pulseaudio pulse)
+ $(use_with threads pthread)
+ $(use_with scanner sane)
+ $(use_with sdl)
+ $(use_enable test tests)
+ $(use_with truetype freetype)
+ $(use_with udev)
+ $(use_with v4l)
+ $(use_with vkd3d)
+ $(use_with vulkan)
+ $(use_with X x)
+ $(use_with X xfixes)
+ $(use_with xcomposite)
+ $(use_with xinerama)
+ $(use_with xml)
+ $(use_with xml xslt)
+ )
+
+ local PKG_CONFIG AR RANLIB
+ # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+ # set AR and RANLIB to make QA scripts happy; #483342
+ tc-export PKG_CONFIG AR RANLIB
+
+ if use amd64; then
+ if [[ ${ABI} == amd64 ]]; then
+ myconf+=( --enable-win64 )
+ else
+ myconf+=( --disable-win64 )
+ fi
+
+ # Note: using --with-wine64 results in problems with multilib.eclass
+ # CC/LD hackery. We're using separate tools instead.
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+ emake depend
+}
+
+multilib_src_test() {
+ # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+ if [[ ${ABI} == x86 ]]; then
+ if [[ $(id -u) == 0 ]]; then
+ ewarn "Skipping tests since they cannot be run under the root user."
+ ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+ return
+ fi
+
+ WINEPREFIX="${T}/.wine-${ABI}" \
+ Xemake test
+ fi
+}
+
+multilib_src_install_all() {
+ local DOCS=( ANNOUNCE AUTHORS README )
+ add_locale_docs() {
+ local locale_doc="documentation/README.$1"
+ [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+ }
+ l10n_for_each_locale_do add_locale_docs
+
+ einstalldocs
+ prune_libtool_files --all
+
+ if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+ rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+ "${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+ fi
+
+ # Remove wineconsole if neither backend is installed #551124
+ if ! use X && ! use ncurses; then
+ rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
+ rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
+ rm_wineconsole() {
+ rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
+ }
+ multilib_foreach_abi rm_wineconsole
+ fi
+
+ use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+ use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+ if use abi_x86_64 && ! use abi_x86_32; then
+ dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+ dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+ fi
+
+ # Failglob for binloops, shouldn't be necessary, but including to stay safe
+ eshopts_push -s failglob #615218
+ # Make wrappers for binaries for handling multiple variants
+ # Note: wrappers instead of symlinks because some are shell which use basename
+ local b
+ for b in "${D%/}${MY_PREFIX}"/bin/*; do
+ make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+ done
+ eshopts_pop
+}
+
+pkg_postinst() {
+ eselect wine register ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine register --vanilla ${P} || die
+ fi
+
+ eselect wine update --all --if-unset || die
+
+ xdg_desktop_database_update
+
+ if ! use gecko; then
+ ewarn "Without Wine Gecko, wine prefixes will not have a default"
+ ewarn "implementation of iexplore. Many older windows applications"
+ ewarn "rely upon the existence of an iexplore implementation, so"
+ ewarn "you will likely need to install an external one, like via winetricks"
+ fi
+ if ! use mono; then
+ ewarn "Without Wine Mono, wine prefixes will not have a default"
+ ewarn "implementation of .NET. Many windows applications rely upon"
+ ewarn "the existence of a .NET implementation, so you will likely need"
+ ewarn "to install an external one, like via winetricks"
+ fi
+}
+
+pkg_prerm() {
+ eselect wine deregister ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine deregister --vanilla ${P} || die
+ fi
+
+ eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
index cdb123c486e7..96e3367ccf48 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
@@ -107,7 +107,7 @@ RDEPEND="${COMMON_DEPEND}
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
- mono? ( app-emulation/wine-mono:4.7.1 )
+ mono? ( app-emulation/wine-mono:4.7.3 )
perl? (
dev-lang/perl
dev-perl/XML-Simple