summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/Manifest.gzbin20546 -> 20724 bytes
-rw-r--r--app-emulation/buildah/Manifest2
-rw-r--r--app-emulation/buildah/buildah-1.7.1.ebuild56
-rw-r--r--app-emulation/containers-storage/Manifest2
-rw-r--r--app-emulation/containers-storage/containers-storage-0_pre20180730.ebuild7
-rw-r--r--app-emulation/docker-compose/Manifest10
-rw-r--r--app-emulation/docker-compose/docker-compose-1.19.0.ebuild71
-rw-r--r--app-emulation/docker-compose/docker-compose-1.21.2-r1.ebuild71
-rw-r--r--app-emulation/docker-compose/docker-compose-1.22.0-r1.ebuild72
-rw-r--r--app-emulation/docker-compose/docker-compose-1.23.1-r1.ebuild72
-rw-r--r--app-emulation/docker-compose/docker-compose-1.23.2.ebuild8
-rw-r--r--app-emulation/docker/Manifest1
-rw-r--r--app-emulation/docker/files/bsc1073877-docker-apparmor-add-signal.patch20
-rw-r--r--app-emulation/dynamips/Manifest1
-rw-r--r--app-emulation/dynamips/files/0.2.14-docs.patch20
-rw-r--r--app-emulation/faudio/Manifest9
-rw-r--r--app-emulation/faudio/faudio-19.01.ebuild95
-rw-r--r--app-emulation/faudio/faudio-19.02.ebuild95
-rw-r--r--app-emulation/faudio/faudio-19.03.ebuild95
-rw-r--r--app-emulation/faudio/faudio-9999.ebuild95
-rw-r--r--app-emulation/faudio/files/faudio.pc11
-rw-r--r--app-emulation/faudio/metadata.xml29
-rw-r--r--app-emulation/libpod/Manifest2
-rw-r--r--app-emulation/libpod/libpod-1.1.2.ebuild139
-rw-r--r--app-emulation/libvirt/Manifest15
-rw-r--r--app-emulation/libvirt/files/libvirt-5.1.0-do-not-use-sysconf.patch34
-rw-r--r--app-emulation/libvirt/files/libvirt-5.2.0-do-not-use-sysconf.patch170
-rw-r--r--app-emulation/libvirt/libvirt-4.5.0-r1.ebuild383
-rw-r--r--app-emulation/libvirt/libvirt-4.9.0.ebuild6
-rw-r--r--app-emulation/libvirt/libvirt-5.0.0-r1.ebuild (renamed from app-emulation/libvirt/libvirt-4.10.0.ebuild)20
-rw-r--r--app-emulation/libvirt/libvirt-5.1.0.ebuild (renamed from app-emulation/libvirt/libvirt-5.0.0.ebuild)25
-rw-r--r--app-emulation/libvirt/libvirt-9999.ebuild17
-rw-r--r--app-emulation/nemu/Manifest6
-rw-r--r--app-emulation/nemu/metadata.xml2
-rw-r--r--app-emulation/nemu/nemu-2.2.0.ebuild (renamed from app-emulation/nemu/nemu-2.0.0.ebuild)50
-rw-r--r--app-emulation/playonlinux/Manifest2
-rw-r--r--app-emulation/playonlinux/playonlinux-4.3.4.ebuild106
-rw-r--r--app-emulation/punes/Manifest5
-rw-r--r--app-emulation/punes/files/punes-0.102-qt-5.11-fix.patch21
-rw-r--r--app-emulation/punes/punes-0.103.ebuild (renamed from app-emulation/punes/punes-0.102.ebuild)7
-rw-r--r--app-emulation/qemu/Manifest3
-rw-r--r--app-emulation/qemu/qemu-3.1.0-r3.ebuild815
-rw-r--r--app-emulation/qemu/qemu-9999.ebuild2
-rw-r--r--app-emulation/skopeo/Manifest2
-rw-r--r--app-emulation/skopeo/skopeo-0.1.35.ebuild54
-rw-r--r--app-emulation/slirp4netns/Manifest2
-rw-r--r--app-emulation/slirp4netns/slirp4netns-0.3.0_beta1.ebuild33
-rw-r--r--app-emulation/vkd3d/Manifest2
-rw-r--r--app-emulation/vkd3d/vkd3d-1.1.ebuild2
-rw-r--r--app-emulation/wine-desktop-common/Manifest1
-rw-r--r--app-emulation/wine-desktop-common/wine-desktop-common-20150204-r1.ebuild32
-rw-r--r--app-emulation/wine-mono/Manifest2
-rw-r--r--app-emulation/wine-mono/wine-mono-4.8.0.ebuild21
-rw-r--r--app-emulation/wine-staging/Manifest14
-rw-r--r--app-emulation/wine-staging/metadata.xml1
-rw-r--r--app-emulation/wine-staging/wine-staging-4.2.ebuild614
-rw-r--r--app-emulation/wine-staging/wine-staging-4.3.ebuild616
-rw-r--r--app-emulation/wine-staging/wine-staging-4.4.ebuild616
-rw-r--r--app-emulation/wine-staging/wine-staging-9999.ebuild8
-rw-r--r--app-emulation/wine-vanilla/Manifest15
-rw-r--r--app-emulation/wine-vanilla/metadata.xml1
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-4.0.ebuild4
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-4.1.ebuild2
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-4.2.ebuild532
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-4.3.ebuild534
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-4.4.ebuild534
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-9999.ebuild12
-rw-r--r--app-emulation/winetricks/Manifest6
-rw-r--r--app-emulation/winetricks/winetricks-20190310.ebuild (renamed from app-emulation/winetricks/winetricks-20181203.ebuild)48
-rw-r--r--app-emulation/winetricks/winetricks-99999999.ebuild50
-rw-r--r--app-emulation/xen-pvgrub/Manifest6
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.10.3.ebuild2
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.12.0_rc5.ebuild (renamed from app-emulation/xen-pvgrub/xen-pvgrub-4.12.0_rc2.ebuild)2
-rw-r--r--app-emulation/xen-tools/Manifest15
-rw-r--r--app-emulation/xen-tools/files/gentoo-patches.conf97
-rw-r--r--app-emulation/xen-tools/xen-tools-4.10.3-r1.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.10.3.ebuild)4
-rw-r--r--app-emulation/xen-tools/xen-tools-4.10.3-r2.ebuild464
-rw-r--r--app-emulation/xen-tools/xen-tools-4.11.1-r2.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.11.1.ebuild)4
-rw-r--r--app-emulation/xen-tools/xen-tools-4.12.0_rc5.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.12.0_rc2.ebuild)8
-rw-r--r--app-emulation/xen/Manifest11
-rw-r--r--app-emulation/xen/xen-4.10.3-r1.ebuild (renamed from app-emulation/xen/xen-4.11.1.ebuild)6
-rw-r--r--app-emulation/xen/xen-4.11.1-r1.ebuild (renamed from app-emulation/xen/xen-4.10.3.ebuild)0
-rw-r--r--app-emulation/xen/xen-4.12.0_rc5.ebuild (renamed from app-emulation/xen/xen-4.12.0_rc2.ebuild)2
83 files changed, 6015 insertions, 1036 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 31bd6cc86605..c29cfe770fb0 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 899bc9a7f303..8633991f517a 100644
--- a/app-emulation/buildah/Manifest
+++ b/app-emulation/buildah/Manifest
@@ -3,10 +3,12 @@ DIST buildah-1.3.tar.gz 4486873 BLAKE2B 35fb62626d2466495da47579cf4ab23603797ef4
DIST buildah-1.4.tar.gz 4529960 BLAKE2B 20878d322d75c6c7c2921f91a9d5434231456d2e6a94c1d4b9ca4fc068bcde1359ba0113dbf97c05738e328933068cbe2a101a1fb429e602533a42a94282a840 SHA512 8b7fc6e94da3615ce42a13621f766602465404f30c7e4e0fcb50998aefb59ebd50a4e000b8b3887e150656a2dd8b8fb3541991f8cac1193322e828448b89056d
DIST buildah-1.5.tar.gz 4549438 BLAKE2B 0b547f2e06a012540e633e3e55d12d5f44141be7e7231643efd1914571b0d3b03411b5d95f2b8e616679c1f8c966fda818ac8d2a2ca016e89218480ca1c9392c SHA512 291bf7d174500e96279f7fba143f72349648b09fd2d100e6409ae75c8436ff323143ed5b8b1a3448865171916bd44790292344247f0579c33a72c1ff774631e5
DIST buildah-1.6.tar.gz 6296936 BLAKE2B 1c5e0b1a8d3f3be381c0b7cad5c52af95ee8977c46500e24888bda3f33fffead493b53deb6bbec879d342639fbaab69acbbf0186d7794f6261b3a81b958475e9 SHA512 fb946351602370ecadce84bddde9b8c954b5ecd1ed88f75db8335bf3b5cb0fc68b90a253433d51ddab04d32a6ec2e87d48282f51ec2c3965410533f1247e96f0
+DIST buildah-1.7.1.tar.gz 5048407 BLAKE2B e76cbc95ce835eaa26d53f6ce74b9bbb0d4d5683f91bdaf090158ffdc3d223a522a825af2d99d573a5c3cd57445b4d7c3d4aff359454beac81244821367ab3d7 SHA512 4b62a604dcae7a8fd0a1d74186c6f5d4a5288072b014d51d929f68442436e774428b99e62a78504314cbec517254f29d79294dc6c0b30a999788c9af12d0be01
DIST buildah-1.7.tar.gz 5041530 BLAKE2B 5a30cd75783448cfc0df8167406669c1b687781e819513c11d2941087aa4ccc1b87f10acc6e4a77de5dc991435640aefd6139ee9bb66e5952de63d1593b6fab9 SHA512 fb44787b59c4ba26bc9b38ba434c6eeebbdeeeb3d28d44819bfe05c42e1a8db63e41d75382d8f25c2c72b44c7512dd5f5b7f3e4838afa40fb67037616594f8c0
EBUILD buildah-1.3-r1.ebuild 2054 BLAKE2B 0451a2f5b941d833d4df6568bd0cfbbe631c80bd17d76c13fad1c522997957656f6133b030ee005c1f2c107188d2f24fc22b48af971065a096ba2c5025e9e994 SHA512 e5d7586db5cd9b3af24c04a147ec48d3d000dc73910fcd4222b44df94d02a92ebb37bd4cc2cc71b65dc9f452208033a5ac4633fe042fadc103b1e503bebfd865
EBUILD buildah-1.4.ebuild 1412 BLAKE2B 8ba820689066f0b078e2c19e5571275d2b9963f5ffeb5a1ceb09294da665aaf8defd025f0fa993d7cc5c0fdac5297ce74ee08ab4c6a061a7dc1967b1a8d8c981 SHA512 c679acd2f7a02d2dab0c3b87b4a919be7e1474cc72a2b3d184d153420134d5ae8e3a7748180d181f25c203a2b3fb125b3c5adfa4f2d1e8691dfe29b50f1829b9
EBUILD buildah-1.5.ebuild 1412 BLAKE2B 8ba820689066f0b078e2c19e5571275d2b9963f5ffeb5a1ceb09294da665aaf8defd025f0fa993d7cc5c0fdac5297ce74ee08ab4c6a061a7dc1967b1a8d8c981 SHA512 c679acd2f7a02d2dab0c3b87b4a919be7e1474cc72a2b3d184d153420134d5ae8e3a7748180d181f25c203a2b3fb125b3c5adfa4f2d1e8691dfe29b50f1829b9
EBUILD buildah-1.6.ebuild 1412 BLAKE2B 511b9dde818042cfbe49bc07d161888ea3383f80b87d5afe6c649b70cee0228c8b617d1bcac7f5e84b9a021f9c3a369251e2b0abaedbb2e0d6b568413da0d3c8 SHA512 cbfc5c4725b6323f34b52828e4511aeffd150fb239de9f129f15b61af7771d56a78eefef0608260e10971a17fe71ead658a4142cf4b12b2071a4057a636cab87
+EBUILD buildah-1.7.1.ebuild 1445 BLAKE2B e6316ea435fc2939c36911ce2b4b8cb7ea7ce39184fbc41b7a7812bd862c9d63dd77304774bfdc6dba64b153037451ea1d7df34cb47f2fb34241db18db5bf1b7 SHA512 bef66d51ea66af068b3f62cc085eb03142d8062e92f4b3e4ad8bdab63bd9a839318b6fda354ca290230c2a59b8234e5cc32a255f499bee96a5829f07d694f612
EBUILD buildah-1.7.ebuild 1412 BLAKE2B 799ca0da805e15f418189b6b82084f94c3e47fce4ae6ee3dbabf9fcc4d0f79d2b3d6db9017ebd6c203d3ca9c437623fa6e08af255410796ca423e94cb574dd62 SHA512 14cc66b762cd3370ea5f21085db4d69ded6ddeb64cfe469b457436946e253ec135fce320a60c54a4edd2cdd7a3277c6b937f80faae662df832f1ce807d8c3647
MISC metadata.xml 433 BLAKE2B 5b06389433033a1cf28f5fcae5dd41f4ebe0582d9537e8e163fad82046a66477a6ac3ed26ea63e60ea392919afcd3f0f45ae8ddabefd3a518707d5adff04e9d6 SHA512 3ab67ceda6ca0c8bd10f8868172d9686c8eeaa856760453be1c3ba907abb734ba37f5e9885547a16f69c67aa8d96e576de1ddf3208c08f4d44c2d90b081c74a6
diff --git a/app-emulation/buildah/buildah-1.7.1.ebuild b/app-emulation/buildah/buildah-1.7.1.ebuild
new file mode 100644
index 000000000000..b70628774159
--- /dev/null
+++ b/app-emulation/buildah/buildah-1.7.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit bash-completion-r1 golang-vcs-snapshot
+
+KEYWORDS="~amd64"
+DESCRIPTION="A tool that facilitates building OCI images"
+HOMEPAGE="https://github.com/containers/buildah"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="ostree selinux"
+EGO_PN="${HOMEPAGE#*//}"
+EGIT_COMMIT="v${PV}"
+GIT_COMMIT="93747b1"
+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() {
+ env -u GOCACHE -u XDG_CACHE_HOME GOPATH="${WORKDIR}/${P}" emake all
+}
+
+src_install() {
+ dodoc CHANGELOG.md CONTRIBUTING.md README.md install.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/containers-storage/Manifest b/app-emulation/containers-storage/Manifest
index 5334448c891a..d9dc2a765195 100644
--- a/app-emulation/containers-storage/Manifest
+++ b/app-emulation/containers-storage/Manifest
@@ -1,4 +1,4 @@
DIST containers-storage-0_pre20180730.tar.gz 1410155 BLAKE2B 24595693e9f5706130dd5e9bf38d11b2b267a64924cb854ad2d9db8c0a3d7c47fec5a00fa100be67ceaf35ea1a08fada7314d5fbe114fe7508f54e8bfc4f64b4 SHA512 25c5c3c16bb9f0da4e590cf658e56cc2ce1dbc81751f984b426b5e09a95ee816632b0267c8f3028254e88fcd39f5d087f0357862b34379180b33ff38d7028453
DIST github.com-pquerna-ffjson-af8b230fcd2007c7095168ca8ab94c68b60840c6.tar.gz 103474 BLAKE2B 66b456484cec51106e328a6d2c58a8597c1208956fca0c9f0ea45108b8d0942561882004a1ed5b90daa21509c9e0bc090dc9beed89b5a161f52ee8cf58e5d48f SHA512 243d8aed943dbadf3b127e07ad29a830ecded24aa80bb3bcc101db90ba8f3bfa03832e9d1f452e94b3eaccd683a044d0687a168e7e41979eb470442e689659c9
-EBUILD containers-storage-0_pre20180730.ebuild 3688 BLAKE2B 967aea99877e6f30d2100739390a73da5393e4a93d63a8c545122ffcfd4705afa257f917c6a37b739642619a4e4ba5513a184df141574f4dc939714be08296e0 SHA512 99217cbf6b5ebbbce066821a23a05d44fbbe585be04da4d7d8158ecbdda92361740b22665dc0876b0ef1ce1c6f0f0cd7645137e842bb3cd0be87dd47f2c39e26
+EBUILD containers-storage-0_pre20180730.ebuild 3703 BLAKE2B 03c9f196330705267975f8635000be5a644ab04f1fa136bfcc47175f782e1e0e3d98b64892a8777be265f5f6b009a46b70de10a24779b4d6835e8940638b4b26 SHA512 4fd423ac41a16998df3312aa4679df86c69f40f089bc7ec8fe0093a6010c41c230eb1e2d1cb3e34b92f06a50084602d01468d5f58abb6c83f2abe682d3213a11
MISC metadata.xml 691 BLAKE2B 512255d8e2d91d64a04fcd5da04fa6db20fbaf66c580491f001716a06c0ff81ff572491cb9b4274229f2312c7235abcbe8e32b6de9e2344b418015c253866f26 SHA512 eeb059ee40101e47a81d4ff871a55295c68891c9bb6a5a2f87d7855e3aea36648f2db77317f3660602d338d6f3f8cf1018cc61f2722fcd6cb78f7f32ac62989b
diff --git a/app-emulation/containers-storage/containers-storage-0_pre20180730.ebuild b/app-emulation/containers-storage/containers-storage-0_pre20180730.ebuild
index cd2ef64ffa54..d5caa6e3a626 100644
--- a/app-emulation/containers-storage/containers-storage-0_pre20180730.ebuild
+++ b/app-emulation/containers-storage/containers-storage-0_pre20180730.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -86,13 +86,14 @@ src_prepare() {
}
src_compile() {
+ export -n GOCACHE XDG_CACHE_HOME #678856
mkdir -p "${S}/src/github.com/pquerna" || die
ln -s "${S}/src/${EGO_PN}/vendor/github.com/pquerna/ffjson" "${WORKDIR}/${P}/src/github.com/pquerna/ffjson" || die
mkdir -p "${S}/bin" || die
cd "${S}/bin" || die
- GOPATH="${S}" GOBIN="${S}/bin" GOCACHE=off \
+ GOPATH="${S}" GOBIN="${S}/bin" \
go build -v -work -x ${EGO_BUILD_FLAGS} "${S}/src/github.com/pquerna/ffjson/ffjson.go" || die
- GOPATH="${S}" GOBIN="${S}/bin" PATH="${S}/bin:${PATH}" GOCACHE=off \
+ GOPATH="${S}" GOBIN="${S}/bin" PATH="${S}/bin:${PATH}" \
emake -C "${S}/src/${EGO_PN}" containers-storage docs
}
diff --git a/app-emulation/docker-compose/Manifest b/app-emulation/docker-compose/Manifest
index b36563f9dc89..855f090fc60a 100644
--- a/app-emulation/docker-compose/Manifest
+++ b/app-emulation/docker-compose/Manifest
@@ -1,13 +1,5 @@
AUX docker-compose-1.22.0-setup-py.patch 1763 BLAKE2B bb4c9cf7213b6f74115a61aa625dc8eb15435d958d5fd6704ca6f71bed2c3cb56f4d63b2c7a67bc6d78ede19f7656b9c56e04bd65c2e34ce03027d080f7c3b9e SHA512 dde4ce13526bbb6399c4ba251fe609eed53975e83b54c167d3a18e76bd612a33a59005bfc032d753c36eb433c78eabb6031c8013a93d8cd8735132e4de1bcb68
AUX docker-compose-1.23.0-setup-py.patch 1804 BLAKE2B b376b8d6381e978a60674c6894562858c97eef6434a4b0a17d2239fd0090df789ed3049e2f0d6b2c38d7ae502ea6aa22ae0506fd0c54cc459024ed80c49e3007 SHA512 6ca387d462c7d6eb0727638354ef25973a4a3fcbad0d74656c62a91ec50edd29a254121a060381f514efef0c259ba321cacd1adb0cafda26c550384178f46465
-DIST docker-compose-1.19.0.tar.gz 238307 BLAKE2B 2a7bbcf50c2cc591eba1d59db30cb0341e33e3f1ebe948e0b6762d9bffcdcc72d98e2da19fc549c5fabda192fca69a9d54e016601ddb4f4a94f0dc1c93f99a29 SHA512 f1d522621580a5130378508e6b15ad2e4708e9c5ff713627ca54308ab3e6bf000e21c55bbdf9585b2116e73648fdc773500a5415ab81a72dd2c69c9c07e71581
-DIST docker-compose-1.21.2.tar.gz 294070 BLAKE2B c27ce8708f20385ee3f072c4aa832a42dc975d08d71d9e61ce3a822055d606db7e1e7b6e182523e64115922416d5c1baeca14897a241e84873a97aa755bce539 SHA512 6392582d8c6c321458b1163336f1c902548cc250f9ab5b765d144287b006ef6dacdc47199fafbb6efe426e382325b94986aa159df08dec4974a71968862a8435
-DIST docker-compose-1.22.0.tar.gz 296747 BLAKE2B 9dfd25fb186436801d9c12900c4103c1c0d83bee3b424b3f2373247aeeb8261fed04cf9be9cee230a48e1c19523b48d5618a18f322c236bac1d769036f9ac979 SHA512 eccef2165221fcfdac089ffd3bd0795d08d8c6f7158709dbc2fc83a6d6e9466af4b73c0c7d24a751c6b546b4219e10dfc96cd41e13e7ebc676da603c97b7620e
-DIST docker-compose-1.23.1.tar.gz 302224 BLAKE2B 510a6236194297dd68b3b1a00239142d0f5dd1cacb79a82604a22e7f57581f778ad6027d0108ff896e9f4354c5eb0e1fb2ceea4285bee6a47e5cb8e32a3e5a75 SHA512 d294663e575657c361602693d66aca1ae3c0f5d4b25a74f4ab575be34054dc3168cb77d59fedf981f6bc98e253e87791187440f10c6957254c4f2e29ef7063d0
DIST docker-compose-1.23.2.tar.gz 302950 BLAKE2B b96db2e718bd6b05f6a35829749570320209def17b7536e402b9991b56e05a2d8da97fbd8d79d8125d9df6ff361a181fbfd71346a33a68704db0327a92757f66 SHA512 baa233c84ac770798ba3d8d256687630b331d774a8d60f3c0d5046aa0a74c8c3b8b0b8bc4431f3bc7d5b7a54f0646f5e2fd14d5af31db37cb546e86c96c8c1db
-EBUILD docker-compose-1.19.0.ebuild 2421 BLAKE2B a65d845d78d53347d4c863d522f87a29b2e26bd8309c2f5e10d4e1c119aba85e92a63dfd3340183509046822d28e70c45e0e2d7f284fd4e9d12ba89847f7284a SHA512 5e993e855076b450709e1c30958b2cb7710624b880e6b0d86d38c5de14a216cf9960f883c6c1ccab7c892d503b2ee9fac58a1c17e754e4ee55e167f8efb76771
-EBUILD docker-compose-1.21.2-r1.ebuild 2425 BLAKE2B f843c549ec46b148b41640834e838f979fa6f3233ff0da9452bd1ff496802cbc42bd90fdb20dbf8a335505616e0f9fdd7358d34a056d3bfaf96caa1ac879dfb1 SHA512 6b252def3e8afc17d0e9d5a86a7afe118f58f3f207bcf194f2ecf1d91c00495f38b10808a2b538034f8be95944d8904894fdbe1976425ddeba6b26fe97c207ba
-EBUILD docker-compose-1.22.0-r1.ebuild 2239 BLAKE2B fb97dda41ee3054ff833db3cf44ed5ae59b89a5868e94d3648c9e960c2c0f912a2efa885ec7a002b50a7872df574a24c76feaa9057fb053e8c4e5c6a6e534650 SHA512 fb3e0dd948b90a94d86cbab84a69aae411ba28f7f716edca10ae3d798a38a4803b27e73e46899e02cdbf33b54745754dc9e091c6a5a3b6f4c3920409a6314454
-EBUILD docker-compose-1.23.1-r1.ebuild 2242 BLAKE2B ae7b79572dc26ac32fa073ed4c6abec2aad688ce8505197c40a0aeecce1d145fa3414a6a61506b95270728c31bcb952a99b2f0fbe162bf78c9e75821cd661ede SHA512 628ebae7001febfe6f1d548897744aa965da9744a6ab5e29e6d503592d5f6018d337d7adb8994d47c000fc6cb8efa76108036040154d6f59f303462e0a4f03a9
-EBUILD docker-compose-1.23.2.ebuild 2284 BLAKE2B d399d8545163d88cbbfa378f33df764affc6651f53c689abaaeb892c1615db263df372a42169837f235ade2c40859b5e3da4185861a1b2aa193a3c69d78b670d SHA512 a98133c5dbb6d8287af63cd905279cd68ad43e70a7c2746e1617590628c0a40bfbd46078393255d2c454c3ce8faed2387571c108d772dd13e2b0025796045e84
+EBUILD docker-compose-1.23.2.ebuild 2349 BLAKE2B 5cb341e67a44bf58733480888958f04f508822bb7e26f801483b98f6ccabb2f43b46281414a8deb117b6d7ca9055af0e47e254812e4d01026c0b9cb1a93b127c SHA512 6a20d2e23d8611666591bf96caef1556f76a660e6bf25f72504c46fcbf87bb36eabd2d92b2dde2a3d96e2eb79c59dd82a42bd62de28db70e196d261961fee659
MISC metadata.xml 324 BLAKE2B 3ce39fdfe98f2c15cb17f46998dcf6a48a87368d0d71563ccd3325e305f88778531dcf21d0cbd335b1a9fc0e780d0ebcc5b51100b95a82223ee5436569753a8e SHA512 d8d5f8f462a459745a4b8a540b0fd648687b442df46c5f50413fa81df2a7d78ad27e7a615e2a77b96f5880840a942a69c350a375ed6ad4ea3a1f3fb4eb3ca7df
diff --git a/app-emulation/docker-compose/docker-compose-1.19.0.ebuild b/app-emulation/docker-compose/docker-compose-1.19.0.ebuild
deleted file mode 100644
index a5225f60246c..000000000000
--- a/app-emulation/docker-compose/docker-compose-1.19.0.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# 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} )
-
-inherit bash-completion-r1 distutils-r1 vcs-snapshot
-
-MY_PV=${PV/_/}
-
-DESCRIPTION="Multi-container orchestration for Docker"
-HOMEPAGE="https://www.docker.com/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${PN}-${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE="test"
-
-CDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/cached-property-1.2.0[${PYTHON_USEDEP}]
- <dev-python/cached-property-2[${PYTHON_USEDEP}]
- >=dev-python/dockerpty-0.4.1[${PYTHON_USEDEP}]
- <dev-python/dockerpty-0.5[${PYTHON_USEDEP}]
- >=dev-python/docker-py-2.7.0[${PYTHON_USEDEP}]
- <dev-python/docker-py-3.0[${PYTHON_USEDEP}]
- >=dev-python/docopt-0.6.1[${PYTHON_USEDEP}]
- <dev-python/docopt-0.7[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}]
- <dev-python/jsonschema-3[${PYTHON_USEDEP}]
- >=dev-python/PySocks-1.5.6[${PYTHON_USEDEP}]
- !~dev-python/PySocks-1.5.7[${PYTHON_USEDEP}]
- <dev-python/PySocks-2[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- <dev-python/pyyaml-4[${PYTHON_USEDEP}]
- !~dev-python/requests-2.11.0[${PYTHON_USEDEP}]
- <dev-python/requests-2.19[${PYTHON_USEDEP}]
- >=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
- >=dev-python/six-1.3.0[${PYTHON_USEDEP}]
- <dev-python/six-2[${PYTHON_USEDEP}]
- >=dev-python/texttable-0.9[${PYTHON_USEDEP}]
- <dev-python/texttable-0.10[${PYTHON_USEDEP}]
- >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]
- <dev-python/websocket-client-1.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '<dev-python/enum34-2[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/backports-ssl-match-hostname-3.5[${PYTHON_USEDEP}]' 'python2_7' )
-"
-DEPEND="
- ${CDEPEND}
- test? (
- dev-python/pytest[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]' 'python2_7' )
- )
-"
-RDEPEND="${CDEPEND}"
-
-python_test() {
- ${PYTHON} -m pytest tests/unit || die "tests failed under ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp contrib/completion/bash/docker-compose ${PN}
-
- insinto /usr/share/zsh/site-functions
- doins contrib/completion/zsh/*
-
- distutils-r1_python_install_all
-}
diff --git a/app-emulation/docker-compose/docker-compose-1.21.2-r1.ebuild b/app-emulation/docker-compose/docker-compose-1.21.2-r1.ebuild
deleted file mode 100644
index face1dd8c686..000000000000
--- a/app-emulation/docker-compose/docker-compose-1.21.2-r1.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# 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} )
-
-inherit bash-completion-r1 distutils-r1 vcs-snapshot
-
-MY_PV=${PV/_/}
-
-DESCRIPTION="Multi-container orchestration for Docker"
-HOMEPAGE="https://www.docker.com/"
-SRC_URI="https://github.com/docker/compose/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-CDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/cached-property-1.2.0[${PYTHON_USEDEP}]
- <dev-python/cached-property-2[${PYTHON_USEDEP}]
- >=dev-python/dockerpty-0.4.1[${PYTHON_USEDEP}]
- <dev-python/dockerpty-0.5[${PYTHON_USEDEP}]
- >=dev-python/docker-py-3.3.0[${PYTHON_USEDEP}]
- <dev-python/docker-py-4.0[${PYTHON_USEDEP}]
- >=dev-python/docopt-0.6.1[${PYTHON_USEDEP}]
- <dev-python/docopt-0.7[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}]
- <dev-python/jsonschema-3[${PYTHON_USEDEP}]
- >=dev-python/PySocks-1.5.6[${PYTHON_USEDEP}]
- !~dev-python/PySocks-1.5.7[${PYTHON_USEDEP}]
- <dev-python/PySocks-2[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- <dev-python/pyyaml-4[${PYTHON_USEDEP}]
- !~dev-python/requests-2.11.0[${PYTHON_USEDEP}]
- <dev-python/requests-2.19[${PYTHON_USEDEP}]
- >=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
- >=dev-python/six-1.3.0[${PYTHON_USEDEP}]
- <dev-python/six-2[${PYTHON_USEDEP}]
- >=dev-python/texttable-0.9[${PYTHON_USEDEP}]
- <dev-python/texttable-0.10[${PYTHON_USEDEP}]
- >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]
- <dev-python/websocket-client-1.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '<dev-python/enum34-2[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/backports-ssl-match-hostname-3.5[${PYTHON_USEDEP}]' 'python2_7' )
-"
-DEPEND="
- ${CDEPEND}
- test? (
- dev-python/pytest[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]' 'python2_7' )
- )
-"
-RDEPEND="${CDEPEND}"
-
-python_test() {
- ${PYTHON} -m pytest tests/unit || die "tests failed under ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp contrib/completion/bash/docker-compose ${PN}
-
- insinto /usr/share/zsh/site-functions
- doins contrib/completion/zsh/*
-
- distutils-r1_python_install_all
-}
diff --git a/app-emulation/docker-compose/docker-compose-1.22.0-r1.ebuild b/app-emulation/docker-compose/docker-compose-1.22.0-r1.ebuild
deleted file mode 100644
index a9900fc1c66c..000000000000
--- a/app-emulation/docker-compose/docker-compose-1.22.0-r1.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# 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} )
-
-inherit bash-completion-r1 distutils-r1 vcs-snapshot
-
-MY_PV=${PV/_/}
-
-DESCRIPTION="Multi-container orchestration for Docker"
-HOMEPAGE="https://github.com/docker/compose"
-SRC_URI="https://github.com/docker/compose/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-CDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/cached-property-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/dockerpty-0.4.1[${PYTHON_USEDEP}]
- >=dev-python/docker-py-3.4.1[${PYTHON_USEDEP}]
- >=dev-python/docopt-0.6.1[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}]
- >=dev-python/PySocks-1.5.6[${PYTHON_USEDEP}]
- !~dev-python/PySocks-1.5.7[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- >=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
- !~dev-python/requests-2.11.0[${PYTHON_USEDEP}]
- !~dev-python/requests-2.12.2[${PYTHON_USEDEP}]
- !~dev-python/requests-2.18.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.3.0[${PYTHON_USEDEP}]
- >=dev-python/texttable-0.9[${PYTHON_USEDEP}]
- >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/backports-ssl-match-hostname-3.5[${PYTHON_USEDEP}]' 'python2_7' )
-"
-DEPEND="
- ${CDEPEND}
- test? (
- dev-python/pytest[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]' 'python2_7' )
- )
-"
-RDEPEND="${CDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${P}-setup-py.patch
-)
-
-src_prepare() {
- # Address QA issue "docker-compose.exe: missing alias (symlink) for completed command."
- sed 's,^\(complete.*\) docker-compose\.exe\(.*\),\1\2,' -i contrib/completion/bash/docker-compose || die
-
- default
-}
-
-python_test() {
- ${PYTHON} -m pytest tests/unit || die "tests failed under ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp contrib/completion/bash/docker-compose ${PN}
-
- insinto /usr/share/zsh/site-functions
- doins contrib/completion/zsh/*
-
- distutils-r1_python_install_all
-}
diff --git a/app-emulation/docker-compose/docker-compose-1.23.1-r1.ebuild b/app-emulation/docker-compose/docker-compose-1.23.1-r1.ebuild
deleted file mode 100644
index 51f063dc06f6..000000000000
--- a/app-emulation/docker-compose/docker-compose-1.23.1-r1.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
-
-inherit bash-completion-r1 distutils-r1 vcs-snapshot
-
-MY_PV=${PV/_/}
-
-DESCRIPTION="Multi-container orchestration for Docker"
-HOMEPAGE="https://github.com/docker/compose"
-SRC_URI="https://github.com/docker/compose/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-CDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/cached-property-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/dockerpty-0.4.1[${PYTHON_USEDEP}]
- >=dev-python/docker-py-3.5.0[${PYTHON_USEDEP}]
- >=dev-python/docopt-0.6.1[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}]
- >=dev-python/PySocks-1.5.6[${PYTHON_USEDEP}]
- !~dev-python/PySocks-1.5.7[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- >=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
- !~dev-python/requests-2.11.0[${PYTHON_USEDEP}]
- !~dev-python/requests-2.12.2[${PYTHON_USEDEP}]
- !~dev-python/requests-2.18.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.3.0[${PYTHON_USEDEP}]
- >=dev-python/texttable-0.9[${PYTHON_USEDEP}]
- >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]' 'python2_7' )
- $(python_gen_cond_dep '>=dev-python/backports-ssl-match-hostname-3.5[${PYTHON_USEDEP}]' 'python2_7' )
-"
-DEPEND="
- ${CDEPEND}
- test? (
- dev-python/pytest[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]' 'python2_7' )
- )
-"
-RDEPEND="${CDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.23.0-setup-py.patch
-)
-
-src_prepare() {
- # Address QA issue "docker-compose.exe: missing alias (symlink) for completed command."
- sed 's,^\(complete.*\) docker-compose\.exe\(.*\),\1\2,' -i contrib/completion/bash/docker-compose || die
-
- default
-}
-
-python_test() {
- ${PYTHON} -m pytest tests/unit || die "tests failed under ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp contrib/completion/bash/docker-compose ${PN}
-
- insinto /usr/share/zsh/site-functions
- doins contrib/completion/zsh/*
-
- distutils-r1_python_install_all
-}
diff --git a/app-emulation/docker-compose/docker-compose-1.23.2.ebuild b/app-emulation/docker-compose/docker-compose-1.23.2.ebuild
index 67051b8efed6..721e14ac21a8 100644
--- a/app-emulation/docker-compose/docker-compose-1.23.2.ebuild
+++ b/app-emulation/docker-compose/docker-compose-1.23.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2018 Gentoo Authors
+# Copyright 2018-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/docker/compose/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="test"
RDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
@@ -32,7 +32,6 @@ RDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
>=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
<dev-python/pyyaml-4
>=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
- <dev-python/requests-2.21
>=dev-python/six-1.3.0[${PYTHON_USEDEP}]
<dev-python/six-2
>=dev-python/texttable-0.9.0[${PYTHON_USEDEP}]
@@ -53,6 +52,9 @@ src_prepare() {
# Address QA issue "docker-compose.exe: missing alias (symlink) for completed command."
sed 's,^\(complete.*\) docker-compose\.exe\(.*\),\1\2,' -i contrib/completion/bash/docker-compose || die
+ # Get rid of requests boundary
+ sed -i -e "/^.*requests/s/, <.*/',/" setup.py || die
+
default
}
diff --git a/app-emulation/docker/Manifest b/app-emulation/docker/Manifest
index 7b9df6c44f67..7d73df2df936 100644
--- a/app-emulation/docker/Manifest
+++ b/app-emulation/docker/Manifest
@@ -1,5 +1,4 @@
AUX bsc1073877-docker-apparmor-add-signal-r2.patch 2931 BLAKE2B 92737eb582f5c2b3bc548952e20f8b9512ea3abab785280a351202878a77fc5e7c00267498ac38cd13dfb5b21a891f5be827f8f4ed234ca34bb90523cd2ebacf SHA512 f1c57585146d89be987b19ebd99a0da69d75309885e3b2a098c1b5f339aafa360c3726fe5e99a2580c98c3f036d83eabd3d2d72461d97e8a0cbb4dbc27f895d4
-AUX bsc1073877-docker-apparmor-add-signal.patch 715 BLAKE2B cb97ebb2e7104e04264318fec93df80a5f7f9b4cfc84b9f31ea1185d7752e431d714dd901b168c490562688c124aac8d48fef9c1266d7a8fa07aa06de7e40d08 SHA512 936d3948fd3ccadd4a3810bb8fc32e31e7e24b810e87658e5e53560b515454db6b72b0cda3ace78b9267e197e55181c04fbea92a1656f6a282e29f37d2994adc
DIST docker-18.06.2.tar.gz 13675733 BLAKE2B 1b0852851a9c0412d7098b114f8ff62a7fc624f1bd77ba72629009c5b2afbbbacd79f93cdb4287bdb5a58c9b09ff76c9fb5b9ea40933686b62c78ebdc61d1a1b SHA512 78ab030555501071eee47964894798847d7a60ac826479215a2d0a74c75bac88ad212b7f5ab0f29444407456a3914c263c04a1398dc895586026440f203b50a4
DIST docker-18.09.2.tar.gz 15252871 BLAKE2B f87d3a7e6ccb4750eae231b88c686ad9c0be08aa8e0657343c89593d75374dfaeb063f842b8f5cef58e4b64982d3296a6808f076837243e61d75b93ad495fb44 SHA512 eacbeb754cdf2c111a2b72473b437e64cf176a5e93e1a9a0e5ed092d38db5846777d23c4ad51112d8a21317d471e5f1e93f85ae5c0ad1d5d50aea95e226dfa01
DIST docker-18.09.3.tar.gz 15249718 BLAKE2B ca63e611185d8514a3719e95dcc4688a1fcb4b155ffb8997e11442bd6719cc63d9e6aea9153254d281bcff1c48ea7f8c40c38bcda09b7f21b7718ccd348ee3a0 SHA512 c7df08c03c6bfd8451977cb86593d8ac68390c846c84cc4d8a32e05e815688ccd84a6296f819e440c850c2aa52c131686492206ec4d47765cd0af90c3c39dc03
diff --git a/app-emulation/docker/files/bsc1073877-docker-apparmor-add-signal.patch b/app-emulation/docker/files/bsc1073877-docker-apparmor-add-signal.patch
deleted file mode 100644
index 6bc3fa494e33..000000000000
--- a/app-emulation/docker/files/bsc1073877-docker-apparmor-add-signal.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From: Goldwyn Rodrigues <rgoldwyn@suse.com>
-Subject: Allow signal mediation while for apparmor profile
-
-Allows docker processes under docker-default ot receive all signals.
-
-Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>
----
- components/engine/profiles/apparmor/template.go | 1 +
- 1 file changed, 1 insertion(+)
-
---- a/components/engine/profiles/apparmor/template.go
-+++ b/components/engine/profiles/apparmor/template.go
-@@ -17,6 +17,7 @@ profile {{.Name}} flags=(attach_disconne
- capability,
- file,
- umount,
-+ signal (receive) peer=unconfined,
-
- deny @{PROC}/* w, # deny write for all files directly in /proc (not in a subdir)
- # deny write to files not in /proc/<number>/** or /proc/sys/**
diff --git a/app-emulation/dynamips/Manifest b/app-emulation/dynamips/Manifest
index 3372572031ee..8a69ecc22b14 100644
--- a/app-emulation/dynamips/Manifest
+++ b/app-emulation/dynamips/Manifest
@@ -1,4 +1,3 @@
-AUX 0.2.14-docs.patch 550 BLAKE2B f37293d4c46d37176020e28fac4174782ebee3fb223510e97e48cf52f748c8151dbd18a594e38b77753d34ef7ad201803713a2cb5c8a7081737eea20e6734977 SHA512 92d5dd0a5a4c619a0b0016bd355ba7463dd1663922e36cd11d1a5461e5f6c5a2be42f21ace8ebf67d5a0f383b4a58e670c5ba28982b769b0b7a773284af66ade
AUX dynamips-0.2.18-docs.patch 533 BLAKE2B 765024fa4246c5efc576c91619d7c01c00b67cb6eddd3086b1670ea4f89e000dab6680e38cdbd384d9850477a682f42070d9a74c59ffea0a1a1f8d095703e625 SHA512 293059e7f4fc848362e5d6c881386bea9fcf616117d2723a216e510cbc23372f40a6d757f84bcdb429b5eb61f74e99d334e7507c2161c4d28ccb973c14aa7893
DIST dynamips-0.2.18.tar.gz 833554 BLAKE2B 8152b436e8fc43061c5603a44ceae8feebdd4593649d2fb6a1814ca22cfce2f671f6f98df5f03ee6eeef10cf09fc444d406edd8d3b4a6037a89cf0e8301774ac SHA512 d66e32d72ecc9ebff5232377ac9aa5b966ceb08884cc7f8dc4a8cf3f56305e7cefd677624ba66278f6603a3b275c384bd0ff3905932461b1f8056106cd272a4c
EBUILD dynamips-0.2.18.ebuild 821 BLAKE2B 86ec42ec88cbbca52f6f50d9b703ad366452b730cf165714bcaf3a5a135c49872220e8fa6cc61b4d0ba0ce824fd0a100795a2f0493715e6080db1ec12ecce375 SHA512 a2a7ca16bb46b48ec1ef4e50bfabb0c6c420bb0baa43289dfeb83c11680f6a7f14be5957dcdedb8e48248192a8a054edeafb0a42135921d09168e9884b1248c0
diff --git a/app-emulation/dynamips/files/0.2.14-docs.patch b/app-emulation/dynamips/files/0.2.14-docs.patch
deleted file mode 100644
index 0572a04c4825..000000000000
--- a/app-emulation/dynamips/files/0.2.14-docs.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/CMakeLists.txt 2014-11-28 14:51:14.375913296 +0900
-+++ b/CMakeLists.txt 2014-11-28 14:52:09.579369288 +0900
-@@ -37,16 +37,6 @@
- add_subdirectory ( stable )
- add_subdirectory ( unstable )
-
--install_docs (
-- "ChangeLog"
-- "COPYING"
-- "MAINTAINERS"
-- "README"
-- "README.hypervisor"
-- "RELEASE-NOTES"
-- "TODO"
-- )
--
- # uninstall target - leaves behind any directory created during install
- set ( _templatefile "${CMAKE_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" )
- set ( _scriptfile "${CMAKE_BINARY_DIR}/cmake_uninstall.cmake" )
-
diff --git a/app-emulation/faudio/Manifest b/app-emulation/faudio/Manifest
new file mode 100644
index 000000000000..15d7325cb67d
--- /dev/null
+++ b/app-emulation/faudio/Manifest
@@ -0,0 +1,9 @@
+AUX faudio.pc 241 BLAKE2B 64fce2341df51cf608407d22953bcfdaac705f9031fe060eef9b9d45cf4eee5f8a5d747be76f0c68bbea5d3bda6aec5ca8fee6568a7355a90f95f04ef47531a2 SHA512 78ade9bf6b45ac0f942485844b023c2bc11dd77e72484da0260ce59a2dce6f9a70443ba4a64004d35b24b79688e03b6406e85fd7ed835e5952e1f50d1a9193ff
+DIST FAudio-19.01.tar.gz 885398 BLAKE2B 00b9c05cf67ed540a503937184d1c05faa957765c903473f94fddb0aa467efe79d90eb6f4fc88f61376849126104096e4b1204a6de6a31a74368cb991e8e44c0 SHA512 59447368eae94fc8a4bc1724a826bb4d8d53f65e4e5efa1f68fe0f7ea168f2c139e775975d93b26180b687cfb7419ec04bd2b285142a1fddb59e9575cc53e375
+DIST FAudio-19.02.tar.gz 885974 BLAKE2B f8b2402f4005125c583637482a595da9f1a05ffb8c2836498fa5abed1bdae17aa1f1c2c28eb58e0e311bc82f47d48bcb3c626801942f18ecac2eab46c5913e3b SHA512 f3ea82aae5f90bbac286b8e72c1cb6a70e41fdf86f9c1043b465cb242f1232574e59e0ec724f3c317ed4c44a12d4dde87c8b1bc03832e1b011b4e61d9f70da39
+DIST FAudio-19.03.tar.gz 886621 BLAKE2B 0cf0b60766d48472c72dc2aa9bbdb9a99db27836f38eccacb4be4bd98cf387b6009998018438e46835a9b9616d426b8a2c9f3c200b377bce2dc9bc18e42b0d37 SHA512 94e3e4f3f023879ef821d657e5a73ac25aab55c7be6a0afe77d75cabe644c9da083ae3c6a240b71af542da53a3eb34804e6a3193a0e619f89fcc20ff7d6ef095
+EBUILD faudio-19.01.ebuild 2399 BLAKE2B 2d8340562b9215a947b77de1af488c63a765ec654e73c5638cf7fab715f28a8067aad98c32bb8e0856d663f6ea9bc04f0af6bf78286b35f9685296bc53411a0c SHA512 b786b10dc4156c815fc1189add4afbbe164458b51fd25889f3730d76bd3ebd0a6dfd12f1166b8ac82f13c451be33582b8ee82c29dd96ba09eeecf57b76f46bed
+EBUILD faudio-19.02.ebuild 2399 BLAKE2B 2d8340562b9215a947b77de1af488c63a765ec654e73c5638cf7fab715f28a8067aad98c32bb8e0856d663f6ea9bc04f0af6bf78286b35f9685296bc53411a0c SHA512 b786b10dc4156c815fc1189add4afbbe164458b51fd25889f3730d76bd3ebd0a6dfd12f1166b8ac82f13c451be33582b8ee82c29dd96ba09eeecf57b76f46bed
+EBUILD faudio-19.03.ebuild 2399 BLAKE2B 2d8340562b9215a947b77de1af488c63a765ec654e73c5638cf7fab715f28a8067aad98c32bb8e0856d663f6ea9bc04f0af6bf78286b35f9685296bc53411a0c SHA512 b786b10dc4156c815fc1189add4afbbe164458b51fd25889f3730d76bd3ebd0a6dfd12f1166b8ac82f13c451be33582b8ee82c29dd96ba09eeecf57b76f46bed
+EBUILD faudio-9999.ebuild 2399 BLAKE2B 2d8340562b9215a947b77de1af488c63a765ec654e73c5638cf7fab715f28a8067aad98c32bb8e0856d663f6ea9bc04f0af6bf78286b35f9685296bc53411a0c SHA512 b786b10dc4156c815fc1189add4afbbe164458b51fd25889f3730d76bd3ebd0a6dfd12f1166b8ac82f13c451be33582b8ee82c29dd96ba09eeecf57b76f46bed
+MISC metadata.xml 1341 BLAKE2B a5fe79fca0c7f184466254e5f251c6248c20415795933b8797a4bd899535735ed93b54754937ed1003103cbbe3d5d6c5ffc5848c255cfd759cb06fb973065003 SHA512 8ad14c2ae094ff4ffd013458db62263b97cc5e616885cb229ef57ff8a4ab0dd943c2ab3840d086a81a4a10962c0d7411741ac6a8daaefb5167fe988a1dd8122a
diff --git a/app-emulation/faudio/faudio-19.01.ebuild b/app-emulation/faudio/faudio-19.01.ebuild
new file mode 100644
index 000000000000..295da5632494
--- /dev/null
+++ b/app-emulation/faudio/faudio-19.01.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# shellcheck disable=SC2034
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+
+inherit cmake-multilib virtualx
+
+FAUDIO_PN="FAudio"
+FAUDIO_PV="${PV}"
+FAUDIO_P="${FAUDIO_PN}-${FAUDIO_PV}"
+
+if [[ "${PV}" == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/FNA-XNA/${FAUDIO_PN}.git"
+else
+ SRC_URI="https://github.com/FNA-XNA/${FAUDIO_PN}/archive/${FAUDIO_PV}.tar.gz -> ${FAUDIO_P}.tar.gz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+ S="${WORKDIR}/${FAUDIO_P}"
+fi
+
+DESCRIPTION="FAudio - Accuracy-focused XAudio reimplementation for open platforms"
+HOMEPAGE="https://fna-xna.github.io/"
+LICENSE="ZLIB"
+SLOT="0"
+
+IUSE="+abi_x86_32 +abi_x86_64 debug ffmpeg xnasong test utils"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )"
+
+COMMON_DEPEND="
+ >=media-libs/libsdl2-2.0.9[sound,${MULTILIB_USEDEP}]
+ ffmpeg? ( media-video/ffmpeg:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ "-DCMAKE_INSTALL_BINDIR=bin"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include/${FAUDIO_PN}"
+ "-DCMAKE_INSTALL_LIBDIR=$(get_libdir)"
+ "-DCMAKE_INSTALL_PREFIX=${EPREFIX%/}/usr"
+ "-DCMAKE_BUILD_TYPE=$(usex debug Debug Release)"
+ "-DFORCE_ENABLE_DEBUGCONFIGURATION=$(usex debug ON OFF)"
+ "-DBUILD_TESTS=$(usex test ON OFF)"
+ "-DBUILD_UTILS=$(usex utils ON OFF)"
+ "-DFFMPEG=$(usex ffmpeg ON OFF)"
+ "-DXNASONG=$(usex xnasong ON OFF)"
+ )
+ if use ffmpeg; then
+ mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${PREFIX%/}/usr/$(get_libdir)" )
+ fi
+ cmake-utils_src_configure
+}
+
+src_configure() {
+ cmake-multilib_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_make
+ emake -C "${BUILD_DIR}" all
+}
+
+multilib_src_install() {
+ # FIXME: do we want to install the FAudio tools?
+ cmake-utils_src_install
+
+ sed -e "s/%LIB%/$(get_libdir)/g" "${FILESDIR}/faudio.pc" \
+ > "${T}/faudio.pc" \
+ || die "sed failed"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins "${T}/faudio.pc"
+
+ if use test; then
+ mkdir -p "${T}/$(get_libdir)"
+ cp "${BUILD_DIR}/faudio_tests" "${T}/$(get_libdir)/" || die "cp failed"
+ fi
+}
+
+faudio_test() {
+ XDG_RUNTIME_DIR="/run/user/0" virtx "${T}/$(get_libdir)/faudio_tests"
+}
+
+pkg_postinst() {
+ use test || return
+
+ # FIXME: FAudio tests are broken and also don't appear to work
+ # in the Portage sandbox.
+ multilib_foreach_abi faudio_test
+}
diff --git a/app-emulation/faudio/faudio-19.02.ebuild b/app-emulation/faudio/faudio-19.02.ebuild
new file mode 100644
index 000000000000..295da5632494
--- /dev/null
+++ b/app-emulation/faudio/faudio-19.02.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# shellcheck disable=SC2034
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+
+inherit cmake-multilib virtualx
+
+FAUDIO_PN="FAudio"
+FAUDIO_PV="${PV}"
+FAUDIO_P="${FAUDIO_PN}-${FAUDIO_PV}"
+
+if [[ "${PV}" == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/FNA-XNA/${FAUDIO_PN}.git"
+else
+ SRC_URI="https://github.com/FNA-XNA/${FAUDIO_PN}/archive/${FAUDIO_PV}.tar.gz -> ${FAUDIO_P}.tar.gz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+ S="${WORKDIR}/${FAUDIO_P}"
+fi
+
+DESCRIPTION="FAudio - Accuracy-focused XAudio reimplementation for open platforms"
+HOMEPAGE="https://fna-xna.github.io/"
+LICENSE="ZLIB"
+SLOT="0"
+
+IUSE="+abi_x86_32 +abi_x86_64 debug ffmpeg xnasong test utils"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )"
+
+COMMON_DEPEND="
+ >=media-libs/libsdl2-2.0.9[sound,${MULTILIB_USEDEP}]
+ ffmpeg? ( media-video/ffmpeg:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ "-DCMAKE_INSTALL_BINDIR=bin"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include/${FAUDIO_PN}"
+ "-DCMAKE_INSTALL_LIBDIR=$(get_libdir)"
+ "-DCMAKE_INSTALL_PREFIX=${EPREFIX%/}/usr"
+ "-DCMAKE_BUILD_TYPE=$(usex debug Debug Release)"
+ "-DFORCE_ENABLE_DEBUGCONFIGURATION=$(usex debug ON OFF)"
+ "-DBUILD_TESTS=$(usex test ON OFF)"
+ "-DBUILD_UTILS=$(usex utils ON OFF)"
+ "-DFFMPEG=$(usex ffmpeg ON OFF)"
+ "-DXNASONG=$(usex xnasong ON OFF)"
+ )
+ if use ffmpeg; then
+ mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${PREFIX%/}/usr/$(get_libdir)" )
+ fi
+ cmake-utils_src_configure
+}
+
+src_configure() {
+ cmake-multilib_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_make
+ emake -C "${BUILD_DIR}" all
+}
+
+multilib_src_install() {
+ # FIXME: do we want to install the FAudio tools?
+ cmake-utils_src_install
+
+ sed -e "s/%LIB%/$(get_libdir)/g" "${FILESDIR}/faudio.pc" \
+ > "${T}/faudio.pc" \
+ || die "sed failed"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins "${T}/faudio.pc"
+
+ if use test; then
+ mkdir -p "${T}/$(get_libdir)"
+ cp "${BUILD_DIR}/faudio_tests" "${T}/$(get_libdir)/" || die "cp failed"
+ fi
+}
+
+faudio_test() {
+ XDG_RUNTIME_DIR="/run/user/0" virtx "${T}/$(get_libdir)/faudio_tests"
+}
+
+pkg_postinst() {
+ use test || return
+
+ # FIXME: FAudio tests are broken and also don't appear to work
+ # in the Portage sandbox.
+ multilib_foreach_abi faudio_test
+}
diff --git a/app-emulation/faudio/faudio-19.03.ebuild b/app-emulation/faudio/faudio-19.03.ebuild
new file mode 100644
index 000000000000..295da5632494
--- /dev/null
+++ b/app-emulation/faudio/faudio-19.03.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# shellcheck disable=SC2034
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+
+inherit cmake-multilib virtualx
+
+FAUDIO_PN="FAudio"
+FAUDIO_PV="${PV}"
+FAUDIO_P="${FAUDIO_PN}-${FAUDIO_PV}"
+
+if [[ "${PV}" == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/FNA-XNA/${FAUDIO_PN}.git"
+else
+ SRC_URI="https://github.com/FNA-XNA/${FAUDIO_PN}/archive/${FAUDIO_PV}.tar.gz -> ${FAUDIO_P}.tar.gz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+ S="${WORKDIR}/${FAUDIO_P}"
+fi
+
+DESCRIPTION="FAudio - Accuracy-focused XAudio reimplementation for open platforms"
+HOMEPAGE="https://fna-xna.github.io/"
+LICENSE="ZLIB"
+SLOT="0"
+
+IUSE="+abi_x86_32 +abi_x86_64 debug ffmpeg xnasong test utils"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )"
+
+COMMON_DEPEND="
+ >=media-libs/libsdl2-2.0.9[sound,${MULTILIB_USEDEP}]
+ ffmpeg? ( media-video/ffmpeg:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ "-DCMAKE_INSTALL_BINDIR=bin"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include/${FAUDIO_PN}"
+ "-DCMAKE_INSTALL_LIBDIR=$(get_libdir)"
+ "-DCMAKE_INSTALL_PREFIX=${EPREFIX%/}/usr"
+ "-DCMAKE_BUILD_TYPE=$(usex debug Debug Release)"
+ "-DFORCE_ENABLE_DEBUGCONFIGURATION=$(usex debug ON OFF)"
+ "-DBUILD_TESTS=$(usex test ON OFF)"
+ "-DBUILD_UTILS=$(usex utils ON OFF)"
+ "-DFFMPEG=$(usex ffmpeg ON OFF)"
+ "-DXNASONG=$(usex xnasong ON OFF)"
+ )
+ if use ffmpeg; then
+ mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${PREFIX%/}/usr/$(get_libdir)" )
+ fi
+ cmake-utils_src_configure
+}
+
+src_configure() {
+ cmake-multilib_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_make
+ emake -C "${BUILD_DIR}" all
+}
+
+multilib_src_install() {
+ # FIXME: do we want to install the FAudio tools?
+ cmake-utils_src_install
+
+ sed -e "s/%LIB%/$(get_libdir)/g" "${FILESDIR}/faudio.pc" \
+ > "${T}/faudio.pc" \
+ || die "sed failed"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins "${T}/faudio.pc"
+
+ if use test; then
+ mkdir -p "${T}/$(get_libdir)"
+ cp "${BUILD_DIR}/faudio_tests" "${T}/$(get_libdir)/" || die "cp failed"
+ fi
+}
+
+faudio_test() {
+ XDG_RUNTIME_DIR="/run/user/0" virtx "${T}/$(get_libdir)/faudio_tests"
+}
+
+pkg_postinst() {
+ use test || return
+
+ # FIXME: FAudio tests are broken and also don't appear to work
+ # in the Portage sandbox.
+ multilib_foreach_abi faudio_test
+}
diff --git a/app-emulation/faudio/faudio-9999.ebuild b/app-emulation/faudio/faudio-9999.ebuild
new file mode 100644
index 000000000000..295da5632494
--- /dev/null
+++ b/app-emulation/faudio/faudio-9999.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# shellcheck disable=SC2034
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+
+inherit cmake-multilib virtualx
+
+FAUDIO_PN="FAudio"
+FAUDIO_PV="${PV}"
+FAUDIO_P="${FAUDIO_PN}-${FAUDIO_PV}"
+
+if [[ "${PV}" == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/FNA-XNA/${FAUDIO_PN}.git"
+else
+ SRC_URI="https://github.com/FNA-XNA/${FAUDIO_PN}/archive/${FAUDIO_PV}.tar.gz -> ${FAUDIO_P}.tar.gz"
+ KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+ S="${WORKDIR}/${FAUDIO_P}"
+fi
+
+DESCRIPTION="FAudio - Accuracy-focused XAudio reimplementation for open platforms"
+HOMEPAGE="https://fna-xna.github.io/"
+LICENSE="ZLIB"
+SLOT="0"
+
+IUSE="+abi_x86_32 +abi_x86_64 debug ffmpeg xnasong test utils"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )"
+
+COMMON_DEPEND="
+ >=media-libs/libsdl2-2.0.9[sound,${MULTILIB_USEDEP}]
+ ffmpeg? ( media-video/ffmpeg:=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${COMMON_DEPEND}
+"
+DEPEND="${COMMON_DEPEND}
+"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ "-DCMAKE_INSTALL_BINDIR=bin"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include/${FAUDIO_PN}"
+ "-DCMAKE_INSTALL_LIBDIR=$(get_libdir)"
+ "-DCMAKE_INSTALL_PREFIX=${EPREFIX%/}/usr"
+ "-DCMAKE_BUILD_TYPE=$(usex debug Debug Release)"
+ "-DFORCE_ENABLE_DEBUGCONFIGURATION=$(usex debug ON OFF)"
+ "-DBUILD_TESTS=$(usex test ON OFF)"
+ "-DBUILD_UTILS=$(usex utils ON OFF)"
+ "-DFFMPEG=$(usex ffmpeg ON OFF)"
+ "-DXNASONG=$(usex xnasong ON OFF)"
+ )
+ if use ffmpeg; then
+ mycmakeargs+=( "-DFFmpeg_LIBRARY_DIRS=${PREFIX%/}/usr/$(get_libdir)" )
+ fi
+ cmake-utils_src_configure
+}
+
+src_configure() {
+ cmake-multilib_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_make
+ emake -C "${BUILD_DIR}" all
+}
+
+multilib_src_install() {
+ # FIXME: do we want to install the FAudio tools?
+ cmake-utils_src_install
+
+ sed -e "s/%LIB%/$(get_libdir)/g" "${FILESDIR}/faudio.pc" \
+ > "${T}/faudio.pc" \
+ || die "sed failed"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins "${T}/faudio.pc"
+
+ if use test; then
+ mkdir -p "${T}/$(get_libdir)"
+ cp "${BUILD_DIR}/faudio_tests" "${T}/$(get_libdir)/" || die "cp failed"
+ fi
+}
+
+faudio_test() {
+ XDG_RUNTIME_DIR="/run/user/0" virtx "${T}/$(get_libdir)/faudio_tests"
+}
+
+pkg_postinst() {
+ use test || return
+
+ # FIXME: FAudio tests are broken and also don't appear to work
+ # in the Portage sandbox.
+ multilib_foreach_abi faudio_test
+}
diff --git a/app-emulation/faudio/files/faudio.pc b/app-emulation/faudio/files/faudio.pc
new file mode 100644
index 000000000000..c632922c1f66
--- /dev/null
+++ b/app-emulation/faudio/files/faudio.pc
@@ -0,0 +1,11 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${prefix}/%LIB%
+includedir=${prefix}/include/FAudio
+
+Name: faudio
+Description: Accuracy-focused XAudio reimplementation for open platforms
+Version:
+
+Libs: -L${libdir} -lFAudio
+Cflags: -I${includedir}
diff --git a/app-emulation/faudio/metadata.xml b/app-emulation/faudio/metadata.xml
new file mode 100644
index 000000000000..5b153131eaad
--- /dev/null
+++ b/app-emulation/faudio/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
+ <description>
+ This package must be kept in sync with repo/proj/wine repository.
+ Any changes need to be run past the maintainer to ensure the two repositories are kept in sync.
+ </description>
+ </maintainer>
+ <longdescription>
+FAudio, is an XAudio reimplementation that focuses solely on developing fully accurate DirectX Audio runtime libraries
+for the FNA project, including XAudio2, X3DAudio, XAPO, and XACT3.
+
+Project Website: http://fna-xna.github.io/
+ </longdescription>
+ <use>
+ <flag name="ffmpeg">FAudio has optional support for decoding xWMA resources using FFmpeg, requiring:
+ <pkg>media-video/ffmpeg</pkg> (note: this feature is not supported by <pkg>media-video/libav</pkg>).</flag>
+ <flag name="xnasong">Build support for optional XNG_SONG component (note: this not required by
+ <pkg>app-emulation/wine-staging</pkg>, <pkg>app-emulation/wine-vanilla</pkg> for faudio XAudio support).</flag>
+ <flag name="test">Build and run faudio testsuite.</flag>
+ <flag name="utils">Build all faudio utilities.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">FNA-XNA/FAudio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-emulation/libpod/Manifest b/app-emulation/libpod/Manifest
index 4bfc27d06128..42b4b50bcbf4 100644
--- a/app-emulation/libpod/Manifest
+++ b/app-emulation/libpod/Manifest
@@ -2,7 +2,9 @@ AUX podman.initd 566 BLAKE2B ccfedaea85b03a09446b678460d53591e62a9d8a1c205bd850f
AUX podman.logrotated 85 BLAKE2B 730899f93ee354e476629276b69224cfeaaa1603b6690cac3c0cd905cd75add19179f99e26f29edbd963d5f44c38a3a2db0b5a3613dc665ab801654eac13dc2e SHA512 0136d063b15b07c41a9370ba1845c4f368ec46a7a30683b7ff7cbb0b12e5b2711c9a45329f5102af6a969e562edcec006a8de9055e43e1caf9395847d0c5ec45
DIST libpod-0.12.1.2.tar.gz 5987875 BLAKE2B 11381c53e768c94bfadcb2013a028f64058b0001cd985ef289d1618163225cdf10bd608cff0cd6f7fc1c094497184fc6d0cedea32fde54f3581ebb51eb5eabdd SHA512 9abb46d7880c4577d22b48aed01baeae29662dc3dbbdbc297f1eebe8324fb734d9bac6cd105dc93f7600753874c0fa581142d1b16f7490175cea80b8f62b34ce
DIST libpod-1.0.1.tar.gz 6088749 BLAKE2B 64e28c6c7b60e226cae6a302e6e26ca5c2659d3c61910cc6fd2bbceec20485d7f2106d32da0472bc18a08bd611a6f0bf851b5c46066b47613783768c53a4c034 SHA512 23515fa3934ba2ec174011362ab1b67c747a7bf3122e606677ed40eb18aad28f79da30d09b6e1d0b74384286ff600fd1441fa4b6424e8bf3e410e867b57d92ef
+DIST libpod-1.1.2.tar.gz 7878228 BLAKE2B 8974949843c6f966d48715df320e47b814e442e374e1393dd5a116c6f7222e9ce29f480205f6a58e213e6cead58e5b4f31fd776865911b22e517607349654d35 SHA512 55456fe03da0873d3f6c67ced25dbe98f6a5a14c3da64ab2b4a9c6161c1d727ec8cdfe5414b534531e440e8c86f909449f4026d66898b909924aba1744ec0682
EBUILD libpod-0.12.1.2.ebuild 2661 BLAKE2B 8f020dea55baab9ee9af48f94c75b2e76de6fdc5ad8a60fbaf77ea432b77c3364a2183e97adf9e734d6df7d99845aa9308c0280e3187b32fe8671b75f47dce29 SHA512 d7e801c59fd1446fc319ac8c12b0fd5fad8dda0ab045d422606406b974076b838b8511b071051204b6fbd082ded69e0ba1d9bc7b059f98a1e27dc3a42be295e4
EBUILD libpod-1.0.1-r1.ebuild 3862 BLAKE2B cd105237b716af0e8209c42f9e82f01ffeb73ae44656aede6128f6c1d1e1828a055631c15418106636358484e837337b59debdc827651abd53d00a27a537c94a SHA512 266ca4fda535b67ced6882ea80bbbbaea3e263e273e97097fb4ebaf92e569337a6481305a7ae8357816a9032dbd7658f0f573f7d536a18a237327688cbcc84ad
EBUILD libpod-1.0.1.ebuild 2743 BLAKE2B 6e0e0052ee9e84ae28fe8bdc6c55385d3543e44924a77221c81a2f3b03ba3ab90f7357bdb91c32f92ab728332531382440f5fef5dc22904be4bae94db112233a SHA512 1877d1b671363b122591cafe39639100f5752a5c55076fd13737b45642aa087026f23c4443ef27b945de2e8249512a7935e632c794305562211c07f2267c5427
+EBUILD libpod-1.1.2.ebuild 3891 BLAKE2B 342e1eede326f25bce2da9634d35b9c24cf803aa6c1e00a4926b89f0cb787bec5ebc3c89c7a50518f1c25988cab7dd394f16855fce6b0e0282a3f049fa2bba64 SHA512 86a62ec57c2c7fa4d29494824b56aedc25b304a2d54dca5b9cde5433baf5e392c08b05fb948e871a4d14575712665cefca1b5d005939aebde493929e74f41aab
MISC metadata.xml 967 BLAKE2B 3fa19bf6148a1d6e7f2b73793d68a8cd22b612dc3f96356a967e01bd2cc9acf92b6aeebd4f299ab35841277a6ba3210a3014190672354c74d07733bf65fe262a SHA512 87c7701c60d07f8c3395dadf04ea52f5676d2f6cf845838ea300f2824203520f5b1229dd91da9ccd3c81c8cbbdddc320674e0075b4c1a7539cd863f7b8123555
diff --git a/app-emulation/libpod/libpod-1.1.2.ebuild b/app-emulation/libpod/libpod-1.1.2.ebuild
new file mode 100644
index 000000000000..0d80616d4c55
--- /dev/null
+++ b/app-emulation/libpod/libpod-1.1.2.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_COMMIT="0ad9b6bf2aea4ba37e8c9738feabec61343ba175"
+EGO_PN="github.com/containers/${PN}"
+
+inherit golang-vcs-snapshot systemd
+
+DESCRIPTION="Library and podman tool for running OCI-based containers in Pods"
+HOMEPAGE="https://github.com/containers/libpod/"
+SRC_URI="https://github.com/containers/libpod/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+KEYWORDS="~amd64"
+IUSE="apparmor btrfs ostree +rootless selinux"
+REQUIRED_USE="!selinux? ( !ostree )"
+RESTRICT="test"
+
+COMMON_DEPEND="
+ app-crypt/gpgme:=
+ >=app-emulation/cri-o-1.13.0
+ >=app-emulation/runc-1.0.0_rc6
+ dev-libs/libassuan:=
+ dev-libs/libgpg-error:=
+ sys-fs/lvm2
+ sys-libs/libseccomp:=
+
+ apparmor? ( sys-libs/libapparmor )
+ btrfs? ( sys-fs/btrfs-progs )
+ ostree? (
+ dev-libs/glib:=
+ dev-util/ostree:=
+ )
+ rootless? ( app-emulation/slirp4netns )
+ selinux? ( sys-libs/libselinux:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-go/go-md2man"
+RDEPEND="${COMMON_DEPEND}"
+S="${WORKDIR}/${P}/src/${EGO_PN}"
+
+src_prepare() {
+ default
+
+ # Disable installation of python modules here, since those are
+ # installed by separate ebuilds.
+ sed -e '/^GIT_.*/d' \
+ -e 's/$(GO) build/$(GO) build -v -work -x/' \
+ -e 's/^\(install:.*\) install\.python$/\1/' \
+ -i Makefile || die
+}
+
+src_compile() {
+ [[ -f hack/apparmor_tag.sh ]] || die
+ if use apparmor; then
+ echo -e "#!/bin/sh\necho apparmor" > hack/apparmor_tag.sh || die
+ else
+ echo -e "#!/bin/sh\ntrue" > hack/apparmor_tag.sh || die
+ fi
+
+ [[ -f hack/btrfs_installed_tag.sh ]] || die
+ if use btrfs; then
+ echo -e "#!/bin/sh\ntrue" > hack/btrfs_installed_tag.sh || die
+ else
+ echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
+ hack/btrfs_installed_tag.sh || die
+ fi
+
+ [[ -f hack/ostree_tag.sh ]] || die
+ if use ostree; then
+ echo -e "#!/bin/sh\necho ostree" > hack/ostree_tag.sh || die
+ else
+ echo -e "#!/bin/sh\necho containers_image_ostree_stub" > hack/ostree_tag.sh || die
+ fi
+
+ [[ -f hack/selinux_tag.sh ]] || die
+ if use selinux; then
+ echo -e "#!/bin/sh\necho selinux" > hack/selinux_tag.sh || die
+ else
+ echo -e "#!/bin/sh\ntrue" > hack/selinux_tag.sh || die
+ fi
+
+ env -u GOCACHE -u LDFLAGS -u XDG_CACHE_HOME GOPATH="${WORKDIR}/${P}" GOBIN="${WORKDIR}/${P}/bin" \
+ emake all \
+ GIT_BRANCH=master \
+ GIT_BRANCH_CLEAN=master \
+ COMMIT_NO="${EGIT_COMMIT}" \
+ GIT_COMMIT="${EGIT_COMMIT}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="${D}${EPREFIX}/usr" install
+
+ insinto /etc/containers
+ newins test/registries.conf registries.conf.example
+ newins test/policy.json policy.json.example
+
+ newinitd "${FILESDIR}"/podman.initd podman
+
+ systemd_dounit "${S}"/contrib/varlink/*.service "${S}"/contrib/varlink/*.socket
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/podman.logrotated" podman
+
+ keepdir /var/lib/containers
+}
+
+pkg_preinst() {
+ LIBPOD_ROOTLESS_UPGRADE=false
+ if use rootless; then
+ has_version 'app-emulation/libpod[rootless]' || LIBPOD_ROOTLESS_UPGRADE=true
+ fi
+}
+
+pkg_postinst() {
+ local want_newline=false
+ if [[ ! ( -e ${EROOT%/*}/etc/containers/policy.json && -e ${EROOT%/*}/etc/containers/registries.conf ) ]]; then
+ elog "You need to create the following config files:"
+ elog "/etc/containers/registries.conf"
+ elog "/etc/containers/policy.json"
+ elog "To copy over default examples, use:"
+ elog "cp /etc/containers/registries.conf{.example,}"
+ elog "cp /etc/containers/policy.json{.example,}"
+ want_newline=true
+ fi
+ if [[ ${LIBPOD_ROOTLESS_UPGRADE} == true ]] ; then
+ ${want_newline} && elog ""
+ elog "For rootless operation, you need to configure subuid/subgid"
+ elog "for user running podman. In case subuid/subgid has only been"
+ elog "configured for root, run:"
+ elog "usermod --add-subuids 1065536-1131071 <user>"
+ elog "usermod --add-subgids 1065536-1131071 <user>"
+ want_newline=true
+ fi
+}
diff --git a/app-emulation/libvirt/Manifest b/app-emulation/libvirt/Manifest
index cdc7d9968961..47e6b462411a 100644
--- a/app-emulation/libvirt/Manifest
+++ b/app-emulation/libvirt/Manifest
@@ -6,7 +6,8 @@ AUX libvirt-4.5.0-do_not_use_sysconf.patch 7417 BLAKE2B b1e6471a7b6a923a3ca4b630
AUX libvirt-4.5.0-fix_typo_in_apparmor_rule.patch 556 BLAKE2B 78d99d6d1ae811e202ffdeb0f34e4b20d76d3b0ed90bdcb35fd79a1133e8cc88e237bbf22c5260cc6aecc7521470ad14807eaadcdf97ed38c0d77fc630d61d38 SHA512 d02a121c069c1661c2f3b5084e1ea260e6611ab9b209fc6575dcb08f68bf36175ab9d9ebb7d1cd2eb4cd707165fd8c4357ce5c036f4835df2d4af4c88964f934
AUX libvirt-5.0.0-do-not-use-sysconf.patch 7333 BLAKE2B 3a23b047deb1388cb46f26a060bf9f601d9659e89881314bfef4beea121aaea73331993216637672ae0eaba5185d81205c1e1d63ea628173d30c6558f9990b7b SHA512 00dfcedf03de7a8070e19724b0ffc6a9ffc1697001946b7338183ee7d5e6757c1351e018f46311c43167714631f023c7e12a1e57523c2684e498dc1aec27277b
AUX libvirt-5.0.0-fix-paths-for-apparmor.patch 4274 BLAKE2B 886fd5bdf37e672e761bde9bc5b3e4902b174019bb8efda127f7a08cb6752b67745c10a3e3953063c746380bcf8243807fd6e9a154f48b7bd02c61e85e90325e SHA512 efe4c4c940d720c467f44f405ac4ca4d3867dee0a7e2fa2a7a4fbc263198089098c48d1207c30123b6a55f6ec6bee04f3edd3f23724af46bcb1343f87ca94de6
-AUX libvirt-5.1.0-do-not-use-sysconf.patch 7329 BLAKE2B 9a264edf879ddb448444fc44540d64dd33d0e2527eda0468b1e6025abf5c74c78536bc7005d68f101537c493ad6de76e9306525050fac0864d5fbccb45546c43 SHA512 4ef618586433d452e27f2d9ef5650b3dac6aa3c7fa71b227f55b0cfc4306c57f0fd4205ade86182ae5069e87d21980e54c2e9007810ee2538ea075786a0bc71a
+AUX libvirt-5.1.0-do-not-use-sysconf.patch 6531 BLAKE2B fe242b96e5b1c1aba8548c2ee9dcb879565b8782d08c9c8387fb0653fc44478ca8f80e0a89e1cd385d835eb22e6a113115ca2af7bb9090fab7b66d3bee94efca SHA512 e9fe48c4442c4f249fd6ff8361c6e8982f2a97d0b59929b8975e7277b1e5ad14223daa68d6fec8a6387b90cb2633956c941117d5923bff65c9491a37c810e68e
+AUX libvirt-5.2.0-do-not-use-sysconf.patch 5969 BLAKE2B 965e53b33424b5e62107574bc457ee886c799b247179200cf671485dff331db3e2c453e55b3a38b34a205ba3663ddf2e4fe0ce336f9c262fa886192368ada3f0 SHA512 a1683ca986d006bcce8388d3ee5e8daf699f92c6dac9714a4cce1fdd8ea3a4f745b231e0576bed08eece04acf96872257a8e2890b0a3acefb5cf2657f3223792
AUX libvirt-guests.confd 2430 BLAKE2B 9d56477c9377e02503782e6d653579c6d149b292c43f37926f4646374e8aae05ca812b6a3a561811482861f8fe67dfdbe63851963326ddbbf2f4644c85411120 SHA512 78f419a89de7aabaad860903c24f1c070786fc1296d987e61dd537705b0e7f71a46c315888028f3826c3417e42861ca8471788be4ec5695e98427c5f18ae63fc
AUX libvirt-guests.init-r2 5411 BLAKE2B a14ecc1bb7188dbbe3d0f82f301a73b876da2d82475cb38a503ed115e894bc59a0466daec5dd7665b3f0656c84ab58e2ba9f8f52eb54a4f8684094f951659fde SHA512 273bcc248ab659bb0cef12c03187f1445c00d2736912f3b54911137352a48b6fcdc2e0c76c56db984501acc4b9e8c0a4cf453a90947c5e525d0746ac9afa8505
AUX libvirt-guests.init-r3 5530 BLAKE2B 5de3e8577ded1401f6dca551c6098418e596287d43b1b90e133859bb9b74dff20b8518bc09853ccff7141e6baa52fc12c9b8d3e8f60b868b72b1993254fac5d9 SHA512 7aa4eac8c293c3063d9435a4ad1ea855f9fdd84eb0ed8cbf0779935f152aab380e2ee7eb9129b2f07147bfa4dd1eae4b836ccae295c35b63dbc767208dd11b0c
@@ -16,13 +17,11 @@ AUX libvirtd.service.conf 401 BLAKE2B edd74238f9639ead1d776142e6231d87f39cb6670e
AUX libvirtd.tmpfiles.conf 36 BLAKE2B fa0e1dac4117dcb2a2e826c82c4c63e20156db47abf4088167484f1f3149a4998840cf1aba745621851d7e2653df5c7f7268d8d61be3a3731ea053a88f35c13b SHA512 2b1c3c64dd6fa03d8c2ae24e7ce4aa7d754913214542a68a4e99f10fbc251fd23ee26e297a957d7b4b70eec8ef028c41fc915da3a85fbbd16143bb92d1de3aed
AUX virtlockd.init-r1 570 BLAKE2B 734d582d867b79649f863504fcd7c87fe3c59569b56b0996a6229d6eebadc9d4c356c10bbcf5637483fbc930d0c50233da4fffa357d423029b3828b7a3be56de SHA512 65a05d406200da9a534df5caa1b9cb2af97f0b03f64e6b4157322975fa754f59ae74fff9ec8301a6c0510e4b75e2b72a78cddf004a76109e18c375e83527cee5
AUX virtlogd.init-r1 569 BLAKE2B 20df60c23cee575577592d41d1a9913923255633d12de789c036e6085f9e7b4360e017155c61e3688332b493a0e96ffca55753bcc67a33bb877539b80eef81fe SHA512 0a3e083e742f9e0d8206ab9a48c63bbd395bdc24e5551e2cbeddffa3fb576a817b73dbafe646c392a35c354d6b65426a9b6f3ce3dcafc30077715e90684968c1
-DIST libvirt-4.10.0.tar.xz 14841188 BLAKE2B b52f2ed1c4c65930339a6b6fc9e7b034c7661edc0defdd78642f305b97332c33247bfc552efc43aa75a8d360c0d721d1a58a22fa7a016e7cf14ee2219d70a762 SHA512 a4f97aed6299c7954518ab88738ab781cee0755bfd64094a44468f77f99cac5eb2bc74ecd6aec90177317606ebd073292f5b5d0056054d1d94973fa938589fbd
-DIST libvirt-4.5.0.tar.xz 14743956 BLAKE2B 930852765104b1b22744df0ec4f1c74d89bc0fda80852978f7c857943858cc45eed9b74a3d42668f872540be2637f26c4d9d7859594847e58e6fb4cd33350130 SHA512 26710c7e5219f007524e9f93a642e55e4e8ea197afa6b2ca6a4b67b7028313f4b0d82924ee9a1e91ff688a4d2b53f89f3655fbeef0fa99a34f8418f37d787984
DIST libvirt-4.9.0.tar.xz 14744184 BLAKE2B 03ddefc8f505c8688ad506b81ea9b37ee085e4c9c429834c6b6f338981bfc3c6034a5455a79feca604fb36e658de766ee6104aeed690c682ae596d10eb5632a9 SHA512 3cfada940f9de6cc4b0504e089f41aa03d9986f0163344dd3b3ab8e6c4eb556a56996dc8f24bca913b036862c75b256628ea9ab7674ef0a57b87f47c58689e90
DIST libvirt-5.0.0.tar.xz 14832576 BLAKE2B 8839a10e4ec8de012ca17e348efd75cbd94cc3b1cf378c867d958b61079105d6eb4f98d8d4b89dd5a6a368a3d9ea41f30498e44b7e039cdf8931ae6de8fa47b3 SHA512 d93042f49d2550d14577b5257c548d7108462fe1ad69420c128acf094ffd3e80deb744db13d4c3d5fbe5e4c1826d13131be12e3413710711a2d8cba6cb5a9db9
-EBUILD libvirt-4.10.0.ebuild 9771 BLAKE2B 45827db69a427d1f55571580c486f9aa938be7a06e10187920226a85964675a1aa71429975f6a9f7372648358e858f091cf0117a768c650c13146087642ca144 SHA512 35d03f478ee6273e281e19268f9ef0a67f0106c8016844d054cc3a7d7fe6363d171a5ad19ec9c1495e964b5b02cc0d90bd8412495eccf5a08f1f044749b8faab
-EBUILD libvirt-4.5.0-r1.ebuild 9654 BLAKE2B 68f875b79a4e7af8674b87fd47dc7081b31c0d617444bfca5d0ebe1b0b10fa4ddfef1305110f3689591a6a5ef32ace833a28e854126369ea2896b3d894b9d230 SHA512 05ba73308bdcabcf8a3c179814519331bc3ac2e557ec383ce9beaa3f8657436a9358461d5e03271811d56ef570e80eaf8a781d54b9b583381a418429934053c5
-EBUILD libvirt-4.9.0.ebuild 9712 BLAKE2B 9b200fdc07bff57673039fbc1a14a57b631b3d42a26756cafb43e9ecbe28ace716eaa455b0b21d8085fca2336e9a823ad77232a49f09f60e48531bc833c9f036 SHA512 2b97188d90046d96e5a1ca1f2d43fd930482bcc7b288e8d18077c03a9c2353d9658fa47d6b838a29950ba084a0973327597f5ccb2797833902a3a17ab31456f6
-EBUILD libvirt-5.0.0.ebuild 9641 BLAKE2B 782bc6ed905e1b9d09b102f04c726a0d216e26851cf415acaf2acda983f26764b677dc64ae9705b3583a0a803bb2e996cde755f27595811d1ff0bf221fb0a51b SHA512 d3fc92f9e733a56fde88b9c17c5e5deff26dc1dcc84411bdce90e85ba73d955aef6d11e10bcff35a951fb6273306f4e2c1e7ddce59ff4aaac8811337c82c08d8
-EBUILD libvirt-9999.ebuild 9748 BLAKE2B 3ae5cae87b41a45cdc4d432987862b36563c8d36b8f347e52813dec0d6e8829de937eb0c8f9786be68bcb7fb4b03a02578cf281835a8604f2f2afc18524ad7b0 SHA512 1957f37b1b3aaf8126d65053a08f38fe0a45d4cc05971a4774d2344aa163a05533a60ff91a0ab64d22775ed64f3f7f2ca55d4b07c5f98049af1f26548cf12547
+DIST libvirt-5.1.0.tar.xz 14893608 BLAKE2B 76e46c19b09203e7875576185d533d1af4abb5c2b1d229d0215e189d3584cbd213decc15b96128a928e0120dab01bf502d304fed2bf748852cd37c9df54c2ea0 SHA512 ca64d7be683614bdeb20a8865655fe80f911cf13c00aed2334db3a2e4131e1dd6fe5e9663a24e6f82161ad5aa53f1a2637cd21730eed46e4764b7eebced94f3f
+EBUILD libvirt-4.9.0.ebuild 9753 BLAKE2B bae0bbfe14379783a1c4519fedbd1adadf4b085cd33f2b147f617769efd0d6ec3825ff38b47a53fe841776cd32f36f3a330e0fc6dd51a41ba144978eef19293b SHA512 15bfc52b202df9562bdbbd819655a314aa7e213a6755b4f035669c8e7ddcc85471a869f7adbb7abe4209b330122ae55c0bc35551dc97776dfc916dfea45aecdd
+EBUILD libvirt-5.0.0-r1.ebuild 9857 BLAKE2B 41169e2dbdc1ae414c3681748422455d5cb9542983d924d6ba62c4fe3d4f5b81f53f38c31ad05dcc341f81bf6700792264507fbbfe94b1333f260a0a3ce6e648 SHA512 0dc8a416e6fe728ed810fb70eb639e85e23847549325d21a606be9c5ea2a5c6d32c24162b252b47b4ef9a18428917c07c2326229d379759ef13373df7b6127e8
+EBUILD libvirt-5.1.0.ebuild 9857 BLAKE2B c237596cb13cc8e2ea7691edce64bd5ac6efa86ed85c4fd48d765370383bef1a6c4600852773d6ac154942b8a1d312d7dcabdc673d78f2157a0f6a9379c8456d SHA512 2ec88e5d8e6f0edc786cf0a51dc03c5a5f2d392164daa0fef4aa4ae453b400bfed82cd3535d8084b77d492b91bf85cbf5a9780a08b86194431596e189fc2833c
+EBUILD libvirt-9999.ebuild 9857 BLAKE2B c9997608e3f86e46083704c515a879f8b2f972afc7005683bc80f60ca68e9af098aa68d43e776d19986c660a6c43d524fd36fc62fc669dbbdf425ad8490ea313 SHA512 c5a90462cde1e44a1a766cdc172c9f1c655f3ce450a060aa465a445b9c611e69edcc04a4347d7dbc474254b8958d8fe132b062d9d6c6cd498609c4bc64877d5b
MISC metadata.xml 3857 BLAKE2B bc5dc60897ca70f3a586c947784dec74cf7daa35909836955dc52a442668b08323398473f9df8be46f2819e762638dcfcb646a8fb7ee768210f27584fb91e3f6 SHA512 33274100068f99fe0c69546e81fb47517818adf2991529533b9bacfc6bcb23ee08ae00b9d0a7a7ff47cb920d2ff1e24b5fc788a3533a89ff477ab04dad0194fc
diff --git a/app-emulation/libvirt/files/libvirt-5.1.0-do-not-use-sysconf.patch b/app-emulation/libvirt/files/libvirt-5.1.0-do-not-use-sysconf.patch
index 3c32ab81f1d6..ff8bde45f0e1 100644
--- a/app-emulation/libvirt/files/libvirt-5.1.0-do-not-use-sysconf.patch
+++ b/app-emulation/libvirt/files/libvirt-5.1.0-do-not-use-sysconf.patch
@@ -1,22 +1,5 @@
-From cbc26250bcdc4eb3b1c4e7e09c824f3504d41b27 Mon Sep 17 00:00:00 2001
-Message-Id: <cbc26250bcdc4eb3b1c4e7e09c824f3504d41b27.1548428073.git.mprivozn@redhat.com>
-From: Michal Privoznik <mprivozn@redhat.com>
-Date: Tue, 26 Jun 2018 06:51:06 +0200
-Subject: [PATCH] gentoo: do not use sysconf
-
-Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
----
- src/Makefile.am | 29 ++++++-----------------------
- src/locking/virtlockd.service.in | 3 +--
- src/logging/virtlogd.service.in | 3 +--
- src/remote/libvirtd.service.in | 3 +--
- tools/Makefile.am | 17 ++++-------------
- tools/libvirt-guests.service.in | 2 +-
- tools/libvirt-guests.sysconf | 7 +++++++
- 7 files changed, 21 insertions(+), 43 deletions(-)
-
diff --git a/src/Makefile.am b/src/Makefile.am
-index 8c8dfe3dcf..25ced3abf3 100644
+index 8c8dfe3..25ced3a 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -756,23 +756,6 @@ endif WITH_SETUID_RPC_CLIENT
@@ -96,7 +79,7 @@ index 8c8dfe3dcf..25ced3abf3 100644
do \
tgt=`basename $$f` ; \
diff --git a/src/locking/virtlockd.service.in b/src/locking/virtlockd.service.in
-index 3c9d587032..2449b201d9 100644
+index 3c9d587..2449b20 100644
--- a/src/locking/virtlockd.service.in
+++ b/src/locking/virtlockd.service.in
@@ -7,8 +7,7 @@ Documentation=man:virtlockd(8)
@@ -110,7 +93,7 @@ index 3c9d587032..2449b201d9 100644
# Loosing the locks is a really bad thing that will
# cause the machine to be fenced (rebooted), so make
diff --git a/src/logging/virtlogd.service.in b/src/logging/virtlogd.service.in
-index 3d9ae36150..43736191d5 100644
+index 3d9ae36..4373619 100644
--- a/src/logging/virtlogd.service.in
+++ b/src/logging/virtlogd.service.in
@@ -7,8 +7,7 @@ Documentation=man:virtlogd(8)
@@ -124,7 +107,7 @@ index 3d9ae36150..43736191d5 100644
# Loosing the logs is a really bad thing that will
# cause the machine to be fenced (rebooted), so make
diff --git a/src/remote/libvirtd.service.in b/src/remote/libvirtd.service.in
-index 7f689e08a8..239beeced9 100644
+index 7f689e0..239beec 100644
--- a/src/remote/libvirtd.service.in
+++ b/src/remote/libvirtd.service.in
@@ -22,8 +22,7 @@ Documentation=https://libvirt.org
@@ -138,7 +121,7 @@ index 7f689e08a8..239beeced9 100644
KillMode=process
Restart=on-failure
diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 613c9a77f0..224b511074 100644
+index f2f84f7..1188d3c 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -339,15 +339,6 @@ install-data-local: install-init install-systemd install-nss \
@@ -184,7 +167,7 @@ index 613c9a77f0..224b511074 100644
rmdir $(DESTDIR)$(SYSTEMD_UNIT_DIR) ||:
diff --git a/tools/libvirt-guests.service.in b/tools/libvirt-guests.service.in
-index 491ca62138..f0f417bffb 100644
+index 491ca62..f0f417b 100644
--- a/tools/libvirt-guests.service.in
+++ b/tools/libvirt-guests.service.in
@@ -10,7 +10,7 @@ Documentation=man:libvirtd(8)
@@ -197,7 +180,7 @@ index 491ca62138..f0f417bffb 100644
# out the code
ExecStart=@libexecdir@/libvirt-guests.sh start
diff --git a/tools/libvirt-guests.sysconf b/tools/libvirt-guests.sysconf
-index 669b046507..45b0b9ea46 100644
+index 669b046..45b0b9e 100644
--- a/tools/libvirt-guests.sysconf
+++ b/tools/libvirt-guests.sysconf
@@ -1,3 +1,10 @@
@@ -211,6 +194,3 @@ index 669b046507..45b0b9ea46 100644
# URIs to check for running guests
# example: URIS='default xen:///system vbox+tcp://host/system lxc:///system'
#URIS=default
---
-2.19.2
-
diff --git a/app-emulation/libvirt/files/libvirt-5.2.0-do-not-use-sysconf.patch b/app-emulation/libvirt/files/libvirt-5.2.0-do-not-use-sysconf.patch
new file mode 100644
index 000000000000..292af16b4915
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirt-5.2.0-do-not-use-sysconf.patch
@@ -0,0 +1,170 @@
+From 525d89d39f78a4099508f47a58c4ab65d1e59c0a Mon Sep 17 00:00:00 2001
+Message-Id: <525d89d39f78a4099508f47a58c4ab65d1e59c0a.1552736006.git.mprivozn@redhat.com>
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Sat, 16 Mar 2019 12:33:00 +0100
+Subject: [PATCH] gentoo: do not use sysconf
+
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+---
+ src/Makefile.am | 21 ++-------------------
+ src/locking/virtlockd.service.in | 3 +--
+ src/logging/virtlogd.service.in | 3 +--
+ src/remote/libvirtd.service.in | 3 +--
+ tools/Makefile.am | 13 ++-----------
+ tools/libvirt-guests.service.in | 2 +-
+ tools/libvirt-guests.sysconf | 7 +++++++
+ 7 files changed, 15 insertions(+), 37 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index a73f43c483..47dd55c112 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -747,23 +747,6 @@ endif WITH_SETUID_RPC_CLIENT
+
+ EXTRA_DIST += $(SYSCONF_FILES)
+
+-install-sysconfig:
+- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig
+- for f in $(SYSCONF_FILES:%.sysconf=%) ; \
+- do \
+- tgt=`basename $$f`; \
+- $(INSTALL_DATA) $(srcdir)/$$f.sysconf \
+- $(DESTDIR)$(sysconfdir)/sysconfig/$$tgt; \
+- done
+-
+-uninstall-sysconfig:
+- for f in $(SYSCONF_FILES:%.sysconf=%) ; \
+- do \
+- tgt=`basename $$f`; \
+- rm -f $(DESTDIR)$(sysconfdir)/sysconfig/$$tgt; \
+- done
+- rmdir $(DESTDIR)$(sysconfdir)/sysconfig || :
+-
+ LOGROTATE_FILES := $(LOGROTATE_FILES_IN:remote/%.in=%)
+
+ EXTRA_DIST += $(LOGROTATE_FILES_IN)
+@@ -822,14 +805,14 @@ SYSTEMD_UNIT_FILES = $(notdir $(SYSTEMD_UNIT_FILES_IN:%.in=%))
+ BUILT_SOURCES += $(SYSTEMD_UNIT_FILES)
+ DISTCLEANFILES += $(SYSTEMD_UNIT_FILES)
+
+-install-systemd: $(SYSTEMD_UNIT_FILES) install-sysconfig
++install-systemd: $(SYSTEMD_UNIT_FILES)
+ $(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR)
+ for f in $(SYSTEMD_UNIT_FILES); \
+ do \
+ $(INSTALL_DATA) $$f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/ ; \
+ done
+
+-uninstall-systemd: uninstall-sysconfig
++uninstall-systemd:
+ rm -f $(SYSTEMD_UNIT_FILES:%=$(DESTDIR)$(SYSTEMD_UNIT_DIR)/%)
+ rmdir $(DESTDIR)$(SYSTEMD_UNIT_DIR) || :
+
+diff --git a/src/locking/virtlockd.service.in b/src/locking/virtlockd.service.in
+index 3c9d587032..2449b201d9 100644
+--- a/src/locking/virtlockd.service.in
++++ b/src/locking/virtlockd.service.in
+@@ -7,8 +7,7 @@ Documentation=man:virtlockd(8)
+ Documentation=https://libvirt.org
+
+ [Service]
+-EnvironmentFile=-/etc/sysconfig/virtlockd
+-ExecStart=@sbindir@/virtlockd $VIRTLOCKD_ARGS
++ExecStart=@sbindir@/virtlockd
+ ExecReload=/bin/kill -USR1 $MAINPID
+ # Loosing the locks is a really bad thing that will
+ # cause the machine to be fenced (rebooted), so make
+diff --git a/src/logging/virtlogd.service.in b/src/logging/virtlogd.service.in
+index 3d9ae36150..43736191d5 100644
+--- a/src/logging/virtlogd.service.in
++++ b/src/logging/virtlogd.service.in
+@@ -7,8 +7,7 @@ Documentation=man:virtlogd(8)
+ Documentation=https://libvirt.org
+
+ [Service]
+-EnvironmentFile=-/etc/sysconfig/virtlogd
+-ExecStart=@sbindir@/virtlogd $VIRTLOGD_ARGS
++ExecStart=@sbindir@/virtlogd
+ ExecReload=/bin/kill -USR1 $MAINPID
+ # Loosing the logs is a really bad thing that will
+ # cause the machine to be fenced (rebooted), so make
+diff --git a/src/remote/libvirtd.service.in b/src/remote/libvirtd.service.in
+index 7f689e08a8..239beeced9 100644
+--- a/src/remote/libvirtd.service.in
++++ b/src/remote/libvirtd.service.in
+@@ -22,8 +22,7 @@ Documentation=https://libvirt.org
+
+ [Service]
+ Type=notify
+-EnvironmentFile=-/etc/sysconfig/libvirtd
+-ExecStart=@sbindir@/libvirtd $LIBVIRTD_ARGS
++ExecStart=@sbindir@/libvirtd
+ ExecReload=/bin/kill -HUP $MAINPID
+ KillMode=process
+ Restart=on-failure
+diff --git a/tools/Makefile.am b/tools/Makefile.am
+index c6064dee08..40f41ddb38 100644
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -333,15 +333,6 @@ install-data-local: install-systemd install-nss \
+ uninstall-local: uninstall-systemd uninstall-nss \
+ uninstall-bash-completion
+
+-install-sysconfig:
+- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig
+- $(INSTALL_DATA) $(srcdir)/libvirt-guests.sysconf \
+- $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests
+-
+-uninstall-sysconfig:
+- rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests
+- rmdir $(DESTDIR)$(sysconfdir)/sysconfig ||:
+-
+ EXTRA_DIST += libvirt-guests.sh.in
+
+ libvirt-guests.sh: libvirt-guests.sh.in $(top_builddir)/config.status
+@@ -361,12 +352,12 @@ EXTRA_DIST += libvirt-guests.service.in
+ SYSTEMD_UNIT_DIR = $(prefix)/lib/systemd/system
+
+ if LIBVIRT_INIT_SCRIPT_SYSTEMD
+-install-systemd: libvirt-guests.service install-sysconfig libvirt-guests.sh
++install-systemd: libvirt-guests.service libvirt-guests.sh
+ $(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR)
+ $(INSTALL_DATA) libvirt-guests.service \
+ $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirt-guests.service
+
+-uninstall-systemd: uninstall-sysconfig
++uninstall-systemd:
+ rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirt-guests.service
+ rmdir $(DESTDIR)$(SYSTEMD_UNIT_DIR) ||:
+
+diff --git a/tools/libvirt-guests.service.in b/tools/libvirt-guests.service.in
+index 491ca62138..f0f417bffb 100644
+--- a/tools/libvirt-guests.service.in
++++ b/tools/libvirt-guests.service.in
+@@ -10,7 +10,7 @@ Documentation=man:libvirtd(8)
+ Documentation=https://libvirt.org
+
+ [Service]
+-EnvironmentFile=-/etc/sysconfig/libvirt-guests
++EnvironmentFile=-/etc/libvirt/libvirt-guests.conf
+ # Hack just call traditional service until we factor
+ # out the code
+ ExecStart=@libexecdir@/libvirt-guests.sh start
+diff --git a/tools/libvirt-guests.sysconf b/tools/libvirt-guests.sysconf
+index 669b046507..45b0b9ea46 100644
+--- a/tools/libvirt-guests.sysconf
++++ b/tools/libvirt-guests.sysconf
+@@ -1,3 +1,10 @@
++#
++# Warning: This configuration file is only sourced by the systemd
++# libvirt-guests.service unit. The coresponding openrc facility is in
++# /etc/init.d/libvirtd and /etc/conf.d/libvirtd
++#
++
++
+ # URIs to check for running guests
+ # example: URIS='default xen:///system vbox+tcp://host/system lxc:///system'
+ #URIS=default
+--
+2.19.2
+
diff --git a/app-emulation/libvirt/libvirt-4.5.0-r1.ebuild b/app-emulation/libvirt/libvirt-4.5.0-r1.ebuild
deleted file mode 100644
index 161be6fe14a4..000000000000
--- a/app-emulation/libvirt/libvirt-4.5.0-r1.ebuild
+++ /dev/null
@@ -1,383 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{4,5,6} )
-
-inherit autotools bash-completion-r1 eutils linux-info python-any-r1 readme.gentoo-r1 systemd user
-
-if [[ ${PV} = *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://libvirt.org/git/libvirt.git"
- SRC_URI=""
- KEYWORDS="amd64 x86"
- SLOT="0"
-else
- # Versions with 4 numbers are stable updates:
- if [[ ${PV} =~ ^[0-9]+(\.[0-9]+){3} ]]; then
- SRC_URI="https://libvirt.org/sources/stable_updates/${P}.tar.xz"
- else
- SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
- fi
- KEYWORDS="amd64 ~arm64 x86"
- SLOT="0/${PV}"
-fi
-
-DESCRIPTION="C toolkit to manipulate virtual machines"
-HOMEPAGE="http://www.libvirt.org/"
-LICENSE="LGPL-2.1"
-IUSE="
- apparmor audit +caps +dbus firewalld fuse glusterfs iscsi +libvirtd lvm
- libssh lxc +macvtap nfs nls numa openvz parted pcap phyp policykit
- +qemu rbd sasl selinux +udev uml +vepa virtualbox virt-network
- wireshark-plugins xen zeroconf zfs
-"
-
-REQUIRED_USE="
- firewalld? ( virt-network )
- libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
- lxc? ( caps libvirtd )
- openvz? ( libvirtd )
- policykit? ( dbus )
- qemu? ( libvirtd )
- uml? ( libvirtd )
- vepa? ( macvtap )
- virt-network? ( libvirtd )
- virtualbox? ( libvirtd )
- xen? ( libvirtd )"
-
-# gettext.sh command is used by the libvirt command wrappers, and it's
-# non-optional, so put it into RDEPEND.
-# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
-# package will use 3 by default. Since we don't have slot pinning in an API,
-# we must go with the most recent
-RDEPEND="
- app-misc/scrub
- dev-libs/libgcrypt:0
- dev-libs/libnl:3
- >=dev-libs/libxml2-2.7.6
- || ( >=net-analyzer/netcat6-1.0-r2 >=net-analyzer/openbsd-netcat-1.105-r1 )
- >=net-libs/gnutls-1.0.25:0=
- net-libs/libssh2
- net-libs/libtirpc
- net-libs/rpcsvc-proto
- >=net-misc/curl-7.18.0
- sys-apps/dmidecode
- >=sys-apps/util-linux-2.17
- sys-devel/gettext
- sys-libs/ncurses:0=
- sys-libs/readline:=
- apparmor? ( sys-libs/libapparmor )
- audit? ( sys-process/audit )
- caps? ( sys-libs/libcap-ng )
- dbus? ( sys-apps/dbus )
- firewalld? ( net-firewall/firewalld )
- fuse? ( >=sys-fs/fuse-2.8.6:= )
- glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
- iscsi? ( sys-block/open-iscsi )
- libssh? ( net-libs/libssh )
- lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
- nfs? ( net-fs/nfs-utils )
- numa? (
- >sys-process/numactl-2.0.2
- sys-process/numad
- )
- parted? (
- >=sys-block/parted-1.8[device-mapper]
- sys-fs/lvm2[-device-mapper-only(-)]
- )
- pcap? ( >=net-libs/libpcap-1.0.0 )
- policykit? ( >=sys-auth/polkit-0.9 )
- qemu? (
- >=app-emulation/qemu-0.13.0
- dev-libs/yajl
- )
- rbd? ( sys-cluster/ceph )
- sasl? ( dev-libs/cyrus-sasl )
- selinux? ( >=sys-libs/libselinux-2.0.85 )
- virt-network? (
- net-dns/dnsmasq[script]
- net-firewall/ebtables
- >=net-firewall/iptables-1.4.10[ipv6]
- net-misc/radvd
- sys-apps/iproute2[-minimal]
- )
- virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
- wireshark-plugins? ( net-analyzer/wireshark:= )
- xen? (
- app-emulation/xen
- app-emulation/xen-tools:=
- )
- udev? (
- virtual/udev
- >=x11-libs/libpciaccess-0.10.9
- )
- zeroconf? ( >=net-dns/avahi-0.6[dbus] )
- zfs? ( sys-fs/zfs )"
-
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
- app-text/xhtml1
- dev-lang/perl
- dev-libs/libxslt
- dev-perl/XML-XPath
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.5.0-do_not_use_sysconf.patch
- "${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
- "${FILESDIR}"/${PN}-3.10.0-r2-fix_paths_for_apparmor.patch
- "${FILESDIR}"/${PN}-4.5.0-fix_typo_in_apparmor_rule.patch
-)
-
-pkg_setup() {
- if use qemu; then
- enewgroup qemu 77
- enewuser qemu 77 -1 -1 "qemu,kvm"
- fi
-
- use policykit && enewgroup libvirt
-
- # Check kernel configuration:
- CONFIG_CHECK=""
- use fuse && CONFIG_CHECK+="
- ~FUSE_FS"
-
- use lvm && CONFIG_CHECK+="
- ~BLK_DEV_DM
- ~DM_MULTIPATH
- ~DM_SNAPSHOT"
-
- use lxc && CONFIG_CHECK+="
- ~BLK_CGROUP
- ~CGROUP_CPUACCT
- ~CGROUP_DEVICE
- ~CGROUP_FREEZER
- ~CGROUP_NET_PRIO
- ~CGROUP_PERF
- ~CGROUPS
- ~CGROUP_SCHED
- ~CPUSETS
- ~IPC_NS
- ~MACVLAN
- ~NAMESPACES
- ~NET_CLS_CGROUP
- ~NET_NS
- ~PID_NS
- ~POSIX_MQUEUE
- ~SECURITYFS
- ~USER_NS
- ~UTS_NS
- ~VETH
- ~!GRKERNSEC_CHROOT_MOUNT
- ~!GRKERNSEC_CHROOT_DOUBLE
- ~!GRKERNSEC_CHROOT_PIVOT
- ~!GRKERNSEC_CHROOT_CHMOD
- ~!GRKERNSEC_CHROOT_CAPS"
-
- kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
- ~DEVPTS_MULTIPLE_INSTANCES"
-
- use macvtap && CONFIG_CHECK+="
- ~MACVTAP"
-
- use virt-network && CONFIG_CHECK+="
- ~BRIDGE_EBT_MARK_T
- ~BRIDGE_NF_EBTABLES
- ~NETFILTER_ADVANCED
- ~NETFILTER_XT_CONNMARK
- ~NETFILTER_XT_MARK
- ~NETFILTER_XT_TARGET_CHECKSUM"
- # Bandwidth Limiting Support
- use virt-network && CONFIG_CHECK+="
- ~BRIDGE_EBT_T_NAT
- ~NET_ACT_POLICE
- ~NET_CLS_FW
- ~NET_CLS_U32
- ~NET_SCH_HTB
- ~NET_SCH_INGRESS
- ~NET_SCH_SFQ"
-
- # Handle specific kernel versions for different features
- kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
- if kernel_is ge 3 6; then
- CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
- kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
- fi
-
- ERROR_USER_NS="Optional depending on LXC configuration."
-
- if [[ -n ${CONFIG_CHECK} ]]; then
- linux-info_pkg_setup
- fi
-}
-
-src_prepare() {
- touch "${S}/.mailmap"
-
- default
-
- if [[ ${PV} = *9999* ]]; then
- # git checkouts require bootstrapping to create the configure script.
- # Additionally the submodules must be cloned to the right locations
- # bug #377279
- ./bootstrap || die "bootstrap failed"
- (
- git submodule status | sed 's/^[ +-]//;s/ .*//'
- git hash-object bootstrap.conf
- ) >.git-module-status
- fi
-
- # Tweak the init script:
- cp "${FILESDIR}/libvirtd.init-r16" "${S}/libvirtd.init" || die
- sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
- -e "s/USE_FLAG_AVAHI/$(usex zeroconf 'use avahi-daemon' '')/" \
- -e "s/USE_FLAG_ISCSI/$(usex iscsi 'use iscsid' '')/" \
- -e "s/USE_FLAG_RBD/$(usex rbd 'use ceph' '')/" \
- -i "${S}/libvirtd.init" || die "sed failed"
-
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- $(use_with apparmor)
- $(use_with apparmor apparmor-profiles)
- $(use_with audit)
- $(use_with caps capng)
- $(use_with dbus)
- $(use_with firewalld)
- $(use_with fuse)
- $(use_with glusterfs)
- $(use_with glusterfs storage-gluster)
- $(use_with iscsi storage-iscsi)
- $(use_with libvirtd)
- $(use_with libssh)
- $(use_with lvm storage-lvm)
- $(use_with lvm storage-mpath)
- $(use_with lxc)
- $(use_with macvtap)
- $(use_enable nls)
- $(use_with numa numactl)
- $(use_with numa numad)
- $(use_with openvz)
- $(use_with parted storage-disk)
- $(use_with pcap libpcap)
- $(use_with phyp)
- $(use_with policykit polkit)
- $(use_with qemu)
- $(use_with qemu yajl)
- $(use_with rbd storage-rbd)
- $(use_with sasl)
- $(use_with selinux)
- $(use_with udev)
- $(use_with uml)
- $(use_with vepa virtualport)
- $(use_with virt-network network)
- $(use_with wireshark-plugins wireshark-dissector)
- $(use_with xen libxl)
- $(use_with zeroconf avahi)
- $(use_with zfs storage-zfs)
-
- --without-hal
- --without-netcf
- --without-sanlock
- --without-xenapi
-
- --with-esx
- --with-init-script=systemd
- --with-qemu-group=$(usex caps qemu root)
- --with-qemu-user=$(usex caps qemu root)
- --with-remote
- --with-storage-fs
- --with-vmware
-
- --disable-static
- --disable-werror
-
- --with-html-subdir=${PF}/html
- --localstatedir=/var
- )
-
- if use virtualbox && has_version app-emulation/virtualbox-ose; then
- myeconfargs+=( --with-vbox=/usr/lib/virtualbox-ose/ )
- else
- myeconfargs+=( $(use_with virtualbox vbox) )
- fi
-
- econf "${myeconfargs[@]}"
-
- if [[ ${PV} = *9999* ]]; then
- # Restore gnulib's config.sub and config.guess
- # bug #377279
- (cd .gnulib && git reset --hard > /dev/null)
- fi
-}
-
-src_test() {
- cd "${BUILD_DIR}"
-
- # remove problematic tests, bug #591416, bug #591418
- sed -i -e 's#commandtest$(EXEEXT) # #' \
- -e 's#virfirewalltest$(EXEEXT) # #' \
- -e 's#nwfilterebiptablestest$(EXEEXT) # #' \
- -e 's#nwfilterxml2firewalltest$(EXEEXT)$##' \
- tests/Makefile
-
- export VIR_TEST_DEBUG=1
- HOME="${T}" emake check || die "tests failed"
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- SYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)" install
-
- find "${D}" -name '*.la' -delete || die
-
- # Remove bogus, empty directories. They are either not used, or
- # libvirtd is able to create them on demand
- rm -rf "${D}"/etc/sysconfig
- rm -rf "${D}"/var
-
- use libvirtd || return 0
- # From here, only libvirtd-related instructions, be warned!
-
- systemd_install_serviced \
- "${FILESDIR}"/libvirtd.service.conf libvirtd.service
-
- systemd_newtmpfilesd "${FILESDIR}"/libvirtd.tmpfiles.conf libvirtd.conf
-
- newinitd "${S}/libvirtd.init" libvirtd || die
- newinitd "${FILESDIR}/libvirt-guests.init-r2" libvirt-guests || die
- newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
- newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd || die
-
- newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd || die
- newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests || die
-
- newbashcomp "${S}/tools/bash-completion/vsh" vsh
- bashcomp_alias vsh virsh virt-admin
-
- DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r2")
- DISABLE_AUTOFORMATTING=true
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # we only ever want to generate this once
- if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
- fi
-}
-
-pkg_postinst() {
- if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
- fi
-
- use libvirtd || return 0
- # From here, only libvirtd-related instructions, be warned!
-
- readme.gentoo_print_elog
-}
diff --git a/app-emulation/libvirt/libvirt-4.9.0.ebuild b/app-emulation/libvirt/libvirt-4.9.0.ebuild
index 15e0499ef873..5d4906ba113c 100644
--- a/app-emulation/libvirt/libvirt-4.9.0.ebuild
+++ b/app-emulation/libvirt/libvirt-4.9.0.ebuild
@@ -57,7 +57,11 @@ RDEPEND="
dev-libs/libgcrypt:0
dev-libs/libnl:3
>=dev-libs/libxml2-2.7.6
- || ( >=net-analyzer/netcat6-1.0-r2 >=net-analyzer/openbsd-netcat-1.105-r1 )
+ || (
+ >=net-analyzer/gnu-netcat-0.7.1-r3
+ >=net-analyzer/netcat-110-r9
+ >=net-analyzer/openbsd-netcat-1.105-r1
+ )
>=net-libs/gnutls-1.0.25:0=
net-libs/libssh2
net-libs/libtirpc
diff --git a/app-emulation/libvirt/libvirt-4.10.0.ebuild b/app-emulation/libvirt/libvirt-5.0.0-r1.ebuild
index 72cf7a3a0106..f5e5d7d5ddef 100644
--- a/app-emulation/libvirt/libvirt-4.10.0.ebuild
+++ b/app-emulation/libvirt/libvirt-5.0.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -30,18 +30,17 @@ LICENSE="LGPL-2.1"
IUSE="
apparmor audit +caps +dbus firewalld fuse glusterfs iscsi iscsi-direct
+libvirtd lvm libssh lxc +macvtap nfs nls numa openvz parted pcap phyp
- policykit +qemu rbd sasl selinux +udev uml +vepa virtualbox virt-network
+ policykit +qemu rbd sasl selinux +udev +vepa virtualbox virt-network
wireshark-plugins xen zeroconf zfs
"
REQUIRED_USE="
firewalld? ( virt-network )
- libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
+ libvirtd? ( || ( lxc openvz qemu virtualbox xen ) )
lxc? ( caps libvirtd )
openvz? ( libvirtd )
policykit? ( dbus )
qemu? ( libvirtd )
- uml? ( libvirtd )
vepa? ( macvtap )
virt-network? ( libvirtd )
virtualbox? ( libvirtd )
@@ -60,7 +59,6 @@ RDEPEND="
|| (
>=net-analyzer/gnu-netcat-0.7.1-r3
>=net-analyzer/netcat-110-r9
- >=net-analyzer/netcat6-1.0-r2
>=net-analyzer/openbsd-netcat-1.105-r1
)
>=net-libs/gnutls-1.0.25:0=
@@ -131,9 +129,9 @@ DEPEND="${RDEPEND}
virtual/pkgconfig"
PATCHES=(
- "${FILESDIR}"/${PN}-4.5.0-do_not_use_sysconf.patch
+ "${FILESDIR}"/${PN}-5.0.0-do-not-use-sysconf.patch
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
- "${FILESDIR}"/${PN}-4.10.0-fix_apparmor_rules.patch
+ "${FILESDIR}"/${PN}-5.0.0-fix-paths-for-apparmor.patch
)
pkg_setup() {
@@ -225,13 +223,16 @@ src_prepare() {
default
if [[ ${PV} = *9999* ]]; then
+ # Reinitialize submodules as this is required for gnulib's bootstrap
+ git submodule init
# git checkouts require bootstrapping to create the configure script.
# Additionally the submodules must be cloned to the right locations
# bug #377279
./bootstrap || die "bootstrap failed"
(
- git submodule status | sed 's/^[ +-]//;s/ .*//'
- git hash-object bootstrap.conf
+ git submodule status .gnulib | awk '{ print $1 }'
+ git hash-object bootstrap.conf
+ git ls-tree -d HEAD gnulib/local | awk '{ print $3 }'
) >.git-module-status
fi
@@ -279,7 +280,6 @@ src_configure() {
$(use_with sasl)
$(use_with selinux)
$(use_with udev)
- $(use_with uml)
$(use_with vepa virtualport)
$(use_with virt-network network)
$(use_with wireshark-plugins wireshark-dissector)
diff --git a/app-emulation/libvirt/libvirt-5.0.0.ebuild b/app-emulation/libvirt/libvirt-5.1.0.ebuild
index 158a315e310e..1f96bf5f51a7 100644
--- a/app-emulation/libvirt/libvirt-5.0.0.ebuild
+++ b/app-emulation/libvirt/libvirt-5.1.0.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
PYTHON_COMPAT=( python3_{4,5,6,7} )
@@ -28,9 +28,9 @@ DESCRIPTION="C toolkit to manipulate virtual machines"
HOMEPAGE="http://www.libvirt.org/"
LICENSE="LGPL-2.1"
IUSE="
- apparmor audit +caps +dbus firewalld fuse glusterfs iscsi +libvirtd lvm
- libssh lxc +macvtap nfs nls numa openvz parted pcap phyp policykit
- +qemu rbd sasl selinux +udev +vepa virtualbox virt-network
+ apparmor audit +caps +dbus firewalld fuse glusterfs iscsi iscsi-direct
+ +libvirtd lvm libssh lxc +macvtap nfs nls numa openvz parted pcap phyp
+ policykit +qemu rbd sasl selinux +udev +vepa virtualbox virt-network
wireshark-plugins xen zeroconf zfs
"
@@ -56,7 +56,11 @@ RDEPEND="
dev-libs/libgcrypt:0
dev-libs/libnl:3
>=dev-libs/libxml2-2.7.6
- || ( >=net-analyzer/netcat6-1.0-r2 >=net-analyzer/openbsd-netcat-1.105-r1 )
+ || (
+ >=net-analyzer/gnu-netcat-0.7.1-r3
+ >=net-analyzer/netcat-110-r9
+ >=net-analyzer/openbsd-netcat-1.105-r1
+ )
>=net-libs/gnutls-1.0.25:0=
net-libs/libssh2
net-libs/libtirpc
@@ -75,6 +79,7 @@ RDEPEND="
fuse? ( >=sys-fs/fuse-2.8.6:= )
glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
iscsi? ( sys-block/open-iscsi )
+ iscsi-direct? ( >=net-libs/libiscsi-1.18.0 )
libssh? ( net-libs/libssh )
lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
nfs? ( net-fs/nfs-utils )
@@ -124,7 +129,7 @@ DEPEND="${RDEPEND}
virtual/pkgconfig"
PATCHES=(
- "${FILESDIR}"/${PN}-5.0.0-do-not-use-sysconf.patch
+ "${FILESDIR}"/${PN}-5.1.0-do-not-use-sysconf.patch
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
"${FILESDIR}"/${PN}-5.0.0-fix-paths-for-apparmor.patch
)
@@ -225,8 +230,9 @@ src_prepare() {
# bug #377279
./bootstrap || die "bootstrap failed"
(
- git submodule status | sed 's/^[ +-]//;s/ .*//'
- git hash-object bootstrap.conf
+ git submodule status .gnulib | awk '{ print $1 }'
+ git hash-object bootstrap.conf
+ git ls-tree -d HEAD gnulib/local | awk '{ print $3 }'
) >.git-module-status
fi
@@ -253,6 +259,7 @@ src_configure() {
$(use_with glusterfs)
$(use_with glusterfs storage-gluster)
$(use_with iscsi storage-iscsi)
+ $(use_with iscsi-direct storage-iscsi-direct)
$(use_with libvirtd)
$(use_with libssh)
$(use_with lvm storage-lvm)
diff --git a/app-emulation/libvirt/libvirt-9999.ebuild b/app-emulation/libvirt/libvirt-9999.ebuild
index 18c56b58956b..7d5151b6d96b 100644
--- a/app-emulation/libvirt/libvirt-9999.ebuild
+++ b/app-emulation/libvirt/libvirt-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
PYTHON_COMPAT=( python3_{4,5,6,7} )
@@ -56,7 +56,11 @@ RDEPEND="
dev-libs/libgcrypt:0
dev-libs/libnl:3
>=dev-libs/libxml2-2.7.6
- || ( >=net-analyzer/netcat6-1.0-r2 >=net-analyzer/openbsd-netcat-1.105-r1 )
+ || (
+ >=net-analyzer/gnu-netcat-0.7.1-r3
+ >=net-analyzer/netcat-110-r9
+ >=net-analyzer/openbsd-netcat-1.105-r1
+ )
>=net-libs/gnutls-1.0.25:0=
net-libs/libssh2
net-libs/libtirpc
@@ -125,7 +129,7 @@ DEPEND="${RDEPEND}
virtual/pkgconfig"
PATCHES=(
- "${FILESDIR}"/${PN}-5.1.0-do-not-use-sysconf.patch
+ "${FILESDIR}"/${PN}-5.2.0-do-not-use-sysconf.patch
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
"${FILESDIR}"/${PN}-5.0.0-fix-paths-for-apparmor.patch
)
@@ -226,8 +230,9 @@ src_prepare() {
# bug #377279
./bootstrap || die "bootstrap failed"
(
- git submodule status | sed 's/^[ +-]//;s/ .*//'
- git hash-object bootstrap.conf
+ git submodule status .gnulib | awk '{ print $1 }'
+ git hash-object bootstrap.conf
+ git ls-tree -d HEAD gnulib/local | awk '{ print $3 }'
) >.git-module-status
fi
diff --git a/app-emulation/nemu/Manifest b/app-emulation/nemu/Manifest
index fae3f3bb0a2f..4b556629cbfb 100644
--- a/app-emulation/nemu/Manifest
+++ b/app-emulation/nemu/Manifest
@@ -1,6 +1,6 @@
-DIST nemu-2.0.0.tar.gz 85769 BLAKE2B daadbd5925d56d3747b59a3a8f28ceeeb24a674e57f003cf07c67c24dc0ed73f024d35e2f02836d89c7568b7ac51bfc3c6131afb4864febdd6ac6f86a827bfee SHA512 74c489e35b96699fcc5f9cabdbe4445c1cdad5b06c2a18928e2270e169b76e009463177990c4f4d80b160e06118b0b4e87209132cc0ae0ee3d77e2d811865f5a
DIST nemu-2.1.0.tar.gz 89117 BLAKE2B a44bf67990d79af0b73caf077266c4775f302ffc81d2394993da45870a72f462d487a92d63abdbe875c382d11b8d691f446a5e0b7270355770838ea86328fb1d SHA512 7e655227e22f5e2dd5ec1f77ef1635f1aaab2e57e417fb33d83d35cc67d7b802c35fa9174cf4282287213a1a825714743773260b96b452a382a8248fbef238bf
-EBUILD nemu-2.0.0.ebuild 1677 BLAKE2B 86cda2a8ea881b7ad662a6a4cde1b167329d42343929556aeb2ed0df639a240e5775e92c6a866843691750a3efb7d1ede1e8d1c53a9ad956cdb1867b0879eaa9 SHA512 328d92af10ace6733a6cba58ede2bfe75fa464fc208fa81faf9a6c6e0d6e56ef7328dc4ec1e8295a6908fd9d438d0931dc84b59091e17d46c057d0e0dc48cb41
+DIST nemu-2.2.0.tar.gz 94061 BLAKE2B 95304e8834f1d5c1e31065728363de5d797ae79554733dd3fecd90388b2766bc8907acfeded36676272967153eed5a7f30baba9ef2384fca67d19f3519461fa6 SHA512 2f427a560ea5ac4112b7d5cdd8524366521ca3d185676a4faa9bc480331c3381b7a362aed20025dc1acc0f576f07fb627b03137e1998926761a169c5be0eaf97
EBUILD nemu-2.1.0.ebuild 1672 BLAKE2B 7120f2c3a00e22e6ff2e3535b8fbb51d1995e85075386e32782ab98799a9a6de36618493caef92022ef6bcbb1865cd559cc6282e50627256a5136f25b8df8c77 SHA512 f4f0b240a8716757a80564cf4f0cd65b8592a6c45276e4cb2a2c90c6e7a7aa3406fac0b91b7ab98f551b8482390571432063c062880488ffe589bb404b9f2f17
+EBUILD nemu-2.2.0.ebuild 1857 BLAKE2B 221d8ba7d1560fc554a14252d63308da6837a17371ee0efa9b48a8117c9c1ef560c480ed2a5b4d923903f80e6f84e4b3d1238216d43f23e5f4cf49ea5b7e06f2 SHA512 3e9e955c674b0a94e8ea5b5415ee52978ffc929ddfc61270c96dc61acac0f845bcdbc35cb24f1d34fbb58931222345bdeae368c53bbf66164644f35113bf620c
EBUILD nemu-9999.ebuild 1916 BLAKE2B 232c49c84167c44c6fc3afd2e1b26cb6f820b53d345956c4d92058368f095206e3351ac431728a6f8847a88e53f09af7e39b5ff24874635b231b9a1ca6df7abc SHA512 87b016f6a485c921222428b96b11687cfb906118cfc398318b14f45ebd1c09aeb710b0cdea389a41e5936478e31645925599b32fe203fe07559debb54d7ed9b4
-MISC metadata.xml 499 BLAKE2B 2d190da58be258c1e5e997128bc65e9f928c9ec86e9be23d43cc881c92d9cd65e9cdee6db7afb92abf799aaa552ad5ddcf6dbdafd26d12c2521e8724f7f98471 SHA512 42e56aaad5eff7d180c6af0ef571f5fca4e101e934fc7506387456d89068ab8446e861dcd1124d85d962bf05b48a26833d0883b7c152c7214c79c324c18d236f
+MISC metadata.xml 638 BLAKE2B a90b3636fe59b93525c49d40bd9875d068f11b10dfb582e64aecefcfd77d3d87dfc0b4d0621038e3075219b0e0bcc0add96aa2b6eb840b6fec1240962824419d SHA512 663fbac22b8df6daecda876b76105da92c985bf3f767f4f3477ce71d74e8ada3ef93e84072fd845b07622ea76860a1f3af0cbf67081e6e9e68d192caf4c81315
diff --git a/app-emulation/nemu/metadata.xml b/app-emulation/nemu/metadata.xml
index ad75c6dc879c..b2ce9edb9146 100644
--- a/app-emulation/nemu/metadata.xml
+++ b/app-emulation/nemu/metadata.xml
@@ -8,6 +8,8 @@
<use>
<flag name="vnc-client">Adds support for external VNC client</flag>
<flag name="savevm">Adds support for QEMU savevm snapshots (experimental, QEMU must be patched)</flag>
+ <flag name="spice">Adds Spice protocol support</flag>
<flag name="ovf">Adds support for OVA/OVF import</flag>
+ <flag name="network-map">Adds possibility of exporting network map to SVG</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/nemu/nemu-2.0.0.ebuild b/app-emulation/nemu/nemu-2.2.0.ebuild
index fad6abdf3786..7b885f4f50c6 100644
--- a/app-emulation/nemu/nemu-2.0.0.ebuild
+++ b/app-emulation/nemu/nemu-2.2.0.ebuild
@@ -1,44 +1,36 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit cmake-utils linux-info
DESCRIPTION="ncurses interface for QEMU"
-HOMEPAGE="https://lib.void.so/nemu"
-SRC_URI="http://lib.void.so/src/${P}.tar.gz"
+HOMEPAGE="https://lib.void.so/nemu/ https://bitbucket.org/PascalRD/nemu/"
+SRC_URI="https://lib.void.so/src/${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="+vnc-client +ovf savevm debug"
+IUSE="debug network-map +ovf savevm spice +vnc-client"
-RDEPEND="
- virtual/udev:=
+RDEPEND="app-emulation/qemu[vnc,virtfs,spice?]
dev-db/sqlite:3=
- virtual/libusb:1
- app-emulation/qemu[vnc,virtfs]
sys-libs/ncurses:0=[unicode]
+ virtual/libusb:1
+ virtual/libudev:=
+ network-map? ( media-gfx/graphviz )
ovf? (
- dev-libs/libxml2
- app-arch/libarchive
+
+ dev-libs/libxml2:2
+ app-arch/libarchive
+
)
vnc-client? ( net-misc/tigervnc )"
-DEPEND="
- ${RDEPEND}
- sys-devel/gettext"
+DEPEND="${RDEPEND}"
-src_configure() {
- local mycmakeargs=(
- -DNM_WITH_VNC_CLIENT=$(usex vnc-client)
- -DNM_DEBUG=$(usex debug)
- -DNM_SAVEVM_SNAPSHOTS=$(usex savevm)
- -DNM_WITH_OVF_SUPPORT=$(usex ovf)
- )
- cmake-utils_src_configure
-}
+BDEPEND="sys-devel/gettext"
pkg_pretend() {
if use kernel_linux; then
@@ -56,6 +48,18 @@ pkg_pretend() {
fi
}
+src_configure() {
+ local mycmakeargs=(
+ -DNM_DEBUG=$(usex debug)
+ -DNM_WITH_NETWORK_MAP=$(usex network-map)
+ -DNM_WITH_OVF_SUPPORT=$(usex ovf)
+ -DNM_SAVEVM_SNAPSHOTS=$(usex savevm)
+ -DNM_WITH_SPICE=$(usex spice)
+ -DNM_WITH_VNC_CLIENT=$(usex vnc-client)
+ )
+ cmake-utils_src_configure
+}
+
pkg_postinst() {
elog "For non-root usage execute script:"
elog "/usr/share/nemu/scripts/setup_nemu_nonroot.sh linux <username>"
diff --git a/app-emulation/playonlinux/Manifest b/app-emulation/playonlinux/Manifest
index c5559b971fc2..6127fc3607c0 100644
--- a/app-emulation/playonlinux/Manifest
+++ b/app-emulation/playonlinux/Manifest
@@ -4,5 +4,7 @@ AUX playonlinux-4.2.6-stop-update-warning.patch 766 BLAKE2B 934a8600742d7030d22f
AUX playonlinux-pkg.1 643 BLAKE2B 80c5381aad102d81eebaa81d3ed83ed0fb16aa29b7f4a2e2b9dd349fe020112fd34e32ac9edab510852cb66bc402d9ef46ed0a2aed5c3369885161797e47aca8 SHA512 115f87cee7c6d56dbc54da9b120ca468fb29ae4be116101cfa3e8efd1efd9a372e6e8424462087807f6755d496575c44788914f4e45c901359ce52fbe37210a8
AUX playonlinux.1 886 BLAKE2B 903f21600540798a765ae209832c4f111380340f4c6305ca333b29e6508579e13b3df8c3d44bc56284cdce290b319d40294eaee7476630190c9b7fd24ece2e76 SHA512 44ba1a04a7e8dbf3d85d81bbcf92917b6fe7bd68478bbcfecfe0c30619b834cc6c973fc6dd7d637d7debc7ede2a206248feaca1a017834ba95f076fd16679c2d
DIST PlayOnLinux_4.2.12.tar.gz 3204230 BLAKE2B 80ef0e5763448da4a37263c64d408e8263771694666a7c704b5900dfe0e52cc18405c34d609d8c49a0d05a383fca2d035e956e3bbe9a9a0c92a4e43b319ed7ba SHA512 f4ededc8fe0117c66fd5672e136e19b9b48a41acdd3e1b1b3dd7fae2c354e77795f0a4f8286b09b7d1813363aee50fa0811c04c3194aaf745963a2e6115b3909
+DIST PlayOnLinux_4.3.4.tar.gz 3101890 BLAKE2B d724cbd90a0f1bbc94c6365fcf6511d39ea0e8e9de32f42716111324f69091874ab19d3fa88a6bd9f77ed6308bc03ca708406fdc24faa60bf662e6a4f5d15d86 SHA512 7f2089d37379adee01424777e9c3b7ec16dd56ba2f4b834b4f0447832c050b2df3218a7361e8e735d5cc359aec6a000fea88e11632c9434232e4f749bb21c173
EBUILD playonlinux-4.2.12.ebuild 2831 BLAKE2B 5726b4c84d423b8d2ea519fccfa29ed8bf26dab8e101ae94f33e83d5b49f57fa5056a9feaae41555d90d064620e0ddef4d268f29164e2332762318e6693e1eaa SHA512 7c851c95913c074a4b5ee35d6bdf7c93f8795ee6e42c25a0b4c6dc49c94977d2b041568789e85f3e7392e4a510fc6b2d13002021ae1b075380b4f9585e55b845
+EBUILD playonlinux-4.3.4.ebuild 2723 BLAKE2B 4ca0028850cc0ad5d219a8845276701daf7eb0897d60b32d03e504ca078bfd9238d8b4b0aa28e22ae7dd94b654913b5505a842859e1adbd5bd0c638b415505f2 SHA512 7c70363bf0fcd6a247e399814d0efa493799c91e31e2eeccb5e9a3965179928f770718fd9e21e58422c1f799ed1ed9454fa72990de69e9954160ae8bc835cf39
MISC metadata.xml 433 BLAKE2B 6ba322414d75d581231afedbb791ce71aff799da09be4e08aab6f4e7e2e88d19b6e8701e36599bd1760e7076558c733edfe19f603f7f9541d0197cf4f1d59e4a SHA512 1e1dbfa93723297b63288436eaa1ce87183de71847c0ce61767381f668f6ad0bf69119570f7c7e395866f15e176f7412378c09386f8ddb271f7b2ec39da2d295
diff --git a/app-emulation/playonlinux/playonlinux-4.3.4.ebuild b/app-emulation/playonlinux/playonlinux-4.3.4.ebuild
new file mode 100644
index 000000000000..f2a319b7bbeb
--- /dev/null
+++ b/app-emulation/playonlinux/playonlinux-4.3.4.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit desktop eutils python-single-r1 xdg
+
+MY_PN="PlayOnLinux"
+
+DESCRIPTION="Set of scripts to easily install and use Windows games and software"
+HOMEPAGE="https://playonlinux.com/"
+SRC_URI="https://www.playonlinux.com/script_files/${MY_PN}/${PV}/${MY_PN}_${PV}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="winbind"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND=""
+RDEPEND="${PYTHON_DEPS}
+ app-arch/cabextract
+ app-arch/p7zip
+ app-arch/unzip
+ app-crypt/gnupg
+ app-misc/jq
+ dev-python/wxpython:3.0[${PYTHON_USEDEP}]
+ media-gfx/icoutils
+ || ( net-analyzer/netcat net-analyzer/openbsd-netcat )
+ net-misc/wget
+ virtual/imagemagick-tools
+ virtual/wine
+ winbind? ( net-fs/samba[winbind] )
+ x11-apps/mesa-progs
+ x11-terms/xterm
+"
+
+S="${WORKDIR}/${PN}"
+
+# TODO:
+# Having a real install script
+# It will let using LANGUAGES easily
+# How to deal with Microsoft Fonts installation asked every time ?
+# How to deal with wine version installed ? (have a better mgmt of system one)
+# Look at debian pkg: https://packages.debian.org/sid/playonlinux
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.2.4-pol-bash.patch"
+ "${FILESDIR}/${PN}-4.2.4-binary-plugin.patch"
+ "${FILESDIR}/${PN}-4.2.6-stop-update-warning.patch"
+)
+
+src_prepare() {
+ default
+
+ python_fix_shebang .
+
+ # remove playonmac
+ rm etc/{playonmac.icns,terminal.applescript} || die
+
+ # remove desktop integration
+ rm etc/{PlayOnLinux.desktop,PlayOnLinux.directory,playonlinux-Programs.menu} || die
+}
+
+src_install() {
+ # all things without exec permissions
+ insinto "/usr/share/${PN}"
+ doins -r resources lang lib etc plugins
+
+ # bash/ install
+ exeinto "/usr/share/${PN}/bash"
+ find "${S}/bash" -type f -exec doexe '{}' +
+ exeinto "/usr/share/${PN}/bash/expert"
+ find "${S}/bash/expert" -type f -exec doexe '{}' +
+
+ # python/ install
+ python_moduleinto "/usr/share/${PN}"
+ python_domodule python
+
+ # main executable files
+ exeinto "/usr/share/${PN}"
+ doexe ${PN}{,-pkg,-bash,-shell,-url_handler}
+
+ # icons
+ doicon -s 128 etc/${PN}.png
+ for size in 16 22 32; do
+ newicon -s $size etc/${PN}$size.png ${PN}.png
+ done
+
+ doman "${FILESDIR}"/playonlinux{,-pkg}.1
+ dodoc CHANGELOG.md
+
+ make_wrapper ${PN} "./${PN}" "/usr/share/${PN}"
+ make_wrapper ${PN}-pkg "./${PN}-pkg" "/usr/share/${PN}"
+ make_desktop_entry ${PN} ${MY_PN} ${PN} Game
+}
+
+pkg_prerm() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ elog "Installed software and games with playonlinux have not been removed."
+ elog "To remove them, you can re-install playonlinux and remove them using it,"
+ elog "or do it manually by removing .PlayOnLinux/ in your home directory."
+ fi
+}
diff --git a/app-emulation/punes/Manifest b/app-emulation/punes/Manifest
index 769b38139d30..03260ef04155 100644
--- a/app-emulation/punes/Manifest
+++ b/app-emulation/punes/Manifest
@@ -1,4 +1,3 @@
-AUX punes-0.102-qt-5.11-fix.patch 641 BLAKE2B 0b29cdd714eaf8cf0bf9da5fcb8ebfea891ffe02e02b3cb09da3d190f94e1f876ad16cf35d5e8d85b41bf170f837346e12dba6949633fe4bd1ea12974391502e SHA512 504b912184143e49fad998e2fe68d91fa479e0c86311398e52c0c29ea28cc71d5dc2cb9dd1dcc849660467d37a9223df77c7f2d953c8867fecc204ab1acc93bc
-DIST punes-0.102.tar.gz 4670534 BLAKE2B 04576110e4fcd9aeaa3dfb6812ab7a21305200c82651be00defcb59b91374b155b279818f2e09d217841aa8567c41e06067252538fb68b7b907d5ab29b02c678 SHA512 dff95b25f64ed03060b6dd187d7a283acfddb6bea4168df5be4d309bd6aabdcaa5d0ea0312d0824205bf134cd0ddabf014e82a81c8a901a59258475ec24bd394
-EBUILD punes-0.102.ebuild 1048 BLAKE2B 125fa0e030e81d57128bef0f2571fe124c77a5edb792a0fb6a4f8fe3fa02db6f7a0b69f2e6cf01d1784af350d6f9b4c136061320f6b79a03df1f7bfc564d7c08 SHA512 88b754ba877cb4ffe2cd1c65abf49a7bdcb03bec53b50e552604e8da6a3c7a3d22d180855c47aa8eebf153e13e1d98788aa299fb2170a937c17292dd0d009e53
+DIST punes-0.103.tar.gz 5366838 BLAKE2B cb4a9a1336293891e06d573f68c52962e79220e7024fad716a957f5423a72703a34efc3fb6129dbe9ffde2c96fe7abd2a1ad4a622aaca89e90f6a2d5af8c1a53 SHA512 db0fbc075b9fd46be8013b17c03fd7abd12b209ce166557c83283c917e53224712ba5838cd8b9e7fad3d21271f29e475460996dd9800b9f759602e289bad4205
+EBUILD punes-0.103.ebuild 967 BLAKE2B 544a6b435b37df81d70cb910306166b9ed8abea34affe35907df7eef299a5afe1d555807badadc5fee5d096c466a46593641b8a6e24e37e9ed086a3d677a7102 SHA512 da0c115bfb8d7d138054e7e5b2cbc29449ff9ed6f63c4ea000fd630ebb87e1e72ccee7e637cc4a741aedc2ebdf68f1e799d58afc9530d3384e9d57948d7a8824
MISC metadata.xml 625 BLAKE2B 3ae9de8ff12a46dd98f0132843cf2fe0f7be77d33497fc2a97b026adba711f2bafd04f71140bf4cddaf6242dc4a9b85ea26f8ec905f0325041dc10b0afa85e4b SHA512 d93f23a57d82c716a4b25526ba184ab135fdd81de106e90b7ba2589607d42f16c28b326e257345f34a85f7cda09cd90cda4dc6989b02b46de6350e343c71c2f6
diff --git a/app-emulation/punes/files/punes-0.102-qt-5.11-fix.patch b/app-emulation/punes/files/punes-0.102-qt-5.11-fix.patch
deleted file mode 100644
index 1ac5ccafab07..000000000000
--- a/app-emulation/punes/files/punes-0.102-qt-5.11-fix.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 46620c32ff37a7968c977e4b3cde8d601807702c Mon Sep 17 00:00:00 2001
-From: fhorse <punes.development@gmail.com>
-Date: Sun, 15 Jul 2018 13:30:15 +0200
-Subject: [PATCH] Corretto errore di compilazione con le Qt5.
-
----
- src/gui/dlgCheats.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/gui/dlgCheats.cpp b/src/gui/dlgCheats.cpp
-index 9ff904d2..b7c6c52a 100644
---- a/src/gui/dlgCheats.cpp
-+++ b/src/gui/dlgCheats.cpp
-@@ -25,6 +25,7 @@
- #include <QtWidgets/QMessageBox>
- #include <QtWidgets/QCheckBox>
- #include <QtWidgets/QFileDialog>
-+#include <QtWidgets/QButtonGroup>
- #endif
- #include "dlgCheats.moc"
- #include "mainWindow.hpp"
diff --git a/app-emulation/punes/punes-0.102.ebuild b/app-emulation/punes/punes-0.103.ebuild
index 92b1d19b10d1..a12d37ba11e8 100644
--- a/app-emulation/punes/punes-0.102.ebuild
+++ b/app-emulation/punes/punes-0.103.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -16,10 +16,10 @@ IUSE="cg"
RDEPEND="
dev-qt/qtcore:5
dev-qt/qtgui:5
+ dev-qt/qtsvg:5
dev-qt/qtwidgets:5
cg? ( media-gfx/nvidia-cg-toolkit )
media-libs/alsa-lib
- media-libs/libsdl[opengl]
virtual/opengl"
DEPEND="
@@ -28,8 +28,6 @@ DEPEND="
S="${WORKDIR}/puNES-${PV}"
-PATCHES=( "${FILESDIR}/${P}-qt-5.11-fix.patch" )
-
src_prepare() {
default
@@ -42,7 +40,6 @@ src_prepare() {
src_configure() {
econf \
- --enable-qt5 \
$(use_with cg opengl-nvidia-cg)
}
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest
index bd26b16d7499..7c97d85238e5 100644
--- a/app-emulation/qemu/Manifest
+++ b/app-emulation/qemu/Manifest
@@ -10,5 +10,6 @@ AUX qemu-binfmt.initd.tail 245 BLAKE2B dd59f2944c6e3f0c4d282b94b687a9b5c51dd77c5
DIST qemu-3.1.0.tar.xz 36070104 BLAKE2B 9ed7d1b3256d84f2b73d61763e20f5e4bc5b47d56e4e0d56cf4c29cd25669457b0f08e90d7255589c9666400bb310df3dba3b9290232cad18057b20f08013a3b SHA512 7e8dae823937cfac2f0c60406bd3bdcb89df40313dab2a4bed327d5198f7fcc68ac8b31e44692caa09299cc71256ee0b8c17e4f49f78ada8043d424f5daf82fe
EBUILD qemu-3.1.0-r1.ebuild 23852 BLAKE2B 806b0941d78b6db3100ff11a255b322f5fa2932227d78139340589df2a7d8ec414ffc3f823bfc2ebafcdaa0d7381cbe94b4f195a006c59a603aa4628f29e5d8a SHA512 757420b4d9866cdbb926860d77ecf30ded9ba8b0b2a7fb4ffcd69b9e4b73781e22434a816df032af820b4f9b3f7ffe686e2f30e0dd6eefb593374ab8b5cd51f1
EBUILD qemu-3.1.0-r2.ebuild 23882 BLAKE2B 3e334ba5b54bfd9c70fc4f9863f086da4b5c28ad4bba74b62467bfbbacc55322479296fc24030410227d30c0a6e768e37a45c760ad4913c6822eb29a92825ff1 SHA512 e04facec92ed09574eb31afc6985568cccbf9d4eb5a08507796f220831a77a52779196cad098300723140333ce8349f8fc0bf947158be1cd513135e928d83b8c
-EBUILD qemu-9999.ebuild 23580 BLAKE2B 58c29027b97fbabc8bd427aafacd21215e4058fd73546d9c546d4ab0c535782ee4d9f0edc4c5362e4da9ec1b9f17fee3a7ddff0b860467b688f1d7943927f109 SHA512 670a0a76423bed889ccec8aa195e4481dbbf437caa8c2f8e09377cb0b8175f18c440a23d04073c5fdc00cc7ff10a93af1d1cb03b253b83f13b7072ecb3c86807
+EBUILD qemu-3.1.0-r3.ebuild 23972 BLAKE2B 56530f685f9c9e8bdc37624a6cef7c7d0b57e069a588ae0b598fff050d681b3201069a14ef054e5277ef4c3eea9a118d719ff2f2bd2b154a34ad1bf354519022 SHA512 55dcd7025c9fd7ae327508fd239acb241d7cf83f8b6ca4de3ebc70550f0598f5683877ac612196737971112f542a5caae19baa1804d43f2f26a8a02c320ee481
+EBUILD qemu-9999.ebuild 23580 BLAKE2B e5515532efaee5e1d15cf01d5a463497f5772f558075a043d58a662a3360bebd575d940ce06ec55840642daa569bc85c18d12cb2e265394eddfbe01f877c5ed9 SHA512 3d6957bbe66792b95ec65c70777ee62e5e59ecf1a413462661f8d16179f504c75a9e8d1da60993d7bbd8f340bd74f989d2ec54816204b11cf0887e4827735e86
MISC metadata.xml 3903 BLAKE2B 47538d32d79321c208037c95184ab68dbbcaa2331a561142bbadc01fbc2b7973cc5ae76ac6dfa7faf1c3aa31d1d0b5dfd6a46211e94c17c5a8939b0ae99b227b SHA512 d501ede1f3182e635db02c8bac4381906ac47b8d6db4bb6b0fdeb91b35b440a2a59a5dd23b06462f1d49a6b64ae2f2bcf1f81fd0a898c8f4b67a40ccf2c58341
diff --git a/app-emulation/qemu/qemu-3.1.0-r3.ebuild b/app-emulation/qemu/qemu-3.1.0-r3.ebuild
new file mode 100644
index 000000000000..c0894a2ad474
--- /dev/null
+++ b/app-emulation/qemu/qemu-3.1.0-r3.ebuild
@@ -0,0 +1,815 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6,3_7} )
+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.xz"
+ KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
+
+ # Gentoo specific patchsets:
+ #SRC_URI+=" https://dev.gentoo.org/~tamiko/distfiles/${P}-patches-r1.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 bzip2 capstone +caps +curl debug
+ +fdt glusterfs gnutls gtk infiniband iscsi +jpeg kernel_linux
+ kernel_FreeBSD lzo ncurses nfs nls numa opengl +pin-upstream-blobs +png
+ pulseaudio python rbd sasl +seccomp sdl selinux smartcard snappy
+ spice ssh static static-user systemtap tci test usb usbredir vde
+ +vhost-net virgl virtfs +vnc vte xattr xen xfs"
+
+RESTRICT=strip
+
+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 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}
+ qemu_softmmu_targets_arm? ( fdt )
+ qemu_softmmu_targets_microblaze? ( fdt )
+ qemu_softmmu_targets_mips64el? ( fdt )
+ qemu_softmmu_targets_ppc64? ( fdt )
+ qemu_softmmu_targets_ppc? ( fdt )
+ qemu_softmmu_targets_riscv32? ( fdt )
+ qemu_softmmu_targets_riscv64? ( fdt )
+ static? ( static-user !alsa !gtk !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 )
+ 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? (
+ 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? (
+ 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]
+ )
+"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ sys-apps/texinfo
+ virtual/pkgconfig
+ gtk? ( nls? ( sys-devel/gettext ) )
+ test? (
+ dev-libs/glib[utils]
+ sys-devel/bc
+ )
+"
+CDEPEND="
+ !static? (
+ ${ALL_DEPEND//\[static-libs(+)]}
+ ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
+ )
+ qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
+ qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
+ qemu_softmmu_targets_ppc64? ( ${PPC64_FIRMWARE_DEPEND} )
+"
+DEPEND="${CDEPEND}
+ ${PYTHON_DEPS}
+ kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
+ static? (
+ ${ALL_DEPEND}
+ ${SOFTMMU_TOOLS_DEPEND}
+ )
+ static-user? ( ${ALL_DEPEND} )"
+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}-3.1.0-CVE-2018-20123.patch
+ "${FILESDIR}"/${PN}-3.1.0-CVE-2019-3812.patch
+ #"${WORKDIR}"/patches
+)
+
+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+=(
+ --disable-bluez
+ $(conf_notuser accessibility brlapi)
+ $(conf_notuser aio linux-aio)
+ $(conf_notuser bzip2)
+ $(conf_notuser capstone)
+ $(conf_notuser caps cap-ng)
+ $(conf_notuser curl)
+ $(conf_notuser fdt)
+ $(conf_notuser 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 sdl && conf_opts+=( --with-sdlabi=2.0 )
+ 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
+
+ # we use 'printf' here to be portable across 'sh'
+ # implementations: #679168
+ cat <<EOF >>"${out}"
+ if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
+ printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
+ fi
+EOF
+
+ echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
+
+ done
+ cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
+}
+
+src_install() {
+ if [[ -n ${user_targets} ]]; then
+ cd "${S}/user-build"
+ emake DESTDIR="${ED}" install
+
+ # Install binfmt handler init script for user targets.
+ generate_initd
+ doinitd "${T}/qemu-binfmt"
+
+ # Install binfmt/qemu.conf.
+ insinto "/usr/share/qemu/binfmt.d"
+ doins "${T}/qemu.conf"
+ fi
+
+ if [[ -n ${softmmu_targets} ]]; then
+ cd "${S}/softmmu-build"
+ emake DESTDIR="${ED}" install
+
+ # This might not exist if the test failed. #512010
+ if [[ -e check-report.html ]]; then
+ docinto html
+ dodoc check-report.html
+ fi
+
+ 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 ver_test $pv -lt ${FIRMWARE_ABI_VERSION}; then
+ return 0
+ fi
+ done
+ return 1
+}
+
+pkg_postinst() {
+ if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
+ udev_reload
+ fi
+
+ [[ -f ${D}/usr/libexec/qemu-bridge-helper ]] && \
+ 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/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-9999.ebuild
index 36a3408c93b9..69e36290636d 100644
--- a/app-emulation/qemu/qemu-9999.ebuild
+++ b/app-emulation/qemu/qemu-9999.ebuild
@@ -595,7 +595,7 @@ src_test() {
}
qemu_python_install() {
- python_domodule "${S}/scripts/qmp/qmp.py"
+ python_domodule "${S}/python/qemu/qmp.py"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
diff --git a/app-emulation/skopeo/Manifest b/app-emulation/skopeo/Manifest
index 444469ba7ecf..e5205ab9c2ea 100644
--- a/app-emulation/skopeo/Manifest
+++ b/app-emulation/skopeo/Manifest
@@ -4,9 +4,11 @@ DIST skopeo-0.1.30.tar.gz 2700275 BLAKE2B d80125e1be32f3b490f5d66caa5b1bd482dc22
DIST skopeo-0.1.31.tar.gz 2886364 BLAKE2B 9ef9eb4fdd722216f15e14de6702aa0dfe3331b83acb803221b8f76a36428749b6bc302cb3ea2772dd42aefc336a80ad823cfcda9fc054a01f672cf7464592a1 SHA512 660856d962310f0274f3c2507a9a5cbfd8ceb205a3d2fdf30ebde856602151917492082356f6031e5d041ce02e53e562e83cba58259cdc456363f7af56b2507b
DIST skopeo-0.1.32.tar.gz 4366298 BLAKE2B b358cb197475d693fa47cdfda738a78f70c9f59c5e3e61e55f3be21ea137640de2e9c61eb6437faca9a8f0e8dd6dda673e1cd645922a23533e6101eb326ef789 SHA512 c52eeee85aa01448c9742d4e415e3ce6f2e0ef4e26a55758202baecb573ad8e3efb94c762d4c303fb21b896998b32e19f919a7382dfd6b17df2a96d66d07267b
DIST skopeo-0.1.34.tar.gz 2859957 BLAKE2B f36062374b2afa7363a02d6410bd35bbf5ccd0599eea7eb6d68b769e9fbf492dc7843dbd184fccc742250fcd3e573e33bd5454971730bcec2151a52a32b81680 SHA512 3ba99fcbff9f46fa1a4226bfc54961cf640150e0e0ac6b3457e862ef94991fa05a7bd609cbf8c87a0424df6942653fb5492a3893fa5282242c4df6913c4312a2
+DIST skopeo-0.1.35.tar.gz 2723348 BLAKE2B 74a98e43ff2b32ea29b9e57ea6ba20323660b631f4a7541aa1c720e283286809c501d655af18aa794123b3af727ca54bb41686a6b0d79b33c8f82f8642cc6176 SHA512 ec5aeb596aaf51512c049dc55353ce2d076ac30ae0fc3f9e90b8a8a9fb07ec86aafe51111d38e2d34ea5193c0a6f9e74a69536bf5b759fdedfa0c97deb211894
EBUILD skopeo-0.1.22.ebuild 1341 BLAKE2B 7ad0f306ac63766a536809f9b895bd8a2a677c152f9806b593355cef618efd6aef8b1e2c8f70f979eeb1f99a8ba365b440dc9252f80cbbf0d4e882cef1840fba SHA512 84e7d05d76f896ef62021a80c093df74a575ccf2c79cab2f80e47b01e4d9ee4f60ee4713738d887579eb617a5e95d68a017c026d899c0a4d2d40b9ee5752a0e4
EBUILD skopeo-0.1.30.ebuild 1292 BLAKE2B 554710ddbd65d0b3930ac4a0e23ce8cd2336cbc640a04e73afd885bfab1e5c84004b3e27e45ba86b19c40907cc4e28f37806cf6cef5c0e863d47da5a849cc3ea SHA512 708996e9c9bd91b474e6b443874d34c5c5752a64835ec7b279ae0c442ccbe28820bb003a1ab90fae8e23a9b8c534250c7f77f8574eef910dd8a64f5fe2449dec
EBUILD skopeo-0.1.31.ebuild 1292 BLAKE2B 29f2228680d49b433e5376d230fe55e751d680ec24b9fd5755ba71cf635b2e8e416aef85ef0541e5e691f3ccdde5576bb43e9b7c8835aff8d2ffebc3298d83bb SHA512 11782377ce6d4263dc678e141f4b8ab96e0702e0f6b893ce41ad46f09fbcf837a20066622bd51e6640df3c5a72dd226f7879dacaf660b47d1e4d45771dde27e6
EBUILD skopeo-0.1.32.ebuild 1280 BLAKE2B 7280ea0f0f7a3040fd2cf42563f7dd8a47d508bdb462c99fff6a41a6f7c7690d1c962a39a6c7dc6f8ad035fea52d6b72b7ca3af9e2be9460d76b40f50835802c SHA512 2a8209228700fc09c416d59e66c8f45b7a1e0b88cfd486b7009bb44419de8e11303ab6ea0bf0022e4e135c9b70f748b5e503ccdece578f1bbbff514081fd98b7
EBUILD skopeo-0.1.34.ebuild 1335 BLAKE2B c18ebeb72018d0b37f6c1923c4867b528b05465d521e60b23531ba17b233ff17f26e0e7c0d57f9b912655d9bf13be46f875386e523c1b212b11edfcee95e5ed3 SHA512 4da6b6e6288e8f33b321670a363efe482199bc3c953410cfd0c82f386256ce60d9e3e90b5bea570036a257fbc4789e8a8975b1cb438ea31a43e175071bb3d356
+EBUILD skopeo-0.1.35.ebuild 1364 BLAKE2B e6be11dd4ec26eb3015a36daa38eade6aacf12ddbeb315485f8baa094b73348fa734f7b34999f5eb9d74e58169f130e09ded8feb19ee5be463924b6f632f5dfc SHA512 03e52ecb0d6f4769f05fcada7e3aa85bb98c973420cd7c235a9dd8d6d430e7c3ba1c0a4c8b2dbae797d36fada397c302d4689000ab7292fc18fd93af435327a5
MISC metadata.xml 248 BLAKE2B 5d9c3678c604aac0f24c5d5015e28f02b9ce83bb6a179755a44adeb3d69e4dd50be4acc30a6317649f5be23bcf13ac210bbe4712aa403e9c4cf2de351b39c941 SHA512 dc5b06a888be6367909895d5891a08189f4657bcee602e5ff0021be2ad3677e58ec7387ff244625be66a142138666e7eac790d2a7b1e298f0ad644725b5e57e0
diff --git a/app-emulation/skopeo/skopeo-0.1.35.ebuild b/app-emulation/skopeo/skopeo-0.1.35.ebuild
new file mode 100644
index 000000000000..6a50ae5982c5
--- /dev/null
+++ b/app-emulation/skopeo/skopeo-0.1.35.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+EGO_PN=github.com/containers/skopeo
+COMMIT=404c5bd
+inherit golang-vcs-snapshot bash-completion-r1
+
+DESCRIPTION="Command line utility foroperations on container images and image repositories"
+HOMEPAGE="https://github.com/containers/skopeo"
+SRC_URI="https://github.com/containers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+COMMON_DEPEND=">=app-crypt/gpgme-1.5.5:=
+ >=dev-libs/libassuan-2.4.3
+ >=sys-fs/btrfs-progs-4.0.1
+ >=sys-fs/lvm2-2.02.145"
+DEPEND="${COMMON_DEPEND}
+ dev-go/go-md2man"
+RDEPEND="${COMMON_DEPEND}"
+
+S="${WORKDIR}/${P}/src/${EGO_PN}"
+
+RESTRICT="test"
+
+src_compile() {
+ local BUILDTAGS="containers_image_ostree_stub"
+ set -- env -u GOCACHE -u XDG_CACHE_HOME GOPATH="${WORKDIR}/${P}" \
+ go build -ldflags "-X main.gitCommit=${COMMIT}" \
+ -gcflags "${GOGCFLAGS}" -tags "${BUILDTAGS}" \
+ -o skopeo ./cmd/skopeo
+ echo "$@"
+ "$@" || die
+ cd docs || die
+ for f in *.1.md; do
+ go-md2man -in ${f} -out ${f%%.md} || die
+ done
+}
+
+src_install() {
+ dobin skopeo
+ doman docs/*.1
+ dobashcomp completions/bash/skopeo
+ insinto /etc/containers
+ newins default-policy.json policy.json
+ insinto /etc/containers/registries.d
+ doins default.yaml
+ keepdir /var/lib/atomic/sigstore
+ einstalldocs
+}
diff --git a/app-emulation/slirp4netns/Manifest b/app-emulation/slirp4netns/Manifest
index 60473b36d1ff..22fd7973f13a 100644
--- a/app-emulation/slirp4netns/Manifest
+++ b/app-emulation/slirp4netns/Manifest
@@ -1,5 +1,7 @@
DIST slirp4netns-0.2.1.tar.gz 136425 BLAKE2B 81d6a0e68433522c2382ca938515ff7a96bf9afab32d3b25db454c706f24afb671709bcca6d52b5673934bf1963ec1795f8022319c2f6d936fd17e87e4e3edff SHA512 f923fe7b02eb30a108e99c63574dd1e9e948c9afa56a2747ddb0b78ea24beadecbce93b3644171c3aea698e5d37f4302eb22e4187f14db870b1e8018f75f4089
DIST slirp4netns-0.3.0_alpha2.tar.gz 157206 BLAKE2B b408fadc322c81efa5985587a5121fbe4e5db5319367946263f721eef3022eec8c9db175f0bac25c2d614107747e39c397385a2c3d264c85266e908b887b9b4c SHA512 f2dd5f2d9d5d82f83ba5a35dc001ebf9413113580dfd44cd96f498100852260662965c0df33f489ce76872e1ec8c884006e6a4e386f2f0094d0e538217cc4ac8
+DIST slirp4netns-0.3.0_beta1.tar.gz 180649 BLAKE2B ca124cadf5cb14fdce9f0246babef32509db797ff8b8e707e85c63ad095ab44a3a20258d8b56de1899613d7cadd6e326aab1b279e89d2add2992aeab8aa8c741 SHA512 a7f4cf989d77738cf77ecc924bff177a20d87fa1c8ae8b91ac57917fa001346bad250a6ce776025b13b53ee0dc12d38cf1127011a127f34ca76eeb0453c2ca49
EBUILD slirp4netns-0.2.1.ebuild 616 BLAKE2B e8465ab34bb62bce0add05711901da536310ef93b7333b2b4b685c696392ddfed951efadd20b75b8566cb62236682de51c34f6aacd05e5c44b756c9fb64df327 SHA512 edc8b417442015a8b045ace65631a5ec1cd0a80272a2251875d55118324500aec42b8f169da94e06f29222f4b99152c8cf363e4579a6708ce66e2a4d9dd0634c
EBUILD slirp4netns-0.3.0_alpha2.ebuild 667 BLAKE2B ea532e600a5466b9e3cf7e8ba47b39ac6ef70bc1e85032999e29004f05e859bae58d6335129d403835ffd3d8f01f663250b388327f3d0343cd60410c57f54665 SHA512 0813c673a9f1cff5c77322775dc32144920e4b987c16073b89a033e058d4e0ab9da9f35d4dde3c8ddd89b7dbf168c061da06d2bedf8d0555841398e6a98c6021
+EBUILD slirp4netns-0.3.0_beta1.ebuild 710 BLAKE2B a873821a34394f482b06e0ad327222a0795ff8f04f85164a20397b86ce39b619097c27824482b8fabdb1c44b0d19aceb0e054ba18e6993a014c9f57aa02fb846 SHA512 7e8ca26c5f6da1d4250e26a111a6443728f9871b5f11a70517e01f62699d6c7c5ce524d0f334b61d9f09657ab87d62ac376aaa41efd4d4f637c0cec64de5b03a
MISC metadata.xml 601 BLAKE2B eac6bf1b21371c913f648e944a1ba75314e772c1f0f5fdeda9d4c49cf279a15c19c9f6347ec1a3df236a6147c3d01f4084e161a81c2ee1e4db55cc9f8508d26f SHA512 d81b6889e71bf3fdc539f6c5ca057a8900f13009eafb711c4d83bb0cb349cf49f9253c0b8207a4c1f4c3b084bc9c9b0b91e75109843662fb72d25a2485cbf7dd
diff --git a/app-emulation/slirp4netns/slirp4netns-0.3.0_beta1.ebuild b/app-emulation/slirp4netns/slirp4netns-0.3.0_beta1.ebuild
new file mode 100644
index 000000000000..661c33043287
--- /dev/null
+++ b/app-emulation/slirp4netns/slirp4netns-0.3.0_beta1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="User-mode networking for unprivileged network namespaces"
+HOMEPAGE="https://github.com/rootless-containers/slirp4netns"
+SRC_URI="https://github.com/rootless-containers/slirp4netns/archive/v${PV/_beta/-beta.}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
+RESTRICT="test"
+
+S="${WORKDIR}/${P/_beta/-beta.}"
+
+src_prepare() {
+ eautoreconf
+ default
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ elog "You need to have the tun kernel module loaded in order to have"
+ elog "slirp4netns working"
+ fi
+}
diff --git a/app-emulation/vkd3d/Manifest b/app-emulation/vkd3d/Manifest
index 63697767a8e9..22b695ce6794 100644
--- a/app-emulation/vkd3d/Manifest
+++ b/app-emulation/vkd3d/Manifest
@@ -1,6 +1,6 @@
DIST vkd3d-1.0.tar.xz 461884 BLAKE2B 4dbd729f9e795d3d81178abc1a8774c0bbe6a5257c96c97acf1e4b4cdb5b7e30c77235e8b8fa57f7db3196caf30c55c3b0c07e2981629dd6177436a3cd117d33 SHA512 55712528688cdedc63049e168b371b470dbb8e31ddc36d8b23b0655f4a061726eb8556b9abf3cb887f6bd21379959aed9fab93ba0fd53813aec413ebec71d615
DIST vkd3d-1.1.tar.xz 487452 BLAKE2B 834ca06d2159a5857dde457f27e541f06624e87633af6aca7445867abc38c56a1da1fe34b6795ffbd6aa73e983ac0e4301402ae35ef8358fa8cc79c12972b11d SHA512 e107612bdca95e998f9d819bdf74e4ffe1b4d400d250ab855c4ebf94b7d3f088b3221591fef03b1c6b8ecb030feb1673f74831bd8bd8edda2989d09a8846b0f7
EBUILD vkd3d-1.0.ebuild 926 BLAKE2B 414506ab4d6f240d57ca56e6e3ac080722d2bd375db9c790089ca310ff6340af1d5cd33185af795cdd581405d93f19610b1026087eedd358a3769159b29d4eb1 SHA512 29625db76407d29252f534b11296f0d3df7dcdbc567c9a0e0201765ee75370b28bf9098e96752e128ec4533209eef8dd0bf1f3000f818b5c97bdf12a32404466
-EBUILD vkd3d-1.1.ebuild 925 BLAKE2B e2324280b688042a072eea6a80bf89d52c8b30408594f3b22c0c2559c2e98aead7ef73f6def448a36152850f1b86d4eae302c99eddbfa511779d8745dd3eaefe SHA512 57ddaa5e08415286944f43c4d65162ae6487347744eef37d4575e46544943ed83b2d9bdd8a701d654fecaa65018fa183f6ccb524fdbaefa92b48701262472daf
+EBUILD vkd3d-1.1.ebuild 930 BLAKE2B e6dc54a6d4bd2f77be16a4590edd9c9f2f75880b895a50f54fb12e3dce2ead0f22d1f4fb81ef1b27786f37dc598eb8ff6f77d83c21225ecaf23ca2a61a88a8da SHA512 8e52ee4fb4991d2ed46b05899439a985f1b3111d1e3064115a5f40a721eb09d280fc23d65d84c15da6d1a2c5f592c3569f530499ae292fab4b894c5f797e8317
EBUILD vkd3d-9999.ebuild 926 BLAKE2B 414506ab4d6f240d57ca56e6e3ac080722d2bd375db9c790089ca310ff6340af1d5cd33185af795cdd581405d93f19610b1026087eedd358a3769159b29d4eb1 SHA512 29625db76407d29252f534b11296f0d3df7dcdbc567c9a0e0201765ee75370b28bf9098e96752e128ec4533209eef8dd0bf1f3000f818b5c97bdf12a32404466
MISC metadata.xml 562 BLAKE2B 2409531d0bc65f547844ae83bfd7aaea4d996f2cdf11ebbf7e95775465d4bed916a39a38a0aae0c6df91a417df484ecaf63b29ea4286fdcfd11b07c8177e3496 SHA512 2150c80fd4315d922521b43c650012008864b3ed1ff7d80e43622ad916e52411c6ef855b46693f96165e9d89fd6a6f18cdc88baab13bec9f7053c0c1795bcd71
diff --git a/app-emulation/vkd3d/vkd3d-1.1.ebuild b/app-emulation/vkd3d/vkd3d-1.1.ebuild
index 70010769b99e..13adb0e4ff32 100644
--- a/app-emulation/vkd3d/vkd3d-1.1.ebuild
+++ b/app-emulation/vkd3d/vkd3d-1.1.ebuild
@@ -9,7 +9,7 @@ if [[ "${PV}" == "9999" ]]; then
EGIT_REPO_URI="https://source.winehq.org/git/vkd3d.git"
inherit git-r3
else
- KEYWORDS="amd64"
+ KEYWORDS="amd64 ~x86"
SRC_URI="https://dl.winehq.org/vkd3d/source/${P}.tar.xz"
fi
diff --git a/app-emulation/wine-desktop-common/Manifest b/app-emulation/wine-desktop-common/Manifest
index 4458c4986571..b6a2d8c46473 100644
--- a/app-emulation/wine-desktop-common/Manifest
+++ b/app-emulation/wine-desktop-common/Manifest
@@ -1,3 +1,4 @@
DIST wine-desktop-common-20150204.tar.gz 99491 BLAKE2B 7427c08d00a7ec11319908c908c5833e1a3fc297ec2ebfd942ccdf2adb9e657d1fd751da74bd67e7efb3d4b8ad769a11b1aa5e1a56e33e181f149f4f6245fac3 SHA512 1f3d7022c5cff87ed3b8fd3b7cd14397c6f23b98fe6a7c583ac0d2f439ff29d943f57375f23687aa6519ff1d84ff07624a9a712d6f19fa207fd26d01edcb6688
+EBUILD wine-desktop-common-20150204-r1.ebuild 969 BLAKE2B f24b5afc9671f24b61b48cb2c7818f5daf891a32591924a7e7351b5f014cd17f61969a297927737a9117a9fcb2258253ee5d5a8b54f679a51528d093a4a7242d SHA512 f44a92e254984d1aa6fce151694b0a38308a70e4c458f98b89dfb895ef124dbb89aaef364b03bb98799e0958a2e4cc8035d54dd2512e1fc279cf0e6567af7168
EBUILD wine-desktop-common-20150204.ebuild 1161 BLAKE2B 02c1f236cdb889d701ae7107947852b93ea5d8750a3aee9ce20bec3835b166a84e00020817aa81953f32a0775f742d58d2dd10ffae50671debd81f7cc4b359e1 SHA512 0366d63c67a2a8ac0afe200e2cbfc36c83931e63b462cd99ac99b8be487ef25bd721c98b6e43c7855060e730cda7b65d36ee197916e8ee40fd4003c9989915f6
MISC metadata.xml 439 BLAKE2B 5748ff1f9d8a97a6c0496f66672ba2131d46db6391003fdb2090b2627561e62519580c1ad78138857111963ec9ea56ff2491b56b63c0bf321ab7de88a3c2f445 SHA512 c9bb03bc6753c6c40c280d477ef343b1cc4bf79f49f0dcd83aab6c5c1f4770e93c65c33a51628453e326618b44fe2a18610667d7177e503366dbfdc882fa471d
diff --git a/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r1.ebuild b/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r1.ebuild
new file mode 100644
index 000000000000..d43b6fa3837d
--- /dev/null
+++ b/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit xdg
+
+DESCRIPTION="Various desktop menu items and icons for wine"
+HOMEPAGE="https://github.com/NP-Hardass/wine-desktop-common
+ https://bazaar.launchpad.net/~ubuntu-wine/wine/ubuntu-debian-dir/files/head:/debian/"
+SRC_URI="https://github.com/NP-Hardass/${PN}/archive/${PV//./}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="!app-emulation/wine:0"
+PDEPEND="app-eselect/eselect-wine"
+
+# 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"
+
+S=${WORKDIR}/${PN}-${PV//./}
+
+src_install() {
+ emake install DESTDIR="${D}" EPREFIX="${EPREFIX}"
+}
diff --git a/app-emulation/wine-mono/Manifest b/app-emulation/wine-mono/Manifest
index 1e38d96f6bc5..5713fdc531cd 100644
--- a/app-emulation/wine-mono/Manifest
+++ b/app-emulation/wine-mono/Manifest
@@ -3,9 +3,11 @@ DIST wine-mono-4.7.0.msi 64625152 BLAKE2B 9c533d9f9a5cec6aefa66ed916e88f0a03ab76
DIST wine-mono-4.7.1.msi 56470528 BLAKE2B b1b9dd832f725cb70b80889c08db524540c389c4eb8c990415f0c1b4a17274fc96390808c943bd0ff42c79f4bbb376b3d599d31ed42b5ebcb4be79dbc273eeec SHA512 d47f21fa3ddb31522366056a2062cf7b77eec0a12f96dc05326561c9d2604405128441ff40d1b9567a6e6cd1c19ee03444d2ba02dd3b8dd2d150030dfb52f765
DIST wine-mono-4.7.3.msi 56470528 BLAKE2B 59397f851bd0883f060fd359228fcdedea5a32ce06349fd563411dfa603a6c8700496111821fd9e571cfd4586e829acb12321528a4a8330d1fb6f92855482225 SHA512 d51c0e21c8448a4d11c3e4fd530bda340cc93cd420080e08aadd7b704183dcadf8553b0937e02c7a54a8a2fb46a395718a3e807b85f19936b0e4ee7b92052dfe
DIST wine-mono-4.7.5.msi 56470528 BLAKE2B a662249fe85dbcc6de273cc8f8384fee9fe789a272c7dfec28e406ac2b512cd0e9ef07716004c694f66a69d2dd0a62e14691123db7b9845d7ad86762619da100 SHA512 25e4188e42362aa9050e4d78a5748697d63181fa91a0c0d2e43ad4c26996f9fb82053a5e6942621aaff01c832be88ea13ac7b472be8841a828eed4e5e87c9ee7
+DIST wine-mono-4.8.0.msi 86536704 BLAKE2B 24120b57a6b51b47d66b4dcf9765492ad2dce8ece7d186b7bd78172598308be43336944ae804be5181e2c3d7ae7cace08c75e2b66fbfad097c9c16fd6fcfc3a9 SHA512 ab0a9795ccbd3acf42d0e904585a16c62b28a2753771b5dccfd4013b77a118eff6fd92c4a8711be43df2b09c993884cc9bb48e025b60059b2a7d3a832ecbbf43
EBUILD wine-mono-4.6.4.ebuild 491 BLAKE2B ca3c7d026b50367f574915102069052519ecef3f49b1ca7185a64902807939f1b149fdb2e120097751261ad7e0ac6dae0ceef08d0fbd3658c5c5ab7c3178bc34 SHA512 459ebb021fc4f9401de138164c90e139a3592587da66a25cbc6ac6db6a24e46257d4a2b63cdc2edad1783413924a04d574301123ef7fe93f4ca3a9a0045acac3
EBUILD wine-mono-4.7.0.ebuild 493 BLAKE2B 062ba95f20540e8cebca2b2dc1ceea8a49ab9be791d11de595ff300337bcd4d015f21825a0bbbd62837d618ad093ce7b24a95bd87b7eeae4e1e3479542fc034d SHA512 5cf9052ebb4a0cf0f7717be83ed059d2622836edad31f9bdb314afeb51a9f6ab9c65e5c7a9884f802dd0c4f9b47bf4262ecc24ad49c439f8b826e025f988022c
EBUILD wine-mono-4.7.1.ebuild 491 BLAKE2B ca3c7d026b50367f574915102069052519ecef3f49b1ca7185a64902807939f1b149fdb2e120097751261ad7e0ac6dae0ceef08d0fbd3658c5c5ab7c3178bc34 SHA512 459ebb021fc4f9401de138164c90e139a3592587da66a25cbc6ac6db6a24e46257d4a2b63cdc2edad1783413924a04d574301123ef7fe93f4ca3a9a0045acac3
EBUILD wine-mono-4.7.3.ebuild 493 BLAKE2B 062ba95f20540e8cebca2b2dc1ceea8a49ab9be791d11de595ff300337bcd4d015f21825a0bbbd62837d618ad093ce7b24a95bd87b7eeae4e1e3479542fc034d SHA512 5cf9052ebb4a0cf0f7717be83ed059d2622836edad31f9bdb314afeb51a9f6ab9c65e5c7a9884f802dd0c4f9b47bf4262ecc24ad49c439f8b826e025f988022c
EBUILD wine-mono-4.7.5.ebuild 502 BLAKE2B 3ec803fe7a608c2549ecdda1bbd30a3bac1cfa9325d2c66021a78335364f6ff4051c4aa45627070ced52568328c0d2afa38f174deddd181f01bae3bd6a054d2f SHA512 162093bbec17a3e06049afda69afff8977e09af0b94110548b325c2e547f7dd77fd9e2800941366670cce468af459a93a247bab9b6b9eaa23b279da02fc66d14
+EBUILD wine-mono-4.8.0.ebuild 503 BLAKE2B 935815fea7250e178ec3eec1ac280a2117985172fbe8201be194f9f63cbfdfb27358eec9cc98857d2dd687c1c7a37febfd96809c6339e8c16077f8ac5748220a SHA512 2f7dae1b9b8b62b8cd19aa244214502b49cd615467553dc209ea88117247291e99df272e275ff973de03b3cc895ad0da12e9201827408a21558e1ce3049f600f
MISC metadata.xml 614 BLAKE2B e45f9e8581cec69afc21a5af29aa71eec05ba7fa626624e6c06000a5f013a3606674074beec999a0f8f91c91fc8912995b20cb88f8ad8a40bffbd964c5bf020f SHA512 5655c4bd737975334e66b4ea0c6cdb447dd647a7a3c76c0cd9782c405c9540ae396c87677bde408d3977b838813e00f12249f0f84267b75894e5554b2c6bcb6c
diff --git a/app-emulation/wine-mono/wine-mono-4.8.0.ebuild b/app-emulation/wine-mono/wine-mono-4.8.0.ebuild
new file mode 100644
index 000000000000..15aab248909e
--- /dev/null
+++ b/app-emulation/wine-mono/wine-mono-4.8.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+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 c3dd15799b51..140e6f0d83ed 100644
--- a/app-emulation/wine-staging/Manifest
+++ b/app-emulation/wine-staging/Manifest
@@ -1,15 +1,25 @@
DIST gentoo-wine-patches-20180120.tar.xz 58672 BLAKE2B 84d621075b65475cec41a06429680b518d7eafb938cefd903f3f8aa71ea3049ac9d8de05af48f9f4f4a1b9172c7ef17784540413e410eb8ec11e8ec4a63858c6 SHA512 5b354a409c7a2b77499aaa593b9248a1d15d755e3687b095755faacc30068bfcdbdd5c2a2a78617cb1a78c46d2931162bd69ec3379b035d81494bea7108263c2
+DIST gentoo-wine-patches-20190316.tar.xz 58848 BLAKE2B 76e66749638589dd6d6eceb4b78690483d14353597a4e47fe9e5325d8bdb2bceff66040c110f63b8bae698bc5838c280c048ff7375ba2ed8cc387cbe0422c79a SHA512 de2cf844ae686144c3f95f0a360c7fa8a62185500758f994b5a65836798bdc3092138dcd9c36d0267a6fcfdc13585258d31b281244a97b45965f40e0f2b29eda
DIST wine-3.20.tar.xz 21541928 BLAKE2B 9183dacd1c6ec15ae5283eca3d17db5a869bcba9a93800a422f0dea5d9cfb5d3124a3e942e8b6487cd4ba31cfeacdd66de39128dd66d64e1226d265eae922d3a SHA512 fb66d1d4b427f46dd048b13e53bcd15a5eaeb19039221fe98ec771140c33b3c245a974e52242eab5731ffa0de15f5932204032fe24f86e1a313ff8f11da59cc4
DIST wine-3.21.tar.xz 21573872 BLAKE2B 54d8733b19f1377f856c9496f6263eef1916e03caf82c6fcfa39b3e7bec1fecd87466dc92f3739d704a9161a32d9ee680b2cc5e5cdf27a582dc1d89d0b1a6639 SHA512 dd64a6778bf1b848c8fe14dc26cfca21f6c1c92714ca1b2e932a28560a2adc1f69aa1b2cba250f49a5df4f91a4accde677a2afaf960c200d3998eac1957b5c6b
DIST wine-4.0.tar.xz 21644692 BLAKE2B 9c426ef2249c16e908a3617c2844d8b12a2df843721338b1cfb69459815b902cfa0ddf3d74c09dc900fb2ceb003e54d97a7c0afaac51a9caab7d21beb82e26c3 SHA512 7607fa7a3d5f7bcd3d8c4c9e7bb6e1987466110bbfc672782ebe57c6d9da348c58e76abf40b0a70c725dfd703163db6e194ee0e3db11a47b6b60e225163308dd
DIST wine-4.1.tar.xz 21680916 BLAKE2B 1a040606e34e1aec6f63d9692c6cbf915f5b32c817116aed68203e6bdedb8cb129dad440f7e51e9fb2ebaf1aa537d1584333f06b8b2c5d68f9ff37921d5b8b95 SHA512 2b28fc82111552009a042d682ea8f4e54d90f14bb99f1fbe12732090e7562527c229683562630edada0b1f4143de226734337b20d1b23d711191dcc0a834e4dc
+DIST wine-4.2.tar.xz 21724960 BLAKE2B d3c4381265e5086a17582c28fd4d19c84ed8e9839d039d5f2eba32efcc09ae6dad2a25fa375042d98d35de30065eaa0095e36bb8fbca608ec74abc654bae5196 SHA512 408a846e92a0222f64ddd3c4d2c2a71b387ce51749e346c1fbca1fd57db910fa18dc6bb4ce0a350bef81e13be77c6b2d74537f7a1c0dcbb0e6d4c19d1ade288c
+DIST wine-4.3.tar.xz 21764500 BLAKE2B dd94b710f2be20ce3225fb58e0a20f0ee46e59834dc77383e262620faa64597c41625382237c39563b3bb67b1850cca2460ca147e2c5ee3052f0fdfdee067ec5 SHA512 45c0519f8f2873ef65e1761d518a7148f3aa54c0e993a41a60849c01c8df17386d57edd83308cff289300adc6a8e3fc5918fb12513f5b85a88e556b420479e83
+DIST wine-4.4.tar.xz 21805668 BLAKE2B cf973240a3f2a1ad1cac8690cdc5cd86be428220395d90bfe3b15567e6a2be0bb78e5828de3b77b617827122f5b0bb1dfeeef351102ca001722340ceaeb5625e SHA512 6678c9b0e086bdc9fab9f9fd2517226352b49f846bbae7be6000bb60db2f302aad49622192077b45880d45ad33ba4d82bfe3403fb82a1e65159f1352b40933de
DIST wine-staging-3.20.tar.gz 9950555 BLAKE2B ee66217b708287bd95d61e23fb92009d927a75556f22e89b9c5af66cb6c6445f77a1c3153da168da92ebac58606843c4639f1a99bd5089941595181f390980f0 SHA512 4b92e53e84046d99c3f7ec5e0d0d7e62fdb767b1c44e23605125744686439fe62991c8adea941950b390a01d251ecbb79f3b329cfe5a1b1fbc76c5372283579d
DIST wine-staging-3.21.tar.gz 9945982 BLAKE2B 988927c644e9abf472c42021cae39f38cdae24b397072fb53dc803da32bc80e8b6256554d787db0b6bffafac4104a9abf4ab8fa6e78fd0a308bf8906d658a65d SHA512 17f8194954a420d1424d564ba9ad5e6d4dd574dc38da4895d5b6740c1990f8655cb573bd57c77ace2c78c71da4782b511a5ac937ca1f0fc958e3c925abaeefde
DIST wine-staging-4.0.tar.gz 9945756 BLAKE2B bfd27d5677d01b4a14c4ef593b741b6fa6e75194de04a90659ecceaa8b087d594cafdd0a53cc2ad2d05e9c73928d70d0b6681ac0052df79f7b45cbb370b31d3d SHA512 4c2277449be17b83235bab7898818a886e84e82c0c5eb8216a5bc42e3d9a0e1dcf09d4522e1165d503fd9237673fa91c2c07d837cde58897f1b6fc8bc6fa5d33
DIST wine-staging-4.1.tar.gz 9941329 BLAKE2B e455a411d782dcb52b29ad6150b108a4a9b3fd7cd548e35c1392ee3bce581206d99520df19a153ddb80f135156a8d33f6acbbfe086c28f6bfe404fe9eae96556 SHA512 8f52fdae4f98fe67053b00d03234e0937652a9a9506c9e94b717502244eb741c062990678ede11342dc182a4fe9c066227814ebe394ef5f6aedec73983c08554
+DIST wine-staging-4.2.tar.gz 9850260 BLAKE2B 938d12bb44acef2920c6a47978f170cab532ddd785de394dddc95cc359b301e0db26a3ec9aa08abaf03542b59a97c16dfebb3bf5e4c9ddc9bed829200e529bb9 SHA512 2fb66bdeab084231983569d3884211a4d269a48bd6b25ba2e7c7e83d2dc98a205bd92dfc67c09528d57192086571d3f4f6c988c522b25aade1d525b74e662f2e
+DIST wine-staging-4.3.tar.gz 9888763 BLAKE2B 095f2789f601822e34b7f9d0a078bd433aa2861e7cc55d5b74520bfedc2c88064bbffa3a73bcea170c4e4fb96e9eaa50f0cb927aba2cc6d1f12480bacfa49968 SHA512 9fd89c54200cf7c8e8a7f978fb6b34c89ece755976789f5c5c361ffb8d2882f14260c81ab8ac14ad140e41d807adbbaba05381a31b0177492aa222ef2fe04e4d
+DIST wine-staging-4.4.tar.gz 9882230 BLAKE2B 705841e14abf3e3e65ae4b64ac2613f42f0e8caf32258ef6fc7e78b5410038c7cc766293488bb110e1f4c2c06d6b55b4cd3e59acea7e0f15c3bb6304e427f891 SHA512 4ddeddac2e2de9afd95ded71edb47f3eac15d1ca94254481e5369d6b69e401471b00ba16747621eb2d0f7d92c0558590f6efe89b3ea15012d9d3d45553d49196
EBUILD wine-staging-3.20.ebuild 20048 BLAKE2B 5c160439d7bb0b560d06b4d9e6bbc9d8d73c34a3f20a667490d4ad5b45011464aed7ea2eb1b06ace2133f7920192accb099c256dacd6223c74ee0bafcfbcf717 SHA512 adf71cb35a4108c2010fb3f64f3837913ea2af1489a81ccd3ae903f1173232bfb97e0bc655076085e4f595ea91d851260798cc33a79f8c58a67d99c6ba0920bf
EBUILD wine-staging-3.21.ebuild 20048 BLAKE2B 5c160439d7bb0b560d06b4d9e6bbc9d8d73c34a3f20a667490d4ad5b45011464aed7ea2eb1b06ace2133f7920192accb099c256dacd6223c74ee0bafcfbcf717 SHA512 adf71cb35a4108c2010fb3f64f3837913ea2af1489a81ccd3ae903f1173232bfb97e0bc655076085e4f595ea91d851260798cc33a79f8c58a67d99c6ba0920bf
EBUILD wine-staging-4.0.ebuild 20086 BLAKE2B 18f862a45df2bfa7a2b428e48cd028e48905127beccbd0d5b80fbb999720f9efe98f6e5c4022d18b5de5d4e0b28f9db07b5ba7b25a816fc7fa049236304556b2 SHA512 da9f41dd2faca0e65e4d69e0ebb77c6f348c12568e8bf3fda4effa3e62c75a5bb2415720f492cd86e03d04135815ece6cd1859d2b81da52d8d07ec0ac7c5e58d
EBUILD wine-staging-4.1.ebuild 20052 BLAKE2B eaf777d9096603570177c0839926a2ad7ff40e579c479e13a7639e3fbe39c44a89dc1e04a5eb4cdf07f569c9451ed6c016977ac8a23cf4638cbb9afeecf1022c SHA512 9b4a0dc664ba6f48c24f453d4f74be7f2378fa2c727334e258c7e9ffbc2e92a5f66d72325e60073c9a8f84043bdb42aabc7c3afd48d4daa1d41832f4e855f405
-EBUILD wine-staging-9999.ebuild 20048 BLAKE2B e06b98c8aa8b02a50336f91a946e4f138618d455379bf2a86c1fb228f61d5a912bc38ebecf0b506637e539f7f4313974602979ebdab115e99ac4a4b2561e75c1 SHA512 2637064739be6cfdc3b32864b190acf4b52eca789fc6e4a810f80f0fbfa77a15dbb69daa3d7f2c07c6dec6e6b6016ffbdf948e72de9e5d61a04060761bf1577d
-MISC metadata.xml 3610 BLAKE2B 6840ad896b4efc5cf532bbbb56c3610182b62b3063321378d16e418514ea372da30341e173975a2cc17b81774c0ecdfb11b52d12de6b4875cbac638a9f5a6a78 SHA512 b6372bfcb02b7917ac1d79a26639e9ca6440d373bfbd5688012d48344b4ad6966c23436853517fbe2236a720d77de71433edea1ddd6cb612f0fec65016ef91b2
+EBUILD wine-staging-4.2.ebuild 20048 BLAKE2B e06b98c8aa8b02a50336f91a946e4f138618d455379bf2a86c1fb228f61d5a912bc38ebecf0b506637e539f7f4313974602979ebdab115e99ac4a4b2561e75c1 SHA512 2637064739be6cfdc3b32864b190acf4b52eca789fc6e4a810f80f0fbfa77a15dbb69daa3d7f2c07c6dec6e6b6016ffbdf948e72de9e5d61a04060761bf1577d
+EBUILD wine-staging-4.3.ebuild 20132 BLAKE2B 90871535471b596150bb5e5ded724d61558fe2f9e938ca691dbb8b5001d576749c3130a2119294e6a953626d0a51ff26080d8baa798765cbd1366e0ebb0d35ab SHA512 f195674a6977ba52bdea0a015f8ee1e8df5836870057c2ec4a5a1c683d7b58056a0d2460e9fa7637097c5d0962ac8e18239f048dd52a1b72acd4ee48fe570cb7
+EBUILD wine-staging-4.4.ebuild 20129 BLAKE2B a77bab89cf1d863e1f75a8aae1a1dab18206ab1a380ed2c567340b79e705a84f0a79d9f7a6a1cf20aa99e344db177393b78da077c5ef4502366b474f3a7b7bb9 SHA512 cefe09b1b9ab4cddf8f336e178260959cba1a9e6033c31873648e40107e021afa0f05d3cff71256d511651804e9223544dccabc278128b8848c9c2d3b4e8dec7
+EBUILD wine-staging-9999.ebuild 20129 BLAKE2B a77bab89cf1d863e1f75a8aae1a1dab18206ab1a380ed2c567340b79e705a84f0a79d9f7a6a1cf20aa99e344db177393b78da077c5ef4502366b474f3a7b7bb9 SHA512 cefe09b1b9ab4cddf8f336e178260959cba1a9e6033c31873648e40107e021afa0f05d3cff71256d511651804e9223544dccabc278128b8848c9c2d3b4e8dec7
+MISC metadata.xml 3726 BLAKE2B 77d0abd355f8c85069f843cccaf16c0c0afe4ea4dc29f6d9111d7127685dfa9dd8e668b7413bac2a1aec2228da7880f72c601eb9f1525e8bc09bab330524863d SHA512 2b732c0519d7d01d0023457e8eb8aa05f06465f3479fa3093712c0ebe25ea103322e19be57cdea2c8df19da42fc29620a8989cfa77719f0f49b7aaa0bded073c
diff --git a/app-emulation/wine-staging/metadata.xml b/app-emulation/wine-staging/metadata.xml
index 0d9c4260e813..030478b4da45 100644
--- a/app-emulation/wine-staging/metadata.xml
+++ b/app-emulation/wine-staging/metadata.xml
@@ -20,6 +20,7 @@ This variant of the Wine packaging includes the Wine-Staging patchset.
<flag name="capi">Enable ISDN support via CAPI</flag>
<flag name="custom-cflags">Bypass strip-flags; use at your own peril</flag>
<flag name="dos">Pull in <pkg>games-emulation/dosbox</pkg> to run DOS applications</flag>
+ <flag name="faudio">Pull in <pkg>app-emulation/faudio</pkg> to provide XAudio2 functionality</flag>
<flag name="ffmpeg">Use <pkg>media-video/ffmpeg</pkg> to decode WMA formats</flag>
<flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
<flag name="gssapi">Use GSSAPI (Kerberos SSP support)</flag>
diff --git a/app-emulation/wine-staging/wine-staging-4.2.ebuild b/app-emulation/wine-staging/wine-staging-4.2.ebuild
new file mode 100644
index 000000000000..708d1c91e80a
--- /dev/null
+++ b/app-emulation/wine-staging/wine-staging-4.2.ebuild
@@ -0,0 +1,614 @@
+# Copyright 1999-2019 Gentoo Authors
+# 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 eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx 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=$(ver_cut 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 )
+ vkd3d? ( vulkan )" # 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.5 )
+ 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 "environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ 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}" git-r3_src_unpack
+ if use staging; then
+ local CURRENT_WINE_COMMIT=${EGIT_VERSION}
+
+ EGIT_CHECKOUT_DIR="${STAGING_DIR}" EGIT_REPO_URI="${STAGING_EGIT_REPO_URI}" git-r3_src_unpack
+
+ 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: EGIT_OVERRIDE_COMMIT_WINE=${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-4.3.ebuild b/app-emulation/wine-staging/wine-staging-4.3.ebuild
new file mode 100644
index 000000000000..2fd365b4cac3
--- /dev/null
+++ b/app-emulation/wine-staging/wine-staging-4.3.ebuild
@@ -0,0 +1,616 @@
+# Copyright 1999-2019 Gentoo Authors
+# 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 eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx 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=$(ver_cut 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 faudio 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 )
+ vkd3d? ( vulkan )" # 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}] )
+ faudio? ( app-emulation/faudio:=[${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.5 )
+ 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 "environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ 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}" git-r3_src_unpack
+ if use staging; then
+ local CURRENT_WINE_COMMIT=${EGIT_VERSION}
+
+ EGIT_CHECKOUT_DIR="${STAGING_DIR}" EGIT_REPO_URI="${STAGING_EGIT_REPO_URI}" git-r3_src_unpack
+
+ 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: EGIT_OVERRIDE_COMMIT_WINE=${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 faudio)
+ $(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-4.4.ebuild b/app-emulation/wine-staging/wine-staging-4.4.ebuild
new file mode 100644
index 000000000000..9e905f61e25d
--- /dev/null
+++ b/app-emulation/wine-staging/wine-staging-4.4.ebuild
@@ -0,0 +1,616 @@
+# Copyright 1999-2019 Gentoo Authors
+# 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 eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx 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=$(ver_cut 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="20190316"
+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 faudio 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 )
+ vkd3d? ( vulkan )" # 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}] )
+ faudio? ( app-emulation/faudio:=[${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.5 )
+ 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}-4.4-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 "environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ 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}" git-r3_src_unpack
+ if use staging; then
+ local CURRENT_WINE_COMMIT=${EGIT_VERSION}
+
+ EGIT_CHECKOUT_DIR="${STAGING_DIR}" EGIT_REPO_URI="${STAGING_EGIT_REPO_URI}" git-r3_src_unpack
+
+ 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: EGIT_OVERRIDE_COMMIT_WINE=${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 faudio)
+ $(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 708d1c91e80a..9e905f61e25d 100644
--- a/app-emulation/wine-staging/wine-staging-9999.ebuild
+++ b/app-emulation/wine-staging/wine-staging-9999.ebuild
@@ -26,7 +26,7 @@ S="${WORKDIR}/${MY_P}"
STAGING_P="wine-staging-${PV}"
STAGING_DIR="${WORKDIR}/${STAGING_P}"
-GWP_V="20180120"
+GWP_V="20190316"
PATCHDIR="${WORKDIR}/gentoo-wine-patches"
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
@@ -44,7 +44,7 @@ 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"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc faudio 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 )
@@ -72,6 +72,7 @@ COMMON_DEPEND="
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ faudio? ( app-emulation/faudio:=[${MULTILIB_USEDEP}] )
ffmpeg? ( >=media-video/ffmpeg-4:=[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
@@ -163,7 +164,7 @@ 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}-4.4-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
@@ -441,6 +442,7 @@ multilib_src_configure() {
$(use_with cups)
$(use_with ncurses curses)
$(use_with udisks dbus)
+ $(use_with faudio)
$(use_with ffmpeg)
$(use_with fontconfig)
$(use_with ssl gnutls)
diff --git a/app-emulation/wine-vanilla/Manifest b/app-emulation/wine-vanilla/Manifest
index d89884b3d1eb..9e05df20ebf0 100644
--- a/app-emulation/wine-vanilla/Manifest
+++ b/app-emulation/wine-vanilla/Manifest
@@ -1,15 +1,22 @@
DIST gentoo-wine-patches-20180120.tar.xz 58672 BLAKE2B 84d621075b65475cec41a06429680b518d7eafb938cefd903f3f8aa71ea3049ac9d8de05af48f9f4f4a1b9172c7ef17784540413e410eb8ec11e8ec4a63858c6 SHA512 5b354a409c7a2b77499aaa593b9248a1d15d755e3687b095755faacc30068bfcdbdd5c2a2a78617cb1a78c46d2931162bd69ec3379b035d81494bea7108263c2
+DIST gentoo-wine-patches-20190316.tar.xz 58848 BLAKE2B 76e66749638589dd6d6eceb4b78690483d14353597a4e47fe9e5325d8bdb2bceff66040c110f63b8bae698bc5838c280c048ff7375ba2ed8cc387cbe0422c79a SHA512 de2cf844ae686144c3f95f0a360c7fa8a62185500758f994b5a65836798bdc3092138dcd9c36d0267a6fcfdc13585258d31b281244a97b45965f40e0f2b29eda
DIST wine-3.0.3.tar.xz 19735412 BLAKE2B f0ccbe272f1013386f89805cf1573cf001eb875bccb31a1884fad1dff5f90caf727c460406af80f63db7a227d85f25f57c8e8e650a171adbe0c3f5178ddf17e8 SHA512 11043a9a9434681f9c73590688b600b3b9e3d311be2c4d97b5f58f0740500ebcfbdc826bd6584d5dd392dccbdd9389ffa04c8fedbba43a4df2e6aeb922414412
DIST wine-3.0.4.tar.xz 20556944 BLAKE2B 122c06e38cae9f9d2358908d0d325ed4e0dc3d1bf3e189fcfd1a713ca147d5360934cc21c387939bb5ba6dec9410d85b586d95207089b6aa033eea15bfc209e3 SHA512 e1ce33bbc165a9c640a38965a229b757b67746f2150d545eb0e29ba6d21cdf150bd8eb9a450d8dd71733fbea3b2ac24839dd8e381b7da9cd15ddf98c59304198
DIST wine-3.20.tar.xz 21541928 BLAKE2B 9183dacd1c6ec15ae5283eca3d17db5a869bcba9a93800a422f0dea5d9cfb5d3124a3e942e8b6487cd4ba31cfeacdd66de39128dd66d64e1226d265eae922d3a SHA512 fb66d1d4b427f46dd048b13e53bcd15a5eaeb19039221fe98ec771140c33b3c245a974e52242eab5731ffa0de15f5932204032fe24f86e1a313ff8f11da59cc4
DIST wine-3.21.tar.xz 21573872 BLAKE2B 54d8733b19f1377f856c9496f6263eef1916e03caf82c6fcfa39b3e7bec1fecd87466dc92f3739d704a9161a32d9ee680b2cc5e5cdf27a582dc1d89d0b1a6639 SHA512 dd64a6778bf1b848c8fe14dc26cfca21f6c1c92714ca1b2e932a28560a2adc1f69aa1b2cba250f49a5df4f91a4accde677a2afaf960c200d3998eac1957b5c6b
DIST wine-4.0.tar.xz 21644692 BLAKE2B 9c426ef2249c16e908a3617c2844d8b12a2df843721338b1cfb69459815b902cfa0ddf3d74c09dc900fb2ceb003e54d97a7c0afaac51a9caab7d21beb82e26c3 SHA512 7607fa7a3d5f7bcd3d8c4c9e7bb6e1987466110bbfc672782ebe57c6d9da348c58e76abf40b0a70c725dfd703163db6e194ee0e3db11a47b6b60e225163308dd
DIST wine-4.1.tar.xz 21680916 BLAKE2B 1a040606e34e1aec6f63d9692c6cbf915f5b32c817116aed68203e6bdedb8cb129dad440f7e51e9fb2ebaf1aa537d1584333f06b8b2c5d68f9ff37921d5b8b95 SHA512 2b28fc82111552009a042d682ea8f4e54d90f14bb99f1fbe12732090e7562527c229683562630edada0b1f4143de226734337b20d1b23d711191dcc0a834e4dc
+DIST wine-4.2.tar.xz 21724960 BLAKE2B d3c4381265e5086a17582c28fd4d19c84ed8e9839d039d5f2eba32efcc09ae6dad2a25fa375042d98d35de30065eaa0095e36bb8fbca608ec74abc654bae5196 SHA512 408a846e92a0222f64ddd3c4d2c2a71b387ce51749e346c1fbca1fd57db910fa18dc6bb4ce0a350bef81e13be77c6b2d74537f7a1c0dcbb0e6d4c19d1ade288c
+DIST wine-4.3.tar.xz 21764500 BLAKE2B dd94b710f2be20ce3225fb58e0a20f0ee46e59834dc77383e262620faa64597c41625382237c39563b3bb67b1850cca2460ca147e2c5ee3052f0fdfdee067ec5 SHA512 45c0519f8f2873ef65e1761d518a7148f3aa54c0e993a41a60849c01c8df17386d57edd83308cff289300adc6a8e3fc5918fb12513f5b85a88e556b420479e83
+DIST wine-4.4.tar.xz 21805668 BLAKE2B cf973240a3f2a1ad1cac8690cdc5cd86be428220395d90bfe3b15567e6a2be0bb78e5828de3b77b617827122f5b0bb1dfeeef351102ca001722340ceaeb5625e SHA512 6678c9b0e086bdc9fab9f9fd2517226352b49f846bbae7be6000bb60db2f302aad49622192077b45880d45ad33ba4d82bfe3403fb82a1e65159f1352b40933de
EBUILD wine-vanilla-3.0.3.ebuild 17120 BLAKE2B a8cf3d4872ba5f91a691817bfc9421a6a5bc1079141c8c3d53dc5726bc2aacd46090d253390278ec5e8e19c63e613c1289a62957a75487f7dc10ee68b8e4778d SHA512 36c54300f1d396a0e5d990316525dd68103a5e25623e84134b35e708d35d7c8b4cbf6100e91396b29daed058fc64a51bac39b7b14684baffafe1e2f05f695b23
EBUILD wine-vanilla-3.0.4.ebuild 17085 BLAKE2B d1831445374f36c0fd20b930b2786c79054473868b1d319d1824b935e5e3f2fd07aafa24948040ac1cade51e5748843438f51e473a385c654fa3fe282277e0d7 SHA512 20342989e375114278c77c3dbd8fc1e9483281ab4147006a5f7fc6e657287c327b25cf002581c1a94fec9e9e982710b179415af4cbcf9eebae708ac41079765e
EBUILD wine-vanilla-3.20.ebuild 17308 BLAKE2B bdd30e07641146aabc517f4f46b34d71e4182428dae9e89f564eebd8f057e78cf4b6ea5b8bfcfe1172d95265cd3bc6c3f2d32ba29bed40c39a7b1f8b02cf5e40 SHA512 a2cbbba40bc4fb97ef5b730f26818fc9153c27b5fdf248b587d12ef63dbcfe6f0c98f0bf7efd421ef4bc0dec473a780d2913afb3b806c6a30f9ad73f546d9536
EBUILD wine-vanilla-3.21.ebuild 17308 BLAKE2B bdd30e07641146aabc517f4f46b34d71e4182428dae9e89f564eebd8f057e78cf4b6ea5b8bfcfe1172d95265cd3bc6c3f2d32ba29bed40c39a7b1f8b02cf5e40 SHA512 a2cbbba40bc4fb97ef5b730f26818fc9153c27b5fdf248b587d12ef63dbcfe6f0c98f0bf7efd421ef4bc0dec473a780d2913afb3b806c6a30f9ad73f546d9536
-EBUILD wine-vanilla-4.0.ebuild 17345 BLAKE2B 06a9905a4ab18d22acc6bbad6839160eadfa68e0e4b5094640eb8d9f0bcb4b5e6ca7c811ca4e2731a7ba18f476375cb6c61ac9b9ed822b2353fd93e617f03ac9 SHA512 f2e79a48aebed8384b622026b7d11abaecfd30016e904ca4043a8899740e8ce077239334511ef3b6849d0c304c3121be8180264c5f79009a2dcca42de578a91c
-EBUILD wine-vanilla-4.1.ebuild 17308 BLAKE2B 04b39cc4f7dd0be69db375471993cdb51f37344e60af9369c6863e1353ba48d89d4ed460b7c55503a49dd875aac5b525a73b8516f0712477950e2734fa6ef30b SHA512 17289cb988d36bf3cbbfebcf90595dc26bdd2e924b7a752fa57f45e37b361a342faece2d8dc9ad63f6b3a7f1ee8c0e8a5f1c47053791656f0c52b767202741b9
-EBUILD wine-vanilla-9999.ebuild 17308 BLAKE2B 04b39cc4f7dd0be69db375471993cdb51f37344e60af9369c6863e1353ba48d89d4ed460b7c55503a49dd875aac5b525a73b8516f0712477950e2734fa6ef30b SHA512 17289cb988d36bf3cbbfebcf90595dc26bdd2e924b7a752fa57f45e37b361a342faece2d8dc9ad63f6b3a7f1ee8c0e8a5f1c47053791656f0c52b767202741b9
-MISC metadata.xml 3157 BLAKE2B 917ac49661429459c488ba4e4e83a0fb558dab3068635d2ac307eabd9e1576c9034fe53ec80bd71023be925d184aca442d8c61eb5ab788a947e22a0d2aa0882b SHA512 2709187f3765e00e14c19049fa81f920a8f8ef60dc4b36db17faccf26df8b04edd017368d820fce91c65836662ba21d29a104b6ac0ac17164047f29bb7c85d91
+EBUILD wine-vanilla-4.0.ebuild 17341 BLAKE2B bdb219c3352300bfa6bf2194696ed44a4632170ae6c03c938203c57b9b6aa23c5de2276a42bc9943dfbcbc942214fcdeb7a313deebf25c9b8570c3fe51c9bc8e SHA512 65e06fc637ec397e3365d7be2e58b130852675a93ea235e6066e01f9e5b7efd098868fdc1c3fce810dd72dd1c0e66bab9a4941b7f3a1ceff40a744776cb91055
+EBUILD wine-vanilla-4.1.ebuild 17311 BLAKE2B 55106a1bc3703f647d3d4119e14aa45b6655e8b9e800dc72dad77f25fdb60e2b10845098030986bc0c6c7649dc1c40f3b67bb74d184110891717b2f00abff49a SHA512 12eee5f6a461476802cacf7253b93d53b6e76c5cc2062c373ecd3845fede2ea4549074997549266e5b71636706d5d50fe5e57060046041489deb9134c5b0495e
+EBUILD wine-vanilla-4.2.ebuild 17311 BLAKE2B 55106a1bc3703f647d3d4119e14aa45b6655e8b9e800dc72dad77f25fdb60e2b10845098030986bc0c6c7649dc1c40f3b67bb74d184110891717b2f00abff49a SHA512 12eee5f6a461476802cacf7253b93d53b6e76c5cc2062c373ecd3845fede2ea4549074997549266e5b71636706d5d50fe5e57060046041489deb9134c5b0495e
+EBUILD wine-vanilla-4.3.ebuild 17395 BLAKE2B f71df5ceb17a1c01e6e2e0c2251e9d69dea54a8bf277740ba4c6267bedd655bb7e37196622c83be17432ad4d1ae907a61dace0210b4559e93cf2fa87c0ea8ff6 SHA512 4ed4915ec3b577c9eff884289dbddbf77d8b65f3afe09438cc8ecd9ffb73c8738946e6ad53184db0a26a6e6ccdf19bf643dc7272cac86664e23d917c961ef5f0
+EBUILD wine-vanilla-4.4.ebuild 17388 BLAKE2B 9c94eb8e9abe44affab51ef71143d4292af3bbc077f860879fbc44f43be84af775ff276d34a509da57b09f14705948433c33f0f76f7482028fbcd86c42ae12bd SHA512 fb65ac21807aa3f46f83569658907fb0be01bf579bd598fabce37ac071f48d2bd27c3badcdca6ea4221ba373eccaa0600b00b19aa2bf2252341a54086ee57dc3
+EBUILD wine-vanilla-9999.ebuild 17388 BLAKE2B 9c94eb8e9abe44affab51ef71143d4292af3bbc077f860879fbc44f43be84af775ff276d34a509da57b09f14705948433c33f0f76f7482028fbcd86c42ae12bd SHA512 fb65ac21807aa3f46f83569658907fb0be01bf579bd598fabce37ac071f48d2bd27c3badcdca6ea4221ba373eccaa0600b00b19aa2bf2252341a54086ee57dc3
+MISC metadata.xml 3273 BLAKE2B 1a060f5a0877c948b46a7fa128e265b682c3a367651629454a38114a112c4d43faeb53dfc335f10e84635fac6adf50f8b9429f060252e11191dfabee031dc81d SHA512 151c4e3b2039180194e6d50983ec4d298296810b2ad794b06a4189e07d0b4800afa4ff62a9b3133bbf04b02644da9938b6f5139fecb332f2dcf955f9e3f34faa
diff --git a/app-emulation/wine-vanilla/metadata.xml b/app-emulation/wine-vanilla/metadata.xml
index c601705c294c..ae58a3f5b900 100644
--- a/app-emulation/wine-vanilla/metadata.xml
+++ b/app-emulation/wine-vanilla/metadata.xml
@@ -20,6 +20,7 @@ This variant of the Wine packaging does not include external patchsets
<flag name="capi">Enable ISDN support via CAPI</flag>
<flag name="custom-cflags">Bypass strip-flags; use at your own peril</flag>
<flag name="dos">Pull in <pkg>games-emulation/dosbox</pkg> to run DOS applications</flag>
+ <flag name="faudio">Pull in <pkg>app-emulation/faudio</pkg> to provide XAudio2 functionality</flag>
<flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
<flag name="gssapi">Use GSSAPI (Kerberos SSP support)</flag>
<flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;</flag>
diff --git a/app-emulation/wine-vanilla/wine-vanilla-4.0.ebuild b/app-emulation/wine-vanilla/wine-vanilla-4.0.ebuild
index ec2ddfe94a80..905c78baa44b 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-4.0.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-4.0.ebuild
@@ -3,7 +3,7 @@
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"
+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 si sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
@@ -19,7 +19,7 @@ if [[ ${PV} == "9999" ]] ; then
#KEYWORDS=""
else
MAJOR_V=$(ver_cut 1)
- MINOR_V=$(ver_cut 2)
+ MINOR_V=$(ver_cut 2)
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.${MINOR_V}/${MY_P}.tar.xz"
KEYWORDS="-* amd64 ~x86 ~x86-fbsd"
fi
diff --git a/app-emulation/wine-vanilla/wine-vanilla-4.1.ebuild b/app-emulation/wine-vanilla/wine-vanilla-4.1.ebuild
index adafa12ab3ea..bb002c1e3be8 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-4.1.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-4.1.ebuild
@@ -3,7 +3,7 @@
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"
+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 si sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
diff --git a/app-emulation/wine-vanilla/wine-vanilla-4.2.ebuild b/app-emulation/wine-vanilla/wine-vanilla-4.2.ebuild
new file mode 100644
index 000000000000..bb002c1e3be8
--- /dev/null
+++ b/app-emulation/wine-vanilla/wine-vanilla-4.2.ebuild
@@ -0,0 +1,532 @@
+# Copyright 1999-2019 Gentoo Authors
+# 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 si sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx 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=$(ver_cut 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 )
+ vkd3d? ( vulkan )" # 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.5 )
+ 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 "EGIT_OVERRIDE_COMMIT_WINE"
+ 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}" 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-4.3.ebuild b/app-emulation/wine-vanilla/wine-vanilla-4.3.ebuild
new file mode 100644
index 000000000000..6397e0c6edf6
--- /dev/null
+++ b/app-emulation/wine-vanilla/wine-vanilla-4.3.ebuild
@@ -0,0 +1,534 @@
+# Copyright 1999-2019 Gentoo Authors
+# 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 si sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx 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=$(ver_cut 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 faudio +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 )
+ vkd3d? ( vulkan )" # 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}] )
+ faudio? ( app-emulation/faudio:=[${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.5 )
+ 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 "EGIT_OVERRIDE_COMMIT_WINE"
+ 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}" 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 faudio)
+ $(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-4.4.ebuild b/app-emulation/wine-vanilla/wine-vanilla-4.4.ebuild
new file mode 100644
index 000000000000..fbc64fd1e689
--- /dev/null
+++ b/app-emulation/wine-vanilla/wine-vanilla-4.4.ebuild
@@ -0,0 +1,534 @@
+# Copyright 1999-2019 Gentoo Authors
+# 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 si sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx 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=$(ver_cut 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="20190316"
+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/~sarnex/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 faudio +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 )
+ vkd3d? ( vulkan )" # 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}] )
+ faudio? ( app-emulation/faudio:=[${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.5 )
+ 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}-4.4-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 "EGIT_OVERRIDE_COMMIT_WINE"
+ 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}" 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 faudio)
+ $(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 adafa12ab3ea..fbc64fd1e689 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
@@ -3,7 +3,7 @@
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"
+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 si sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
@@ -24,18 +24,18 @@ else
fi
S="${WORKDIR}/${MY_P}"
-GWP_V="20180120"
+GWP_V="20190316"
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
+ https://dev.gentoo.org/~sarnex/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"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc faudio +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 )
@@ -59,6 +59,7 @@ COMMON_DEPEND="
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ faudio? ( app-emulation/faudio:=[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
@@ -138,7 +139,7 @@ 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}-4.4-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
@@ -374,6 +375,7 @@ multilib_src_configure() {
$(use_with cups)
$(use_with ncurses curses)
$(use_with udisks dbus)
+ $(use_with faudio)
$(use_with fontconfig)
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
diff --git a/app-emulation/winetricks/Manifest b/app-emulation/winetricks/Manifest
index 047db9cc7db0..7589f3e6d7ce 100644
--- a/app-emulation/winetricks/Manifest
+++ b/app-emulation/winetricks/Manifest
@@ -1,7 +1,7 @@
DIST winetricks-20170823.tar.gz 639027 BLAKE2B ce0de22ff3363bd6fd675d07ea235ed5fb03ea7a84b3242329c094d6a9190c61813a1f360e74ece49d43d2dbf48dbbb1e94c4febc6e1a0d84cf1df895b0be6f9 SHA512 edc805be1a1c4fa64ae16b14fdd46786e259b88a0cde7afdf24bf934fa79f4acf3d9e599727fa589f155ec265569953b9e419cda79d54057157cbb1510261e3a
-DIST winetricks-20181203.tar.gz 671138 BLAKE2B 4a6f7154509bdd4c0ec73da8b94e44f80ca732f3e3e6c85149676df4eebfe586bcc1ffafffd4937e7d3b5efe6bde015bfc8ba53a1489d553001a9600c178b1bd SHA512 ff960b7830fd688315a6cef9c50f45435d95f4d8bb8feb5f3cab3c24302369b5876afdc8145d395be4b33c9d11c3606312aaf84cb675eeb511479c46490b1585
+DIST winetricks-20190310.tar.gz 673467 BLAKE2B b6c6a6d28e49f9b2745ac623f9a9d35bdcaa402c11b3f2055f3d2ef2d13ccff6adcda47261447aff7b70bfcd9bc65ea2a278368616df93f031fe212aa3201a5d SHA512 4f08228306a84cd2e1ecf0df46e951dfc5844716fadab903eca7ed09f15ed2bbba7ca5bf48384f934783be6a85b812129427a296a580561ee5b8483df0e64025
DIST winetricks-gentoo-2012.11.24.tar.bz2 6398 BLAKE2B 54a4502f6e8ef15d21b02c43e3ce599e32d476c2559246064de14cc4ce2243ff11dde681d24c8a7f4913c3d7a10b855bda47e8fb8ecad31e00d839705416be6f SHA512 59c93b73f3a7b2d11aefcde2ff66659ff1de21ad4b5f232f4b60572f3a48b15a6c49f369b1696862bf1b33fde190bf5598945e9536fb41ddec42d8def4d2be2a
EBUILD winetricks-20170823.ebuild 1844 BLAKE2B c6781f586fc1ed47ac10e44e46c5d45cdec3af746ee58b091138a309a296c61b0f57985031b4543416e359e34b0cf87c014fa5130c6b63f08845b24ed2536f82 SHA512 49ba07ab2db89109ba4a444827849c1aa96cdfa3485cb013f1a92967a9923943225784c34427aa160a476c31b3b55aac30b28a95959a6f6d5f98c59ef5d41c94
-EBUILD winetricks-20181203.ebuild 2137 BLAKE2B ae231898680bb0b59d596d2a8becef6773100c3fea7d7b6e8fe26cd275273cca47350fb409b0b927eaba369b57fd8b7df66e503ae1a1c483f2451e361ccd880c SHA512 670a876d4dda678399d0611fee6f9b7b7753382ed9de91ae8a34e9c4f8715750999d3af079d77df453ec950396c8c632e0d296ac5638059648ff8afb2be9b870
-EBUILD winetricks-99999999.ebuild 2140 BLAKE2B 0de1330040e1e56a2947d259901ee27cbb0d0526047b76c0719b85a0772b034788386a17a9f0dd09fe22a2bc65b6ea24166b92dc8518b8fdab319981a7d1cdde SHA512 4aee342c529aeb656a5d9b0ab81453800397895568766069b07825e6792ef8274a664625c046a2a3fdaac0d867c34c41eada85f41ff8753b21aeb9a6b7fd4f32
+EBUILD winetricks-20190310.ebuild 1912 BLAKE2B fe3c652325f6d428cacbc22f74ae0fd93e397e8b4b81287e7611608cbf7f3c0261e5844d722ddc1823a94be344b4e3c1d3bafb07e958afd7568cfc1b576f105a SHA512 b10f311f6be55a688021dc83821b0c78e8305271e3bc1a982fab034b9b0c8f489a26df94140c2c4f545d79b0639930f90ea7380cbfccdcc460ee0e88d2a5b946
+EBUILD winetricks-99999999.ebuild 1912 BLAKE2B fe3c652325f6d428cacbc22f74ae0fd93e397e8b4b81287e7611608cbf7f3c0261e5844d722ddc1823a94be344b4e3c1d3bafb07e958afd7568cfc1b576f105a SHA512 b10f311f6be55a688021dc83821b0c78e8305271e3bc1a982fab034b9b0c8f489a26df94140c2c4f545d79b0639930f90ea7380cbfccdcc460ee0e88d2a5b946
MISC metadata.xml 713 BLAKE2B 144bf83fd445c85df10c852a798f8e6f049923489e039fceb81989279eba2f869fb5b660482cd2f0be872761bdee3fb1104df207f44daa060dee1aab6cddd9f4 SHA512 f1fc5650abbff4a82a006461932d765d775cdbd630ebcbfdd02488b2f1999d41e89b2a45d6142175e715e186392f4bc4820f501c4064e4a9aa9c8dabbc1ce6a9
diff --git a/app-emulation/winetricks/winetricks-20181203.ebuild b/app-emulation/winetricks/winetricks-20190310.ebuild
index 484e85849f7a..900a5b539221 100644
--- a/app-emulation/winetricks/winetricks-20181203.ebuild
+++ b/app-emulation/winetricks/winetricks-20190310.ebuild
@@ -1,9 +1,9 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit gnome2-utils eutils
+inherit desktop xdg
if [[ ${PV} == "99999999" ]] ; then
EGIT_REPO_URI="https://github.com/Winetricks/${PN}.git"
@@ -14,11 +14,12 @@ else
KEYWORDS="~amd64 ~x86"
fi
-wtg=winetricks-gentoo-2012.11.24
+wtg="winetricks-gentoo-2012.11.24"
SRC_URI="${SRC_URI}
- gtk? ( https://dev.gentoo.org/~tetromino/distfiles/wine/${wtg}.tar.bz2 )
- kde? ( https://dev.gentoo.org/~tetromino/distfiles/wine/${wtg}.tar.bz2 )"
+ gtk? ( https://dev.gentoo.org/~chiitoo/distfiles/${wtg}.tar.bz2 )
+ kde? ( https://dev.gentoo.org/~chiitoo/distfiles/${wtg}.tar.bz2 )
+"
DESCRIPTION="Easy way to install DLLs needed to work around problems in Wine"
HOMEPAGE="https://github.com/Winetricks/winetricks https://wiki.winehq.org/Winetricks"
@@ -27,13 +28,16 @@ LICENSE="LGPL-2.1+"
SLOT="0"
IUSE="gtk kde rar test"
-DEPEND="test? (
+BDEPEND="
+ test? (
dev-python/bashate
dev-util/checkbashisms
dev-util/shellcheck
- )"
-
-RDEPEND="app-arch/cabextract
+ )
+"
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-arch/cabextract
app-arch/p7zip
app-arch/unzip
net-misc/wget
@@ -41,7 +45,8 @@ RDEPEND="app-arch/cabextract
x11-misc/xdg-utils
gtk? ( gnome-extra/zenity )
kde? ( kde-apps/kdialog )
- rar? ( app-arch/unrar )"
+ rar? ( app-arch/unrar )
+"
# Test targets include syntax checks only, not the "heavy duty" tests
# that would require a lot of disk space, as well as network access.
@@ -53,11 +58,13 @@ RDEPEND="app-arch/cabextract
QA_DESKTOP_FILE="usr/share/applications/winetricks.desktop"
src_unpack() {
- if [[ ${PV} == "99999999" ]] ; then
+ if [[ ${PV} == "99999999" ]]; then
git-r3_src_unpack
+
if use gtk || use kde; then
unpack ${wtg}.tar.bz2
fi
+
else
default
fi
@@ -69,6 +76,7 @@ src_test() {
src_install() {
default
+
if use gtk || use kde; then
cd "${WORKDIR}/${wtg}" || die
domenu winetricks.desktop
@@ -76,21 +84,3 @@ src_install() {
doins wine-winetricks.svg
fi
}
-
-pkg_preinst() {
- if use gtk || use kde; then
- gnome2_icon_savelist
- fi
-}
-
-pkg_postinst() {
- if use gtk || use kde; then
- gnome2_icon_cache_update
- fi
-}
-
-pkg_postrm() {
- if use gtk || use kde; then
- gnome2_icon_cache_update
- fi
-}
diff --git a/app-emulation/winetricks/winetricks-99999999.ebuild b/app-emulation/winetricks/winetricks-99999999.ebuild
index 58d2e71829ba..900a5b539221 100644
--- a/app-emulation/winetricks/winetricks-99999999.ebuild
+++ b/app-emulation/winetricks/winetricks-99999999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit gnome2-utils eutils
+inherit desktop xdg
if [[ ${PV} == "99999999" ]] ; then
EGIT_REPO_URI="https://github.com/Winetricks/${PN}.git"
@@ -14,11 +14,12 @@ else
KEYWORDS="~amd64 ~x86"
fi
-wtg=winetricks-gentoo-2012.11.24
+wtg="winetricks-gentoo-2012.11.24"
SRC_URI="${SRC_URI}
- gtk? ( https://dev.gentoo.org/~tetromino/distfiles/wine/${wtg}.tar.bz2 )
- kde? ( https://dev.gentoo.org/~tetromino/distfiles/wine/${wtg}.tar.bz2 )"
+ gtk? ( https://dev.gentoo.org/~chiitoo/distfiles/${wtg}.tar.bz2 )
+ kde? ( https://dev.gentoo.org/~chiitoo/distfiles/${wtg}.tar.bz2 )
+"
DESCRIPTION="Easy way to install DLLs needed to work around problems in Wine"
HOMEPAGE="https://github.com/Winetricks/winetricks https://wiki.winehq.org/Winetricks"
@@ -27,13 +28,16 @@ LICENSE="LGPL-2.1+"
SLOT="0"
IUSE="gtk kde rar test"
-DEPEND="test? (
+BDEPEND="
+ test? (
dev-python/bashate
dev-util/checkbashisms
dev-util/shellcheck
- )"
-
-RDEPEND="app-arch/cabextract
+ )
+"
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-arch/cabextract
app-arch/p7zip
app-arch/unzip
net-misc/wget
@@ -41,7 +45,8 @@ RDEPEND="app-arch/cabextract
x11-misc/xdg-utils
gtk? ( gnome-extra/zenity )
kde? ( kde-apps/kdialog )
- rar? ( app-arch/unrar )"
+ rar? ( app-arch/unrar )
+"
# Test targets include syntax checks only, not the "heavy duty" tests
# that would require a lot of disk space, as well as network access.
@@ -53,11 +58,13 @@ RDEPEND="app-arch/cabextract
QA_DESKTOP_FILE="usr/share/applications/winetricks.desktop"
src_unpack() {
- if [[ ${PV} == "99999999" ]] ; then
+ if [[ ${PV} == "99999999" ]]; then
git-r3_src_unpack
+
if use gtk || use kde; then
unpack ${wtg}.tar.bz2
fi
+
else
default
fi
@@ -69,6 +76,7 @@ src_test() {
src_install() {
default
+
if use gtk || use kde; then
cd "${WORKDIR}/${wtg}" || die
domenu winetricks.desktop
@@ -76,21 +84,3 @@ src_install() {
doins wine-winetricks.svg
fi
}
-
-pkg_preinst() {
- if use gtk || use kde; then
- gnome2_icon_savelist
- fi
-}
-
-pkg_postinst() {
- if use gtk || use kde; then
- gnome2_icon_cache_update
- fi
-}
-
-pkg_postrm() {
- if use gtk || use kde; then
- gnome2_icon_cache_update
- fi
-}
diff --git a/app-emulation/xen-pvgrub/Manifest b/app-emulation/xen-pvgrub/Manifest
index 569bc2c747bb..b021bd6e545c 100644
--- a/app-emulation/xen-pvgrub/Manifest
+++ b/app-emulation/xen-pvgrub/Manifest
@@ -10,10 +10,10 @@ DIST polarssl-1.1.4-gpl.tgz 611340 BLAKE2B 613da06dda9e4b86db5a4d616a0a0afee98c9
DIST xen-4.10.2.tar.gz 24697204 BLAKE2B b331d3ad8d7842446f7d2da5dd31560f636aa1408dd3cc8798dff35b868ef5a609d17e97ef4355e1e5aa825a5abc74103796f9a8015037f0a564ffcebd825722 SHA512 2e301b4d6eb106fcb52203bc1208c8fd1fc7bb5d795166c0f86e4085227050301f7daa6f21db440c47bc2ca2c7f87d9b96753cfdf3fa724e0416b5679b84c163
DIST xen-4.10.3.tar.gz 24695778 BLAKE2B 50a9e31fb4cf587eeedb357fc710405a1cd4506174a38eb9b032a0cdd9b7f7343d98624ecb07cf605b1403664c7117cdc8f011290309caa18ca9604b4008b906 SHA512 030d23109ce4c0ebf50ade6841d5525a39032bcf8fd0599ccaa9502ff301c1f61f9c5f49233b41a5934a71228958febc1e529a9fc6822ba401a0c18c490ad412
DIST xen-4.11.1.tar.gz 25152217 BLAKE2B a8dfbeb3d490787725c589e1ce82dcbbcd0be7fb4743b38daf3a8704dffda34d1faabb07d74e01d2fab1572ce0b730c21192469317545e8b3edb3fae1130ef8c SHA512 c1655c5decdaed95a2b9a99652318cfc72f6cfdae957cfe60d635f7787e8850f33e8fafc4c4b8d61fb579c9b9d93028a6382903e71808a0418b931e76d72a649
-DIST xen-4.12-rc2.tar.gz 26932109 BLAKE2B a774d0a8b70df6c373396ace1abf1fbed643473e31196b757c2272b692bcd9f96ad9b2c6ff054312d24d081b83a7893ca0ab90a5f7fedb5a7001aa9b06275338 SHA512 e492f618bfa81394c5adc092912490761edb17d2d34882c1848bad1faa9cbc317d7c771d39d6d5b48c461b79d596af4f8001bf34b64e8d632f7afa8dd41676f7
+DIST xen-4.12.0-rc5.tar.gz 26514850 BLAKE2B 41985dc33175bee8bddc4da0ec3b4da9f8cf3ebe580406011db47a27a8740566c1ace6e906d3385f73fee9b6cd572b0f3292381ac72a696fc15d020eb982ad02 SHA512 3d7fb254503c412a3c37782f7c75d093a1d43553dc110338d8dc00df0c6be4c8825cebf7f0519731e49263cef38d07ef48c18f073926d7eaf30abe64b13c52cb
DIST zlib-1.2.3.tar.gz 496597 BLAKE2B 603020b70cd52b83e48bde420b86e2acfd29d69bf7476eecbeeb07d1b8bcab703d2cbd3eab77772990bddb8c268f13594592ce985798d49e2d6ba25104d49f22 SHA512 021b958fcd0d346c4ba761bcf0cc40f3522de6186cf5a0a6ea34a70504ce9622b1c2626fce40675bc8282cf5f5ade18473656abc38050f72f5d6480507a2106e
EBUILD xen-pvgrub-4.10.2.ebuild 5043 BLAKE2B 2a7c7e6d9b7a7437e80e58af1fca3ed5aa27937641f4b503a3d7b358c8b4a8f5e33423b9857652b2a9f8cb1bd449d5bc7d70b5e390e6911f93909c36e8abdcce SHA512 5b8ace21d7602acfabec7f792fc8440f1522e658a82872f0b5cac06bc15a11e30fa628ff2173fb0cc2bc2a1ca61bff500b596df2a95b9ba1a3f8c4fefe7ae26f
-EBUILD xen-pvgrub-4.10.3.ebuild 5045 BLAKE2B 9d72d7861373f98c821dca5dea9ff204c2626e5d8fed96c3be6b1bcda7df0054515555b3027f8d5479d161634aafe5ca751b9ae326ea5dda9ca0f02d966d43d7 SHA512 5d5a5e9f79a63a8f563eb821b20e6df6d2c8eeef85e8d8f8a2ed631bd950db4742393061877845b3258cc89902dc995c7d0e21cb1dab662aa2454583652798d7
+EBUILD xen-pvgrub-4.10.3.ebuild 5044 BLAKE2B 076bcab7cbf6d597b0624ab78b58578442c4152adf3e0b87d2d7928fb2a57aadb2211204646e6410f35b13651713cf25f7583cc4ade5a610e0daec3e31288b93 SHA512 3b6e1b670218263685819001b6ad1c99158b98d765842d71d3997053df4f51e0d441871da090a6abb76d8fca76d098ef69626ec9ccad86b0807904430805d934
EBUILD xen-pvgrub-4.11.1.ebuild 5051 BLAKE2B 7420eba001d658ac8aeb07ca6dc0b052cbdf89a3e729b54537dacd282738bfc7c3ba0ccc2b9ec34378a9c3bd44bc59eaac2f84ff208aa98e4974a96281e200e5 SHA512 d564cb9564521a634ae88d503c9e206db91a8e4c7750f49cf0784aa226b6188b90289008c07f2923373f5973560b4ec76c6f42d438d42f8beef750bbe7b09379
-EBUILD xen-pvgrub-4.12.0_rc2.ebuild 5092 BLAKE2B 935a45cc3212cf70df9f1f51a7ca09368396193f1627df274f393c835de6eb0aae43696551ab738c301602b3476f0aaa24d7875c74306d736d10c89c8ec77e8d SHA512 afdd4cd5afb29732a01dcb878116dc871fc99f6e22bf6f34da9c482ad21ca3684975926df51263faa942d4cc94b0241635715214116e2001a54f1ed0e574806b
+EBUILD xen-pvgrub-4.12.0_rc5.ebuild 5090 BLAKE2B eee505b7a1521785ef871ec5bec30db06cead6bac418941c704b8a8148394c3c9b13bad76e7ca4002a9ed0d938f0b350a13a7e3a5c94d502d6408e25cb580a2d SHA512 dba1a511c695b3d806ccc47a5dbf8ff1835813cb4a7278c17c3b949d8dca5257320322dd0ab9e19b42cc4eeb49c8d01b88ae83028f677c454b9e0c979e91a25b
MISC metadata.xml 245 BLAKE2B 2bf2c7848c8c513915aaad9305b6146cf46201bbcf3ffa040c943b7188d2d2a9fe27e2b5ecde84ed2099dceadd4b057856df01ac603a6aceca0f7b7f466174c7 SHA512 3f646ec3197e46d25dde4f698b571fb85b040198f4cba7508c8d38405b4d9d0fc31dbd5ae6242aea8c2acd613aabe0486cb347a1db4811fa807b861148661f8b
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.10.3.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.10.3.ebuild
index 4adbcc55dade..e227750d5147 100644
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.10.3.ebuild
+++ b/app-emulation/xen-pvgrub/xen-pvgrub-4.10.3.ebuild
@@ -33,7 +33,7 @@ DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.12.0_rc2.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.12.0_rc5.ebuild
index 3af01cf4d9e6..7b6c8cecaa94 100644
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.12.0_rc2.ebuild
+++ b/app-emulation/xen-pvgrub/xen-pvgrub-4.12.0_rc5.ebuild
@@ -17,7 +17,7 @@ UPSTREAM_VER=
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-pvgrub/}-upstream-patches-${UPSTREAM_VER}.tar.xz
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-pvgrub/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
-MY_PV=${PV/.0_/-}
+MY_PV=${PV/_/-}
SRC_URI="
https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
diff --git a/app-emulation/xen-tools/Manifest b/app-emulation/xen-tools/Manifest
index 2c9cf96890ad..cbf9b3f3378c 100644
--- a/app-emulation/xen-tools/Manifest
+++ b/app-emulation/xen-tools/Manifest
@@ -1,4 +1,4 @@
-AUX gentoo-patches.conf 4405 BLAKE2B 0a289df9c9afa13ef14cbf5e501527bc067e53ecb0c61f3bf70e1c79feaeae725145b8023546564f47c64334375b4bf54bcf71841e4d380fb24e3c1d7cea6844 SHA512 2985136230ffccd344daaa63a58dfc44d497c77e60984c781e5453ddeddc4529082ad83deb53518bbcb2f4c96bac305706118f2a58184d4d90b8dedda5d2880e
+AUX gentoo-patches.conf 2162 BLAKE2B 42bd4aeb0a3ee1e6d6b66014b6ae88a23d1bf2549c316a9f1a65269215687780db334791c5ee65b3ca617b38c6c010c4e9b0d4c8fc87abc3dcd328eb6a174b92 SHA512 7b7d30b8957b99d98360be9e5faf655a08a774bcef41c064a519bde4e35a4415b0e4e617503d44282cb0c211b5c592b7efa670a4fcec85d4ef78e437928269eb
AUX stubs-32.h 537 BLAKE2B 456f57c4a4ba574c737f1b84b62a085d0290ebc8981a5f96fdebc16b6c86c801c5ca8dde135e803f46c5ec875fdd74770f6ed754880bc7af930b8ce1ce972fb7 SHA512 55308dbedaa91909a2213940f7a7b574cabe6b5a3104761a2a6f28d6aed00164544488c00cbf9d66a9a370a14c6b6d3a00434efd3ff0228cc8e4d81af19c0e68
AUX xen-consoles.logrotate 63 BLAKE2B 4ae650876035d2815dbcacc6ed618c58cc61d9cfd9cde1b6c2f792cbf51898c577ef979443ad827fc82ced4d21ae24836883160b20d697965ef5377d50c2973c SHA512 ab2105c75cfe01768aecd5bcbb56269d63666e8a44e42b6a83aee87df6c84ee2f9ab249171c21b2e09f8fec2cae8318f6e87d160989398a3e7dd68db8d52c426
AUX xen-watchdog.initd 181 BLAKE2B b8529db36016b6f71520c1e4119a2ea5c4d3f52f2c77ccb5603efb67bcdd88b8273a359f6ae0df61763ea31a50bd8a0be775df5aabbd17c90e7928c8ed5b7c0e SHA512 5f6da91c0067b93f1b9f1a2f181caf34034896944ab26f5820e860336e3b3159a65e8a7f39ea273927d64d58a2fe4d918d2c3234f2b03ab0770e0c15d6dfe84b
@@ -19,14 +19,17 @@ DIST seabios-1.10.0.tar.gz 588213 BLAKE2B 254eb4572a1dac06020a545820efb53a130a02
DIST seabios-1.12.0.tar.gz 613542 BLAKE2B f145c2db716996bfa9e5c014086ccfaa8ae96ebc158f34303b122b7bf209408c567665d8691364df8d8e886f63e0e72a3f3cd319dfa86ef581023201b5d94e53 SHA512 e52c5363e5bb37b5286e55545aa06bd126218f9d0e3a06ac2e189de68fe3de3256c11ca1bb13357a9c384d7e3af6284083ff3aa587688b5de04ef11b97bdfa27
DIST xen-4.10.2-upstream-patches-1.tar.xz 31768 BLAKE2B 9205e5fa011426ae3eeaa19694d14ca233805be1e60326d53ec319de1fa28e3b30e7949d7d694ccc8f0e5ea77df580bb6cf22652ae1fd023fdc49b2d37dbce0a SHA512 38c2286d8c1e39d42c266c76d97b5321ca5fb931ebe33ff01c5210fdda4d64ccb39eb6463e756c5178ab7d1c8433a56668abf1dabf4b5b5e85823817d927cd33
DIST xen-4.10.2.tar.gz 24697204 BLAKE2B b331d3ad8d7842446f7d2da5dd31560f636aa1408dd3cc8798dff35b868ef5a609d17e97ef4355e1e5aa825a5abc74103796f9a8015037f0a564ffcebd825722 SHA512 2e301b4d6eb106fcb52203bc1208c8fd1fc7bb5d795166c0f86e4085227050301f7daa6f21db440c47bc2ca2c7f87d9b96753cfdf3fa724e0416b5679b84c163
+DIST xen-4.10.3-upstream-patches-1.tar.xz 24064 BLAKE2B ec9339d00afd4057738a78165a82dbebbab73eb561984a049daff84dfb115c0550e67796bfa775d5e5a3a4576c4ea7db408d491fe745a68c412f93a04719c58d SHA512 b3761acdb7a581d172e1e2b1e09406c4748eda3e25c81c19bb53b38e005d27e10ac64109870b47ce72372dc7b7c63ec3eca6156389c174f28ab4ad1c2b9e5634
DIST xen-4.10.3.tar.gz 24695778 BLAKE2B 50a9e31fb4cf587eeedb357fc710405a1cd4506174a38eb9b032a0cdd9b7f7343d98624ecb07cf605b1403664c7117cdc8f011290309caa18ca9604b4008b906 SHA512 030d23109ce4c0ebf50ade6841d5525a39032bcf8fd0599ccaa9502ff301c1f61f9c5f49233b41a5934a71228958febc1e529a9fc6822ba401a0c18c490ad412
+DIST xen-4.11.1-upstream-patches-0.tar.xz 45416 BLAKE2B 3990dbf338c2aebe1cd601d7caccc6919352cc1f937677d447c3d2626143710bdfda7f1977e2ad7112abff9cad6bb660bc1b0993ca74b2eff51da6d4f4365813 SHA512 ecbc13e607581a6f9b4e318145afaa92ce641bda6fb12585408f61bcf24fa9b245004ad22150e109db5d38fcea38e6bdaf6bb2d6eaaf8e5d5fa8816b5a19e456
DIST xen-4.11.1.tar.gz 25152217 BLAKE2B a8dfbeb3d490787725c589e1ce82dcbbcd0be7fb4743b38daf3a8704dffda34d1faabb07d74e01d2fab1572ce0b730c21192469317545e8b3edb3fae1130ef8c SHA512 c1655c5decdaed95a2b9a99652318cfc72f6cfdae957cfe60d635f7787e8850f33e8fafc4c4b8d61fb579c9b9d93028a6382903e71808a0418b931e76d72a649
-DIST xen-4.12-rc2.tar.gz 26932109 BLAKE2B a774d0a8b70df6c373396ace1abf1fbed643473e31196b757c2272b692bcd9f96ad9b2c6ff054312d24d081b83a7893ca0ab90a5f7fedb5a7001aa9b06275338 SHA512 e492f618bfa81394c5adc092912490761edb17d2d34882c1848bad1faa9cbc317d7c771d39d6d5b48c461b79d596af4f8001bf34b64e8d632f7afa8dd41676f7
+DIST xen-4.12.0-rc5.tar.gz 26514850 BLAKE2B 41985dc33175bee8bddc4da0ec3b4da9f8cf3ebe580406011db47a27a8740566c1ace6e906d3385f73fee9b6cd572b0f3292381ac72a696fc15d020eb982ad02 SHA512 3d7fb254503c412a3c37782f7c75d093a1d43553dc110338d8dc00df0c6be4c8825cebf7f0519731e49263cef38d07ef48c18f073926d7eaf30abe64b13c52cb
DIST xen-gentoo-patches-14.tar.xz 36244 BLAKE2B 94b751df0ae9a49d1c52ec5fa835d4a040ccb6a4a0f63ef6ef628191163ce7dbd47d4e3b2dbb1cf6cf6c8b368bea4267ff989754482c4794209a80eae9313c25 SHA512 8a23aeddbcf80c049da36e3ef9d797c16996b45be21b56f46f3c9c3833a7c1028fd9ed56fc8053faeb78db21076608de2eb32908e1ae1285f4f200ace40c8c2d
-DIST xen-gentoo-patches-15.tar.xz 36508 BLAKE2B 10b89597159916781f02e1d0f285317f7319cb26562c4e94f9a755637e31f26dd7e00fe250ceaa71ca140191c2fb76e6c889942dd2f33e0347d65b66734060c8 SHA512 60ba45d95a7f0fa34532395491de221998cf1c7d1aec6cacb8fdc163d31a79ef57a32ef9f2495a5ae10b5d4c9bc5bd43ce6c965ceb5d13291c462501bd419681
+DIST xen-gentoo-patches-16.tar.xz 36980 BLAKE2B a59fcb221a915e39fbbc463fa8b1ca1ef00007654936cc17f64853d91737478a6f78480a3e459b07b8c3ddcc81ab9400beb9ea3906750ba69864d1b97db349d2 SHA512 7727e5c7f4ef997eea830618bc26b26f3a99539a1c702264132401e41a328b384346a06b6721f18e3056fc91a2d2d2bf6320e0ae3c79432c7458a24a0d269c56
DIST xen-ovmf-patches-3.tar.xz 4208 BLAKE2B 0df8f85667a33c91cbfd86c59aec2ae65eca892b45d66eed76f793a52e2748989bc2785861f8bfdf94235ef7a6c0be6572c6e6cce9695469e40f0facd0ce3947 SHA512 abe001053ca702138bbcdd6bea14e2daae5c785f862d6a15001ca894c8ed8617f0c5dc439c6f54a41433b988acf57c71911af1db074aa76732c39d98622a3b5b
EBUILD xen-tools-4.10.2-r1.ebuild 13961 BLAKE2B 8ece04061371ab20e76d186cc41779fcf16d4f89cc012c20125dac0757c1683af00548eef37280a84ec28308c4693664f782224deed737d843d445510fd66bb5 SHA512 575f6e6cb7eb30e3a1362ee026e8cc420d1f34237a641901a1d999e185f9907f7d4769f841a2f63fee615187c116edb40168d02d93e6abb6cfc1ea10e597d68b
-EBUILD xen-tools-4.10.3.ebuild 14163 BLAKE2B 2c315ecaa9970f3ff010821499dc824cba0b950b204f10c7c79fc3420d0913ad686f7872e70de8f774afeac7b4828594d2aeeb548b760ae7f9051f9cce08f3ae SHA512 504e6b107dbfce6932285c119dd59d7ecc81a5839d0e93f1a05d4788505e4c72bbf728e8e42da73e90af64f017a8c9160e22aa281deb7af226b89c72c14ceddb
-EBUILD xen-tools-4.11.1.ebuild 14352 BLAKE2B f20965c22d604a9883c21990aa6a6a56fa2470ae6ba026209eed48a73d578780b0cf0f45751d9b7618d3b106851fb6943bdb748663f8933275372205d1717fb3 SHA512 c11fa59288b99da5a1efbf5483f25916debdb5d0b58900ee0518642a9cf8d513e87669b07aea2d2e56cafe4a290bab9ed36f5db36271486e098be0ee9e5049d2
-EBUILD xen-tools-4.12.0_rc2.ebuild 14459 BLAKE2B 6f2b6a9af415ea8402828468f0c37e26e113ab658cb6d363a6d7f0b489fb3612c05b348ec30fd0c3fb78cfd1477fd76b83bf3fdd2bb3ab492bd85f8654eb1cae SHA512 261f06612bc2d0e2703f02fb6e13a43ddd3babcda6fe89bc26215cd801c043b5530474e77bbd0d563ab6c5544f3229685f09d52726060435db43b9837b2b8ba4
+EBUILD xen-tools-4.10.3-r1.ebuild 14163 BLAKE2B a3f2e470146d5bfc0da08d8375b91d56baeafa0508e5b4cb782f1ef2fd27ecd3a4df75b505ae024274919f4c8f63e9d6718667258ace03aac5025dee025afcba SHA512 e12797dc20c1070e96ec5e610ad76152e8a8e7902398df33a378977f86d45863cdb1d6787709958930c96fbedae21b4a237d033366d537c446a6a04653101a71
+EBUILD xen-tools-4.10.3-r2.ebuild 14163 BLAKE2B b84f3ee41d97eae1319198c3d0a4dd661d382c697b6bd3bd10d384fa67fab00f4c16ec66d7c279789d108bf4e80d42727d78c878ab70447fd91e66465e2fac7b SHA512 84464e950763bfc1d8f48b7b4d0927df9343e41f218c4e525fe08d5852250069ea004924a5c9566edaa5e3b29da5c36f8a572a3b96153134c05168ccb897e000
+EBUILD xen-tools-4.11.1-r2.ebuild 14353 BLAKE2B 4776c2e41a5928b680a36fdecbe804572bc8c0cb887e9b739486ed9084b5508ab71407b50b9893caf1ce6e0286bfa5e609bc0e11b98925033b1892a43bbdee5f SHA512 fc3104227a722d1d48f3ec03c0ed9bd5e2a2f13c5d9a5d89c7025725a5ccb8310fefbbb70c8aef2603e123092f28c3f47a873f2b296c89da712bcbacba4150f1
+EBUILD xen-tools-4.12.0_rc5.ebuild 14418 BLAKE2B db154a219cb5804572ca1a9140927ac1c377072e6dc3126cb10faa507f97a44c5501a5215c59c5d143de9feb9c32725a0e7b1f5cd1afcfab206f49b56aba9648 SHA512 c26cda188e6343c04ee7522458826f184ce66439d0b065a3e3b0f6bd49d063f049993f07fb7bd1bc8d17b87f5ad204781f6155a9e1947265ef3dc4246db4ba57
MISC metadata.xml 1267 BLAKE2B 8b9111b781201a51e373b606c888440fe42630f9cb08a43a4bb5a512456f57e7bb4e4f2af0a23d4cbf75489ba01efbc38820a6881317f16a459c96f8717d2b52 SHA512 c4e947a8cff20e4c5e77f5764fe26ee86a5674cc24ba2eedb7867476f9805ca47b895fcee92e8f353bb4bce877d32832318f8f7fd9514103fb2a963d6ea74647
diff --git a/app-emulation/xen-tools/files/gentoo-patches.conf b/app-emulation/xen-tools/files/gentoo-patches.conf
index 1bf40fcce797..234abc9b2ad0 100644
--- a/app-emulation/xen-tools/files/gentoo-patches.conf
+++ b/app-emulation/xen-tools/files/gentoo-patches.conf
@@ -1,76 +1,17 @@
-# Drop .config, fixes to gcc-4.6
-_gx001=" xen-4-fix_dotconfig-gcc.patch"
-_gx020=" xen-4.3-fix_dotconfig-gcc.patch"
-
-# Fix texi2html build error with new texi2html, qemu.doc.html
-_gx002=" xen-tools-4-docfix.patch"
-_gx003=" xen-tools-4-qemu-xen-doc.patch"
-
-_gx004=" xen-tools-4.2-pod-utf8-chars.patch"
-_gx005=" xen-tools-4.2-pod-docs.patch"
-_gx006=" xen-tools-4.2-pod-xl.patch"
-
-# Fix network broadcast on bridged networks
-_gx007=" xen-tools-3.4.0-network-bridge-broadcast.patch"
-
# Bug 496708
-_gx008=" xen-tools-4-unbundle-ipxe.patch"
_gx045=" xen-tools-4.10.1-unbundle-ipxe.patch"
-#use system-seabios && epatch "${FILESDIR}"/${PN}-4-unbundle-seabios.patch
-
-# Fix bridge by idella4, bug #362575
-_gx009=" xen-tools-4.1.1-bridge.patch"
-
-# Conditional patch, fix in ebuild
-# Don't build ipxe with pie on hardened, Bug #360805
-#if gcc-specs-pie; then
-# epatch "${FILESDIR}"/ipxe-nopie.patch
-#fi
-
-# Prevent double stripping of files at install
-_gx010=" xen-4.2.0-nostrip.patch"
-_gx024+=" xen-4.4-nostrip.patch"
-
-# fix jobserver in Makefile
-_gx011=" xen-4.2.0-jserver.patch"
-_gx021=" xen-4.3-jserver.patch"
-
-# add missing header, Bug #467200
-_gx012=" xen-4-ulong.patch"
-_gx013=" xen-tools-4.2-xen_disk_leak.patch"
-
-# Set dom0-min-mem to kb; Bug #472982
-_gx014=" xen-4.2-configsxp.patch"
-
-# Bug 463840
-_gx015=" xen-tools-4.2.2-install.patch"
-_gx016=" xen-tools-4.2.2-rt-link.patch"
# Bug 379537
_gx017=" fix-gold-ld.patch"
-# Bug 510976
-_gx018=" xen-tools-4.2.4-udev-rules.patch"
-
-# bundled seabios
-_gx019=" xen-tools-4-anti-seabios-download.patch"
-_gx032=" xen-tools-4.5-anti-seabios-download.patch"
-
# Bug 477676
-_gx022=" xen-tools-4.3-ar-cc.patch"
_gx038=" xen-tools-4.8-ar-cc.patch"
# Prevent file collision with qemu package Bug 478064
-_gx023=" qemu-bridge.patch"
-_gx025=" xen-4.4-qemu-bridge.patch"
-_gx031=" xen-4.5-qemu-bridge.patch"
-_gx039=" xen-4.8-qemu-bridge.patch"
_gx043=" xen-4.10-qemu-bridge.patch"
_gx051=" xen-4.12-qemu-bridge.patch"
#mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
-_gx026=" xen-tools-4.4-api-fix.patch"
-
# Fix po file collision with app-emulation/qemu, while USE=qemu is enabled, Bug 508302
_gx027=" xen-tools-4-qemu-fix-po-collision.patch"
@@ -80,40 +21,22 @@ _gx028=" xen-tools-4.4.1-tinfo.patch"
# Don't download ovmf, use pre-released
_gx029=" xen-tools-4-anti-ovmf-download.patch"
-# fix build err while using gcc-4.5.x, c99
-_gx033=" xen-tools-4.4.2-gcc99.patch"
-_gx034=" xen-tools-4.5.0-gcc99.patch"
-
-_gx035=" xen-tools-4.2-pod-docs-r1.patch"
-# disable stackcheck for hardened system, bug 569810
-_gx036=" xen-tools-4.6-no-stackcheck.patch"
-
# increase stack to fix xenqemu err
# https://lists.gnu.org/archive/html/qemu-devel/2016-09/msg03961.html
_gx037=" xen-tools-4.6-increase-stack-size.patch"
-
-#Fix issues with zero-length records in migration v2"
-#https://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/tools-fix-zero-length-records
-_gx040=" 0001-docs-Clarify-the-expected-behaviour-of-zero-length-r.patch
- 0003-tools-libxc-Avoid-generating-inappropriate-zero-leng.patch
- 0004-tools-python-Adjust-migration-v2-library-to-warn-abo.patch"
-
-_gx041=" 0002-tools-libxc-Tolerate-zero-length-records-in-migratio.patch"
-
#Fix missing makedev(), major(), minor()
_gx042=" xen-tools-4.8.2-makedev.patch"
-# Fix building with glibc 2.27, bug #648182
-_gx044=" xen-tools-4.9-glibc-memfd.patch"
-
# Disable failing shim
_gx046=" xen-tools-4.10.1-shim.patch"
_gx050=" xen-tools-4.12.0-shim.patch"
# Fix building with gcc 8, bug #657388
_gx047=" xen-tools-4.10.1-gcc8.patch"
-_gx048=" xen-tools-4.11.0-gcc8.patch"
+_gx048=" xen-tools-4.11.1-gcc8.patch"
+_gx052=" xen-tools-4.10.3-gcc8.patch"
+_gx053=" xen-tools-4.12.0-gcc8.patch"
# Fix pdf document generation, bug #650396
_gx049=" xen-tools-4.10.1-pdfdoc.patch"
@@ -138,6 +61,16 @@ ${_gx045} ${_gx046} ${_gx047}
${_gx049}
"
+# xen-tools-4.10.3 patches set r1
+_gpv_xen_tools_4103_1="
+${_gx038} ${_gx017} ${_gx043}
+${_gx027}
+${_gx028} ${_gx029}
+${_gx037} ${_gx042}
+${_gx045} ${_gx046} ${_gx052}
+${_gx049}
+"
+
# xen-tools-4.11.1 patches set
_gpv_xen_tools_4111_0="
${_gx038} ${_gx017} ${_gx043}
@@ -149,10 +82,10 @@ ${_gx049}
"
# xen-tools-4.12.0 patches set
-_gpv_xen_tools_4120_rc2_0="
+_gpv_xen_tools_4120_rc5_0="
${_gx038}
${_gx027}
${_gx028} ${_gx029}
${_gx037} ${_gx042}
-${_gx048} ${_gx050} ${_gx051}
+${_gx053} ${_gx050} ${_gx051}
"
diff --git a/app-emulation/xen-tools/xen-tools-4.10.3.ebuild b/app-emulation/xen-tools/xen-tools-4.10.3-r1.ebuild
index f8e1a14db295..2f949b56d4ce 100644
--- a/app-emulation/xen-tools/xen-tools-4.10.3.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.10.3-r1.ebuild
@@ -16,8 +16,8 @@ if [[ $PV == *9999 ]]; then
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
- KEYWORDS="~amd64 ~arm ~arm64 ~x86"
- UPSTREAM_VER=
+ KEYWORDS="amd64 ~arm ~arm64 ~x86"
+ UPSTREAM_VER=1
SECURITY_VER=
# xen-tools's gentoo patches tarball
GENTOO_VER=14
diff --git a/app-emulation/xen-tools/xen-tools-4.10.3-r2.ebuild b/app-emulation/xen-tools/xen-tools-4.10.3-r2.ebuild
new file mode 100644
index 000000000000..f0965d4e365d
--- /dev/null
+++ b/app-emulation/xen-tools/xen-tools-4.10.3-r2.ebuild
@@ -0,0 +1,464 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE='ncurses,xml,threads'
+
+inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
+
+MY_PV=${PV/_/-}
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ REPO="xen.git"
+ EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
+ S="${WORKDIR}/${REPO}"
+else
+ KEYWORDS="amd64 ~arm ~arm64 ~x86"
+ UPSTREAM_VER=1
+ SECURITY_VER=
+ # xen-tools's gentoo patches tarball
+ GENTOO_VER=16
+ # xen-tools's gentoo patches version which apply to this specific ebuild
+ GENTOO_GPV=1
+ # xen-tools ovmf's patches
+ OVMF_VER=3
+
+ SEABIOS_VER=1.10.0
+ # OVMF upstream 5920a9d16b1ab887c2858224316a98e961d71b05
+ OVMF_PV=20170321
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
+ https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ [[ -n ${OVMF_VER} ]] && \
+ OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
+
+ SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
+ http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
+ https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
+ ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.xz
+ ${OVMF_PATCHSET_URI} )
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+
+ S="${WORKDIR}/xen-${MY_PV}"
+fi
+
+DESCRIPTION="Xen tools including QEMU and xl"
+HOMEPAGE="https://www.xenproject.org"
+DOCS=( README docs/README.xen-bugtool )
+
+LICENSE="GPL-2"
+SLOT="0/$(ver_cut 1-2)"
+# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
+# >=dev-lang/ocaml-4 stable
+# Masked in profiles/eapi-5-files instead
+IUSE="api custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
+
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ pygrub? ( python )
+ ovmf? ( hvm )
+ ^^ ( qemu system-qemu )"
+
+COMMON_DEPEND="
+ sys-apps/pciutils
+ dev-libs/lzo:2
+ dev-libs/glib:2
+ dev-libs/yajl
+ dev-libs/libaio
+ dev-libs/libgcrypt:0
+ sys-libs/zlib
+ ${PYTHON_DEPS}
+"
+
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-4.11
+ dev-python/lxml[${PYTHON_USEDEP}]
+ x86? ( sys-devel/dev86
+ sys-power/iasl )
+ pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
+ api? ( dev-libs/libxml2
+ net-misc/curl )
+ ovmf? (
+ !arm? ( !arm64? ( dev-lang/nasm ) )
+ $(python_gen_impl_dep sqlite)
+ )
+ !amd64? ( >=sys-apps/dtc-1.4.0 )
+ amd64? ( sys-devel/bin86
+ system-seabios? ( sys-firmware/seabios )
+ sys-firmware/ipxe
+ sys-devel/dev86
+ sys-power/iasl )
+ dev-lang/perl
+ app-misc/pax-utils
+ doc? (
+ app-text/ghostscript-gpl
+ app-text/pandoc
+ dev-python/markdown[${PYTHON_USEDEP}]
+ dev-texlive/texlive-latexextra
+ media-gfx/transfig
+ )
+ hvm? ( x11-base/xorg-proto )
+ qemu? (
+ app-arch/snappy:=
+ x11-libs/pixman
+ sdl? ( media-libs/libsdl[X] )
+ )
+ system-qemu? ( app-emulation/qemu[xen] )
+ ocaml? ( dev-ml/findlib
+ >=dev-lang/ocaml-4 )"
+
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/iproute2[-minimal]
+ net-misc/bridge-utils
+ screen? (
+ app-misc/screen
+ app-admin/logrotate
+ )"
+
+# hvmloader is used to bootstrap a fully virtualized kernel
+# Approved by QA team in bug #144032
+QA_WX_LOAD="
+ usr/libexec/xen/boot/hvmloader
+ usr/share/qemu-xen/qemu/s390-ccw.img
+ usr/share/qemu-xen/qemu/u-boot.e500
+"
+
+QA_PREBUILT="
+ usr/libexec/xen/bin/ivshmem-client
+ usr/libexec/xen/bin/ivshmem-server
+ usr/libexec/xen/bin/qemu-img
+ usr/libexec/xen/bin/qemu-io
+ usr/libexec/xen/bin/qemu-nbd
+ usr/libexec/xen/bin/qemu-system-i386
+ usr/libexec/xen/bin/virtfs-proxy-helper
+ usr/libexec/xen/libexec/xen-bridge-helper
+ usr/share/qemu-xen/qemu/s390-ccw.img
+ usr/share/qemu-xen/qemu/s390-netboot.img
+ usr/share/qemu-xen/qemu/u-boot.e500
+"
+
+RESTRICT="test"
+
+pkg_setup() {
+ python_setup
+ export "CONFIG_LOMOUNT=y"
+
+ #bug 522642, disable compile tools/tests
+ export "CONFIG_TESTS=n"
+
+ if [[ -z ${XEN_TARGET_ARCH} ]] ; then
+ if use x86 && use amd64; then
+ die "Confusion! Both x86 and amd64 are set in your use flags!"
+ elif use x86; then
+ export XEN_TARGET_ARCH="x86_32"
+ elif use amd64 ; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+}
+
+src_prepare() {
+ local i
+
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ einfo "Try to apply Xen Upstream patch set"
+ eapply "${WORKDIR}"/patches-upstream
+ fi
+
+ # Security patchset
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patch set"
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+
+ source "${WORKDIR}"/patches-security/${PV}.conf || die
+
+ for i in ${XEN_SECURITY_MAIN}; do
+ eapply "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ # apply qemu-xen/upstream patches
+ pushd "${S}"/tools/qemu-xen/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUU}; do
+ eapply "${WORKDIR}"/patches-security/qemuu/$i
+ done
+ popd > /dev/null
+
+ # apply qemu-traditional patches
+ pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUT}; do
+ eapply "${WORKDIR}"/patches-security/qemut/$i
+ done
+ popd > /dev/null
+ fi
+
+ # move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
+ mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
+ pushd tools/firmware/ > /dev/null
+ ln -s seabios-dir-remote seabios-dir || die
+ popd > /dev/null
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
+ einfo "Try to apply Gentoo specific patch set"
+ source "${FILESDIR}"/gentoo-patches.conf || die
+ _gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
+ for i in ${!_gpv}; do
+ eapply "${WORKDIR}"/patches-gentoo/$i
+ done
+ fi
+
+ # Ovmf's patchset
+ if use ovmf; then
+ if [[ -n ${OVMF_VER} ]];then
+ einfo "Try to apply Ovmf patch set"
+ pushd "${WORKDIR}"/ovmf-*/ > /dev/null
+ eapply "${WORKDIR}"/patches-ovmf
+ popd > /dev/null
+ fi
+ mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
+ fi
+
+ mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
+
+ # Fix texi2html build error with new texi2html, qemu.doc.html
+ sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
+
+ use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
+ sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
+ -i tools/firmware/Makefile || die
+
+ # Drop .config, fixes to gcc-4.6
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+
+ # try and remove all the default cflags
+ find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
+ -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} + || die "failed to re-set custom-cflags"
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ unset CPPFLAGS
+ fi
+
+ if ! use pygrub; then
+ sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
+ fi
+
+ if ! use python; then
+ sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
+ fi
+
+ if ! use hvm; then
+ sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
+ # Bug 351648
+ elif ! use x86 && ! has x86 $(get_all_abis); then
+ mkdir -p "${WORKDIR}"/extra-headers/gnu || die
+ touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
+ export CPATH="${WORKDIR}"/extra-headers
+ fi
+
+ if use qemu; then
+ if use sdl; then
+ sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
+ tools/Makefile || die
+ else
+ sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
+ tools/qemu-xen-traditional/xen-setup || die
+ sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
+ tools/Makefile || die
+ fi
+ else
+ # Don't bother with qemu, only needed for fully virtualised guests
+ sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
+ fi
+
+ # Reset bash completion dir; Bug 472438
+ sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
+ -i Config.mk || die
+ sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
+
+ # xencommons, Bug #492332, sed lighter weight than patching
+ sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
+ -i tools/hotplug/Linux/init.d/xencommons.in || die
+
+ # fix bashishm
+ sed -e '/Usage/s/\$//g' \
+ -i tools/hotplug/Linux/init.d/xendriverdomain.in || die
+
+ # respect multilib, usr/lib/libcacard.so.0.0.0
+ sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
+ -i tools/qemu-xen/configure || die
+
+ #bug 518136, don't build 32bit exactuable for nomultilib profile
+ if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
+ sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
+ fi
+
+ # uncomment lines in xl.conf
+ sed -e 's:^#autoballoon=:autoballoon=:' \
+ -e 's:^#lockfile=:lockfile=:' \
+ -e 's:^#vif.default.script=:vif.default.script=:' \
+ -i tools/examples/xl.conf || die
+
+ default
+}
+
+src_configure() {
+ local myconf="--prefix=${PREFIX}/usr \
+ --libdir=${PREFIX}/usr/$(get_libdir) \
+ --libexecdir=${PREFIX}/usr/libexec \
+ --localstatedir=${EPREFIX}/var \
+ --disable-werror \
+ --disable-xen \
+ --enable-tools \
+ --enable-docs \
+ $(use_enable pam) \
+ $(use_enable api xenapi) \
+ $(use_enable ovmf) \
+ $(use_enable ocaml ocamltools) \
+ --with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
+ "
+
+ use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
+ use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
+ use amd64 && myconf+=" $(use_enable qemu-traditional)"
+ tc-ld-disable-gold # Bug 669570
+ econf ${myconf}
+}
+
+src_compile() {
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ if test-flag-CC -fno-strict-overflow; then
+ append-flags -fno-strict-overflow
+ fi
+
+ emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
+
+ if use doc; then
+ emake -C docs build
+ else
+ emake -C docs man-pages
+ fi
+}
+
+src_install() {
+ # Override auto-detection in the build system, bug #382573
+ export INITD_DIR=/tmp/init.d
+ export CONFIG_LEAF_DIR=../tmp/default
+
+ # Let the build system compile installed Python modules.
+ local PYTHONDONTWRITEBYTECODE
+ export PYTHONDONTWRITEBYTECODE
+
+ emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
+ XEN_PYTHON_NATIVE_INSTALL=y install-tools
+
+ # Created at runtime
+ rm -rv "${ED%/}/var/run" || die
+
+ # Fix the remaining Python shebangs.
+ python_fix_shebang "${D}"
+
+ # Remove RedHat-specific stuff
+ rm -rf "${D}"tmp || die
+
+ if use doc; then
+ emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
+ dodoc -r docs/{pdf,txt}
+ else
+ emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
+ fi
+ dodoc ${DOCS[@]}
+
+ newconfd "${FILESDIR}"/xendomains.confd xendomains
+ newconfd "${FILESDIR}"/xenstored.confd xenstored
+ newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
+ newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
+ newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
+ newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
+ newinitd "${FILESDIR}"/xencommons.initd xencommons
+ newconfd "${FILESDIR}"/xencommons.confd xencommons
+ newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
+ newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
+ newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
+
+ if use screen; then
+ cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
+ cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
+ keepdir /var/log/xen-consoles
+ fi
+
+ # For -static-libs wrt Bug 384355
+ if ! use static-libs; then
+ rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
+ fi
+
+ # for xendomains
+ keepdir /etc/xen/auto
+
+ # Remove files failing QA AFTER emake installs them, avoiding seeking absent files
+ find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
+ -o -name openbios-ppc -o -name palcode-clipper \) -delete || die
+
+ keepdir /var/lib/xen/dump
+ keepdir /var/lib/xen/xenpaging
+ keepdir /var/lib/xenstored
+ keepdir /var/log/xen
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the offical wiki page:"
+ elog "https://wiki.gentoo.org/wiki/Xen"
+ elog "https://wiki.xen.org/wiki/Main_Page"
+ elog ""
+ elog "Recommended to utilise the xencommons script to config system at boot"
+ elog "Add by use of rc-update on completion of the install"
+
+ if ! use hvm; then
+ echo
+ elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
+ elog "support enable the hvm use flag."
+ elog "An x86 or amd64 system is required to build HVM support."
+ fi
+
+ if use qemu; then
+ elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
+ elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
+ elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
+ elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
+ fi
+}
diff --git a/app-emulation/xen-tools/xen-tools-4.11.1.ebuild b/app-emulation/xen-tools/xen-tools-4.11.1-r2.ebuild
index 2b0aeec7f834..c6d51462da39 100644
--- a/app-emulation/xen-tools/xen-tools-4.11.1.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.11.1-r2.ebuild
@@ -17,10 +17,10 @@ if [[ $PV == *9999 ]]; then
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
- UPSTREAM_VER=
+ UPSTREAM_VER=0
SECURITY_VER=
# xen-tools's gentoo patches tarball
- GENTOO_VER=14
+ GENTOO_VER=16
# xen-tools's gentoo patches version which apply to this specific ebuild
GENTOO_GPV=0
# xen-tools ovmf's patches
diff --git a/app-emulation/xen-tools/xen-tools-4.12.0_rc2.ebuild b/app-emulation/xen-tools/xen-tools-4.12.0_rc5.ebuild
index 6a0337a64557..36e89e49a695 100644
--- a/app-emulation/xen-tools/xen-tools-4.12.0_rc2.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.12.0_rc5.ebuild
@@ -8,7 +8,7 @@ PYTHON_REQ_USE='ncurses,xml,threads'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
-MY_PV=${PV/.0_/-}
+MY_PV=${PV/_/-}
if [[ $PV == *9999 ]]; then
inherit git-r3
@@ -21,7 +21,7 @@ else
UPSTREAM_VER=
SECURITY_VER=
# xen-tools's gentoo patches tarball
- GENTOO_VER=15
+ GENTOO_VER=16
# xen-tools's gentoo patches version which apply to this specific ebuild
GENTOO_GPV=0
# xen-tools ovmf's patches
@@ -43,7 +43,7 @@ else
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
- http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
+ https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.xz
${OVMF_PATCHSET_URI} )
@@ -56,7 +56,7 @@ fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://www.xenproject.org"
-DOCS=( README docs/README.xen-bugtool )
+DOCS=( README )
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
diff --git a/app-emulation/xen/Manifest b/app-emulation/xen/Manifest
index 65e4c0ce0913..ef1398842423 100644
--- a/app-emulation/xen/Manifest
+++ b/app-emulation/xen/Manifest
@@ -1,12 +1,13 @@
AUX xen-4.6-efi.patch 1954 BLAKE2B c027aff764e83eef957241827980559ccfeec5525bf0ce6b6b2d38db565fd0f24b21609c1d497934ef823d42116eaf96799b45314f11f57a9238ab21f1255a00 SHA512 361af33159cf49626e92d2815fd4422ea5b1d696a32ce2695ce75205fbbfb89d96b64a8af7332fffdc4a4390000bf52d3730403dfc2334af0da0bea59d58b689
DIST xen-4.10.2-upstream-patches-2.tar.xz 37800 BLAKE2B ecf4c1a97a1d76eef925e79fd25a654695a954f81bf8a5884cd4b1007714c888d6d7e19839556c457cf49a2f20ee88d5689a0287ffd7b16487dac676b3386daf SHA512 e9212efd65827286b729b08eded4bd6deda4a9f0b72af26bf0d106a111dddd1b56e51154d3e2a2ee4b38fcf4e8a81f30ffe2a6b711b9261e50e5954447d30e60
DIST xen-4.10.2.tar.gz 24697204 BLAKE2B b331d3ad8d7842446f7d2da5dd31560f636aa1408dd3cc8798dff35b868ef5a609d17e97ef4355e1e5aa825a5abc74103796f9a8015037f0a564ffcebd825722 SHA512 2e301b4d6eb106fcb52203bc1208c8fd1fc7bb5d795166c0f86e4085227050301f7daa6f21db440c47bc2ca2c7f87d9b96753cfdf3fa724e0416b5679b84c163
-DIST xen-4.10.3-upstream-patches-0.tar.xz 3908 BLAKE2B db09278352cd532df5ad84e6e2bf8626c6f98e45bc2f00f627e6ba307024c903614681d25f36869c2b4b0539e985dab4a5f76fc53393a1a4e9cc14dba548c22b SHA512 97ab362b57ccaf477eae40eee84fcbe1947228c03a3430cf98db760adb2efe863d32d29646a2233ab6270c6e14989527362d0aaf7ba84cf9586dac90cb0200b7
+DIST xen-4.10.3-upstream-patches-1.tar.xz 24064 BLAKE2B ec9339d00afd4057738a78165a82dbebbab73eb561984a049daff84dfb115c0550e67796bfa775d5e5a3a4576c4ea7db408d491fe745a68c412f93a04719c58d SHA512 b3761acdb7a581d172e1e2b1e09406c4748eda3e25c81c19bb53b38e005d27e10ac64109870b47ce72372dc7b7c63ec3eca6156389c174f28ab4ad1c2b9e5634
DIST xen-4.10.3.tar.gz 24695778 BLAKE2B 50a9e31fb4cf587eeedb357fc710405a1cd4506174a38eb9b032a0cdd9b7f7343d98624ecb07cf605b1403664c7117cdc8f011290309caa18ca9604b4008b906 SHA512 030d23109ce4c0ebf50ade6841d5525a39032bcf8fd0599ccaa9502ff301c1f61f9c5f49233b41a5934a71228958febc1e529a9fc6822ba401a0c18c490ad412
+DIST xen-4.11.1-upstream-patches-0.tar.xz 45416 BLAKE2B 3990dbf338c2aebe1cd601d7caccc6919352cc1f937677d447c3d2626143710bdfda7f1977e2ad7112abff9cad6bb660bc1b0993ca74b2eff51da6d4f4365813 SHA512 ecbc13e607581a6f9b4e318145afaa92ce641bda6fb12585408f61bcf24fa9b245004ad22150e109db5d38fcea38e6bdaf6bb2d6eaaf8e5d5fa8816b5a19e456
DIST xen-4.11.1.tar.gz 25152217 BLAKE2B a8dfbeb3d490787725c589e1ce82dcbbcd0be7fb4743b38daf3a8704dffda34d1faabb07d74e01d2fab1572ce0b730c21192469317545e8b3edb3fae1130ef8c SHA512 c1655c5decdaed95a2b9a99652318cfc72f6cfdae957cfe60d635f7787e8850f33e8fafc4c4b8d61fb579c9b9d93028a6382903e71808a0418b931e76d72a649
-DIST xen-4.12-rc2.tar.gz 26932109 BLAKE2B a774d0a8b70df6c373396ace1abf1fbed643473e31196b757c2272b692bcd9f96ad9b2c6ff054312d24d081b83a7893ca0ab90a5f7fedb5a7001aa9b06275338 SHA512 e492f618bfa81394c5adc092912490761edb17d2d34882c1848bad1faa9cbc317d7c771d39d6d5b48c461b79d596af4f8001bf34b64e8d632f7afa8dd41676f7
+DIST xen-4.12.0-rc5.tar.gz 26514850 BLAKE2B 41985dc33175bee8bddc4da0ec3b4da9f8cf3ebe580406011db47a27a8740566c1ace6e906d3385f73fee9b6cd572b0f3292381ac72a696fc15d020eb982ad02 SHA512 3d7fb254503c412a3c37782f7c75d093a1d43553dc110338d8dc00df0c6be4c8825cebf7f0519731e49263cef38d07ef48c18f073926d7eaf30abe64b13c52cb
EBUILD xen-4.10.2-r2.ebuild 4795 BLAKE2B 2c8d72c915de0ea49d415f74653bcea64f8cbac1def72f526198ae5f3923dcf8a4011aef11cd310b36021bf5cedbe9116cd0402373380ec0ebb84aec8ff6c383 SHA512 31277e30c73c775d581804e15bbe1cd5a863a7633534f06547fc520cbf7ac296cafcccf0c3a3e290bb0c42a72d5b0270b5c34ab725d8687760187e821596a9eb
-EBUILD xen-4.10.3.ebuild 4796 BLAKE2B f653a6ad08d02979ae08574e30ec1e5f32022f9837c3f0fad1ebda5a9a421bfe55025b9446181d3f3ec70749000d21591924ca7afb97a1253494d6517e638ade SHA512 76671cb83ea9303bae0a8b6c1acdca345a1727fc57465261620ab2fd06472ed48f60a993cabe405e3a3a462cdb5dc37a0e0dce36591164084c3cf4832686b2b3
-EBUILD xen-4.11.1.ebuild 4795 BLAKE2B 4d7362604ab1be1541cbca8f47d43d2b1dfade482ff4ead1ca0fe43d2078a69312f8b86205970d5bd103b5142bb54175a664b096c84fb97fe3ab055f4c77c319 SHA512 2e7dcff4c8eb9fefd05eecd333fa7a3e61cf886882d96b97a38325f9a2595a5fe61ce0a49bb877655f061a0d4cd4646dfd21a07095d38a9bf557020703ce1822
-EBUILD xen-4.12.0_rc2.ebuild 4811 BLAKE2B 92f0a4f36b6c2a75a5998199660a1a7449b0410f1a22d8b1ce50981089dad21dcdc0a4f073539d0f169c6132f580f31bebce919af4a7fcc29a5678c241b8b3e8 SHA512 49e22a57e75e043df13b4b610389ae2fc81df908ed96c797e36f725dc373202ac3664765cac23ef8397e3c4ada953a7230dc743a637d2e9124f838b3a4681a22
+EBUILD xen-4.10.3-r1.ebuild 4795 BLAKE2B f1b5a6416aa0157162eda97a4d889f46325b51144d9aba769832ec7f503d7ee4cd74c580fdb6b61c51894abb9fb2761eef80183c6c4666fb65e1295aaf08c510 SHA512 6d82456c23ea10b238edb48920d5bc00ac262b2593415dd6f1528336487c036b100c0f8fe00afc109dd9dbdeede9909d1c7d8f2e0423e586f5746af280b8fc6c
+EBUILD xen-4.11.1-r1.ebuild 4796 BLAKE2B f653a6ad08d02979ae08574e30ec1e5f32022f9837c3f0fad1ebda5a9a421bfe55025b9446181d3f3ec70749000d21591924ca7afb97a1253494d6517e638ade SHA512 76671cb83ea9303bae0a8b6c1acdca345a1727fc57465261620ab2fd06472ed48f60a993cabe405e3a3a462cdb5dc37a0e0dce36591164084c3cf4832686b2b3
+EBUILD xen-4.12.0_rc5.ebuild 4809 BLAKE2B 5692f78d0cf4823ae463a28234752062fd374e2c6a341fc1cb2d047dfff4bdf57adbacb19eae0079ea6d89a6b75edcdc096def0eb38da662e848b4e00d3f1909 SHA512 6e963265f7f0a2c60a882d10868c23a45a6d5d48acfe9f228ec470d68d4de5c3f85272796798fdb3e676d195a32f072cda351693296cde8ac28c87d063fd62bc
MISC metadata.xml 417 BLAKE2B 5713c8e5f27d56714938b7d2bed096c3b3f9fbb0ad9bce2bb3240e4a8556134cfc88efe0e2c7feb2e9cc722c11800e8433afa0d03746b05998909dd976230225 SHA512 2708f84b8a1508eebc96539993ae1bde4b921d4401229c221e2bee9a0cd643fdf1f854fcbba6033ed68667d0efb00c25222f4c68535a96f2200084d8d8759946
diff --git a/app-emulation/xen/xen-4.11.1.ebuild b/app-emulation/xen/xen-4.10.3-r1.ebuild
index b990fabd8b21..c776b7262c64 100644
--- a/app-emulation/xen/xen-4.11.1.ebuild
+++ b/app-emulation/xen/xen-4.10.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,8 +15,8 @@ if [[ $PV == *9999 ]]; then
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
- KEYWORDS="~amd64 ~arm -x86"
- UPSTREAM_VER=
+ KEYWORDS="amd64 ~arm -x86"
+ UPSTREAM_VER=1
SECURITY_VER=
GENTOO_VER=
diff --git a/app-emulation/xen/xen-4.10.3.ebuild b/app-emulation/xen/xen-4.11.1-r1.ebuild
index 18215b62c1d6..18215b62c1d6 100644
--- a/app-emulation/xen/xen-4.10.3.ebuild
+++ b/app-emulation/xen/xen-4.11.1-r1.ebuild
diff --git a/app-emulation/xen/xen-4.12.0_rc2.ebuild b/app-emulation/xen/xen-4.12.0_rc5.ebuild
index 1b413cfd7a98..0feb6edbf07d 100644
--- a/app-emulation/xen/xen-4.12.0_rc2.ebuild
+++ b/app-emulation/xen/xen-4.12.0_rc5.ebuild
@@ -7,7 +7,7 @@ PYTHON_COMPAT=( python2_7 )
inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
-MY_PV=${PV/.0_/-}
+MY_PV=${PV/_/-}
MY_P=${PN}-${MY_PV}
if [[ $PV == *9999 ]]; then