summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-01-06 23:13:57 +0000
committerV3n3RiX <venerix@redcorelinux.org>2018-01-06 23:13:57 +0000
commita8b0d35ab742f31538d515dea39716e566d533c0 (patch)
tree40c6c87a13f0e5ef1111ed1bdd9191f3bd1c1e59 /app-emulation
parent8fcdcec5fbdd0e3a77391e4f354218014f59f358 (diff)
gentoo resync : 06.01.2018
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/Manifest.gzbin18999 -> 18836 bytes
-rw-r--r--app-emulation/virt-manager/Manifest2
-rw-r--r--app-emulation/virt-manager/virt-manager-1.4.0-r3.ebuild6
-rw-r--r--app-emulation/wine/Manifest27
-rw-r--r--app-emulation/wine/files/builtin_ms_va_list.c9
-rw-r--r--app-emulation/wine/files/pr66838.c36
-rw-r--r--app-emulation/wine/files/pr69140.c37
-rw-r--r--app-emulation/wine/files/wine-1.5.26-winegcc.patch59
-rw-r--r--app-emulation/wine/files/wine-1.6-memset-O3.patch21
-rw-r--r--app-emulation/wine/files/wine-1.7.12-osmesa-check.patch38
-rw-r--r--app-emulation/wine/files/wine-1.9.5-multilib-portage.patch31
-rw-r--r--app-emulation/wine/metadata.xml49
-rw-r--r--app-emulation/wine/wine-2.0.ebuild453
-rw-r--r--app-emulation/wine/wine-2.1.ebuild582
-rw-r--r--app-emulation/wine/wine-2.2.ebuild582
-rw-r--r--app-emulation/wine/wine-2.3.ebuild582
-rw-r--r--app-emulation/wine/wine-9999.ebuild581
17 files changed, 4 insertions, 3091 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index a459343062e9..d2ba83382673 100644
--- a/app-emulation/Manifest.gz
+++ b/app-emulation/Manifest.gz
Binary files differ
diff --git a/app-emulation/virt-manager/Manifest b/app-emulation/virt-manager/Manifest
index 96b310cb637e..60eae76fa20e 100644
--- a/app-emulation/virt-manager/Manifest
+++ b/app-emulation/virt-manager/Manifest
@@ -2,7 +2,7 @@ DIST virt-manager-1.4.0.tar.gz 2667631 BLAKE2B dc245a295f62cbdeccb728935484761cf
DIST virt-manager-1.4.1.tar.gz 2715863 BLAKE2B 489be4033a2781e7e66e27a2158beb39580f4f7395dcf40bc51c71721e77e64ae1c7525c5c57311808962047760820437457b53c46f438a6b45723591f902952 SHA512 ea4cdc16d7adecdb85431fdfbe7305518917b7d66342375b6773462d33d5647c2a4d3f054c08cd44d7c4e7785da92e38b18881a422083e82303b5a3dbd7b4cdd
DIST virt-manager-1.4.2.tar.gz 2770982 BLAKE2B bcc808ffd3b39aea487909a63a1c5d9eb38f465643435b7dee7771fa7a7834c8c59512fd1b44473fb557fb78afc0b4d1aa3244957de0c07f4d03cf580ef2686b SHA512 df154a5dc2724e03f8e0b1646a39c4284fb5f38a4326b6ef42f4e1efc16187164c1b5259608bac366860fe6707e2134e8729228f6cf4d6cd9eca4b0edc01a53e
DIST virt-manager-1.4.3.tar.gz 2765924 BLAKE2B fa888dc78bb8ab27ff5a507829c5ace5d0e82b7840c9d4ec1857dfd2e62f39172abf116ca3f4d99f4a2c4366f06695a52561e6c816969928df79e623fb4ce9bf SHA512 007f125503fc2c774beefc8047ca2c36aa7177af40d9bc78fa3448fd50d4d35abd4a1dbbf761a8cd538fdf6541eba46c2cd019ba3ff0c7e29b1944d873b74274
-EBUILD virt-manager-1.4.0-r3.ebuild 2728 BLAKE2B 4cc95b9d0e581c3c5465ed0d4a12289061bc03e03d10c92119d358089794f5b1902558cadfabfe78010f6557888e8fbee18d9a3962479008dc9a4bd8067ee880 SHA512 cbb670403fca07898c574e3b97019abb83b9272aea7dbf688f629ee7644d81d1450a2e93c184ade027d18ed55089065fa2ed68fda2f36331158a220a38cb4feb
+EBUILD virt-manager-1.4.0-r3.ebuild 2711 BLAKE2B 71da7d4392610379b0fe3fae4919cd381375c57e350ff3acf150be818b347d454beb87fa19532a8fdf01b9a31c43914ef9e0e0e64936667625ef634b2be5c487 SHA512 998cdcbfc46786b8b3dc07fbc820bf7252e1b1b1671b707c2db4ae96b4f613cc05581004d4386fa2fad0789cfc6b0b144fd55ada96040380530956a302047db2
EBUILD virt-manager-1.4.1.ebuild 2427 BLAKE2B 4392a2102a51a5bf89ff53bbfca88bf20d0bd77ac6de3f9fa7576827d9ba714caca791e958ba2147e3c4eb48ba22d7c1fe8a2583853632b937794c1105e23f8d SHA512 356b82caf17405bf74d80809a83f685ca6941fe64cbc0ce6775c9dd79c75c578df9f3a1d11e96566e604a9fa8df2f4a883be81f9a9f3733f7da94412ec5a71c0
EBUILD virt-manager-1.4.2.ebuild 2399 BLAKE2B ed2c3878c9b3ae043459a154a25a3161a09523909c296c632b32d08c5ae8466472654086c2177a7b6c1e212a316463734b4a399256e8636f641787cbbf981780 SHA512 73a108a870ac382b3a72b5ecd9119941137208f257b7606b91bdbdbeacccf107c8fc0b5cd562378828e247b4dc75470584e6b0c534688caabd511c9e142b4f6f
EBUILD virt-manager-1.4.3.ebuild 2399 BLAKE2B ed2c3878c9b3ae043459a154a25a3161a09523909c296c632b32d08c5ae8466472654086c2177a7b6c1e212a316463734b4a399256e8636f641787cbbf981780 SHA512 73a108a870ac382b3a72b5ecd9119941137208f257b7606b91bdbdbeacccf107c8fc0b5cd562378828e247b4dc75470584e6b0c534688caabd511c9e142b4f6f
diff --git a/app-emulation/virt-manager/virt-manager-1.4.0-r3.ebuild b/app-emulation/virt-manager/virt-manager-1.4.0-r3.ebuild
index f8f48ff66309..04113c1f918c 100644
--- a/app-emulation/virt-manager/virt-manager-1.4.0-r3.ebuild
+++ b/app-emulation/virt-manager/virt-manager-1.4.0-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -27,7 +27,7 @@ VM_LINGUAS=( as bg bn_IN bs ca cmn cs da de en_GB es fi fr gu hi hr hu is
LICENSE="GPL-2"
SLOT="0"
-IUSE="gnome-keyring gtk policykit sasl ${VM_LINGUAS[@]/#/linguas_}"
+IUSE="gnome-keyring gtk policykit sasl"
RDEPEND="!app-emulation/virtinst
dev-python/libvirt-python[${PYTHON_USEDEP}]
@@ -60,7 +60,7 @@ src_prepare() {
local lang
for lang in ${VM_LINGUAS[@]}; do
- use linguas_${lang} || rm -v "po/${lang}.po" || die
+ has ${lang} ${LINGUAS-${lang}} || rm -v "po/${lang}.po" || die
done
}
diff --git a/app-emulation/wine/Manifest b/app-emulation/wine/Manifest
deleted file mode 100644
index 879449193c11..000000000000
--- a/app-emulation/wine/Manifest
+++ /dev/null
@@ -1,27 +0,0 @@
-AUX builtin_ms_va_list.c 150 BLAKE2B 56e643e0eb5628a8714bb9c766676e9dc582415cc197bd352afda8721d068f6e1dfe4f37d1f026a3fc61e8f41ab87c5343072e481532109b64a8d44357ed45ff SHA512 a09a156cc5b4023b5aaf2bf2989a8c3702061f691784a8e12a538849f68d873e609e390627e31a8ee469bfcbd13cce9d2f6c13c993d2419e9a129652e708877f
-AUX pr66838.c 771 BLAKE2B e209eb1b5956b60958466778a87b897c1494740f739d68f465caa68758b148b330caaefd540fa0825bb5a741a84af5596d967f91f4fcb68737b1c6a802779b24 SHA512 3cc1ecdea9bd62d1042a425dddaed55ab02be2cddc85fea8f6c733003bd60329dbfceea92d5c60b73b8d7e5f543ff9893ce0f05db66cda3c9039f790577a42c5
-AUX pr69140.c 861 BLAKE2B 5b5577139be4ecac72110ee6c8669a92cecf7db14f203e1cf9ae6c0ea6dfd38db3678fa4252a7fcf6c09c60c9640365ddde1fb3500c930b8dd4653c6ff3649d7 SHA512 83f68c7e0f2ba2e7e77777a620def3728b4c12f5174d499ccfe617999830281c8330ede5a12c6d86482254596a62a718bc2e27abafdc70b3aa1cb3738d469ddf
-AUX wine-1.5.26-winegcc.patch 1808 BLAKE2B 3b97a2a4c87b25de721c51d7fd8d4e043d834686302a93a778202df16a6bdda34678f5be2bdede09e63123b2db144be29de75f3ab563012af0bcbf71864d585f SHA512 fce9daf40a96f4a7502c249a30107c8dfc5d8edd4a171b863d2bf14c3ad46d18e4c29932ab4a6ede7da5d589d777b962d2f577f5360ee4db8019d71362c51d47
-AUX wine-1.6-memset-O3.patch 695 BLAKE2B f173f56441241e30af41e2246e6f8e130af36837a3751048e9b1e0807de79978fe65bc85423dbf02e9d1ec0b20a9388ce364c7707d063f3bca84fc57754af3e0 SHA512 ad7231f8dedf98f9e9b91fcb8bbe72a716d78285127b0c33396de0b1e17a191f91f9a4a377c0e90671bb5f4e57bfb087ef7e80c9537c6c73b3c9bb90b3885968
-AUX wine-1.7.12-osmesa-check.patch 1722 BLAKE2B 43d7f969cd2efbaf029fdac4498cb68f6943015de967178463ae25a3518faa9a5af55034e9c2e9a20a88224d96ba86d4c3c2bd4b659726662dc5c5d71eccf93b SHA512 faca80f9747f3d7bfd05c3410bcccfaf17b3f397e30dd9ec382eccc326de346d195d6a184ec78e44b26d5e5e4b2af749ce58a0e6bad0b15a4fd1f2ea610d3124
-AUX wine-1.9.5-multilib-portage.patch 1087 BLAKE2B e9b2c54218730cb7892892aca4c5631d46f8f0ccba03e2976cef750a961247e8fe85f91c31f7c54c1b41272275bfbf635e459936923f4fb3ef134107b4de9fbf SHA512 dea0adde0866804473ebc3d3cd1da49c7b0dd5d3dd89da0d7bdb5c8fe9376ce62bdf61538e5aa954626863e9ef5799de28931520596e99bada788fb3c3370465
-DIST wine-2.0.tar.bz2 23662707 BLAKE2B 1d485c1359ce8a0395a9f6378c1f8be33ea2836b80390d1eb1095057a0acedd21708daab16e1851a315391b9f9b0a360879b9d98c73bcc8371c5023e9a8037f5 SHA512 b0a57ba8202d9fc396e5bfb7a7718d6bababbed8f3351e7fdc36afa37f35a871e04903757618f73427aeb71a52b2d323977d79e48f8b38d636f23fd404441186
-DIST wine-2.1.tar.xz 18887032 BLAKE2B 12d1298899064a46183c84ed13880275321670aa590c1aeb60fbba95baff736ad81342dfe3b31bf94fb7a6493262cb1b9ab20709025e19dad19cb438bff6c5a8 SHA512 03d678ee6e89c2804813f2827255fcf59e96ca9a45b7d8ac441cfc84f835e5e5689c70a79a41a04c631e1add7807fa4a5758acef3bd7aadfb2e92e68958c6ef6
-DIST wine-2.2.tar.xz 18916364 BLAKE2B 69cc104edffa8f017dba1756a15865956983941fb91973eed233f871010c051ac281902f215b88c7ee2969ffea894f68e466ac9ec608f543452c6e965e4acc7d SHA512 0700868244d397c1442948716321e5ff030c667edce464570f76aa4340199489a422872aa3975bc0a57b8285c9d59fc04e223a4bde094169fc6db460acb626c4
-DIST wine-2.3.tar.xz 18931732 BLAKE2B c4207e755b30e78caa1a870f9867922515e2338a0e8adccbf8250106dcad4b5e7e04e7621f5a02adc3cf51a8fc38050cc0534d353e4a2e11f78812974c8102b3 SHA512 bea78e8468555ff9e08dedf3918da5ea82721549c43984869989bbdafeea00e454820ff9558aa29925c97a165a9b01e5cd1fd397f133833c58824984a6686171
-DIST wine-d3d9-2.1.tar.gz 48385 BLAKE2B f9541edca520251500b63793468f802395e605baa19051355dbeaa90e0837f2c764cfacf6c651fe3e291d07bed825b72e75b8c47785d9d3eaa5312f28bd82048 SHA512 9234d8227412d940a6befcf79433f1d5ab0634d5e829f3771ffeea235af05be29ffc40438818b1976c77d1e2e79da8a67c4dab2b7d2e822b502fb6e4a1a7f8b7
-DIST wine-d3d9-2.2.tar.gz 48387 BLAKE2B 64e62ff5add2ec7d119697d7909b6d9b7be979b3d9c2d86102b103eb43ff6f22b0488ef847b6c6553ec41c396cb6f402ffcf9e2bcfc925ba4566b5183a78900a SHA512 6e9e031b51afc8ec200bbd252ff0d768c29af23907f782409834de593f896afb128f86fe012c95dc18e5f3c7267f170eb343d2a2c53d639933a337f0c1e04fab
-DIST wine-d3d9-2.3.tar.gz 48510 BLAKE2B 1d7e4549e10d3b59cabb4db373e72ef6d9933c0b054dc053986657973da92eb13c02a30564104957952c70db36525d80278bc6a7389035d44bf95b5f8c1bc0f8 SHA512 58449f6b7ed7fd8182e2cce92e1d1195bf64a567c1cc92fd3f46af195e7e4039c3b2a128be9d3572d9067be6c1bb020f417c6d558bb551c60096c107067177b8
-DIST wine-gentoo-2015.03.07.tar.bz2 85419 BLAKE2B 5587ac5e24a81165c23e0e29ee34cdf787799aa1092811cc48bbea074d0fcca5246db4a6b7ffaa4cc0bc27a29abc234c7b3eb4701fb22939bc49e03deafa27ba SHA512 bae1d2d5575d340d01f44008104f0e5ec0c4a4982995dec37d501594cd21d07a2b4ad4465c4273646d5bf6521996b4b82471097864be75342abe3e7d478a56bd
-DIST wine-mono-4.6.4.msi 45592064 BLAKE2B 30099b7f02276e47e350a96af07bf64b43c857b3b3323d0cab85864b753e9810c0d7b5d496e2f53f5b2c3a434eb440a19f9928707c4127303aa0335928e39097 SHA512 1d50df5d4d000998c74fbee79b8ffc691d88ee3b34db9fd7124e0df68d6f84768ece489ac8c3f5f3141c2073c8666b93ae23ca6cd652a6542a821df3d1b66b6d
-DIST wine-staging-2.1.tar.gz 10101781 BLAKE2B 6cbbc4bf2eec6416e7a9a128994dc53fbde6dd62fabdd94df6f675a395c9c7c5d22b2971d254bfb900b3f4cf727c9057c0cd912f1c256bc3b74a295386d420d5 SHA512 c64c48b265f0779c621a643ddbd2d12aaa548e4bff3b2b728280cdb9613214989911ee8ba5e46c7770f5f6430014a5da1c98e95d5008c1174bd14bf9ce5250db
-DIST wine-staging-2.2.tar.gz 10078327 BLAKE2B e8391a1005d8c21be24381f1593b0cf37375bc58d0d5028799433d67e5d82bf73c098196c243e3ea978a3f84c0e3fe826273c9f0c9e5cc68a1b576a89b1c548e SHA512 8ad3f8ba4c6439a9ec4884a55018a67c9e2c2384830074646aac7b70cb9f4f5a20f760247ab42dc3d2f697cdac7ea5322be8ed12c435cb0bc185ac08fdd4dd91
-DIST wine-staging-2.3.tar.gz 10071742 BLAKE2B ec3930023943df9e39b758e96fc1fd25829eff08855d297dc8dacc0a6630c560f127cf90a9f8faea9abb2f07f02cb7d5676bc5dc4d02c0ed7f4970bb5b458a84 SHA512 8e8af1e36cc69c63ec3542f0ec4db18b6d8c16b5c9077eb211297f3a886519da71bcf72934bf8d6d72e44c7c9f765e1d00203d0d75cab8544f69f9b0c10a7133
-DIST wine_gecko-2.47-x86.msi 49266176 BLAKE2B 6b1d4ebf53fac422c2da9ae7f5b6ab9064d2b6cc20d57fe13707395e71305ac1607a440624d3a545fe1e0391bc92bf5b594173549e519eda967bb833b69b2f52 SHA512 e0d06102dcb8ec2d24e8c8c3f5c2ee5cb47c18e203dfb43d85de008d682ff874fb664fef1df909a5a7857de39c7e8ce5175e734a11964ec4cd35f8fbacaea3a4
-DIST wine_gecko-2.47-x86_64.msi 50806272 BLAKE2B 6f91d4661a322eca41042cb7a246d5bff76ab72b4bda67183fc36735c923bd6d76624f21fd3e59f63fd872704edcf0116a6e7ab4fa6f074f5098c8fb5307534c SHA512 7c2496b15a06bc6906bc60afb3ac082e3f9931207fa624e60297020211d66aa9b420a61e95730a0dbdcefbe4b26c811d0c896ecd9c363b5107d08c3fa22fef41
-EBUILD wine-2.0.ebuild 15263 BLAKE2B 92ea8503e45271782e351191495fa340dcc248d1992aef822b9324b9cdcc87dcd5f6046f85fc3c715c7c9e28b94a5a9fd80a373fb129c9a31fc765a3a73b106f SHA512 03e232451064eea03a2f22bcae11a729a100bf2714e44835ae5f4891649eb7badfaaa3a105e129fc0a0c548efc199721b89bbe9cf399b2ec38dafa43c297e35d
-EBUILD wine-2.1.ebuild 19722 BLAKE2B 29960f847aa2793f785bd946282b0d1de7e88ce784cf9398fed1aebdbb4fe91db5b98485260a64f3e256d2320f710c7720ea40f2e074ad6280f0c47a3b8cd74f SHA512 efe7442b5c104acd3159b8453887f709cad1a8d46a97f66188378e54692ac997ec93472069f45768f40e8b0cc97339a46762aee7dc96ca0ff460ab9d75b5b89b
-EBUILD wine-2.2.ebuild 19722 BLAKE2B 29960f847aa2793f785bd946282b0d1de7e88ce784cf9398fed1aebdbb4fe91db5b98485260a64f3e256d2320f710c7720ea40f2e074ad6280f0c47a3b8cd74f SHA512 efe7442b5c104acd3159b8453887f709cad1a8d46a97f66188378e54692ac997ec93472069f45768f40e8b0cc97339a46762aee7dc96ca0ff460ab9d75b5b89b
-EBUILD wine-2.3.ebuild 19722 BLAKE2B 29960f847aa2793f785bd946282b0d1de7e88ce784cf9398fed1aebdbb4fe91db5b98485260a64f3e256d2320f710c7720ea40f2e074ad6280f0c47a3b8cd74f SHA512 efe7442b5c104acd3159b8453887f709cad1a8d46a97f66188378e54692ac997ec93472069f45768f40e8b0cc97339a46762aee7dc96ca0ff460ab9d75b5b89b
-EBUILD wine-9999.ebuild 19666 BLAKE2B 6e887e047aaf8db12118e6a750f3554eedda83511c93e90e0ab6f110240ef6dd2ee78209576cec21db595e9935ad08f23660c499f8a6188c52ee271002ec1cac SHA512 dea79fdd37ca883911b1abdaec49e25f19cebe8d68cb58bc21991f68ab759e4e0c860db3652671fa2e45558dd2a7f71d5f3e1b588f3245abc611be2ab209d9fa
-MISC metadata.xml 3265 BLAKE2B 56accb858231ec5234b8a87ce98081c027ac2aed2ba83950e9a4ce96926f38df1b87565310cbaabd1702c48b79a2d6446226aef293438508473b6ce5f62ba11b SHA512 99732405c2cb2dc9c8d60409e13942d90cadc70a90edce1a583bf36c816c166acaf00ebf4910e4022bd10afbc4ac1fded3f6fcd004ef6350f66b65b7694f7153
diff --git a/app-emulation/wine/files/builtin_ms_va_list.c b/app-emulation/wine/files/builtin_ms_va_list.c
deleted file mode 100644
index f36fc2609a02..000000000000
--- a/app-emulation/wine/files/builtin_ms_va_list.c
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Taken from Wine's configure script. LGPL 2.1+ */
-
-#include <stdarg.h>
-
-int main(void)
-{
- void func(__builtin_ms_va_list *args);
- return 0;
-}
diff --git a/app-emulation/wine/files/pr66838.c b/app-emulation/wine/files/pr66838.c
deleted file mode 100644
index cd616859427a..000000000000
--- a/app-emulation/wine/files/pr66838.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* From gcc svn, /branches/gcc-5-branch/gcc/testsuite/gcc.target/i386/pr66838.c */
-/* Copyrighted and distributed under the same terms as gcc */
-
-void abort (void);
-
-char global;
-
-__attribute__((sysv_abi, noinline, noclone))
-void sysv_abi_func(char const *desc, void *local)
-{
- register int esi asm ("esi");
- register int edi asm ("edi");
-
- if (local != &global)
- abort ();
-
- /* Clobber some of the extra SYSV ABI registers. */
- asm volatile ("movl\t%2, %0\n\tmovl\t%2, %1"
- : "=r" (esi), "=r" (edi)
- : "i" (0xdeadbeef));
-}
-
-__attribute__((ms_abi, noinline, noclone))
-void ms_abi_func ()
-{
- sysv_abi_func ("1st call", &global);
- sysv_abi_func ("2nd call", &global);
- sysv_abi_func ("3rd call", &global);
-}
-
-int
-main(void)
-{
- ms_abi_func();
- return 0;
-}
diff --git a/app-emulation/wine/files/pr69140.c b/app-emulation/wine/files/pr69140.c
deleted file mode 100644
index 7c9e001f3018..000000000000
--- a/app-emulation/wine/files/pr69140.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* { dg-do compile { target lp64 } } */
-/* { dg-options "-O2 -mincoming-stack-boundary=3" } */
-
-typedef struct {
- unsigned int buf[4];
- unsigned char in[64];
-} MD4_CTX;
-
-static void
-MD4Transform (unsigned int buf[4], const unsigned int in[16])
-{
- unsigned int a, b, c, d;
- (b) += ((((c)) & ((d))) | ((~(c)) & ((a)))) + (in[7]);
- (a) += ((((b)) & ((c))) | ((~(b)) & ((d)))) + (in[8]);
- (d) += ((((a)) & ((b))) | ((~(a)) & ((c)))) + (in[9]);
- buf[3] += d;
-}
-
-void __attribute__((ms_abi))
-MD4Update (MD4_CTX *ctx, const unsigned char *buf)
-{
- MD4Transform( ctx->buf, (unsigned int *)ctx->in);
- MD4Transform( ctx->buf, (unsigned int *)ctx->in);
-}
-
-int
-main(void)
-{
- MD4_CTX ctx_test =
- {
- { 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476 },
- { 0, 0 }
- };
- unsigned char buf[64];
-
- MD4Update(&ctx_test, (const unsigned char *) &buf);
-}
diff --git a/app-emulation/wine/files/wine-1.5.26-winegcc.patch b/app-emulation/wine/files/wine-1.5.26-winegcc.patch
deleted file mode 100644
index 2045e343401b..000000000000
--- a/app-emulation/wine/files/wine-1.5.26-winegcc.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-http://bugs.gentoo.org/260726
-
-diff --git a/tools/winebuild/main.c b/tools/winebuild/main.c
-index 16b4165..5c77267 100644
---- a/tools/winebuild/main.c
-+++ b/tools/winebuild/main.c
-@@ -48,10 +48,13 @@ int link_ext_symbols = 0;
- int force_pointer_size = 0;
- int unwind_tables = 0;
-
-+#undef FORCE_POINTER_SIZE
- #ifdef __i386__
- enum target_cpu target_cpu = CPU_x86;
-+#define FORCE_POINTER_SIZE
- #elif defined(__x86_64__)
- enum target_cpu target_cpu = CPU_x86_64;
-+#define FORCE_POINTER_SIZE
- #elif defined(__powerpc__)
- enum target_cpu target_cpu = CPU_POWERPC;
- #elif defined(__arm__)
-@@ -611,6 +614,10 @@ int main(int argc, char **argv)
- signal( SIGTERM, exit_on_signal );
- signal( SIGINT, exit_on_signal );
-
-+#ifdef FORCE_POINTER_SIZE
-+ force_pointer_size = sizeof(size_t);
-+#endif
-+
- output_file = stdout;
- argv = parse_options( argc, argv, spec );
-
-diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c
-index 06aa200..c44d2e3 100644
---- a/tools/winegcc/winegcc.c
-+++ b/tools/winegcc/winegcc.c
-@@ -213,10 +213,13 @@ struct options
- strarray* files;
- };
-
-+#undef FORCE_POINTER_SIZE
- #ifdef __i386__
- static const enum target_cpu build_cpu = CPU_x86;
-+#define FORCE_POINTER_SIZE
- #elif defined(__x86_64__)
- static const enum target_cpu build_cpu = CPU_x86_64;
-+#define FORCE_POINTER_SIZE
- #elif defined(__powerpc__)
- static const enum target_cpu build_cpu = CPU_POWERPC;
- #elif defined(__arm__)
-@@ -1258,6 +1261,9 @@ int main(int argc, char **argv)
- opts.linker_args = strarray_alloc();
- opts.compiler_args = strarray_alloc();
- opts.winebuild_args = strarray_alloc();
-+#ifdef FORCE_POINTER_SIZE
-+ opts.force_pointer_size = sizeof(size_t);
-+#endif
-
- /* determine the processor type */
- if (strendswith(argv[0], "winecpp")) opts.processor = proc_cpp;
diff --git a/app-emulation/wine/files/wine-1.6-memset-O3.patch b/app-emulation/wine/files/wine-1.6-memset-O3.patch
deleted file mode 100644
index 75372f869141..000000000000
--- a/app-emulation/wine/files/wine-1.6-memset-O3.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Avoid "undefined reference to `memset'" error when building with
-USE=custom-cflags and -O3 in CFLAGS with gcc-4.8.
-
-See:
-
-http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56888
-http://bugs.winehq.org/show_bug.cgi?id=33521
-https://bugs.gentoo.org/show_bug.cgi?id=480508
-
-diff --git a/configure.ac b/configure.ac
-index d8033cf..fe7cc7d 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1767,6 +1767,7 @@ then
-
- dnl Check for some compiler flags
- WINE_TRY_CFLAGS([-fno-builtin],[AC_SUBST(BUILTINFLAG,"-fno-builtin")])
-+ WINE_TRY_CFLAGS([-fno-tree-loop-distribute-patterns])
- WINE_TRY_CFLAGS([-fno-strict-aliasing])
- dnl clang needs to be told to fail on unknown options
- saved_CFLAGS=$CFLAGS
diff --git a/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch b/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch
deleted file mode 100644
index 7cafcd4e6dc8..000000000000
--- a/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 6932b9a17c4f64c13f7060895d46334bc7022430 Mon Sep 17 00:00:00 2001
-From: Alexandre Rostovtsev <tetromino@gentoo.org>
-Date: Tue, 7 Aug 2012 01:29:01 -0400
-Subject: [PATCH] Do not check for libGL symbols when checking libOSMesa
-
-If mesa had been built with shared glapi, glAccum is not available in
-libOSMesa without explicitly linking to libGL. In addition, in
-mesa-8.0.x and earlier, libOSMesa needs to be explicitly linked to
-libglapi if mesa was built with shared glapi, see
-https://bugs.gentoo.org/show_bug.cgi?id=399813
-And in mesa-8.1.x, libOSMesa in addition needs libdl, libpthread, and
-libstdc++, see https://bugs.gentoo.org/show_bug.cgi?id=431832
----
- configure.ac | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index de807d2..a2e8684 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1233,7 +1233,13 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c
-
- if test "x$with_osmesa" != "xno"
- then
-- WINE_CHECK_SONAME(OSMesa,glAccum,,,[$X_LIBS -lm $X_EXTRA_LIBS])
-+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[$X_LIBS -lm $X_EXTRA_LIBS])
-+ if test "x$ac_cv_lib_soname_OSMesa" = "x"; then
-+ osmesa_save_CC=$CC
-+ CC=$CXX
-+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[-lglapi -lpthread -ldl $X_LIBS -lm $X_EXTRA_LIBS])
-+ CC=$osmesa_save_CC
-+ fi
- WINE_NOTICE_WITH(osmesa,[test "x$ac_cv_lib_soname_OSMesa" = "x"],
- [libOSMesa ${notice_platform}development files not found (or too old), OpenGL rendering in bitmaps won't be supported.])
- fi
---
-1.8.5.3
-
diff --git a/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch b/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch
deleted file mode 100644
index c19d0d8a0b04..000000000000
--- a/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=395615
-
-Explicitly add the required -m32/m64 to *FLAGS; this overrides any
-arch-specific -m* flags that may have been appended by multilib-portage.
-
-Even though -m32/m64 is now added to *FLAGS, -m32/m64 still has to be
-explicitly added to CC and CXX due to wine's build system. For example,
-winegcc saves the build-time value of CC and uses it at runtime.
-
---- a/configure.ac 2016-03-05 20:53:50.574628728 -0500
-+++ b/configure.ac 2016-03-05 20:57:54.945617833 -0500
-@@ -141,6 +141,9 @@
- then
- CC="$CC -m32"
- CXX="$CXX -m32"
-+ CFLAGS="$CFLAGS -m32"
-+ LDFLAGS="$LDFLAGS -m32"
-+ CXXFLAGS="$CXXFLAGS -m32"
- AC_MSG_CHECKING([whether $CC works])
- AC_LINK_IFELSE([AC_LANG_PROGRAM()],AC_MSG_RESULT([yes]),
- [AC_MSG_RESULT([no])
-@@ -160,6 +163,9 @@
- fi
- CC="$CC -m64"
- CXX="$CXX -m64"
-+ CFLAGS="$CFLAGS -m64"
-+ LDFLAGS="$LDFLAGS -m64"
-+ CXXFLAGS="$CXXFLAGS -m64"
- host_cpu="x86_64"
- notice_platform="64-bit "
- AC_SUBST(TARGETFLAGS,"-m64")
diff --git a/app-emulation/wine/metadata.xml b/app-emulation/wine/metadata.xml
deleted file mode 100644
index 309f99b26840..000000000000
--- a/app-emulation/wine/metadata.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?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>
- </maintainer>
- <maintainer type="person">
- <email>commendsarnex@gmail.com</email>
- <name>Nick Sarnie</name>
- <description>Only CC on bugs that involve USE="d3d9"</description>
- </maintainer>
- <longdescription>
-Wine is an Open Source implementation of the Windows API on top of X and Unix.
-
-Think of Wine as a compatibility layer for running Windows programs. Wine does not require Microsoft Windows, as it is a completely free alternative implementation of the Windows API consisting of 100% non-Microsoft code, however Wine can optionally use native Windows DLLs if they are available. Wine provides both a development toolkit for porting Windows source code to Unix as well as a program loader, allowing many unmodified Windows programs to run on x86-based Unixes, including Linux, FreeBSD, and Solaris.
- </longdescription>
- <use>
- <flag name="capi">Enable ISDN support via CAPI</flag>
- <flag name="custom-cflags">Bypass strip-flags; use at your own peril</flag>
- <flag name="d3d9">Apply highly experimental patches for Gallium Nine support.
- This patch may break some applications.</flag>
- <flag name="dos">Pull in <pkg>games-emulation/dosbox</pkg> to run DOS applications</flag>
- <flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
- <flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;</flag>
- <flag name="mono">Add support for .NET using Wine's Mono add-on</flag>
- <flag name="netapi">Use libnetapi from <pkg>net-fs/samba</pkg> to support Windows networks in netapi32.dll</flag>
- <flag name="opencl">Enable OpenCL support</flag>
- <flag name="osmesa">Add support for OpenGL in bitmaps using libOSMesa</flag>
- <flag name="pcap">Support packet capture software (e.g. wireshark)</flag>
- <flag name="perl">Install helpers written in perl (winedump/winemaker)</flag>
- <flag name="pipelight">Apply Wine-Staging patches for Pipelight/Silverlight support</flag>
- <flag name="prelink">Run prelink on DLLs during build;
- For versions before wine-1.7.55 or hardened, do not disable if you do not know what this means as it can break things at runtime</flag>
- <flag name="realtime">Pull in <pkg>sys-auth/rtkit</pkg> for low-latency pulseaudio support</flag>
- <flag name="run-exes">Use Wine to open and run .EXE and .MSI files</flag>
- <flag name="s3tc">Pull in <pkg>media-libs/libtxc_dxtn</pkg> for DXTn texture compression, needed for many games</flag>
- <flag name="samba">Add support for NTLM auth. see
- http://wiki.winehq.org/NtlmAuthSetupGuide and
- http://wiki.winehq.org/NtlmSigningAndSealing</flag>
- <flag name="staging">Apply Wine-Staging patches for advanced feature support that haven't made it into upstream Wine yet</flag>
- <flag name="themes">Support GTK+:3 window theming through Wine-Staging</flag>
- <flag name="udev">Use <pkg>virtual/libudev</pkg> to provide plug and play support</flag>
- </use>
- <upstream>
- <remote-id type="github">wine-compholio/wine-staging</remote-id>
- <remote-id type="sourceforge">wine</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/app-emulation/wine/wine-2.0.ebuild b/app-emulation/wine/wine-2.0.ebuild
deleted file mode 100644
index 73721746d2dd..000000000000
--- a/app-emulation/wine/wine-2.0.ebuild
+++ /dev/null
@@ -1,453 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
-PLOCALE_BACKUP="en"
-
-inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
- EGIT_BRANCH="master"
- inherit git-r3
- SRC_URI=""
- #KEYWORDS=""
-else
- MAJOR_V=$(get_version_component_range 1-2)
- SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
- KEYWORDS="-* amd64 x86 ~x86-fbsd"
-fi
-
-VANILLA_GV="2.47"
-VANILLA_MV="4.6.4"
-WINE_GENTOO="wine-gentoo-2015.03.07"
-DESCRIPTION="Free implementation of Windows(tm) on Unix"
-HOMEPAGE="https://www.winehq.org/"
-SRC_URI="${SRC_URI}
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
- https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg 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 selinux +ssl test +threads +truetype udev +udisks v4l +X +xcomposite xinerama +xml"
-REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
- X? ( truetype )
- elibc_glibc? ( threads )
- osmesa? ( opengl )
- test? ( abi_x86_32 )" # osmesa-opengl #286560 # X-truetype #551124
-
-# FIXME: the test suite is unsuitable for us; many tests require net access
-# or fail due to Xvfb's opengl limitations.
-RESTRICT="test"
-
-COMMON_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/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}] )
- gstreamer? (
- media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
- media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
- )
- jpeg? ( virtual/jpeg: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[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}] )
- 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}] )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- xml? (
- dev-libs/libxml2[${MULTILIB_USEDEP}]
- dev-libs/libxslt[${MULTILIB_USEDEP}]
- )
- abi_x86_32? (
- !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-baselibs-20140508-r14
- !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-db-20140508-r3
- !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-medialibs-20140508-r6
- !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-opengl-20140508-r1
- !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-sdl-20140508-r1
- !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-soundlibs-20140508
- !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-xlibs-20140508
- )"
-
-RDEPEND="${COMMON_DEPEND}
- dos? ( >=games-emulation/dosbox-0.74_p20160629 )
- 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-proto/inputproto
- x11-proto/xextproto
- x11-proto/xf86vidmodeproto
- )
- prelink? ( sys-devel/prelink )
- xinerama? ( x11-proto/xineramaproto )"
-
-# 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"
-
-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 "${FILESDIR}"/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 "${FILESDIR}"/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 "${FILESDIR}"/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
-}
-
-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
- GV=${VANILLA_GV}
- MV=${VANILLA_MV}
-}
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
- fi
-
- default
-
- l10n_find_plocales_changes "${S}/po" "" ".po"
-}
-
-src_prepare() {
- local md5="$(md5sum server/protocol.def)"
- local PATCHES=(
- "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
- "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
- "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
- "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
- )
-
- default
- 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
-
- # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
- cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
-
- l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
-}
-
-src_configure() {
- wine_compiler_check || die
-
- export LDCONFIG=/bin/true
- use custom-cflags || strip-flags
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local myconf=(
- --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 gstreamer)
- --without-hal
- $(use_with jpeg)
- $(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_enable test tests)
- $(use_with truetype freetype)
- $(use_with udev)
- $(use_with v4l)
- $(use_with X x)
- $(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 ${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 )
- local l
- 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
-
- emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
- if use gecko ; then
- insinto /usr/share/wine/gecko
- use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
- use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
- fi
- if use mono ; then
- insinto /usr/share/wine/mono
- doins "${DISTDIR}"/wine-mono-${MV}.msi
- fi
- if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
- rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
- fi
-
- # Remove wineconsole if neither backend is installed #551124
- if ! use X && ! use ncurses; then
- rm "${D}"/usr/bin/wineconsole* || die
- rm "${D}"/usr/share/man/man1/wineconsole* || die
- rm_wineconsole() {
- rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
- }
- multilib_foreach_abi rm_wineconsole
- fi
-
- use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
- use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
-
- if use abi_x86_64 && ! use abi_x86_32; then
- dosym wine64 /usr/bin/wine # 404331
- dosym wine64-preloader /usr/bin/wine-preloader
- fi
-
- # respect LINGUAS when installing man pages, #469418
- for l in de fr pl; do
- has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
- done
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- fdo-mime_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_postrm() {
- gnome2_icon_cache_update
- fdo-mime_desktop_database_update
-}
diff --git a/app-emulation/wine/wine-2.1.ebuild b/app-emulation/wine/wine-2.1.ebuild
deleted file mode 100644
index d1c5a92109e9..000000000000
--- a/app-emulation/wine/wine-2.1.ebuild
+++ /dev/null
@@ -1,582 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
-PLOCALE_BACKUP="en"
-
-inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
- EGIT_BRANCH="master"
- inherit git-r3
- SRC_URI=""
- #KEYWORDS=""
-else
- MAJOR_V=$(get_version_component_range 1)
- SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
- KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
-fi
-
-VANILLA_GV="2.47"
-VANILLA_MV="4.6.4"
-STAGING_GV="2.47"
-STAGING_MV="4.6.4"
-[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
-STAGING_P="wine-staging-${PV}"
-STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
-D3D9_P="wine-d3d9-${PV}"
-D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
-WINE_GENTOO="wine-gentoo-2015.03.07"
-DESCRIPTION="Free implementation of Windows(tm) on Unix"
-HOMEPAGE="https://www.winehq.org/"
-SRC_URI="${SRC_URI}
- !staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
- )
- staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
- )
- https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
-
-if [[ ${PV} == "9999" ]] ; then
- STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
- D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
-else
- SRC_URI="${SRC_URI}
- staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
- d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
-fi
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi +X +xcomposite xinerama +xml"
-REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
- X? ( truetype )
- elibc_glibc? ( threads )
- osmesa? ( opengl )
- pipelight? ( staging )
- s3tc? ( staging )
- test? ( abi_x86_32 )
- themes? ( staging )
- vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
-
-# FIXME: the test suite is unsuitable for us; many tests require net access
-# or fail due to Xvfb's opengl limitations.
-RESTRICT="test"
-
-COMMON_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-libs/libXi[${MULTILIB_USEDEP}]
- x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
- )
- alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
- capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
- cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
- d3d9? (
- media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libxcb[${MULTILIB_USEDEP}]
- )
- fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
- gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
- gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
- gstreamer? (
- media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
- media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
- )
- jpeg? ( virtual/jpeg: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[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}] )
- 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}] )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- xml? (
- dev-libs/libxml2[${MULTILIB_USEDEP}]
- dev-libs/libxslt[${MULTILIB_USEDEP}]
- )
- abi_x86_32? (
- !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-baselibs-20140508-r14
- !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-db-20140508-r3
- !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-medialibs-20140508-r6
- !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-opengl-20140508-r1
- !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-sdl-20140508-r1
- !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-soundlibs-20140508
- !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-xlibs-20140508
- )"
-
-RDEPEND="${COMMON_DEPEND}
- dos? ( >=games-emulation/dosbox-0.74_p20160629 )
- perl? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- pulseaudio? (
- realtime? ( sys-auth/rtkit )
- )
- s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
- 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-proto/inputproto
- x11-proto/xextproto
- x11-proto/xf86vidmodeproto
- )
- prelink? ( sys-devel/prelink )
- staging? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- xinerama? ( x11-proto/xineramaproto )"
-
-# 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"
-
-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 "${FILESDIR}"/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 "${FILESDIR}"/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 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
- if ! eend $?; then
- eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
- eerror
- eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
- eerror
- return 1
- fi
- fi
-}
-
-wine_build_environment_check() {
- [[ ${MERGE_TYPE} = "binary" ]] && return 0
-
- if use abi_x86_64; then
- if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
- eerror "You need gcc-4.4+ to compile 64-bit wine"
- die
- elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
- eerror "You need clang-3.8+ to compile 64-bit wine"
- die
- fi
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
- ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
- ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
- ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
- if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
- ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
- ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
- ewarn "See package.env in man 5 portage for more information on how to do this."
- ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
- fi
- fi
-
- if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
- eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
- eerror "See https://bugs.gentoo.org/487864 for more details."
- eerror
- return 1
- fi
-}
-
-wine_env_vcs_vars() {
- local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
- local pn_live_val="${pn_live_var}"
- eval pn_live_val='$'${pn_live_val}
- if [[ ! -z ${pn_live_val} ]]; then
- if use staging || use d3d9; then
- eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
- eerror "cannot be used to set the commit. Instead, you may use the"
- eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
- eerror
- return 1
- fi
- fi
- if [[ ! -z ${EGIT_COMMIT} ]]; then
- eerror "Commits must now be specified using the environmental variables"
- eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
- eerror
- return 1
- fi
-}
-
-pkg_pretend() {
- wine_build_environment_check || die
-
- # Verify OSS support
- if use oss && ! use kernel_FreeBSD; then
- if ! has_version ">=media-sound/oss-4"; then
- eerror "You cannot build wine with USE=oss without having support from a"
- eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
- eerror
- die
- fi
- fi
-}
-
-pkg_setup() {
- wine_build_environment_check || die
- wine_env_vcs_vars || die
- if ! use staging; then
- GV=${VANILLA_GV}
- MV=${VANILLA_MV}
- else
- GV=${STAGING_GV}
- MV=${STAGING_MV}
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
- if use staging; then
- local CURRENT_WINE_COMMIT=${EGIT_VERSION}
-
- git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
- git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
-
- local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
-
- if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
- einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
- einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
- einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
- fi
- fi
- if use d3d9; then
- git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
- git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
- fi
- fi
-
- default
-
- l10n_find_plocales_changes "${S}/po" "" ".po"
-}
-
-src_prepare() {
- local md5="$(md5sum server/protocol.def)"
- local PATCHES=(
- "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
- "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
- "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
- "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
- )
- 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=""
- STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
- 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"
-
- # To differentiate unofficial staging releases
- if [[ ! -z ${SUFFIX} ]]; then
- sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
- fi
- fi
- if use d3d9; then
- if use staging; then
- PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
- else
- PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
- fi
- PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
- fi
-
- default
- 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
-
- # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
- cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
-
- l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
-}
-
-src_configure() {
- wine_compiler_check || die
-
- export LDCONFIG=/bin/true
- use custom-cflags || strip-flags
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local myconf=(
- --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 gstreamer)
- --without-hal
- $(use_with jpeg)
- $(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_enable test tests)
- $(use_with truetype freetype)
- $(use_with udev)
- $(use_with v4l)
- $(use_with X x)
- $(use_with xcomposite)
- $(use_with xinerama)
- $(use_with xml)
- $(use_with xml xslt)
- )
-
- use staging && myconf+=(
- --with-xattr
- $(use_with themes gtk3)
- $(use_with vaapi va)
- )
- use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
-
- local PKG_CONFIG AR RANLIB
- # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
- # set AR and RANLIB to make QA scripts happy; #483342
- tc-export PKG_CONFIG AR RANLIB
-
- if use amd64; then
- if [[ ${ABI} == amd64 ]]; then
- myconf+=( --enable-win64 )
- else
- myconf+=( --disable-win64 )
- fi
-
- # Note: using --with-wine64 results in problems with multilib.eclass
- # CC/LD hackery. We're using separate tools instead.
- fi
-
- ECONF_SOURCE=${S} \
- econf "${myconf[@]}"
- emake depend
-}
-
-multilib_src_test() {
- # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
- if [[ ${ABI} == x86 ]]; then
- if [[ $(id -u) == 0 ]]; then
- ewarn "Skipping tests since they cannot be run under the root user."
- ewarn "To run the test ${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 )
- local l
- 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
-
- emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
- if use gecko ; then
- insinto /usr/share/wine/gecko
- use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
- use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
- fi
- if use mono ; then
- insinto /usr/share/wine/mono
- doins "${DISTDIR}"/wine-mono-${MV}.msi
- fi
- if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
- rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
- fi
-
- # Remove wineconsole if neither backend is installed #551124
- if ! use X && ! use ncurses; then
- rm "${D}"/usr/bin/wineconsole* || die
- rm "${D}"/usr/share/man/man1/wineconsole* || die
- rm_wineconsole() {
- rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
- }
- multilib_foreach_abi rm_wineconsole
- fi
-
- use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
- use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
-
- if use abi_x86_64 && ! use abi_x86_32; then
- dosym wine64 /usr/bin/wine # 404331
- dosym wine64-preloader /usr/bin/wine-preloader
- fi
-
- # respect LINGUAS when installing man pages, #469418
- for l in de fr pl; do
- has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
- done
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- fdo-mime_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_postrm() {
- gnome2_icon_cache_update
- fdo-mime_desktop_database_update
-}
diff --git a/app-emulation/wine/wine-2.2.ebuild b/app-emulation/wine/wine-2.2.ebuild
deleted file mode 100644
index d1c5a92109e9..000000000000
--- a/app-emulation/wine/wine-2.2.ebuild
+++ /dev/null
@@ -1,582 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
-PLOCALE_BACKUP="en"
-
-inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
- EGIT_BRANCH="master"
- inherit git-r3
- SRC_URI=""
- #KEYWORDS=""
-else
- MAJOR_V=$(get_version_component_range 1)
- SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
- KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
-fi
-
-VANILLA_GV="2.47"
-VANILLA_MV="4.6.4"
-STAGING_GV="2.47"
-STAGING_MV="4.6.4"
-[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
-STAGING_P="wine-staging-${PV}"
-STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
-D3D9_P="wine-d3d9-${PV}"
-D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
-WINE_GENTOO="wine-gentoo-2015.03.07"
-DESCRIPTION="Free implementation of Windows(tm) on Unix"
-HOMEPAGE="https://www.winehq.org/"
-SRC_URI="${SRC_URI}
- !staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
- )
- staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
- )
- https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
-
-if [[ ${PV} == "9999" ]] ; then
- STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
- D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
-else
- SRC_URI="${SRC_URI}
- staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
- d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
-fi
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi +X +xcomposite xinerama +xml"
-REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
- X? ( truetype )
- elibc_glibc? ( threads )
- osmesa? ( opengl )
- pipelight? ( staging )
- s3tc? ( staging )
- test? ( abi_x86_32 )
- themes? ( staging )
- vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
-
-# FIXME: the test suite is unsuitable for us; many tests require net access
-# or fail due to Xvfb's opengl limitations.
-RESTRICT="test"
-
-COMMON_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-libs/libXi[${MULTILIB_USEDEP}]
- x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
- )
- alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
- capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
- cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
- d3d9? (
- media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libxcb[${MULTILIB_USEDEP}]
- )
- fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
- gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
- gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
- gstreamer? (
- media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
- media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
- )
- jpeg? ( virtual/jpeg: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[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}] )
- 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}] )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- xml? (
- dev-libs/libxml2[${MULTILIB_USEDEP}]
- dev-libs/libxslt[${MULTILIB_USEDEP}]
- )
- abi_x86_32? (
- !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-baselibs-20140508-r14
- !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-db-20140508-r3
- !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-medialibs-20140508-r6
- !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-opengl-20140508-r1
- !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-sdl-20140508-r1
- !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-soundlibs-20140508
- !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-xlibs-20140508
- )"
-
-RDEPEND="${COMMON_DEPEND}
- dos? ( >=games-emulation/dosbox-0.74_p20160629 )
- perl? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- pulseaudio? (
- realtime? ( sys-auth/rtkit )
- )
- s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
- 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-proto/inputproto
- x11-proto/xextproto
- x11-proto/xf86vidmodeproto
- )
- prelink? ( sys-devel/prelink )
- staging? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- xinerama? ( x11-proto/xineramaproto )"
-
-# 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"
-
-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 "${FILESDIR}"/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 "${FILESDIR}"/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 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
- if ! eend $?; then
- eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
- eerror
- eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
- eerror
- return 1
- fi
- fi
-}
-
-wine_build_environment_check() {
- [[ ${MERGE_TYPE} = "binary" ]] && return 0
-
- if use abi_x86_64; then
- if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
- eerror "You need gcc-4.4+ to compile 64-bit wine"
- die
- elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
- eerror "You need clang-3.8+ to compile 64-bit wine"
- die
- fi
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
- ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
- ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
- ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
- if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
- ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
- ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
- ewarn "See package.env in man 5 portage for more information on how to do this."
- ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
- fi
- fi
-
- if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
- eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
- eerror "See https://bugs.gentoo.org/487864 for more details."
- eerror
- return 1
- fi
-}
-
-wine_env_vcs_vars() {
- local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
- local pn_live_val="${pn_live_var}"
- eval pn_live_val='$'${pn_live_val}
- if [[ ! -z ${pn_live_val} ]]; then
- if use staging || use d3d9; then
- eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
- eerror "cannot be used to set the commit. Instead, you may use the"
- eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
- eerror
- return 1
- fi
- fi
- if [[ ! -z ${EGIT_COMMIT} ]]; then
- eerror "Commits must now be specified using the environmental variables"
- eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
- eerror
- return 1
- fi
-}
-
-pkg_pretend() {
- wine_build_environment_check || die
-
- # Verify OSS support
- if use oss && ! use kernel_FreeBSD; then
- if ! has_version ">=media-sound/oss-4"; then
- eerror "You cannot build wine with USE=oss without having support from a"
- eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
- eerror
- die
- fi
- fi
-}
-
-pkg_setup() {
- wine_build_environment_check || die
- wine_env_vcs_vars || die
- if ! use staging; then
- GV=${VANILLA_GV}
- MV=${VANILLA_MV}
- else
- GV=${STAGING_GV}
- MV=${STAGING_MV}
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
- if use staging; then
- local CURRENT_WINE_COMMIT=${EGIT_VERSION}
-
- git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
- git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
-
- local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
-
- if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
- einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
- einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
- einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
- fi
- fi
- if use d3d9; then
- git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
- git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
- fi
- fi
-
- default
-
- l10n_find_plocales_changes "${S}/po" "" ".po"
-}
-
-src_prepare() {
- local md5="$(md5sum server/protocol.def)"
- local PATCHES=(
- "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
- "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
- "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
- "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
- )
- 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=""
- STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
- 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"
-
- # To differentiate unofficial staging releases
- if [[ ! -z ${SUFFIX} ]]; then
- sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
- fi
- fi
- if use d3d9; then
- if use staging; then
- PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
- else
- PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
- fi
- PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
- fi
-
- default
- 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
-
- # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
- cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
-
- l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
-}
-
-src_configure() {
- wine_compiler_check || die
-
- export LDCONFIG=/bin/true
- use custom-cflags || strip-flags
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local myconf=(
- --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 gstreamer)
- --without-hal
- $(use_with jpeg)
- $(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_enable test tests)
- $(use_with truetype freetype)
- $(use_with udev)
- $(use_with v4l)
- $(use_with X x)
- $(use_with xcomposite)
- $(use_with xinerama)
- $(use_with xml)
- $(use_with xml xslt)
- )
-
- use staging && myconf+=(
- --with-xattr
- $(use_with themes gtk3)
- $(use_with vaapi va)
- )
- use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
-
- local PKG_CONFIG AR RANLIB
- # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
- # set AR and RANLIB to make QA scripts happy; #483342
- tc-export PKG_CONFIG AR RANLIB
-
- if use amd64; then
- if [[ ${ABI} == amd64 ]]; then
- myconf+=( --enable-win64 )
- else
- myconf+=( --disable-win64 )
- fi
-
- # Note: using --with-wine64 results in problems with multilib.eclass
- # CC/LD hackery. We're using separate tools instead.
- fi
-
- ECONF_SOURCE=${S} \
- econf "${myconf[@]}"
- emake depend
-}
-
-multilib_src_test() {
- # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
- if [[ ${ABI} == x86 ]]; then
- if [[ $(id -u) == 0 ]]; then
- ewarn "Skipping tests since they cannot be run under the root user."
- ewarn "To run the test ${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 )
- local l
- 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
-
- emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
- if use gecko ; then
- insinto /usr/share/wine/gecko
- use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
- use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
- fi
- if use mono ; then
- insinto /usr/share/wine/mono
- doins "${DISTDIR}"/wine-mono-${MV}.msi
- fi
- if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
- rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
- fi
-
- # Remove wineconsole if neither backend is installed #551124
- if ! use X && ! use ncurses; then
- rm "${D}"/usr/bin/wineconsole* || die
- rm "${D}"/usr/share/man/man1/wineconsole* || die
- rm_wineconsole() {
- rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
- }
- multilib_foreach_abi rm_wineconsole
- fi
-
- use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
- use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
-
- if use abi_x86_64 && ! use abi_x86_32; then
- dosym wine64 /usr/bin/wine # 404331
- dosym wine64-preloader /usr/bin/wine-preloader
- fi
-
- # respect LINGUAS when installing man pages, #469418
- for l in de fr pl; do
- has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
- done
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- fdo-mime_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_postrm() {
- gnome2_icon_cache_update
- fdo-mime_desktop_database_update
-}
diff --git a/app-emulation/wine/wine-2.3.ebuild b/app-emulation/wine/wine-2.3.ebuild
deleted file mode 100644
index d1c5a92109e9..000000000000
--- a/app-emulation/wine/wine-2.3.ebuild
+++ /dev/null
@@ -1,582 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
-PLOCALE_BACKUP="en"
-
-inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
- EGIT_BRANCH="master"
- inherit git-r3
- SRC_URI=""
- #KEYWORDS=""
-else
- MAJOR_V=$(get_version_component_range 1)
- SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
- KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
-fi
-
-VANILLA_GV="2.47"
-VANILLA_MV="4.6.4"
-STAGING_GV="2.47"
-STAGING_MV="4.6.4"
-[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
-STAGING_P="wine-staging-${PV}"
-STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
-D3D9_P="wine-d3d9-${PV}"
-D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
-WINE_GENTOO="wine-gentoo-2015.03.07"
-DESCRIPTION="Free implementation of Windows(tm) on Unix"
-HOMEPAGE="https://www.winehq.org/"
-SRC_URI="${SRC_URI}
- !staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
- )
- staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
- )
- https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
-
-if [[ ${PV} == "9999" ]] ; then
- STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
- D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
-else
- SRC_URI="${SRC_URI}
- staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
- d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
-fi
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi +X +xcomposite xinerama +xml"
-REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
- X? ( truetype )
- elibc_glibc? ( threads )
- osmesa? ( opengl )
- pipelight? ( staging )
- s3tc? ( staging )
- test? ( abi_x86_32 )
- themes? ( staging )
- vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
-
-# FIXME: the test suite is unsuitable for us; many tests require net access
-# or fail due to Xvfb's opengl limitations.
-RESTRICT="test"
-
-COMMON_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-libs/libXi[${MULTILIB_USEDEP}]
- x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
- )
- alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
- capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
- cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
- d3d9? (
- media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libxcb[${MULTILIB_USEDEP}]
- )
- fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
- gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
- gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
- gstreamer? (
- media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
- media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
- )
- jpeg? ( virtual/jpeg: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[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}] )
- 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}] )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- xml? (
- dev-libs/libxml2[${MULTILIB_USEDEP}]
- dev-libs/libxslt[${MULTILIB_USEDEP}]
- )
- abi_x86_32? (
- !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-baselibs-20140508-r14
- !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-db-20140508-r3
- !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-medialibs-20140508-r6
- !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-opengl-20140508-r1
- !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-sdl-20140508-r1
- !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-soundlibs-20140508
- !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-xlibs-20140508
- )"
-
-RDEPEND="${COMMON_DEPEND}
- dos? ( >=games-emulation/dosbox-0.74_p20160629 )
- perl? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- pulseaudio? (
- realtime? ( sys-auth/rtkit )
- )
- s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
- 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-proto/inputproto
- x11-proto/xextproto
- x11-proto/xf86vidmodeproto
- )
- prelink? ( sys-devel/prelink )
- staging? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- xinerama? ( x11-proto/xineramaproto )"
-
-# 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"
-
-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 "${FILESDIR}"/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 "${FILESDIR}"/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 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
- if ! eend $?; then
- eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
- eerror
- eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
- eerror
- return 1
- fi
- fi
-}
-
-wine_build_environment_check() {
- [[ ${MERGE_TYPE} = "binary" ]] && return 0
-
- if use abi_x86_64; then
- if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
- eerror "You need gcc-4.4+ to compile 64-bit wine"
- die
- elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
- eerror "You need clang-3.8+ to compile 64-bit wine"
- die
- fi
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
- ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
- ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
- ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
- if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
- ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
- ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
- ewarn "See package.env in man 5 portage for more information on how to do this."
- ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
- fi
- fi
-
- if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
- eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
- eerror "See https://bugs.gentoo.org/487864 for more details."
- eerror
- return 1
- fi
-}
-
-wine_env_vcs_vars() {
- local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
- local pn_live_val="${pn_live_var}"
- eval pn_live_val='$'${pn_live_val}
- if [[ ! -z ${pn_live_val} ]]; then
- if use staging || use d3d9; then
- eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
- eerror "cannot be used to set the commit. Instead, you may use the"
- eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
- eerror
- return 1
- fi
- fi
- if [[ ! -z ${EGIT_COMMIT} ]]; then
- eerror "Commits must now be specified using the environmental variables"
- eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
- eerror
- return 1
- fi
-}
-
-pkg_pretend() {
- wine_build_environment_check || die
-
- # Verify OSS support
- if use oss && ! use kernel_FreeBSD; then
- if ! has_version ">=media-sound/oss-4"; then
- eerror "You cannot build wine with USE=oss without having support from a"
- eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
- eerror
- die
- fi
- fi
-}
-
-pkg_setup() {
- wine_build_environment_check || die
- wine_env_vcs_vars || die
- if ! use staging; then
- GV=${VANILLA_GV}
- MV=${VANILLA_MV}
- else
- GV=${STAGING_GV}
- MV=${STAGING_MV}
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
- if use staging; then
- local CURRENT_WINE_COMMIT=${EGIT_VERSION}
-
- git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
- git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
-
- local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
-
- if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
- einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
- einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
- einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
- fi
- fi
- if use d3d9; then
- git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
- git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
- fi
- fi
-
- default
-
- l10n_find_plocales_changes "${S}/po" "" ".po"
-}
-
-src_prepare() {
- local md5="$(md5sum server/protocol.def)"
- local PATCHES=(
- "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
- "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
- "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
- "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
- )
- 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=""
- STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
- 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"
-
- # To differentiate unofficial staging releases
- if [[ ! -z ${SUFFIX} ]]; then
- sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
- fi
- fi
- if use d3d9; then
- if use staging; then
- PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
- else
- PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
- fi
- PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
- fi
-
- default
- 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
-
- # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
- cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
-
- l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
-}
-
-src_configure() {
- wine_compiler_check || die
-
- export LDCONFIG=/bin/true
- use custom-cflags || strip-flags
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local myconf=(
- --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 gstreamer)
- --without-hal
- $(use_with jpeg)
- $(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_enable test tests)
- $(use_with truetype freetype)
- $(use_with udev)
- $(use_with v4l)
- $(use_with X x)
- $(use_with xcomposite)
- $(use_with xinerama)
- $(use_with xml)
- $(use_with xml xslt)
- )
-
- use staging && myconf+=(
- --with-xattr
- $(use_with themes gtk3)
- $(use_with vaapi va)
- )
- use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
-
- local PKG_CONFIG AR RANLIB
- # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
- # set AR and RANLIB to make QA scripts happy; #483342
- tc-export PKG_CONFIG AR RANLIB
-
- if use amd64; then
- if [[ ${ABI} == amd64 ]]; then
- myconf+=( --enable-win64 )
- else
- myconf+=( --disable-win64 )
- fi
-
- # Note: using --with-wine64 results in problems with multilib.eclass
- # CC/LD hackery. We're using separate tools instead.
- fi
-
- ECONF_SOURCE=${S} \
- econf "${myconf[@]}"
- emake depend
-}
-
-multilib_src_test() {
- # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
- if [[ ${ABI} == x86 ]]; then
- if [[ $(id -u) == 0 ]]; then
- ewarn "Skipping tests since they cannot be run under the root user."
- ewarn "To run the test ${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 )
- local l
- 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
-
- emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
- if use gecko ; then
- insinto /usr/share/wine/gecko
- use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
- use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
- fi
- if use mono ; then
- insinto /usr/share/wine/mono
- doins "${DISTDIR}"/wine-mono-${MV}.msi
- fi
- if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
- rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
- fi
-
- # Remove wineconsole if neither backend is installed #551124
- if ! use X && ! use ncurses; then
- rm "${D}"/usr/bin/wineconsole* || die
- rm "${D}"/usr/share/man/man1/wineconsole* || die
- rm_wineconsole() {
- rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
- }
- multilib_foreach_abi rm_wineconsole
- fi
-
- use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
- use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
-
- if use abi_x86_64 && ! use abi_x86_32; then
- dosym wine64 /usr/bin/wine # 404331
- dosym wine64-preloader /usr/bin/wine-preloader
- fi
-
- # respect LINGUAS when installing man pages, #469418
- for l in de fr pl; do
- has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
- done
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- fdo-mime_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_postrm() {
- gnome2_icon_cache_update
- fdo-mime_desktop_database_update
-}
diff --git a/app-emulation/wine/wine-9999.ebuild b/app-emulation/wine/wine-9999.ebuild
deleted file mode 100644
index 42e616b03a93..000000000000
--- a/app-emulation/wine/wine-9999.ebuild
+++ /dev/null
@@ -1,581 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
-PLOCALE_BACKUP="en"
-
-inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
- EGIT_BRANCH="master"
- inherit git-r3
- SRC_URI=""
- #KEYWORDS=""
-else
- MAJOR_V=$(get_version_component_range 1)
- SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
- KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
-fi
-
-VANILLA_GV="2.47"
-VANILLA_MV="4.6.4"
-STAGING_GV="2.47"
-STAGING_MV="4.6.4"
-[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
-STAGING_P="wine-staging-${PV}"
-STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
-D3D9_P="wine-d3d9-${PV}"
-D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
-WINE_GENTOO="wine-gentoo-2015.03.07"
-DESCRIPTION="Free implementation of Windows(tm) on Unix"
-HOMEPAGE="https://www.winehq.org/"
-SRC_URI="${SRC_URI}
- !staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
- )
- staging? (
- gecko? (
- abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
- abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
- )
- mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
- )
- https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
-
-if [[ ${PV} == "9999" ]] ; then
- STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
- D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
-else
- SRC_URI="${SRC_URI}
- staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
- d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
-fi
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi +X +xcomposite xinerama +xml"
-REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
- X? ( truetype )
- elibc_glibc? ( threads )
- osmesa? ( opengl )
- pipelight? ( staging )
- s3tc? ( staging )
- test? ( abi_x86_32 )
- themes? ( staging )
- vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
-
-# FIXME: the test suite is unsuitable for us; many tests require net access
-# or fail due to Xvfb's opengl limitations.
-RESTRICT="test"
-
-COMMON_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-libs/libXi[${MULTILIB_USEDEP}]
- x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
- )
- alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
- capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
- cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
- d3d9? (
- media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- x11-libs/libxcb[${MULTILIB_USEDEP}]
- )
- fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
- gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
- gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
- gstreamer? (
- media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
- media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
- )
- jpeg? ( virtual/jpeg: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[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}] )
- 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}] )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- xml? (
- dev-libs/libxml2[${MULTILIB_USEDEP}]
- dev-libs/libxslt[${MULTILIB_USEDEP}]
- )
- abi_x86_32? (
- !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-baselibs-20140508-r14
- !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-db-20140508-r3
- !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-medialibs-20140508-r6
- !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-opengl-20140508-r1
- !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-sdl-20140508-r1
- !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-soundlibs-20140508
- !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
- !<app-emulation/emul-linux-x86-xlibs-20140508
- )"
-
-RDEPEND="${COMMON_DEPEND}
- dos? ( >=games-emulation/dosbox-0.74_p20160629 )
- perl? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- pulseaudio? (
- realtime? ( sys-auth/rtkit )
- )
- s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
- 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-proto/inputproto
- x11-proto/xextproto
- x11-proto/xf86vidmodeproto
- )
- prelink? ( sys-devel/prelink )
- staging? (
- dev-lang/perl
- dev-perl/XML-Simple
- )
- xinerama? ( x11-proto/xineramaproto )"
-
-# 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"
-
-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 "${FILESDIR}"/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 "${FILESDIR}"/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 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
- if ! eend $?; then
- eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
- eerror
- eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
- eerror
- return 1
- fi
- fi
-}
-
-wine_build_environment_check() {
- [[ ${MERGE_TYPE} = "binary" ]] && return 0
-
- if use abi_x86_64; then
- if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
- eerror "You need gcc-4.4+ to compile 64-bit wine"
- die
- elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
- eerror "You need clang-3.8+ to compile 64-bit wine"
- die
- fi
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
- ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
- ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
- ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
- fi
- if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
- if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
- ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
- ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
- ewarn "See package.env in man 5 portage for more information on how to do this."
- ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
- fi
- fi
-
- if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
- eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
- eerror "See https://bugs.gentoo.org/487864 for more details."
- eerror
- return 1
- fi
-}
-
-wine_env_vcs_vars() {
- local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
- local pn_live_val="${pn_live_var}"
- eval pn_live_val='$'${pn_live_val}
- if [[ ! -z ${pn_live_val} ]]; then
- if use staging || use d3d9; then
- eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
- eerror "cannot be used to set the commit. Instead, you may use the"
- eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
- eerror
- return 1
- fi
- fi
- if [[ ! -z ${EGIT_COMMIT} ]]; then
- eerror "Commits must now be specified using the environmental variables"
- eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
- eerror
- return 1
- fi
-}
-
-pkg_pretend() {
- wine_build_environment_check || die
-
- # Verify OSS support
- if use oss && ! use kernel_FreeBSD; then
- if ! has_version ">=media-sound/oss-4"; then
- eerror "You cannot build wine with USE=oss without having support from a"
- eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
- eerror
- die
- fi
- fi
-}
-
-pkg_setup() {
- wine_build_environment_check || die
- wine_env_vcs_vars || die
- if ! use staging; then
- GV=${VANILLA_GV}
- MV=${VANILLA_MV}
- else
- GV=${STAGING_GV}
- MV=${STAGING_MV}
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
- if use staging; then
- local CURRENT_WINE_COMMIT=${EGIT_VERSION}
-
- git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
- git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
-
- local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
-
- if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
- einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
- einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
- einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
- fi
- fi
- if use d3d9; then
- git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
- git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
- fi
- fi
-
- default
-
- l10n_find_plocales_changes "${S}/po" "" ".po"
-}
-
-src_prepare() {
- local md5="$(md5sum server/protocol.def)"
- local PATCHES=(
- "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
- "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
- "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
- )
- 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=""
- STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
- 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"
-
- # To differentiate unofficial staging releases
- if [[ ! -z ${SUFFIX} ]]; then
- sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
- fi
- fi
- if use d3d9; then
- if use staging; then
- PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
- else
- PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
- fi
- PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
- fi
-
- default
- 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
-
- # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
- cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
-
- l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
-}
-
-src_configure() {
- wine_compiler_check || die
-
- export LDCONFIG=/bin/true
- use custom-cflags || strip-flags
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local myconf=(
- --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 gstreamer)
- --without-hal
- $(use_with jpeg)
- $(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_enable test tests)
- $(use_with truetype freetype)
- $(use_with udev)
- $(use_with v4l)
- $(use_with X x)
- $(use_with xcomposite)
- $(use_with xinerama)
- $(use_with xml)
- $(use_with xml xslt)
- )
-
- use staging && myconf+=(
- --with-xattr
- $(use_with themes gtk3)
- $(use_with vaapi va)
- )
- use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
-
- local PKG_CONFIG AR RANLIB
- # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
- # set AR and RANLIB to make QA scripts happy; #483342
- tc-export PKG_CONFIG AR RANLIB
-
- if use amd64; then
- if [[ ${ABI} == amd64 ]]; then
- myconf+=( --enable-win64 )
- else
- myconf+=( --disable-win64 )
- fi
-
- # Note: using --with-wine64 results in problems with multilib.eclass
- # CC/LD hackery. We're using separate tools instead.
- fi
-
- ECONF_SOURCE=${S} \
- econf "${myconf[@]}"
- emake depend
-}
-
-multilib_src_test() {
- # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
- if [[ ${ABI} == x86 ]]; then
- if [[ $(id -u) == 0 ]]; then
- ewarn "Skipping tests since they cannot be run under the root user."
- ewarn "To run the test ${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 )
- local l
- 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
-
- emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
- if use gecko ; then
- insinto /usr/share/wine/gecko
- use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
- use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
- fi
- if use mono ; then
- insinto /usr/share/wine/mono
- doins "${DISTDIR}"/wine-mono-${MV}.msi
- fi
- if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
- rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
- fi
-
- # Remove wineconsole if neither backend is installed #551124
- if ! use X && ! use ncurses; then
- rm "${D}"/usr/bin/wineconsole* || die
- rm "${D}"/usr/share/man/man1/wineconsole* || die
- rm_wineconsole() {
- rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
- }
- multilib_foreach_abi rm_wineconsole
- fi
-
- use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
- use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
-
- if use abi_x86_64 && ! use abi_x86_32; then
- dosym wine64 /usr/bin/wine # 404331
- dosym wine64-preloader /usr/bin/wine-preloader
- fi
-
- # respect LINGUAS when installing man pages, #469418
- for l in de fr pl; do
- has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
- done
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- fdo-mime_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_postrm() {
- gnome2_icon_cache_update
- fdo-mime_desktop_database_update
-}