Gentoo Archives: gentoo-commits

From: Mikle Kolyada <zlogene@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/wine/, app-emulation/wine/files/
Date: Sat, 06 Jan 2018 10:45:41
Message-Id: 1515235500.c467bbb5c5fd80a669c3d52e649f98030b57bddf.zlogene@gentoo
1 commit: c467bbb5c5fd80a669c3d52e649f98030b57bddf
2 Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 6 10:45:00 2018 +0000
4 Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 6 10:45:00 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c467bbb5
7
8 app-emulation/wine: remove last rited package
9
10 app-emulation/wine/Manifest | 14 -
11 app-emulation/wine/files/builtin_ms_va_list.c | 9 -
12 app-emulation/wine/files/pr66838.c | 36 --
13 app-emulation/wine/files/pr69140.c | 37 --
14 app-emulation/wine/files/wine-1.5.26-winegcc.patch | 59 ---
15 app-emulation/wine/files/wine-1.6-memset-O3.patch | 21 -
16 .../wine/files/wine-1.7.12-osmesa-check.patch | 38 --
17 .../wine/files/wine-1.9.5-multilib-portage.patch | 31 --
18 app-emulation/wine/metadata.xml | 49 --
19 app-emulation/wine/wine-2.0.ebuild | 453 ----------------
20 app-emulation/wine/wine-2.1.ebuild | 582 ---------------------
21 app-emulation/wine/wine-2.2.ebuild | 582 ---------------------
22 app-emulation/wine/wine-2.3.ebuild | 582 ---------------------
23 app-emulation/wine/wine-9999.ebuild | 581 --------------------
24 14 files changed, 3074 deletions(-)
25
26 diff --git a/app-emulation/wine/Manifest b/app-emulation/wine/Manifest
27 deleted file mode 100644
28 index b5d9c36e93a..00000000000
29 --- a/app-emulation/wine/Manifest
30 +++ /dev/null
31 @@ -1,14 +0,0 @@
32 -DIST wine-2.0.tar.bz2 23662707 BLAKE2B 1d485c1359ce8a0395a9f6378c1f8be33ea2836b80390d1eb1095057a0acedd21708daab16e1851a315391b9f9b0a360879b9d98c73bcc8371c5023e9a8037f5 SHA512 b0a57ba8202d9fc396e5bfb7a7718d6bababbed8f3351e7fdc36afa37f35a871e04903757618f73427aeb71a52b2d323977d79e48f8b38d636f23fd404441186
33 -DIST wine-2.1.tar.xz 18887032 BLAKE2B 12d1298899064a46183c84ed13880275321670aa590c1aeb60fbba95baff736ad81342dfe3b31bf94fb7a6493262cb1b9ab20709025e19dad19cb438bff6c5a8 SHA512 03d678ee6e89c2804813f2827255fcf59e96ca9a45b7d8ac441cfc84f835e5e5689c70a79a41a04c631e1add7807fa4a5758acef3bd7aadfb2e92e68958c6ef6
34 -DIST wine-2.2.tar.xz 18916364 BLAKE2B 69cc104edffa8f017dba1756a15865956983941fb91973eed233f871010c051ac281902f215b88c7ee2969ffea894f68e466ac9ec608f543452c6e965e4acc7d SHA512 0700868244d397c1442948716321e5ff030c667edce464570f76aa4340199489a422872aa3975bc0a57b8285c9d59fc04e223a4bde094169fc6db460acb626c4
35 -DIST wine-2.3.tar.xz 18931732 BLAKE2B c4207e755b30e78caa1a870f9867922515e2338a0e8adccbf8250106dcad4b5e7e04e7621f5a02adc3cf51a8fc38050cc0534d353e4a2e11f78812974c8102b3 SHA512 bea78e8468555ff9e08dedf3918da5ea82721549c43984869989bbdafeea00e454820ff9558aa29925c97a165a9b01e5cd1fd397f133833c58824984a6686171
36 -DIST wine-d3d9-2.1.tar.gz 48385 BLAKE2B f9541edca520251500b63793468f802395e605baa19051355dbeaa90e0837f2c764cfacf6c651fe3e291d07bed825b72e75b8c47785d9d3eaa5312f28bd82048 SHA512 9234d8227412d940a6befcf79433f1d5ab0634d5e829f3771ffeea235af05be29ffc40438818b1976c77d1e2e79da8a67c4dab2b7d2e822b502fb6e4a1a7f8b7
37 -DIST wine-d3d9-2.2.tar.gz 48387 BLAKE2B 64e62ff5add2ec7d119697d7909b6d9b7be979b3d9c2d86102b103eb43ff6f22b0488ef847b6c6553ec41c396cb6f402ffcf9e2bcfc925ba4566b5183a78900a SHA512 6e9e031b51afc8ec200bbd252ff0d768c29af23907f782409834de593f896afb128f86fe012c95dc18e5f3c7267f170eb343d2a2c53d639933a337f0c1e04fab
38 -DIST wine-d3d9-2.3.tar.gz 48510 BLAKE2B 1d7e4549e10d3b59cabb4db373e72ef6d9933c0b054dc053986657973da92eb13c02a30564104957952c70db36525d80278bc6a7389035d44bf95b5f8c1bc0f8 SHA512 58449f6b7ed7fd8182e2cce92e1d1195bf64a567c1cc92fd3f46af195e7e4039c3b2a128be9d3572d9067be6c1bb020f417c6d558bb551c60096c107067177b8
39 -DIST wine-gentoo-2015.03.07.tar.bz2 85419 BLAKE2B 5587ac5e24a81165c23e0e29ee34cdf787799aa1092811cc48bbea074d0fcca5246db4a6b7ffaa4cc0bc27a29abc234c7b3eb4701fb22939bc49e03deafa27ba SHA512 bae1d2d5575d340d01f44008104f0e5ec0c4a4982995dec37d501594cd21d07a2b4ad4465c4273646d5bf6521996b4b82471097864be75342abe3e7d478a56bd
40 -DIST wine-mono-4.6.4.msi 45592064 BLAKE2B 30099b7f02276e47e350a96af07bf64b43c857b3b3323d0cab85864b753e9810c0d7b5d496e2f53f5b2c3a434eb440a19f9928707c4127303aa0335928e39097 SHA512 1d50df5d4d000998c74fbee79b8ffc691d88ee3b34db9fd7124e0df68d6f84768ece489ac8c3f5f3141c2073c8666b93ae23ca6cd652a6542a821df3d1b66b6d
41 -DIST wine-staging-2.1.tar.gz 10101781 BLAKE2B 6cbbc4bf2eec6416e7a9a128994dc53fbde6dd62fabdd94df6f675a395c9c7c5d22b2971d254bfb900b3f4cf727c9057c0cd912f1c256bc3b74a295386d420d5 SHA512 c64c48b265f0779c621a643ddbd2d12aaa548e4bff3b2b728280cdb9613214989911ee8ba5e46c7770f5f6430014a5da1c98e95d5008c1174bd14bf9ce5250db
42 -DIST wine-staging-2.2.tar.gz 10078327 BLAKE2B e8391a1005d8c21be24381f1593b0cf37375bc58d0d5028799433d67e5d82bf73c098196c243e3ea978a3f84c0e3fe826273c9f0c9e5cc68a1b576a89b1c548e SHA512 8ad3f8ba4c6439a9ec4884a55018a67c9e2c2384830074646aac7b70cb9f4f5a20f760247ab42dc3d2f697cdac7ea5322be8ed12c435cb0bc185ac08fdd4dd91
43 -DIST wine-staging-2.3.tar.gz 10071742 BLAKE2B ec3930023943df9e39b758e96fc1fd25829eff08855d297dc8dacc0a6630c560f127cf90a9f8faea9abb2f07f02cb7d5676bc5dc4d02c0ed7f4970bb5b458a84 SHA512 8e8af1e36cc69c63ec3542f0ec4db18b6d8c16b5c9077eb211297f3a886519da71bcf72934bf8d6d72e44c7c9f765e1d00203d0d75cab8544f69f9b0c10a7133
44 -DIST wine_gecko-2.47-x86.msi 49266176 BLAKE2B 6b1d4ebf53fac422c2da9ae7f5b6ab9064d2b6cc20d57fe13707395e71305ac1607a440624d3a545fe1e0391bc92bf5b594173549e519eda967bb833b69b2f52 SHA512 e0d06102dcb8ec2d24e8c8c3f5c2ee5cb47c18e203dfb43d85de008d682ff874fb664fef1df909a5a7857de39c7e8ce5175e734a11964ec4cd35f8fbacaea3a4
45 -DIST wine_gecko-2.47-x86_64.msi 50806272 BLAKE2B 6f91d4661a322eca41042cb7a246d5bff76ab72b4bda67183fc36735c923bd6d76624f21fd3e59f63fd872704edcf0116a6e7ab4fa6f074f5098c8fb5307534c SHA512 7c2496b15a06bc6906bc60afb3ac082e3f9931207fa624e60297020211d66aa9b420a61e95730a0dbdcefbe4b26c811d0c896ecd9c363b5107d08c3fa22fef41
46
47 diff --git a/app-emulation/wine/files/builtin_ms_va_list.c b/app-emulation/wine/files/builtin_ms_va_list.c
48 deleted file mode 100644
49 index f36fc2609a0..00000000000
50 --- a/app-emulation/wine/files/builtin_ms_va_list.c
51 +++ /dev/null
52 @@ -1,9 +0,0 @@
53 -/* Taken from Wine's configure script. LGPL 2.1+ */
54 -
55 -#include <stdarg.h>
56 -
57 -int main(void)
58 -{
59 - void func(__builtin_ms_va_list *args);
60 - return 0;
61 -}
62
63 diff --git a/app-emulation/wine/files/pr66838.c b/app-emulation/wine/files/pr66838.c
64 deleted file mode 100644
65 index cd616859427..00000000000
66 --- a/app-emulation/wine/files/pr66838.c
67 +++ /dev/null
68 @@ -1,36 +0,0 @@
69 -/* From gcc svn, /branches/gcc-5-branch/gcc/testsuite/gcc.target/i386/pr66838.c */
70 -/* Copyrighted and distributed under the same terms as gcc */
71 -
72 -void abort (void);
73 -
74 -char global;
75 -
76 -__attribute__((sysv_abi, noinline, noclone))
77 -void sysv_abi_func(char const *desc, void *local)
78 -{
79 - register int esi asm ("esi");
80 - register int edi asm ("edi");
81 -
82 - if (local != &global)
83 - abort ();
84 -
85 - /* Clobber some of the extra SYSV ABI registers. */
86 - asm volatile ("movl\t%2, %0\n\tmovl\t%2, %1"
87 - : "=r" (esi), "=r" (edi)
88 - : "i" (0xdeadbeef));
89 -}
90 -
91 -__attribute__((ms_abi, noinline, noclone))
92 -void ms_abi_func ()
93 -{
94 - sysv_abi_func ("1st call", &global);
95 - sysv_abi_func ("2nd call", &global);
96 - sysv_abi_func ("3rd call", &global);
97 -}
98 -
99 -int
100 -main(void)
101 -{
102 - ms_abi_func();
103 - return 0;
104 -}
105
106 diff --git a/app-emulation/wine/files/pr69140.c b/app-emulation/wine/files/pr69140.c
107 deleted file mode 100644
108 index 7c9e001f301..00000000000
109 --- a/app-emulation/wine/files/pr69140.c
110 +++ /dev/null
111 @@ -1,37 +0,0 @@
112 -/* { dg-do compile { target lp64 } } */
113 -/* { dg-options "-O2 -mincoming-stack-boundary=3" } */
114 -
115 -typedef struct {
116 - unsigned int buf[4];
117 - unsigned char in[64];
118 -} MD4_CTX;
119 -
120 -static void
121 -MD4Transform (unsigned int buf[4], const unsigned int in[16])
122 -{
123 - unsigned int a, b, c, d;
124 - (b) += ((((c)) & ((d))) | ((~(c)) & ((a)))) + (in[7]);
125 - (a) += ((((b)) & ((c))) | ((~(b)) & ((d)))) + (in[8]);
126 - (d) += ((((a)) & ((b))) | ((~(a)) & ((c)))) + (in[9]);
127 - buf[3] += d;
128 -}
129 -
130 -void __attribute__((ms_abi))
131 -MD4Update (MD4_CTX *ctx, const unsigned char *buf)
132 -{
133 - MD4Transform( ctx->buf, (unsigned int *)ctx->in);
134 - MD4Transform( ctx->buf, (unsigned int *)ctx->in);
135 -}
136 -
137 -int
138 -main(void)
139 -{
140 - MD4_CTX ctx_test =
141 - {
142 - { 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476 },
143 - { 0, 0 }
144 - };
145 - unsigned char buf[64];
146 -
147 - MD4Update(&ctx_test, (const unsigned char *) &buf);
148 -}
149
150 diff --git a/app-emulation/wine/files/wine-1.5.26-winegcc.patch b/app-emulation/wine/files/wine-1.5.26-winegcc.patch
151 deleted file mode 100644
152 index 2045e343401..00000000000
153 --- a/app-emulation/wine/files/wine-1.5.26-winegcc.patch
154 +++ /dev/null
155 @@ -1,59 +0,0 @@
156 -http://bugs.gentoo.org/260726
157 -
158 -diff --git a/tools/winebuild/main.c b/tools/winebuild/main.c
159 -index 16b4165..5c77267 100644
160 ---- a/tools/winebuild/main.c
161 -+++ b/tools/winebuild/main.c
162 -@@ -48,10 +48,13 @@ int link_ext_symbols = 0;
163 - int force_pointer_size = 0;
164 - int unwind_tables = 0;
165 -
166 -+#undef FORCE_POINTER_SIZE
167 - #ifdef __i386__
168 - enum target_cpu target_cpu = CPU_x86;
169 -+#define FORCE_POINTER_SIZE
170 - #elif defined(__x86_64__)
171 - enum target_cpu target_cpu = CPU_x86_64;
172 -+#define FORCE_POINTER_SIZE
173 - #elif defined(__powerpc__)
174 - enum target_cpu target_cpu = CPU_POWERPC;
175 - #elif defined(__arm__)
176 -@@ -611,6 +614,10 @@ int main(int argc, char **argv)
177 - signal( SIGTERM, exit_on_signal );
178 - signal( SIGINT, exit_on_signal );
179 -
180 -+#ifdef FORCE_POINTER_SIZE
181 -+ force_pointer_size = sizeof(size_t);
182 -+#endif
183 -+
184 - output_file = stdout;
185 - argv = parse_options( argc, argv, spec );
186 -
187 -diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c
188 -index 06aa200..c44d2e3 100644
189 ---- a/tools/winegcc/winegcc.c
190 -+++ b/tools/winegcc/winegcc.c
191 -@@ -213,10 +213,13 @@ struct options
192 - strarray* files;
193 - };
194 -
195 -+#undef FORCE_POINTER_SIZE
196 - #ifdef __i386__
197 - static const enum target_cpu build_cpu = CPU_x86;
198 -+#define FORCE_POINTER_SIZE
199 - #elif defined(__x86_64__)
200 - static const enum target_cpu build_cpu = CPU_x86_64;
201 -+#define FORCE_POINTER_SIZE
202 - #elif defined(__powerpc__)
203 - static const enum target_cpu build_cpu = CPU_POWERPC;
204 - #elif defined(__arm__)
205 -@@ -1258,6 +1261,9 @@ int main(int argc, char **argv)
206 - opts.linker_args = strarray_alloc();
207 - opts.compiler_args = strarray_alloc();
208 - opts.winebuild_args = strarray_alloc();
209 -+#ifdef FORCE_POINTER_SIZE
210 -+ opts.force_pointer_size = sizeof(size_t);
211 -+#endif
212 -
213 - /* determine the processor type */
214 - if (strendswith(argv[0], "winecpp")) opts.processor = proc_cpp;
215
216 diff --git a/app-emulation/wine/files/wine-1.6-memset-O3.patch b/app-emulation/wine/files/wine-1.6-memset-O3.patch
217 deleted file mode 100644
218 index 75372f86914..00000000000
219 --- a/app-emulation/wine/files/wine-1.6-memset-O3.patch
220 +++ /dev/null
221 @@ -1,21 +0,0 @@
222 -Avoid "undefined reference to `memset'" error when building with
223 -USE=custom-cflags and -O3 in CFLAGS with gcc-4.8.
224 -
225 -See:
226 -
227 -http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56888
228 -http://bugs.winehq.org/show_bug.cgi?id=33521
229 -https://bugs.gentoo.org/show_bug.cgi?id=480508
230 -
231 -diff --git a/configure.ac b/configure.ac
232 -index d8033cf..fe7cc7d 100644
233 ---- a/configure.ac
234 -+++ b/configure.ac
235 -@@ -1767,6 +1767,7 @@ then
236 -
237 - dnl Check for some compiler flags
238 - WINE_TRY_CFLAGS([-fno-builtin],[AC_SUBST(BUILTINFLAG,"-fno-builtin")])
239 -+ WINE_TRY_CFLAGS([-fno-tree-loop-distribute-patterns])
240 - WINE_TRY_CFLAGS([-fno-strict-aliasing])
241 - dnl clang needs to be told to fail on unknown options
242 - saved_CFLAGS=$CFLAGS
243
244 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
245 deleted file mode 100644
246 index 7cafcd4e6dc..00000000000
247 --- a/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch
248 +++ /dev/null
249 @@ -1,38 +0,0 @@
250 -From 6932b9a17c4f64c13f7060895d46334bc7022430 Mon Sep 17 00:00:00 2001
251 -From: Alexandre Rostovtsev <tetromino@g.o>
252 -Date: Tue, 7 Aug 2012 01:29:01 -0400
253 -Subject: [PATCH] Do not check for libGL symbols when checking libOSMesa
254 -
255 -If mesa had been built with shared glapi, glAccum is not available in
256 -libOSMesa without explicitly linking to libGL. In addition, in
257 -mesa-8.0.x and earlier, libOSMesa needs to be explicitly linked to
258 -libglapi if mesa was built with shared glapi, see
259 -https://bugs.gentoo.org/show_bug.cgi?id=399813
260 -And in mesa-8.1.x, libOSMesa in addition needs libdl, libpthread, and
261 -libstdc++, see https://bugs.gentoo.org/show_bug.cgi?id=431832
262 ----
263 - configure.ac | 8 +++++++-
264 - 1 file changed, 7 insertions(+), 1 deletion(-)
265 -
266 -diff --git a/configure.ac b/configure.ac
267 -index de807d2..a2e8684 100644
268 ---- a/configure.ac
269 -+++ b/configure.ac
270 -@@ -1233,7 +1233,13 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c
271 -
272 - if test "x$with_osmesa" != "xno"
273 - then
274 -- WINE_CHECK_SONAME(OSMesa,glAccum,,,[$X_LIBS -lm $X_EXTRA_LIBS])
275 -+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[$X_LIBS -lm $X_EXTRA_LIBS])
276 -+ if test "x$ac_cv_lib_soname_OSMesa" = "x"; then
277 -+ osmesa_save_CC=$CC
278 -+ CC=$CXX
279 -+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[-lglapi -lpthread -ldl $X_LIBS -lm $X_EXTRA_LIBS])
280 -+ CC=$osmesa_save_CC
281 -+ fi
282 - WINE_NOTICE_WITH(osmesa,[test "x$ac_cv_lib_soname_OSMesa" = "x"],
283 - [libOSMesa ${notice_platform}development files not found (or too old), OpenGL rendering in bitmaps won't be supported.])
284 - fi
285 ---
286 -1.8.5.3
287 -
288
289 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
290 deleted file mode 100644
291 index c19d0d8a0b0..00000000000
292 --- a/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch
293 +++ /dev/null
294 @@ -1,31 +0,0 @@
295 -https://bugs.gentoo.org/show_bug.cgi?id=395615
296 -
297 -Explicitly add the required -m32/m64 to *FLAGS; this overrides any
298 -arch-specific -m* flags that may have been appended by multilib-portage.
299 -
300 -Even though -m32/m64 is now added to *FLAGS, -m32/m64 still has to be
301 -explicitly added to CC and CXX due to wine's build system. For example,
302 -winegcc saves the build-time value of CC and uses it at runtime.
303 -
304 ---- a/configure.ac 2016-03-05 20:53:50.574628728 -0500
305 -+++ b/configure.ac 2016-03-05 20:57:54.945617833 -0500
306 -@@ -141,6 +141,9 @@
307 - then
308 - CC="$CC -m32"
309 - CXX="$CXX -m32"
310 -+ CFLAGS="$CFLAGS -m32"
311 -+ LDFLAGS="$LDFLAGS -m32"
312 -+ CXXFLAGS="$CXXFLAGS -m32"
313 - AC_MSG_CHECKING([whether $CC works])
314 - AC_LINK_IFELSE([AC_LANG_PROGRAM()],AC_MSG_RESULT([yes]),
315 - [AC_MSG_RESULT([no])
316 -@@ -160,6 +163,9 @@
317 - fi
318 - CC="$CC -m64"
319 - CXX="$CXX -m64"
320 -+ CFLAGS="$CFLAGS -m64"
321 -+ LDFLAGS="$LDFLAGS -m64"
322 -+ CXXFLAGS="$CXXFLAGS -m64"
323 - host_cpu="x86_64"
324 - notice_platform="64-bit "
325 - AC_SUBST(TARGETFLAGS,"-m64")
326
327 diff --git a/app-emulation/wine/metadata.xml b/app-emulation/wine/metadata.xml
328 deleted file mode 100644
329 index 309f99b2684..00000000000
330 --- a/app-emulation/wine/metadata.xml
331 +++ /dev/null
332 @@ -1,49 +0,0 @@
333 -<?xml version="1.0" encoding="UTF-8"?>
334 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
335 -<pkgmetadata>
336 - <maintainer type="project">
337 - <email>wine@g.o</email>
338 - <name>Wine</name>
339 - </maintainer>
340 - <maintainer type="person">
341 - <email>commendsarnex@×××××.com</email>
342 - <name>Nick Sarnie</name>
343 - <description>Only CC on bugs that involve USE="d3d9"</description>
344 - </maintainer>
345 - <longdescription>
346 -Wine is an Open Source implementation of the Windows API on top of X and Unix.
347 -
348 -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.
349 - </longdescription>
350 - <use>
351 - <flag name="capi">Enable ISDN support via CAPI</flag>
352 - <flag name="custom-cflags">Bypass strip-flags; use at your own peril</flag>
353 - <flag name="d3d9">Apply highly experimental patches for Gallium Nine support.
354 - This patch may break some applications.</flag>
355 - <flag name="dos">Pull in <pkg>games-emulation/dosbox</pkg> to run DOS applications</flag>
356 - <flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
357 - <flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;</flag>
358 - <flag name="mono">Add support for .NET using Wine's Mono add-on</flag>
359 - <flag name="netapi">Use libnetapi from <pkg>net-fs/samba</pkg> to support Windows networks in netapi32.dll</flag>
360 - <flag name="opencl">Enable OpenCL support</flag>
361 - <flag name="osmesa">Add support for OpenGL in bitmaps using libOSMesa</flag>
362 - <flag name="pcap">Support packet capture software (e.g. wireshark)</flag>
363 - <flag name="perl">Install helpers written in perl (winedump/winemaker)</flag>
364 - <flag name="pipelight">Apply Wine-Staging patches for Pipelight/Silverlight support</flag>
365 - <flag name="prelink">Run prelink on DLLs during build;
366 - 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>
367 - <flag name="realtime">Pull in <pkg>sys-auth/rtkit</pkg> for low-latency pulseaudio support</flag>
368 - <flag name="run-exes">Use Wine to open and run .EXE and .MSI files</flag>
369 - <flag name="s3tc">Pull in <pkg>media-libs/libtxc_dxtn</pkg> for DXTn texture compression, needed for many games</flag>
370 - <flag name="samba">Add support for NTLM auth. see
371 - http://wiki.winehq.org/NtlmAuthSetupGuide and
372 - http://wiki.winehq.org/NtlmSigningAndSealing</flag>
373 - <flag name="staging">Apply Wine-Staging patches for advanced feature support that haven't made it into upstream Wine yet</flag>
374 - <flag name="themes">Support GTK+:3 window theming through Wine-Staging</flag>
375 - <flag name="udev">Use <pkg>virtual/libudev</pkg> to provide plug and play support</flag>
376 - </use>
377 - <upstream>
378 - <remote-id type="github">wine-compholio/wine-staging</remote-id>
379 - <remote-id type="sourceforge">wine</remote-id>
380 - </upstream>
381 -</pkgmetadata>
382
383 diff --git a/app-emulation/wine/wine-2.0.ebuild b/app-emulation/wine/wine-2.0.ebuild
384 deleted file mode 100644
385 index 73721746d2d..00000000000
386 --- a/app-emulation/wine/wine-2.0.ebuild
387 +++ /dev/null
388 @@ -1,453 +0,0 @@
389 -# Copyright 1999-2018 Gentoo Foundation
390 -# Distributed under the terms of the GNU General Public License v2
391 -
392 -EAPI=6
393 -
394 -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"
395 -PLOCALE_BACKUP="en"
396 -
397 -inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
398 -
399 -if [[ ${PV} == "9999" ]] ; then
400 - EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
401 - EGIT_BRANCH="master"
402 - inherit git-r3
403 - SRC_URI=""
404 - #KEYWORDS=""
405 -else
406 - MAJOR_V=$(get_version_component_range 1-2)
407 - SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
408 - KEYWORDS="-* amd64 x86 ~x86-fbsd"
409 -fi
410 -
411 -VANILLA_GV="2.47"
412 -VANILLA_MV="4.6.4"
413 -WINE_GENTOO="wine-gentoo-2015.03.07"
414 -DESCRIPTION="Free implementation of Windows(tm) on Unix"
415 -HOMEPAGE="https://www.winehq.org/"
416 -SRC_URI="${SRC_URI}
417 - gecko? (
418 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
419 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
420 - )
421 - mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
422 - https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
423 -
424 -LICENSE="LGPL-2.1"
425 -SLOT="0"
426 -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"
427 -REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
428 - X? ( truetype )
429 - elibc_glibc? ( threads )
430 - osmesa? ( opengl )
431 - test? ( abi_x86_32 )" # osmesa-opengl #286560 # X-truetype #551124
432 -
433 -# FIXME: the test suite is unsuitable for us; many tests require net access
434 -# or fail due to Xvfb's opengl limitations.
435 -RESTRICT="test"
436 -
437 -COMMON_DEPEND="
438 - X? (
439 - x11-libs/libXcursor[${MULTILIB_USEDEP}]
440 - x11-libs/libXext[${MULTILIB_USEDEP}]
441 - x11-libs/libXrandr[${MULTILIB_USEDEP}]
442 - x11-libs/libXi[${MULTILIB_USEDEP}]
443 - x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
444 - )
445 - alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
446 - capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
447 - cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
448 - fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
449 - gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
450 - gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
451 - gstreamer? (
452 - media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
453 - media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
454 - )
455 - jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
456 - lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
457 - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
458 - mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
459 - ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
460 - netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
461 - nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
462 - odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
463 - openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
464 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
465 - opengl? (
466 - virtual/glu[${MULTILIB_USEDEP}]
467 - virtual/opengl[${MULTILIB_USEDEP}]
468 - )
469 - osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
470 - pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
471 - png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
472 - pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
473 - scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
474 - ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
475 - truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
476 - udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
477 - udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
478 - v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
479 - xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
480 - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
481 - xml? (
482 - dev-libs/libxml2[${MULTILIB_USEDEP}]
483 - dev-libs/libxslt[${MULTILIB_USEDEP}]
484 - )
485 - abi_x86_32? (
486 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
487 - !<app-emulation/emul-linux-x86-baselibs-20140508-r14
488 - !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
489 - !<app-emulation/emul-linux-x86-db-20140508-r3
490 - !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
491 - !<app-emulation/emul-linux-x86-medialibs-20140508-r6
492 - !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
493 - !<app-emulation/emul-linux-x86-opengl-20140508-r1
494 - !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
495 - !<app-emulation/emul-linux-x86-sdl-20140508-r1
496 - !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
497 - !<app-emulation/emul-linux-x86-soundlibs-20140508
498 - !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
499 - !<app-emulation/emul-linux-x86-xlibs-20140508
500 - )"
501 -
502 -RDEPEND="${COMMON_DEPEND}
503 - dos? ( >=games-emulation/dosbox-0.74_p20160629 )
504 - perl? (
505 - dev-lang/perl
506 - dev-perl/XML-Simple
507 - )
508 - pulseaudio? (
509 - realtime? ( sys-auth/rtkit )
510 - )
511 - samba? ( >=net-fs/samba-3.0.25[winbind] )
512 - selinux? ( sec-policy/selinux-wine )
513 - udisks? ( sys-fs/udisks:2 )"
514 -
515 -# tools/make_requests requires perl
516 -DEPEND="${COMMON_DEPEND}
517 - sys-devel/flex
518 - >=sys-kernel/linux-headers-2.6
519 - virtual/pkgconfig
520 - virtual/yacc
521 - X? (
522 - x11-proto/inputproto
523 - x11-proto/xextproto
524 - x11-proto/xf86vidmodeproto
525 - )
526 - prelink? ( sys-devel/prelink )
527 - xinerama? ( x11-proto/xineramaproto )"
528 -
529 -# These use a non-standard "Wine" category, which is provided by
530 -# /etc/xdg/applications-merged/wine.menu
531 -QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
532 -usr/share/applications/wine-notepad.desktop
533 -usr/share/applications/wine-uninstaller.desktop
534 -usr/share/applications/wine-winecfg.desktop"
535 -
536 -wine_compiler_check() {
537 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
538 -
539 - # GCC-specific bugs
540 - if tc-is-gcc; then
541 - # bug #549768
542 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
543 - ebegin "Checking for gcc-5 ms_abi compiler bug"
544 - $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
545 - # Run in subshell to prevent "Aborted" message
546 - ( "${T}"/pr66838 || false ) >/dev/null 2>&1
547 - if ! eend $?; then
548 - eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
549 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
550 - eerror "or use gcc-config to select a different compiler version."
551 - eerror "See https://bugs.gentoo.org/549768"
552 - eerror
553 - return 1
554 - fi
555 - fi
556 - # bug #574044
557 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
558 - ebegin "Checking for gcc-5-3 stack realignment compiler bug"
559 - # Compile in subshell to prevent "Aborted" message
560 - ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 ) >/dev/null 2>&1
561 - if ! eend $?; then
562 - eerror "Wine cannot be built with this version of gcc-5.3"
563 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
564 - eerror "or use gcc-config to select a different compiler version."
565 - eerror "See https://bugs.gentoo.org/574044"
566 - eerror
567 - return 1
568 - fi
569 - fi
570 - fi
571 -
572 - # Ensure compiler support
573 - if use abi_x86_64; then
574 - ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
575 - # Compile in subshell to prevent "Aborted" message
576 - ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
577 - if ! eend $?; then
578 - eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
579 - eerror
580 - eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
581 - eerror
582 - return 1
583 - fi
584 - fi
585 -}
586 -
587 -wine_build_environment_check() {
588 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
589 -
590 - if use abi_x86_64; then
591 - if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
592 - eerror "You need gcc-4.4+ to compile 64-bit wine"
593 - die
594 - elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
595 - eerror "You need clang-3.8+ to compile 64-bit wine"
596 - die
597 - fi
598 - fi
599 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
600 - ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
601 - ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
602 - ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
603 - fi
604 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
605 - if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
606 - ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
607 - ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
608 - ewarn "See package.env in man 5 portage for more information on how to do this."
609 - ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
610 - fi
611 - fi
612 -
613 - if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
614 - eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
615 - eerror "See https://bugs.gentoo.org/487864 for more details."
616 - eerror
617 - return 1
618 - fi
619 -}
620 -
621 -pkg_pretend() {
622 - wine_build_environment_check || die
623 -
624 - # Verify OSS support
625 - if use oss && ! use kernel_FreeBSD; then
626 - if ! has_version ">=media-sound/oss-4"; then
627 - eerror "You cannot build wine with USE=oss without having support from a"
628 - eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
629 - eerror
630 - die
631 - fi
632 - fi
633 -}
634 -
635 -pkg_setup() {
636 - wine_build_environment_check || die
637 - GV=${VANILLA_GV}
638 - MV=${VANILLA_MV}
639 -}
640 -
641 -src_unpack() {
642 - if [[ ${PV} == "9999" ]] ; then
643 - EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
644 - fi
645 -
646 - default
647 -
648 - l10n_find_plocales_changes "${S}/po" "" ".po"
649 -}
650 -
651 -src_prepare() {
652 - local md5="$(md5sum server/protocol.def)"
653 - local PATCHES=(
654 - "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
655 - "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
656 - "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
657 - "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
658 - )
659 -
660 - default
661 - eautoreconf
662 -
663 - # Modification of the server protocol requires regenerating the server requests
664 - if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
665 - einfo "server/protocol.def was patched; running tools/make_requests"
666 - tools/make_requests || die #432348
667 - fi
668 - sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
669 - if ! use run-exes; then
670 - sed -i '/^MimeType/d' loader/wine.desktop || die #117785
671 - fi
672 -
673 - # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
674 - cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
675 -
676 - l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
677 -}
678 -
679 -src_configure() {
680 - wine_compiler_check || die
681 -
682 - export LDCONFIG=/bin/true
683 - use custom-cflags || strip-flags
684 -
685 - multilib-minimal_src_configure
686 -}
687 -
688 -multilib_src_configure() {
689 - local myconf=(
690 - --sysconfdir=/etc/wine
691 - $(use_with alsa)
692 - $(use_with capi)
693 - $(use_with lcms cms)
694 - $(use_with cups)
695 - $(use_with ncurses curses)
696 - $(use_with udisks dbus)
697 - $(use_with fontconfig)
698 - $(use_with ssl gnutls)
699 - $(use_enable gecko mshtml)
700 - $(use_with gphoto2 gphoto)
701 - $(use_with gsm)
702 - $(use_with gstreamer)
703 - --without-hal
704 - $(use_with jpeg)
705 - $(use_with ldap)
706 - $(use_enable mono mscoree)
707 - $(use_with mp3 mpg123)
708 - $(use_with netapi)
709 - $(use_with nls gettext)
710 - $(use_with openal)
711 - $(use_with opencl)
712 - $(use_with opengl)
713 - $(use_with osmesa)
714 - $(use_with oss)
715 - $(use_with pcap)
716 - $(use_with png)
717 - $(use_with pulseaudio pulse)
718 - $(use_with threads pthread)
719 - $(use_with scanner sane)
720 - $(use_enable test tests)
721 - $(use_with truetype freetype)
722 - $(use_with udev)
723 - $(use_with v4l)
724 - $(use_with X x)
725 - $(use_with xcomposite)
726 - $(use_with xinerama)
727 - $(use_with xml)
728 - $(use_with xml xslt)
729 - )
730 -
731 - local PKG_CONFIG AR RANLIB
732 - # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
733 - # set AR and RANLIB to make QA scripts happy; #483342
734 - tc-export PKG_CONFIG AR RANLIB
735 -
736 - if use amd64; then
737 - if [[ ${ABI} == amd64 ]]; then
738 - myconf+=( --enable-win64 )
739 - else
740 - myconf+=( --disable-win64 )
741 - fi
742 -
743 - # Note: using --with-wine64 results in problems with multilib.eclass
744 - # CC/LD hackery. We're using separate tools instead.
745 - fi
746 -
747 - ECONF_SOURCE=${S} \
748 - econf "${myconf[@]}"
749 - emake depend
750 -}
751 -
752 -multilib_src_test() {
753 - # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
754 - if [[ ${ABI} == x86 ]]; then
755 - if [[ $(id -u) == 0 ]]; then
756 - ewarn "Skipping tests since they cannot be run under the root user."
757 - ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
758 - return
759 - fi
760 -
761 - WINEPREFIX="${T}/.wine-${ABI}" \
762 - Xemake test
763 - fi
764 -}
765 -
766 -multilib_src_install_all() {
767 - local DOCS=( ANNOUNCE AUTHORS README )
768 - local l
769 - add_locale_docs() {
770 - local locale_doc="documentation/README.$1"
771 - [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
772 - }
773 - l10n_for_each_locale_do add_locale_docs
774 -
775 - einstalldocs
776 - prune_libtool_files --all
777 -
778 - emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
779 - if use gecko ; then
780 - insinto /usr/share/wine/gecko
781 - use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
782 - use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
783 - fi
784 - if use mono ; then
785 - insinto /usr/share/wine/mono
786 - doins "${DISTDIR}"/wine-mono-${MV}.msi
787 - fi
788 - if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
789 - rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
790 - fi
791 -
792 - # Remove wineconsole if neither backend is installed #551124
793 - if ! use X && ! use ncurses; then
794 - rm "${D}"/usr/bin/wineconsole* || die
795 - rm "${D}"/usr/share/man/man1/wineconsole* || die
796 - rm_wineconsole() {
797 - rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
798 - }
799 - multilib_foreach_abi rm_wineconsole
800 - fi
801 -
802 - use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
803 - use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
804 -
805 - if use abi_x86_64 && ! use abi_x86_32; then
806 - dosym wine64 /usr/bin/wine # 404331
807 - dosym wine64-preloader /usr/bin/wine-preloader
808 - fi
809 -
810 - # respect LINGUAS when installing man pages, #469418
811 - for l in de fr pl; do
812 - has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
813 - done
814 -}
815 -
816 -pkg_preinst() {
817 - gnome2_icon_savelist
818 -}
819 -
820 -pkg_postinst() {
821 - gnome2_icon_cache_update
822 - fdo-mime_desktop_database_update
823 -
824 - if ! use gecko; then
825 - ewarn "Without Wine Gecko, wine prefixes will not have a default"
826 - ewarn "implementation of iexplore. Many older windows applications"
827 - ewarn "rely upon the existence of an iexplore implementation, so"
828 - ewarn "you will likely need to install an external one, like via winetricks"
829 - fi
830 - if ! use mono; then
831 - ewarn "Without Wine Mono, wine prefixes will not have a default"
832 - ewarn "implementation of .NET. Many windows applications rely upon"
833 - ewarn "the existence of a .NET implementation, so you will likely need"
834 - ewarn "to install an external one, like via winetricks"
835 - fi
836 -}
837 -
838 -pkg_postrm() {
839 - gnome2_icon_cache_update
840 - fdo-mime_desktop_database_update
841 -}
842
843 diff --git a/app-emulation/wine/wine-2.1.ebuild b/app-emulation/wine/wine-2.1.ebuild
844 deleted file mode 100644
845 index d1c5a92109e..00000000000
846 --- a/app-emulation/wine/wine-2.1.ebuild
847 +++ /dev/null
848 @@ -1,582 +0,0 @@
849 -# Copyright 1999-2018 Gentoo Foundation
850 -# Distributed under the terms of the GNU General Public License v2
851 -
852 -EAPI=6
853 -
854 -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"
855 -PLOCALE_BACKUP="en"
856 -
857 -inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
858 -
859 -if [[ ${PV} == "9999" ]] ; then
860 - EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
861 - EGIT_BRANCH="master"
862 - inherit git-r3
863 - SRC_URI=""
864 - #KEYWORDS=""
865 -else
866 - MAJOR_V=$(get_version_component_range 1)
867 - SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
868 - KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
869 -fi
870 -
871 -VANILLA_GV="2.47"
872 -VANILLA_MV="4.6.4"
873 -STAGING_GV="2.47"
874 -STAGING_MV="4.6.4"
875 -[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
876 -STAGING_P="wine-staging-${PV}"
877 -STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
878 -D3D9_P="wine-d3d9-${PV}"
879 -D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
880 -WINE_GENTOO="wine-gentoo-2015.03.07"
881 -DESCRIPTION="Free implementation of Windows(tm) on Unix"
882 -HOMEPAGE="https://www.winehq.org/"
883 -SRC_URI="${SRC_URI}
884 - !staging? (
885 - gecko? (
886 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
887 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
888 - )
889 - mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
890 - )
891 - staging? (
892 - gecko? (
893 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
894 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
895 - )
896 - mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
897 - )
898 - https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
899 -
900 -if [[ ${PV} == "9999" ]] ; then
901 - STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
902 - D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
903 -else
904 - SRC_URI="${SRC_URI}
905 - staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
906 - d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
907 -fi
908 -
909 -LICENSE="LGPL-2.1"
910 -SLOT="0"
911 -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"
912 -REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
913 - X? ( truetype )
914 - elibc_glibc? ( threads )
915 - osmesa? ( opengl )
916 - pipelight? ( staging )
917 - s3tc? ( staging )
918 - test? ( abi_x86_32 )
919 - themes? ( staging )
920 - vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
921 -
922 -# FIXME: the test suite is unsuitable for us; many tests require net access
923 -# or fail due to Xvfb's opengl limitations.
924 -RESTRICT="test"
925 -
926 -COMMON_DEPEND="
927 - X? (
928 - x11-libs/libXcursor[${MULTILIB_USEDEP}]
929 - x11-libs/libXext[${MULTILIB_USEDEP}]
930 - x11-libs/libXrandr[${MULTILIB_USEDEP}]
931 - x11-libs/libXi[${MULTILIB_USEDEP}]
932 - x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
933 - )
934 - alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
935 - capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
936 - cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
937 - d3d9? (
938 - media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
939 - x11-libs/libX11[${MULTILIB_USEDEP}]
940 - x11-libs/libXext[${MULTILIB_USEDEP}]
941 - x11-libs/libxcb[${MULTILIB_USEDEP}]
942 - )
943 - fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
944 - gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
945 - gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
946 - gstreamer? (
947 - media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
948 - media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
949 - )
950 - jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
951 - lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
952 - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
953 - mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
954 - ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
955 - netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
956 - nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
957 - odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
958 - openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
959 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
960 - opengl? (
961 - virtual/glu[${MULTILIB_USEDEP}]
962 - virtual/opengl[${MULTILIB_USEDEP}]
963 - )
964 - osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
965 - pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
966 - png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
967 - pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
968 - scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
969 - ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
970 - staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
971 - themes? (
972 - dev-libs/glib:2[${MULTILIB_USEDEP}]
973 - x11-libs/cairo[${MULTILIB_USEDEP}]
974 - x11-libs/gtk+:3[${MULTILIB_USEDEP}]
975 - )
976 - truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
977 - udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
978 - udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
979 - v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
980 - vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
981 - xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
982 - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
983 - xml? (
984 - dev-libs/libxml2[${MULTILIB_USEDEP}]
985 - dev-libs/libxslt[${MULTILIB_USEDEP}]
986 - )
987 - abi_x86_32? (
988 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
989 - !<app-emulation/emul-linux-x86-baselibs-20140508-r14
990 - !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
991 - !<app-emulation/emul-linux-x86-db-20140508-r3
992 - !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
993 - !<app-emulation/emul-linux-x86-medialibs-20140508-r6
994 - !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
995 - !<app-emulation/emul-linux-x86-opengl-20140508-r1
996 - !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
997 - !<app-emulation/emul-linux-x86-sdl-20140508-r1
998 - !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
999 - !<app-emulation/emul-linux-x86-soundlibs-20140508
1000 - !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
1001 - !<app-emulation/emul-linux-x86-xlibs-20140508
1002 - )"
1003 -
1004 -RDEPEND="${COMMON_DEPEND}
1005 - dos? ( >=games-emulation/dosbox-0.74_p20160629 )
1006 - perl? (
1007 - dev-lang/perl
1008 - dev-perl/XML-Simple
1009 - )
1010 - pulseaudio? (
1011 - realtime? ( sys-auth/rtkit )
1012 - )
1013 - s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
1014 - samba? ( >=net-fs/samba-3.0.25[winbind] )
1015 - selinux? ( sec-policy/selinux-wine )
1016 - udisks? ( sys-fs/udisks:2 )"
1017 -
1018 -# tools/make_requests requires perl
1019 -DEPEND="${COMMON_DEPEND}
1020 - sys-devel/flex
1021 - >=sys-kernel/linux-headers-2.6
1022 - virtual/pkgconfig
1023 - virtual/yacc
1024 - X? (
1025 - x11-proto/inputproto
1026 - x11-proto/xextproto
1027 - x11-proto/xf86vidmodeproto
1028 - )
1029 - prelink? ( sys-devel/prelink )
1030 - staging? (
1031 - dev-lang/perl
1032 - dev-perl/XML-Simple
1033 - )
1034 - xinerama? ( x11-proto/xineramaproto )"
1035 -
1036 -# These use a non-standard "Wine" category, which is provided by
1037 -# /etc/xdg/applications-merged/wine.menu
1038 -QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
1039 -usr/share/applications/wine-notepad.desktop
1040 -usr/share/applications/wine-uninstaller.desktop
1041 -usr/share/applications/wine-winecfg.desktop"
1042 -
1043 -wine_compiler_check() {
1044 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
1045 -
1046 - # GCC-specific bugs
1047 - if tc-is-gcc; then
1048 - # bug #549768
1049 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
1050 - ebegin "Checking for gcc-5 ms_abi compiler bug"
1051 - $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
1052 - # Run in subshell to prevent "Aborted" message
1053 - ( "${T}"/pr66838 || false ) >/dev/null 2>&1
1054 - if ! eend $?; then
1055 - eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
1056 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
1057 - eerror "or use gcc-config to select a different compiler version."
1058 - eerror "See https://bugs.gentoo.org/549768"
1059 - eerror
1060 - return 1
1061 - fi
1062 - fi
1063 - # bug #574044
1064 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
1065 - ebegin "Checking for gcc-5-3 stack realignment compiler bug"
1066 - # Compile in subshell to prevent "Aborted" message
1067 - ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 ) >/dev/null 2>&1
1068 - if ! eend $?; then
1069 - eerror "Wine cannot be built with this version of gcc-5.3"
1070 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
1071 - eerror "or use gcc-config to select a different compiler version."
1072 - eerror "See https://bugs.gentoo.org/574044"
1073 - eerror
1074 - return 1
1075 - fi
1076 - fi
1077 - fi
1078 -
1079 - # Ensure compiler support
1080 - if use abi_x86_64; then
1081 - ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
1082 - # Compile in subshell to prevent "Aborted" message
1083 - ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
1084 - if ! eend $?; then
1085 - eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
1086 - eerror
1087 - eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
1088 - eerror
1089 - return 1
1090 - fi
1091 - fi
1092 -}
1093 -
1094 -wine_build_environment_check() {
1095 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
1096 -
1097 - if use abi_x86_64; then
1098 - if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
1099 - eerror "You need gcc-4.4+ to compile 64-bit wine"
1100 - die
1101 - elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
1102 - eerror "You need clang-3.8+ to compile 64-bit wine"
1103 - die
1104 - fi
1105 - fi
1106 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
1107 - ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
1108 - ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
1109 - ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
1110 - fi
1111 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
1112 - if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
1113 - ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
1114 - ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
1115 - ewarn "See package.env in man 5 portage for more information on how to do this."
1116 - ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
1117 - fi
1118 - fi
1119 -
1120 - if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
1121 - eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
1122 - eerror "See https://bugs.gentoo.org/487864 for more details."
1123 - eerror
1124 - return 1
1125 - fi
1126 -}
1127 -
1128 -wine_env_vcs_vars() {
1129 - local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
1130 - local pn_live_val="${pn_live_var}"
1131 - eval pn_live_val='$'${pn_live_val}
1132 - if [[ ! -z ${pn_live_val} ]]; then
1133 - if use staging || use d3d9; then
1134 - eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
1135 - eerror "cannot be used to set the commit. Instead, you may use the"
1136 - eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
1137 - eerror
1138 - return 1
1139 - fi
1140 - fi
1141 - if [[ ! -z ${EGIT_COMMIT} ]]; then
1142 - eerror "Commits must now be specified using the environmental variables"
1143 - eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
1144 - eerror
1145 - return 1
1146 - fi
1147 -}
1148 -
1149 -pkg_pretend() {
1150 - wine_build_environment_check || die
1151 -
1152 - # Verify OSS support
1153 - if use oss && ! use kernel_FreeBSD; then
1154 - if ! has_version ">=media-sound/oss-4"; then
1155 - eerror "You cannot build wine with USE=oss without having support from a"
1156 - eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
1157 - eerror
1158 - die
1159 - fi
1160 - fi
1161 -}
1162 -
1163 -pkg_setup() {
1164 - wine_build_environment_check || die
1165 - wine_env_vcs_vars || die
1166 - if ! use staging; then
1167 - GV=${VANILLA_GV}
1168 - MV=${VANILLA_MV}
1169 - else
1170 - GV=${STAGING_GV}
1171 - MV=${STAGING_MV}
1172 - fi
1173 -}
1174 -
1175 -src_unpack() {
1176 - if [[ ${PV} == "9999" ]] ; then
1177 - EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
1178 - if use staging; then
1179 - local CURRENT_WINE_COMMIT=${EGIT_VERSION}
1180 -
1181 - git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
1182 - git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
1183 -
1184 - local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
1185 -
1186 - if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
1187 - einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
1188 - einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
1189 - einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
1190 - fi
1191 - fi
1192 - if use d3d9; then
1193 - git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
1194 - git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
1195 - fi
1196 - fi
1197 -
1198 - default
1199 -
1200 - l10n_find_plocales_changes "${S}/po" "" ".po"
1201 -}
1202 -
1203 -src_prepare() {
1204 - local md5="$(md5sum server/protocol.def)"
1205 - local PATCHES=(
1206 - "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
1207 - "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
1208 - "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
1209 - "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
1210 - )
1211 - if use staging; then
1212 - ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
1213 - ewarn "Wine bugzilla should explicitly state that staging was used."
1214 -
1215 - local STAGING_EXCLUDE=""
1216 - STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
1217 - use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
1218 -
1219 - # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
1220 - ebegin "Running Wine-Staging patch installer"
1221 - (
1222 - set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
1223 - cd "${STAGING_DIR}/patches"
1224 - source "${STAGING_DIR}/patches/patchinstall.sh"
1225 - )
1226 - eend $? || die "Failed to apply Wine-Staging patches"
1227 -
1228 - # To differentiate unofficial staging releases
1229 - if [[ ! -z ${SUFFIX} ]]; then
1230 - sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
1231 - fi
1232 - fi
1233 - if use d3d9; then
1234 - if use staging; then
1235 - PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
1236 - else
1237 - PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
1238 - fi
1239 - PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
1240 - fi
1241 -
1242 - default
1243 - eautoreconf
1244 -
1245 - # Modification of the server protocol requires regenerating the server requests
1246 - if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
1247 - einfo "server/protocol.def was patched; running tools/make_requests"
1248 - tools/make_requests || die #432348
1249 - fi
1250 - sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
1251 - if ! use run-exes; then
1252 - sed -i '/^MimeType/d' loader/wine.desktop || die #117785
1253 - fi
1254 -
1255 - # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
1256 - cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
1257 -
1258 - l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
1259 -}
1260 -
1261 -src_configure() {
1262 - wine_compiler_check || die
1263 -
1264 - export LDCONFIG=/bin/true
1265 - use custom-cflags || strip-flags
1266 -
1267 - multilib-minimal_src_configure
1268 -}
1269 -
1270 -multilib_src_configure() {
1271 - local myconf=(
1272 - --sysconfdir=/etc/wine
1273 - $(use_with alsa)
1274 - $(use_with capi)
1275 - $(use_with lcms cms)
1276 - $(use_with cups)
1277 - $(use_with ncurses curses)
1278 - $(use_with udisks dbus)
1279 - $(use_with fontconfig)
1280 - $(use_with ssl gnutls)
1281 - $(use_enable gecko mshtml)
1282 - $(use_with gphoto2 gphoto)
1283 - $(use_with gsm)
1284 - $(use_with gstreamer)
1285 - --without-hal
1286 - $(use_with jpeg)
1287 - $(use_with ldap)
1288 - $(use_enable mono mscoree)
1289 - $(use_with mp3 mpg123)
1290 - $(use_with netapi)
1291 - $(use_with nls gettext)
1292 - $(use_with openal)
1293 - $(use_with opencl)
1294 - $(use_with opengl)
1295 - $(use_with osmesa)
1296 - $(use_with oss)
1297 - $(use_with pcap)
1298 - $(use_with png)
1299 - $(use_with pulseaudio pulse)
1300 - $(use_with threads pthread)
1301 - $(use_with scanner sane)
1302 - $(use_enable test tests)
1303 - $(use_with truetype freetype)
1304 - $(use_with udev)
1305 - $(use_with v4l)
1306 - $(use_with X x)
1307 - $(use_with xcomposite)
1308 - $(use_with xinerama)
1309 - $(use_with xml)
1310 - $(use_with xml xslt)
1311 - )
1312 -
1313 - use staging && myconf+=(
1314 - --with-xattr
1315 - $(use_with themes gtk3)
1316 - $(use_with vaapi va)
1317 - )
1318 - use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
1319 -
1320 - local PKG_CONFIG AR RANLIB
1321 - # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
1322 - # set AR and RANLIB to make QA scripts happy; #483342
1323 - tc-export PKG_CONFIG AR RANLIB
1324 -
1325 - if use amd64; then
1326 - if [[ ${ABI} == amd64 ]]; then
1327 - myconf+=( --enable-win64 )
1328 - else
1329 - myconf+=( --disable-win64 )
1330 - fi
1331 -
1332 - # Note: using --with-wine64 results in problems with multilib.eclass
1333 - # CC/LD hackery. We're using separate tools instead.
1334 - fi
1335 -
1336 - ECONF_SOURCE=${S} \
1337 - econf "${myconf[@]}"
1338 - emake depend
1339 -}
1340 -
1341 -multilib_src_test() {
1342 - # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
1343 - if [[ ${ABI} == x86 ]]; then
1344 - if [[ $(id -u) == 0 ]]; then
1345 - ewarn "Skipping tests since they cannot be run under the root user."
1346 - ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
1347 - return
1348 - fi
1349 -
1350 - WINEPREFIX="${T}/.wine-${ABI}" \
1351 - Xemake test
1352 - fi
1353 -}
1354 -
1355 -multilib_src_install_all() {
1356 - local DOCS=( ANNOUNCE AUTHORS README )
1357 - local l
1358 - add_locale_docs() {
1359 - local locale_doc="documentation/README.$1"
1360 - [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
1361 - }
1362 - l10n_for_each_locale_do add_locale_docs
1363 -
1364 - einstalldocs
1365 - prune_libtool_files --all
1366 -
1367 - emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
1368 - if use gecko ; then
1369 - insinto /usr/share/wine/gecko
1370 - use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
1371 - use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
1372 - fi
1373 - if use mono ; then
1374 - insinto /usr/share/wine/mono
1375 - doins "${DISTDIR}"/wine-mono-${MV}.msi
1376 - fi
1377 - if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
1378 - rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
1379 - fi
1380 -
1381 - # Remove wineconsole if neither backend is installed #551124
1382 - if ! use X && ! use ncurses; then
1383 - rm "${D}"/usr/bin/wineconsole* || die
1384 - rm "${D}"/usr/share/man/man1/wineconsole* || die
1385 - rm_wineconsole() {
1386 - rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
1387 - }
1388 - multilib_foreach_abi rm_wineconsole
1389 - fi
1390 -
1391 - use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
1392 - use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
1393 -
1394 - if use abi_x86_64 && ! use abi_x86_32; then
1395 - dosym wine64 /usr/bin/wine # 404331
1396 - dosym wine64-preloader /usr/bin/wine-preloader
1397 - fi
1398 -
1399 - # respect LINGUAS when installing man pages, #469418
1400 - for l in de fr pl; do
1401 - has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
1402 - done
1403 -}
1404 -
1405 -pkg_preinst() {
1406 - gnome2_icon_savelist
1407 -}
1408 -
1409 -pkg_postinst() {
1410 - gnome2_icon_cache_update
1411 - fdo-mime_desktop_database_update
1412 -
1413 - if ! use gecko; then
1414 - ewarn "Without Wine Gecko, wine prefixes will not have a default"
1415 - ewarn "implementation of iexplore. Many older windows applications"
1416 - ewarn "rely upon the existence of an iexplore implementation, so"
1417 - ewarn "you will likely need to install an external one, like via winetricks"
1418 - fi
1419 - if ! use mono; then
1420 - ewarn "Without Wine Mono, wine prefixes will not have a default"
1421 - ewarn "implementation of .NET. Many windows applications rely upon"
1422 - ewarn "the existence of a .NET implementation, so you will likely need"
1423 - ewarn "to install an external one, like via winetricks"
1424 - fi
1425 -}
1426 -
1427 -pkg_postrm() {
1428 - gnome2_icon_cache_update
1429 - fdo-mime_desktop_database_update
1430 -}
1431
1432 diff --git a/app-emulation/wine/wine-2.2.ebuild b/app-emulation/wine/wine-2.2.ebuild
1433 deleted file mode 100644
1434 index d1c5a92109e..00000000000
1435 --- a/app-emulation/wine/wine-2.2.ebuild
1436 +++ /dev/null
1437 @@ -1,582 +0,0 @@
1438 -# Copyright 1999-2018 Gentoo Foundation
1439 -# Distributed under the terms of the GNU General Public License v2
1440 -
1441 -EAPI=6
1442 -
1443 -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"
1444 -PLOCALE_BACKUP="en"
1445 -
1446 -inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
1447 -
1448 -if [[ ${PV} == "9999" ]] ; then
1449 - EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
1450 - EGIT_BRANCH="master"
1451 - inherit git-r3
1452 - SRC_URI=""
1453 - #KEYWORDS=""
1454 -else
1455 - MAJOR_V=$(get_version_component_range 1)
1456 - SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
1457 - KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
1458 -fi
1459 -
1460 -VANILLA_GV="2.47"
1461 -VANILLA_MV="4.6.4"
1462 -STAGING_GV="2.47"
1463 -STAGING_MV="4.6.4"
1464 -[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
1465 -STAGING_P="wine-staging-${PV}"
1466 -STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
1467 -D3D9_P="wine-d3d9-${PV}"
1468 -D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
1469 -WINE_GENTOO="wine-gentoo-2015.03.07"
1470 -DESCRIPTION="Free implementation of Windows(tm) on Unix"
1471 -HOMEPAGE="https://www.winehq.org/"
1472 -SRC_URI="${SRC_URI}
1473 - !staging? (
1474 - gecko? (
1475 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
1476 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
1477 - )
1478 - mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
1479 - )
1480 - staging? (
1481 - gecko? (
1482 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
1483 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
1484 - )
1485 - mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
1486 - )
1487 - https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
1488 -
1489 -if [[ ${PV} == "9999" ]] ; then
1490 - STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
1491 - D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
1492 -else
1493 - SRC_URI="${SRC_URI}
1494 - staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
1495 - d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
1496 -fi
1497 -
1498 -LICENSE="LGPL-2.1"
1499 -SLOT="0"
1500 -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"
1501 -REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
1502 - X? ( truetype )
1503 - elibc_glibc? ( threads )
1504 - osmesa? ( opengl )
1505 - pipelight? ( staging )
1506 - s3tc? ( staging )
1507 - test? ( abi_x86_32 )
1508 - themes? ( staging )
1509 - vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
1510 -
1511 -# FIXME: the test suite is unsuitable for us; many tests require net access
1512 -# or fail due to Xvfb's opengl limitations.
1513 -RESTRICT="test"
1514 -
1515 -COMMON_DEPEND="
1516 - X? (
1517 - x11-libs/libXcursor[${MULTILIB_USEDEP}]
1518 - x11-libs/libXext[${MULTILIB_USEDEP}]
1519 - x11-libs/libXrandr[${MULTILIB_USEDEP}]
1520 - x11-libs/libXi[${MULTILIB_USEDEP}]
1521 - x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
1522 - )
1523 - alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
1524 - capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
1525 - cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
1526 - d3d9? (
1527 - media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
1528 - x11-libs/libX11[${MULTILIB_USEDEP}]
1529 - x11-libs/libXext[${MULTILIB_USEDEP}]
1530 - x11-libs/libxcb[${MULTILIB_USEDEP}]
1531 - )
1532 - fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
1533 - gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
1534 - gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
1535 - gstreamer? (
1536 - media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
1537 - media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
1538 - )
1539 - jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
1540 - lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
1541 - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
1542 - mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
1543 - ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
1544 - netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
1545 - nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
1546 - odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
1547 - openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
1548 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
1549 - opengl? (
1550 - virtual/glu[${MULTILIB_USEDEP}]
1551 - virtual/opengl[${MULTILIB_USEDEP}]
1552 - )
1553 - osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
1554 - pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
1555 - png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
1556 - pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
1557 - scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
1558 - ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
1559 - staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
1560 - themes? (
1561 - dev-libs/glib:2[${MULTILIB_USEDEP}]
1562 - x11-libs/cairo[${MULTILIB_USEDEP}]
1563 - x11-libs/gtk+:3[${MULTILIB_USEDEP}]
1564 - )
1565 - truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
1566 - udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
1567 - udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
1568 - v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
1569 - vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
1570 - xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
1571 - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
1572 - xml? (
1573 - dev-libs/libxml2[${MULTILIB_USEDEP}]
1574 - dev-libs/libxslt[${MULTILIB_USEDEP}]
1575 - )
1576 - abi_x86_32? (
1577 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
1578 - !<app-emulation/emul-linux-x86-baselibs-20140508-r14
1579 - !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
1580 - !<app-emulation/emul-linux-x86-db-20140508-r3
1581 - !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
1582 - !<app-emulation/emul-linux-x86-medialibs-20140508-r6
1583 - !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
1584 - !<app-emulation/emul-linux-x86-opengl-20140508-r1
1585 - !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
1586 - !<app-emulation/emul-linux-x86-sdl-20140508-r1
1587 - !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
1588 - !<app-emulation/emul-linux-x86-soundlibs-20140508
1589 - !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
1590 - !<app-emulation/emul-linux-x86-xlibs-20140508
1591 - )"
1592 -
1593 -RDEPEND="${COMMON_DEPEND}
1594 - dos? ( >=games-emulation/dosbox-0.74_p20160629 )
1595 - perl? (
1596 - dev-lang/perl
1597 - dev-perl/XML-Simple
1598 - )
1599 - pulseaudio? (
1600 - realtime? ( sys-auth/rtkit )
1601 - )
1602 - s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
1603 - samba? ( >=net-fs/samba-3.0.25[winbind] )
1604 - selinux? ( sec-policy/selinux-wine )
1605 - udisks? ( sys-fs/udisks:2 )"
1606 -
1607 -# tools/make_requests requires perl
1608 -DEPEND="${COMMON_DEPEND}
1609 - sys-devel/flex
1610 - >=sys-kernel/linux-headers-2.6
1611 - virtual/pkgconfig
1612 - virtual/yacc
1613 - X? (
1614 - x11-proto/inputproto
1615 - x11-proto/xextproto
1616 - x11-proto/xf86vidmodeproto
1617 - )
1618 - prelink? ( sys-devel/prelink )
1619 - staging? (
1620 - dev-lang/perl
1621 - dev-perl/XML-Simple
1622 - )
1623 - xinerama? ( x11-proto/xineramaproto )"
1624 -
1625 -# These use a non-standard "Wine" category, which is provided by
1626 -# /etc/xdg/applications-merged/wine.menu
1627 -QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
1628 -usr/share/applications/wine-notepad.desktop
1629 -usr/share/applications/wine-uninstaller.desktop
1630 -usr/share/applications/wine-winecfg.desktop"
1631 -
1632 -wine_compiler_check() {
1633 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
1634 -
1635 - # GCC-specific bugs
1636 - if tc-is-gcc; then
1637 - # bug #549768
1638 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
1639 - ebegin "Checking for gcc-5 ms_abi compiler bug"
1640 - $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
1641 - # Run in subshell to prevent "Aborted" message
1642 - ( "${T}"/pr66838 || false ) >/dev/null 2>&1
1643 - if ! eend $?; then
1644 - eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
1645 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
1646 - eerror "or use gcc-config to select a different compiler version."
1647 - eerror "See https://bugs.gentoo.org/549768"
1648 - eerror
1649 - return 1
1650 - fi
1651 - fi
1652 - # bug #574044
1653 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
1654 - ebegin "Checking for gcc-5-3 stack realignment compiler bug"
1655 - # Compile in subshell to prevent "Aborted" message
1656 - ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 ) >/dev/null 2>&1
1657 - if ! eend $?; then
1658 - eerror "Wine cannot be built with this version of gcc-5.3"
1659 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
1660 - eerror "or use gcc-config to select a different compiler version."
1661 - eerror "See https://bugs.gentoo.org/574044"
1662 - eerror
1663 - return 1
1664 - fi
1665 - fi
1666 - fi
1667 -
1668 - # Ensure compiler support
1669 - if use abi_x86_64; then
1670 - ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
1671 - # Compile in subshell to prevent "Aborted" message
1672 - ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
1673 - if ! eend $?; then
1674 - eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
1675 - eerror
1676 - eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
1677 - eerror
1678 - return 1
1679 - fi
1680 - fi
1681 -}
1682 -
1683 -wine_build_environment_check() {
1684 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
1685 -
1686 - if use abi_x86_64; then
1687 - if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
1688 - eerror "You need gcc-4.4+ to compile 64-bit wine"
1689 - die
1690 - elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
1691 - eerror "You need clang-3.8+ to compile 64-bit wine"
1692 - die
1693 - fi
1694 - fi
1695 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
1696 - ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
1697 - ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
1698 - ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
1699 - fi
1700 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
1701 - if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
1702 - ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
1703 - ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
1704 - ewarn "See package.env in man 5 portage for more information on how to do this."
1705 - ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
1706 - fi
1707 - fi
1708 -
1709 - if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
1710 - eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
1711 - eerror "See https://bugs.gentoo.org/487864 for more details."
1712 - eerror
1713 - return 1
1714 - fi
1715 -}
1716 -
1717 -wine_env_vcs_vars() {
1718 - local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
1719 - local pn_live_val="${pn_live_var}"
1720 - eval pn_live_val='$'${pn_live_val}
1721 - if [[ ! -z ${pn_live_val} ]]; then
1722 - if use staging || use d3d9; then
1723 - eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
1724 - eerror "cannot be used to set the commit. Instead, you may use the"
1725 - eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
1726 - eerror
1727 - return 1
1728 - fi
1729 - fi
1730 - if [[ ! -z ${EGIT_COMMIT} ]]; then
1731 - eerror "Commits must now be specified using the environmental variables"
1732 - eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
1733 - eerror
1734 - return 1
1735 - fi
1736 -}
1737 -
1738 -pkg_pretend() {
1739 - wine_build_environment_check || die
1740 -
1741 - # Verify OSS support
1742 - if use oss && ! use kernel_FreeBSD; then
1743 - if ! has_version ">=media-sound/oss-4"; then
1744 - eerror "You cannot build wine with USE=oss without having support from a"
1745 - eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
1746 - eerror
1747 - die
1748 - fi
1749 - fi
1750 -}
1751 -
1752 -pkg_setup() {
1753 - wine_build_environment_check || die
1754 - wine_env_vcs_vars || die
1755 - if ! use staging; then
1756 - GV=${VANILLA_GV}
1757 - MV=${VANILLA_MV}
1758 - else
1759 - GV=${STAGING_GV}
1760 - MV=${STAGING_MV}
1761 - fi
1762 -}
1763 -
1764 -src_unpack() {
1765 - if [[ ${PV} == "9999" ]] ; then
1766 - EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
1767 - if use staging; then
1768 - local CURRENT_WINE_COMMIT=${EGIT_VERSION}
1769 -
1770 - git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
1771 - git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
1772 -
1773 - local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
1774 -
1775 - if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
1776 - einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
1777 - einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
1778 - einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
1779 - fi
1780 - fi
1781 - if use d3d9; then
1782 - git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
1783 - git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
1784 - fi
1785 - fi
1786 -
1787 - default
1788 -
1789 - l10n_find_plocales_changes "${S}/po" "" ".po"
1790 -}
1791 -
1792 -src_prepare() {
1793 - local md5="$(md5sum server/protocol.def)"
1794 - local PATCHES=(
1795 - "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
1796 - "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
1797 - "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
1798 - "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
1799 - )
1800 - if use staging; then
1801 - ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
1802 - ewarn "Wine bugzilla should explicitly state that staging was used."
1803 -
1804 - local STAGING_EXCLUDE=""
1805 - STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
1806 - use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
1807 -
1808 - # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
1809 - ebegin "Running Wine-Staging patch installer"
1810 - (
1811 - set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
1812 - cd "${STAGING_DIR}/patches"
1813 - source "${STAGING_DIR}/patches/patchinstall.sh"
1814 - )
1815 - eend $? || die "Failed to apply Wine-Staging patches"
1816 -
1817 - # To differentiate unofficial staging releases
1818 - if [[ ! -z ${SUFFIX} ]]; then
1819 - sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
1820 - fi
1821 - fi
1822 - if use d3d9; then
1823 - if use staging; then
1824 - PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
1825 - else
1826 - PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
1827 - fi
1828 - PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
1829 - fi
1830 -
1831 - default
1832 - eautoreconf
1833 -
1834 - # Modification of the server protocol requires regenerating the server requests
1835 - if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
1836 - einfo "server/protocol.def was patched; running tools/make_requests"
1837 - tools/make_requests || die #432348
1838 - fi
1839 - sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
1840 - if ! use run-exes; then
1841 - sed -i '/^MimeType/d' loader/wine.desktop || die #117785
1842 - fi
1843 -
1844 - # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
1845 - cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
1846 -
1847 - l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
1848 -}
1849 -
1850 -src_configure() {
1851 - wine_compiler_check || die
1852 -
1853 - export LDCONFIG=/bin/true
1854 - use custom-cflags || strip-flags
1855 -
1856 - multilib-minimal_src_configure
1857 -}
1858 -
1859 -multilib_src_configure() {
1860 - local myconf=(
1861 - --sysconfdir=/etc/wine
1862 - $(use_with alsa)
1863 - $(use_with capi)
1864 - $(use_with lcms cms)
1865 - $(use_with cups)
1866 - $(use_with ncurses curses)
1867 - $(use_with udisks dbus)
1868 - $(use_with fontconfig)
1869 - $(use_with ssl gnutls)
1870 - $(use_enable gecko mshtml)
1871 - $(use_with gphoto2 gphoto)
1872 - $(use_with gsm)
1873 - $(use_with gstreamer)
1874 - --without-hal
1875 - $(use_with jpeg)
1876 - $(use_with ldap)
1877 - $(use_enable mono mscoree)
1878 - $(use_with mp3 mpg123)
1879 - $(use_with netapi)
1880 - $(use_with nls gettext)
1881 - $(use_with openal)
1882 - $(use_with opencl)
1883 - $(use_with opengl)
1884 - $(use_with osmesa)
1885 - $(use_with oss)
1886 - $(use_with pcap)
1887 - $(use_with png)
1888 - $(use_with pulseaudio pulse)
1889 - $(use_with threads pthread)
1890 - $(use_with scanner sane)
1891 - $(use_enable test tests)
1892 - $(use_with truetype freetype)
1893 - $(use_with udev)
1894 - $(use_with v4l)
1895 - $(use_with X x)
1896 - $(use_with xcomposite)
1897 - $(use_with xinerama)
1898 - $(use_with xml)
1899 - $(use_with xml xslt)
1900 - )
1901 -
1902 - use staging && myconf+=(
1903 - --with-xattr
1904 - $(use_with themes gtk3)
1905 - $(use_with vaapi va)
1906 - )
1907 - use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
1908 -
1909 - local PKG_CONFIG AR RANLIB
1910 - # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
1911 - # set AR and RANLIB to make QA scripts happy; #483342
1912 - tc-export PKG_CONFIG AR RANLIB
1913 -
1914 - if use amd64; then
1915 - if [[ ${ABI} == amd64 ]]; then
1916 - myconf+=( --enable-win64 )
1917 - else
1918 - myconf+=( --disable-win64 )
1919 - fi
1920 -
1921 - # Note: using --with-wine64 results in problems with multilib.eclass
1922 - # CC/LD hackery. We're using separate tools instead.
1923 - fi
1924 -
1925 - ECONF_SOURCE=${S} \
1926 - econf "${myconf[@]}"
1927 - emake depend
1928 -}
1929 -
1930 -multilib_src_test() {
1931 - # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
1932 - if [[ ${ABI} == x86 ]]; then
1933 - if [[ $(id -u) == 0 ]]; then
1934 - ewarn "Skipping tests since they cannot be run under the root user."
1935 - ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
1936 - return
1937 - fi
1938 -
1939 - WINEPREFIX="${T}/.wine-${ABI}" \
1940 - Xemake test
1941 - fi
1942 -}
1943 -
1944 -multilib_src_install_all() {
1945 - local DOCS=( ANNOUNCE AUTHORS README )
1946 - local l
1947 - add_locale_docs() {
1948 - local locale_doc="documentation/README.$1"
1949 - [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
1950 - }
1951 - l10n_for_each_locale_do add_locale_docs
1952 -
1953 - einstalldocs
1954 - prune_libtool_files --all
1955 -
1956 - emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
1957 - if use gecko ; then
1958 - insinto /usr/share/wine/gecko
1959 - use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
1960 - use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
1961 - fi
1962 - if use mono ; then
1963 - insinto /usr/share/wine/mono
1964 - doins "${DISTDIR}"/wine-mono-${MV}.msi
1965 - fi
1966 - if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
1967 - rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
1968 - fi
1969 -
1970 - # Remove wineconsole if neither backend is installed #551124
1971 - if ! use X && ! use ncurses; then
1972 - rm "${D}"/usr/bin/wineconsole* || die
1973 - rm "${D}"/usr/share/man/man1/wineconsole* || die
1974 - rm_wineconsole() {
1975 - rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
1976 - }
1977 - multilib_foreach_abi rm_wineconsole
1978 - fi
1979 -
1980 - use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
1981 - use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
1982 -
1983 - if use abi_x86_64 && ! use abi_x86_32; then
1984 - dosym wine64 /usr/bin/wine # 404331
1985 - dosym wine64-preloader /usr/bin/wine-preloader
1986 - fi
1987 -
1988 - # respect LINGUAS when installing man pages, #469418
1989 - for l in de fr pl; do
1990 - has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
1991 - done
1992 -}
1993 -
1994 -pkg_preinst() {
1995 - gnome2_icon_savelist
1996 -}
1997 -
1998 -pkg_postinst() {
1999 - gnome2_icon_cache_update
2000 - fdo-mime_desktop_database_update
2001 -
2002 - if ! use gecko; then
2003 - ewarn "Without Wine Gecko, wine prefixes will not have a default"
2004 - ewarn "implementation of iexplore. Many older windows applications"
2005 - ewarn "rely upon the existence of an iexplore implementation, so"
2006 - ewarn "you will likely need to install an external one, like via winetricks"
2007 - fi
2008 - if ! use mono; then
2009 - ewarn "Without Wine Mono, wine prefixes will not have a default"
2010 - ewarn "implementation of .NET. Many windows applications rely upon"
2011 - ewarn "the existence of a .NET implementation, so you will likely need"
2012 - ewarn "to install an external one, like via winetricks"
2013 - fi
2014 -}
2015 -
2016 -pkg_postrm() {
2017 - gnome2_icon_cache_update
2018 - fdo-mime_desktop_database_update
2019 -}
2020
2021 diff --git a/app-emulation/wine/wine-2.3.ebuild b/app-emulation/wine/wine-2.3.ebuild
2022 deleted file mode 100644
2023 index d1c5a92109e..00000000000
2024 --- a/app-emulation/wine/wine-2.3.ebuild
2025 +++ /dev/null
2026 @@ -1,582 +0,0 @@
2027 -# Copyright 1999-2018 Gentoo Foundation
2028 -# Distributed under the terms of the GNU General Public License v2
2029 -
2030 -EAPI=6
2031 -
2032 -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"
2033 -PLOCALE_BACKUP="en"
2034 -
2035 -inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
2036 -
2037 -if [[ ${PV} == "9999" ]] ; then
2038 - EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
2039 - EGIT_BRANCH="master"
2040 - inherit git-r3
2041 - SRC_URI=""
2042 - #KEYWORDS=""
2043 -else
2044 - MAJOR_V=$(get_version_component_range 1)
2045 - SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
2046 - KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
2047 -fi
2048 -
2049 -VANILLA_GV="2.47"
2050 -VANILLA_MV="4.6.4"
2051 -STAGING_GV="2.47"
2052 -STAGING_MV="4.6.4"
2053 -[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
2054 -STAGING_P="wine-staging-${PV}"
2055 -STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
2056 -D3D9_P="wine-d3d9-${PV}"
2057 -D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
2058 -WINE_GENTOO="wine-gentoo-2015.03.07"
2059 -DESCRIPTION="Free implementation of Windows(tm) on Unix"
2060 -HOMEPAGE="https://www.winehq.org/"
2061 -SRC_URI="${SRC_URI}
2062 - !staging? (
2063 - gecko? (
2064 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
2065 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
2066 - )
2067 - mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
2068 - )
2069 - staging? (
2070 - gecko? (
2071 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
2072 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
2073 - )
2074 - mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
2075 - )
2076 - https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
2077 -
2078 -if [[ ${PV} == "9999" ]] ; then
2079 - STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
2080 - D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
2081 -else
2082 - SRC_URI="${SRC_URI}
2083 - staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
2084 - d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
2085 -fi
2086 -
2087 -LICENSE="LGPL-2.1"
2088 -SLOT="0"
2089 -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"
2090 -REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
2091 - X? ( truetype )
2092 - elibc_glibc? ( threads )
2093 - osmesa? ( opengl )
2094 - pipelight? ( staging )
2095 - s3tc? ( staging )
2096 - test? ( abi_x86_32 )
2097 - themes? ( staging )
2098 - vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
2099 -
2100 -# FIXME: the test suite is unsuitable for us; many tests require net access
2101 -# or fail due to Xvfb's opengl limitations.
2102 -RESTRICT="test"
2103 -
2104 -COMMON_DEPEND="
2105 - X? (
2106 - x11-libs/libXcursor[${MULTILIB_USEDEP}]
2107 - x11-libs/libXext[${MULTILIB_USEDEP}]
2108 - x11-libs/libXrandr[${MULTILIB_USEDEP}]
2109 - x11-libs/libXi[${MULTILIB_USEDEP}]
2110 - x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
2111 - )
2112 - alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
2113 - capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
2114 - cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
2115 - d3d9? (
2116 - media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
2117 - x11-libs/libX11[${MULTILIB_USEDEP}]
2118 - x11-libs/libXext[${MULTILIB_USEDEP}]
2119 - x11-libs/libxcb[${MULTILIB_USEDEP}]
2120 - )
2121 - fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
2122 - gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
2123 - gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
2124 - gstreamer? (
2125 - media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
2126 - media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
2127 - )
2128 - jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
2129 - lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
2130 - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
2131 - mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
2132 - ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
2133 - netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
2134 - nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
2135 - odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
2136 - openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
2137 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
2138 - opengl? (
2139 - virtual/glu[${MULTILIB_USEDEP}]
2140 - virtual/opengl[${MULTILIB_USEDEP}]
2141 - )
2142 - osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
2143 - pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
2144 - png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
2145 - pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
2146 - scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
2147 - ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
2148 - staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
2149 - themes? (
2150 - dev-libs/glib:2[${MULTILIB_USEDEP}]
2151 - x11-libs/cairo[${MULTILIB_USEDEP}]
2152 - x11-libs/gtk+:3[${MULTILIB_USEDEP}]
2153 - )
2154 - truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
2155 - udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
2156 - udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
2157 - v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
2158 - vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
2159 - xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
2160 - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
2161 - xml? (
2162 - dev-libs/libxml2[${MULTILIB_USEDEP}]
2163 - dev-libs/libxslt[${MULTILIB_USEDEP}]
2164 - )
2165 - abi_x86_32? (
2166 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
2167 - !<app-emulation/emul-linux-x86-baselibs-20140508-r14
2168 - !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
2169 - !<app-emulation/emul-linux-x86-db-20140508-r3
2170 - !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
2171 - !<app-emulation/emul-linux-x86-medialibs-20140508-r6
2172 - !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
2173 - !<app-emulation/emul-linux-x86-opengl-20140508-r1
2174 - !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
2175 - !<app-emulation/emul-linux-x86-sdl-20140508-r1
2176 - !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
2177 - !<app-emulation/emul-linux-x86-soundlibs-20140508
2178 - !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
2179 - !<app-emulation/emul-linux-x86-xlibs-20140508
2180 - )"
2181 -
2182 -RDEPEND="${COMMON_DEPEND}
2183 - dos? ( >=games-emulation/dosbox-0.74_p20160629 )
2184 - perl? (
2185 - dev-lang/perl
2186 - dev-perl/XML-Simple
2187 - )
2188 - pulseaudio? (
2189 - realtime? ( sys-auth/rtkit )
2190 - )
2191 - s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
2192 - samba? ( >=net-fs/samba-3.0.25[winbind] )
2193 - selinux? ( sec-policy/selinux-wine )
2194 - udisks? ( sys-fs/udisks:2 )"
2195 -
2196 -# tools/make_requests requires perl
2197 -DEPEND="${COMMON_DEPEND}
2198 - sys-devel/flex
2199 - >=sys-kernel/linux-headers-2.6
2200 - virtual/pkgconfig
2201 - virtual/yacc
2202 - X? (
2203 - x11-proto/inputproto
2204 - x11-proto/xextproto
2205 - x11-proto/xf86vidmodeproto
2206 - )
2207 - prelink? ( sys-devel/prelink )
2208 - staging? (
2209 - dev-lang/perl
2210 - dev-perl/XML-Simple
2211 - )
2212 - xinerama? ( x11-proto/xineramaproto )"
2213 -
2214 -# These use a non-standard "Wine" category, which is provided by
2215 -# /etc/xdg/applications-merged/wine.menu
2216 -QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
2217 -usr/share/applications/wine-notepad.desktop
2218 -usr/share/applications/wine-uninstaller.desktop
2219 -usr/share/applications/wine-winecfg.desktop"
2220 -
2221 -wine_compiler_check() {
2222 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
2223 -
2224 - # GCC-specific bugs
2225 - if tc-is-gcc; then
2226 - # bug #549768
2227 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
2228 - ebegin "Checking for gcc-5 ms_abi compiler bug"
2229 - $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
2230 - # Run in subshell to prevent "Aborted" message
2231 - ( "${T}"/pr66838 || false ) >/dev/null 2>&1
2232 - if ! eend $?; then
2233 - eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
2234 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
2235 - eerror "or use gcc-config to select a different compiler version."
2236 - eerror "See https://bugs.gentoo.org/549768"
2237 - eerror
2238 - return 1
2239 - fi
2240 - fi
2241 - # bug #574044
2242 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
2243 - ebegin "Checking for gcc-5-3 stack realignment compiler bug"
2244 - # Compile in subshell to prevent "Aborted" message
2245 - ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 ) >/dev/null 2>&1
2246 - if ! eend $?; then
2247 - eerror "Wine cannot be built with this version of gcc-5.3"
2248 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
2249 - eerror "or use gcc-config to select a different compiler version."
2250 - eerror "See https://bugs.gentoo.org/574044"
2251 - eerror
2252 - return 1
2253 - fi
2254 - fi
2255 - fi
2256 -
2257 - # Ensure compiler support
2258 - if use abi_x86_64; then
2259 - ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
2260 - # Compile in subshell to prevent "Aborted" message
2261 - ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
2262 - if ! eend $?; then
2263 - eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
2264 - eerror
2265 - eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
2266 - eerror
2267 - return 1
2268 - fi
2269 - fi
2270 -}
2271 -
2272 -wine_build_environment_check() {
2273 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
2274 -
2275 - if use abi_x86_64; then
2276 - if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
2277 - eerror "You need gcc-4.4+ to compile 64-bit wine"
2278 - die
2279 - elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
2280 - eerror "You need clang-3.8+ to compile 64-bit wine"
2281 - die
2282 - fi
2283 - fi
2284 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
2285 - ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
2286 - ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
2287 - ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
2288 - fi
2289 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
2290 - if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
2291 - ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
2292 - ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
2293 - ewarn "See package.env in man 5 portage for more information on how to do this."
2294 - ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
2295 - fi
2296 - fi
2297 -
2298 - if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
2299 - eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
2300 - eerror "See https://bugs.gentoo.org/487864 for more details."
2301 - eerror
2302 - return 1
2303 - fi
2304 -}
2305 -
2306 -wine_env_vcs_vars() {
2307 - local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
2308 - local pn_live_val="${pn_live_var}"
2309 - eval pn_live_val='$'${pn_live_val}
2310 - if [[ ! -z ${pn_live_val} ]]; then
2311 - if use staging || use d3d9; then
2312 - eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
2313 - eerror "cannot be used to set the commit. Instead, you may use the"
2314 - eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
2315 - eerror
2316 - return 1
2317 - fi
2318 - fi
2319 - if [[ ! -z ${EGIT_COMMIT} ]]; then
2320 - eerror "Commits must now be specified using the environmental variables"
2321 - eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
2322 - eerror
2323 - return 1
2324 - fi
2325 -}
2326 -
2327 -pkg_pretend() {
2328 - wine_build_environment_check || die
2329 -
2330 - # Verify OSS support
2331 - if use oss && ! use kernel_FreeBSD; then
2332 - if ! has_version ">=media-sound/oss-4"; then
2333 - eerror "You cannot build wine with USE=oss without having support from a"
2334 - eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
2335 - eerror
2336 - die
2337 - fi
2338 - fi
2339 -}
2340 -
2341 -pkg_setup() {
2342 - wine_build_environment_check || die
2343 - wine_env_vcs_vars || die
2344 - if ! use staging; then
2345 - GV=${VANILLA_GV}
2346 - MV=${VANILLA_MV}
2347 - else
2348 - GV=${STAGING_GV}
2349 - MV=${STAGING_MV}
2350 - fi
2351 -}
2352 -
2353 -src_unpack() {
2354 - if [[ ${PV} == "9999" ]] ; then
2355 - EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
2356 - if use staging; then
2357 - local CURRENT_WINE_COMMIT=${EGIT_VERSION}
2358 -
2359 - git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
2360 - git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
2361 -
2362 - local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
2363 -
2364 - if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
2365 - einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
2366 - einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
2367 - einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
2368 - fi
2369 - fi
2370 - if use d3d9; then
2371 - git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
2372 - git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
2373 - fi
2374 - fi
2375 -
2376 - default
2377 -
2378 - l10n_find_plocales_changes "${S}/po" "" ".po"
2379 -}
2380 -
2381 -src_prepare() {
2382 - local md5="$(md5sum server/protocol.def)"
2383 - local PATCHES=(
2384 - "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
2385 - "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
2386 - "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
2387 - "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
2388 - )
2389 - if use staging; then
2390 - ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
2391 - ewarn "Wine bugzilla should explicitly state that staging was used."
2392 -
2393 - local STAGING_EXCLUDE=""
2394 - STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
2395 - use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
2396 -
2397 - # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
2398 - ebegin "Running Wine-Staging patch installer"
2399 - (
2400 - set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
2401 - cd "${STAGING_DIR}/patches"
2402 - source "${STAGING_DIR}/patches/patchinstall.sh"
2403 - )
2404 - eend $? || die "Failed to apply Wine-Staging patches"
2405 -
2406 - # To differentiate unofficial staging releases
2407 - if [[ ! -z ${SUFFIX} ]]; then
2408 - sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
2409 - fi
2410 - fi
2411 - if use d3d9; then
2412 - if use staging; then
2413 - PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
2414 - else
2415 - PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
2416 - fi
2417 - PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
2418 - fi
2419 -
2420 - default
2421 - eautoreconf
2422 -
2423 - # Modification of the server protocol requires regenerating the server requests
2424 - if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
2425 - einfo "server/protocol.def was patched; running tools/make_requests"
2426 - tools/make_requests || die #432348
2427 - fi
2428 - sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
2429 - if ! use run-exes; then
2430 - sed -i '/^MimeType/d' loader/wine.desktop || die #117785
2431 - fi
2432 -
2433 - # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
2434 - cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
2435 -
2436 - l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
2437 -}
2438 -
2439 -src_configure() {
2440 - wine_compiler_check || die
2441 -
2442 - export LDCONFIG=/bin/true
2443 - use custom-cflags || strip-flags
2444 -
2445 - multilib-minimal_src_configure
2446 -}
2447 -
2448 -multilib_src_configure() {
2449 - local myconf=(
2450 - --sysconfdir=/etc/wine
2451 - $(use_with alsa)
2452 - $(use_with capi)
2453 - $(use_with lcms cms)
2454 - $(use_with cups)
2455 - $(use_with ncurses curses)
2456 - $(use_with udisks dbus)
2457 - $(use_with fontconfig)
2458 - $(use_with ssl gnutls)
2459 - $(use_enable gecko mshtml)
2460 - $(use_with gphoto2 gphoto)
2461 - $(use_with gsm)
2462 - $(use_with gstreamer)
2463 - --without-hal
2464 - $(use_with jpeg)
2465 - $(use_with ldap)
2466 - $(use_enable mono mscoree)
2467 - $(use_with mp3 mpg123)
2468 - $(use_with netapi)
2469 - $(use_with nls gettext)
2470 - $(use_with openal)
2471 - $(use_with opencl)
2472 - $(use_with opengl)
2473 - $(use_with osmesa)
2474 - $(use_with oss)
2475 - $(use_with pcap)
2476 - $(use_with png)
2477 - $(use_with pulseaudio pulse)
2478 - $(use_with threads pthread)
2479 - $(use_with scanner sane)
2480 - $(use_enable test tests)
2481 - $(use_with truetype freetype)
2482 - $(use_with udev)
2483 - $(use_with v4l)
2484 - $(use_with X x)
2485 - $(use_with xcomposite)
2486 - $(use_with xinerama)
2487 - $(use_with xml)
2488 - $(use_with xml xslt)
2489 - )
2490 -
2491 - use staging && myconf+=(
2492 - --with-xattr
2493 - $(use_with themes gtk3)
2494 - $(use_with vaapi va)
2495 - )
2496 - use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
2497 -
2498 - local PKG_CONFIG AR RANLIB
2499 - # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
2500 - # set AR and RANLIB to make QA scripts happy; #483342
2501 - tc-export PKG_CONFIG AR RANLIB
2502 -
2503 - if use amd64; then
2504 - if [[ ${ABI} == amd64 ]]; then
2505 - myconf+=( --enable-win64 )
2506 - else
2507 - myconf+=( --disable-win64 )
2508 - fi
2509 -
2510 - # Note: using --with-wine64 results in problems with multilib.eclass
2511 - # CC/LD hackery. We're using separate tools instead.
2512 - fi
2513 -
2514 - ECONF_SOURCE=${S} \
2515 - econf "${myconf[@]}"
2516 - emake depend
2517 -}
2518 -
2519 -multilib_src_test() {
2520 - # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
2521 - if [[ ${ABI} == x86 ]]; then
2522 - if [[ $(id -u) == 0 ]]; then
2523 - ewarn "Skipping tests since they cannot be run under the root user."
2524 - ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
2525 - return
2526 - fi
2527 -
2528 - WINEPREFIX="${T}/.wine-${ABI}" \
2529 - Xemake test
2530 - fi
2531 -}
2532 -
2533 -multilib_src_install_all() {
2534 - local DOCS=( ANNOUNCE AUTHORS README )
2535 - local l
2536 - add_locale_docs() {
2537 - local locale_doc="documentation/README.$1"
2538 - [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
2539 - }
2540 - l10n_for_each_locale_do add_locale_docs
2541 -
2542 - einstalldocs
2543 - prune_libtool_files --all
2544 -
2545 - emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
2546 - if use gecko ; then
2547 - insinto /usr/share/wine/gecko
2548 - use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
2549 - use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
2550 - fi
2551 - if use mono ; then
2552 - insinto /usr/share/wine/mono
2553 - doins "${DISTDIR}"/wine-mono-${MV}.msi
2554 - fi
2555 - if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
2556 - rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
2557 - fi
2558 -
2559 - # Remove wineconsole if neither backend is installed #551124
2560 - if ! use X && ! use ncurses; then
2561 - rm "${D}"/usr/bin/wineconsole* || die
2562 - rm "${D}"/usr/share/man/man1/wineconsole* || die
2563 - rm_wineconsole() {
2564 - rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
2565 - }
2566 - multilib_foreach_abi rm_wineconsole
2567 - fi
2568 -
2569 - use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
2570 - use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
2571 -
2572 - if use abi_x86_64 && ! use abi_x86_32; then
2573 - dosym wine64 /usr/bin/wine # 404331
2574 - dosym wine64-preloader /usr/bin/wine-preloader
2575 - fi
2576 -
2577 - # respect LINGUAS when installing man pages, #469418
2578 - for l in de fr pl; do
2579 - has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
2580 - done
2581 -}
2582 -
2583 -pkg_preinst() {
2584 - gnome2_icon_savelist
2585 -}
2586 -
2587 -pkg_postinst() {
2588 - gnome2_icon_cache_update
2589 - fdo-mime_desktop_database_update
2590 -
2591 - if ! use gecko; then
2592 - ewarn "Without Wine Gecko, wine prefixes will not have a default"
2593 - ewarn "implementation of iexplore. Many older windows applications"
2594 - ewarn "rely upon the existence of an iexplore implementation, so"
2595 - ewarn "you will likely need to install an external one, like via winetricks"
2596 - fi
2597 - if ! use mono; then
2598 - ewarn "Without Wine Mono, wine prefixes will not have a default"
2599 - ewarn "implementation of .NET. Many windows applications rely upon"
2600 - ewarn "the existence of a .NET implementation, so you will likely need"
2601 - ewarn "to install an external one, like via winetricks"
2602 - fi
2603 -}
2604 -
2605 -pkg_postrm() {
2606 - gnome2_icon_cache_update
2607 - fdo-mime_desktop_database_update
2608 -}
2609
2610 diff --git a/app-emulation/wine/wine-9999.ebuild b/app-emulation/wine/wine-9999.ebuild
2611 deleted file mode 100644
2612 index 42e616b03a9..00000000000
2613 --- a/app-emulation/wine/wine-9999.ebuild
2614 +++ /dev/null
2615 @@ -1,581 +0,0 @@
2616 -# Copyright 1999-2018 Gentoo Foundation
2617 -# Distributed under the terms of the GNU General Public License v2
2618 -
2619 -EAPI=6
2620 -
2621 -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"
2622 -PLOCALE_BACKUP="en"
2623 -
2624 -inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
2625 -
2626 -if [[ ${PV} == "9999" ]] ; then
2627 - EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
2628 - EGIT_BRANCH="master"
2629 - inherit git-r3
2630 - SRC_URI=""
2631 - #KEYWORDS=""
2632 -else
2633 - MAJOR_V=$(get_version_component_range 1)
2634 - SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${P}.tar.xz"
2635 - KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
2636 -fi
2637 -
2638 -VANILLA_GV="2.47"
2639 -VANILLA_MV="4.6.4"
2640 -STAGING_GV="2.47"
2641 -STAGING_MV="4.6.4"
2642 -[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
2643 -STAGING_P="wine-staging-${PV}"
2644 -STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
2645 -D3D9_P="wine-d3d9-${PV}"
2646 -D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}"
2647 -WINE_GENTOO="wine-gentoo-2015.03.07"
2648 -DESCRIPTION="Free implementation of Windows(tm) on Unix"
2649 -HOMEPAGE="https://www.winehq.org/"
2650 -SRC_URI="${SRC_URI}
2651 - !staging? (
2652 - gecko? (
2653 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
2654 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
2655 - )
2656 - mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
2657 - )
2658 - staging? (
2659 - gecko? (
2660 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
2661 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
2662 - )
2663 - mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
2664 - )
2665 - https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
2666 -
2667 -if [[ ${PV} == "9999" ]] ; then
2668 - STAGING_EGIT_REPO_URI="https://github.com/wine-compholio/wine-staging.git"
2669 - D3D9_EGIT_REPO_URI="https://github.com/sarnex/wine-d3d9-patches.git"
2670 -else
2671 - SRC_URI="${SRC_URI}
2672 - staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )
2673 - d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/${D3D9_P}.tar.gz )"
2674 -fi
2675 -
2676 -LICENSE="LGPL-2.1"
2677 -SLOT="0"
2678 -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"
2679 -REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
2680 - X? ( truetype )
2681 - elibc_glibc? ( threads )
2682 - osmesa? ( opengl )
2683 - pipelight? ( staging )
2684 - s3tc? ( staging )
2685 - test? ( abi_x86_32 )
2686 - themes? ( staging )
2687 - vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
2688 -
2689 -# FIXME: the test suite is unsuitable for us; many tests require net access
2690 -# or fail due to Xvfb's opengl limitations.
2691 -RESTRICT="test"
2692 -
2693 -COMMON_DEPEND="
2694 - X? (
2695 - x11-libs/libXcursor[${MULTILIB_USEDEP}]
2696 - x11-libs/libXext[${MULTILIB_USEDEP}]
2697 - x11-libs/libXrandr[${MULTILIB_USEDEP}]
2698 - x11-libs/libXi[${MULTILIB_USEDEP}]
2699 - x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
2700 - )
2701 - alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
2702 - capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
2703 - cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
2704 - d3d9? (
2705 - media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
2706 - x11-libs/libX11[${MULTILIB_USEDEP}]
2707 - x11-libs/libXext[${MULTILIB_USEDEP}]
2708 - x11-libs/libxcb[${MULTILIB_USEDEP}]
2709 - )
2710 - fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
2711 - gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
2712 - gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
2713 - gstreamer? (
2714 - media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
2715 - media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
2716 - )
2717 - jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
2718 - lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
2719 - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
2720 - mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
2721 - ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
2722 - netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
2723 - nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
2724 - odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
2725 - openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
2726 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
2727 - opengl? (
2728 - virtual/glu[${MULTILIB_USEDEP}]
2729 - virtual/opengl[${MULTILIB_USEDEP}]
2730 - )
2731 - osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
2732 - pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
2733 - png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
2734 - pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
2735 - scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
2736 - ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
2737 - staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
2738 - themes? (
2739 - dev-libs/glib:2[${MULTILIB_USEDEP}]
2740 - x11-libs/cairo[${MULTILIB_USEDEP}]
2741 - x11-libs/gtk+:3[${MULTILIB_USEDEP}]
2742 - )
2743 - truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
2744 - udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
2745 - udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
2746 - v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
2747 - vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
2748 - xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
2749 - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
2750 - xml? (
2751 - dev-libs/libxml2[${MULTILIB_USEDEP}]
2752 - dev-libs/libxslt[${MULTILIB_USEDEP}]
2753 - )
2754 - abi_x86_32? (
2755 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
2756 - !<app-emulation/emul-linux-x86-baselibs-20140508-r14
2757 - !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
2758 - !<app-emulation/emul-linux-x86-db-20140508-r3
2759 - !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
2760 - !<app-emulation/emul-linux-x86-medialibs-20140508-r6
2761 - !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
2762 - !<app-emulation/emul-linux-x86-opengl-20140508-r1
2763 - !app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
2764 - !<app-emulation/emul-linux-x86-sdl-20140508-r1
2765 - !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
2766 - !<app-emulation/emul-linux-x86-soundlibs-20140508
2767 - !app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
2768 - !<app-emulation/emul-linux-x86-xlibs-20140508
2769 - )"
2770 -
2771 -RDEPEND="${COMMON_DEPEND}
2772 - dos? ( >=games-emulation/dosbox-0.74_p20160629 )
2773 - perl? (
2774 - dev-lang/perl
2775 - dev-perl/XML-Simple
2776 - )
2777 - pulseaudio? (
2778 - realtime? ( sys-auth/rtkit )
2779 - )
2780 - s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
2781 - samba? ( >=net-fs/samba-3.0.25[winbind] )
2782 - selinux? ( sec-policy/selinux-wine )
2783 - udisks? ( sys-fs/udisks:2 )"
2784 -
2785 -# tools/make_requests requires perl
2786 -DEPEND="${COMMON_DEPEND}
2787 - sys-devel/flex
2788 - >=sys-kernel/linux-headers-2.6
2789 - virtual/pkgconfig
2790 - virtual/yacc
2791 - X? (
2792 - x11-proto/inputproto
2793 - x11-proto/xextproto
2794 - x11-proto/xf86vidmodeproto
2795 - )
2796 - prelink? ( sys-devel/prelink )
2797 - staging? (
2798 - dev-lang/perl
2799 - dev-perl/XML-Simple
2800 - )
2801 - xinerama? ( x11-proto/xineramaproto )"
2802 -
2803 -# These use a non-standard "Wine" category, which is provided by
2804 -# /etc/xdg/applications-merged/wine.menu
2805 -QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
2806 -usr/share/applications/wine-notepad.desktop
2807 -usr/share/applications/wine-uninstaller.desktop
2808 -usr/share/applications/wine-winecfg.desktop"
2809 -
2810 -wine_compiler_check() {
2811 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
2812 -
2813 - # GCC-specific bugs
2814 - if tc-is-gcc; then
2815 - # bug #549768
2816 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
2817 - ebegin "Checking for gcc-5 ms_abi compiler bug"
2818 - $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
2819 - # Run in subshell to prevent "Aborted" message
2820 - ( "${T}"/pr66838 || false ) >/dev/null 2>&1
2821 - if ! eend $?; then
2822 - eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
2823 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
2824 - eerror "or use gcc-config to select a different compiler version."
2825 - eerror "See https://bugs.gentoo.org/549768"
2826 - eerror
2827 - return 1
2828 - fi
2829 - fi
2830 - # bug #574044
2831 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
2832 - ebegin "Checking for gcc-5-3 stack realignment compiler bug"
2833 - # Compile in subshell to prevent "Aborted" message
2834 - ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 ) >/dev/null 2>&1
2835 - if ! eend $?; then
2836 - eerror "Wine cannot be built with this version of gcc-5.3"
2837 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
2838 - eerror "or use gcc-config to select a different compiler version."
2839 - eerror "See https://bugs.gentoo.org/574044"
2840 - eerror
2841 - return 1
2842 - fi
2843 - fi
2844 - fi
2845 -
2846 - # Ensure compiler support
2847 - if use abi_x86_64; then
2848 - ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
2849 - # Compile in subshell to prevent "Aborted" message
2850 - ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
2851 - if ! eend $?; then
2852 - eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
2853 - eerror
2854 - eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
2855 - eerror
2856 - return 1
2857 - fi
2858 - fi
2859 -}
2860 -
2861 -wine_build_environment_check() {
2862 - [[ ${MERGE_TYPE} = "binary" ]] && return 0
2863 -
2864 - if use abi_x86_64; then
2865 - if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
2866 - eerror "You need gcc-4.4+ to compile 64-bit wine"
2867 - die
2868 - elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
2869 - eerror "You need clang-3.8+ to compile 64-bit wine"
2870 - die
2871 - fi
2872 - fi
2873 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
2874 - ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
2875 - ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
2876 - ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
2877 - fi
2878 - if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
2879 - if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
2880 - ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
2881 - ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
2882 - ewarn "See package.env in man 5 portage for more information on how to do this."
2883 - ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
2884 - fi
2885 - fi
2886 -
2887 - if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
2888 - eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
2889 - eerror "See https://bugs.gentoo.org/487864 for more details."
2890 - eerror
2891 - return 1
2892 - fi
2893 -}
2894 -
2895 -wine_env_vcs_vars() {
2896 - local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
2897 - local pn_live_val="${pn_live_var}"
2898 - eval pn_live_val='$'${pn_live_val}
2899 - if [[ ! -z ${pn_live_val} ]]; then
2900 - if use staging || use d3d9; then
2901 - eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
2902 - eerror "cannot be used to set the commit. Instead, you may use the"
2903 - eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
2904 - eerror
2905 - return 1
2906 - fi
2907 - fi
2908 - if [[ ! -z ${EGIT_COMMIT} ]]; then
2909 - eerror "Commits must now be specified using the environmental variables"
2910 - eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
2911 - eerror
2912 - return 1
2913 - fi
2914 -}
2915 -
2916 -pkg_pretend() {
2917 - wine_build_environment_check || die
2918 -
2919 - # Verify OSS support
2920 - if use oss && ! use kernel_FreeBSD; then
2921 - if ! has_version ">=media-sound/oss-4"; then
2922 - eerror "You cannot build wine with USE=oss without having support from a"
2923 - eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
2924 - eerror
2925 - die
2926 - fi
2927 - fi
2928 -}
2929 -
2930 -pkg_setup() {
2931 - wine_build_environment_check || die
2932 - wine_env_vcs_vars || die
2933 - if ! use staging; then
2934 - GV=${VANILLA_GV}
2935 - MV=${VANILLA_MV}
2936 - else
2937 - GV=${STAGING_GV}
2938 - MV=${STAGING_MV}
2939 - fi
2940 -}
2941 -
2942 -src_unpack() {
2943 - if [[ ${PV} == "9999" ]] ; then
2944 - EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
2945 - if use staging; then
2946 - local CURRENT_WINE_COMMIT=${EGIT_VERSION}
2947 -
2948 - git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
2949 - git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
2950 -
2951 - local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
2952 -
2953 - if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
2954 - einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
2955 - einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
2956 - einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
2957 - fi
2958 - fi
2959 - if use d3d9; then
2960 - git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
2961 - git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
2962 - fi
2963 - fi
2964 -
2965 - default
2966 -
2967 - l10n_find_plocales_changes "${S}/po" "" ".po"
2968 -}
2969 -
2970 -src_prepare() {
2971 - local md5="$(md5sum server/protocol.def)"
2972 - local PATCHES=(
2973 - "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
2974 - "${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
2975 - "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
2976 - )
2977 - if use staging; then
2978 - ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
2979 - ewarn "Wine bugzilla should explicitly state that staging was used."
2980 -
2981 - local STAGING_EXCLUDE=""
2982 - STAGING_EXCLUDE="${STAGING_EXCLUDE} -W winhlp32-Flex_Workaround" # Avoid double patching https://bugs.winehq.org/show_bug.cgi?id=42132
2983 - use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
2984 -
2985 - # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
2986 - ebegin "Running Wine-Staging patch installer"
2987 - (
2988 - set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
2989 - cd "${STAGING_DIR}/patches"
2990 - source "${STAGING_DIR}/patches/patchinstall.sh"
2991 - )
2992 - eend $? || die "Failed to apply Wine-Staging patches"
2993 -
2994 - # To differentiate unofficial staging releases
2995 - if [[ ! -z ${SUFFIX} ]]; then
2996 - sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
2997 - fi
2998 - fi
2999 - if use d3d9; then
3000 - if use staging; then
3001 - PATCHES+=( "${D3D9_DIR}/staging-helper.patch" )
3002 - else
3003 - PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" )
3004 - fi
3005 - PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" )
3006 - fi
3007 -
3008 - default
3009 - eautoreconf
3010 -
3011 - # Modification of the server protocol requires regenerating the server requests
3012 - if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
3013 - einfo "server/protocol.def was patched; running tools/make_requests"
3014 - tools/make_requests || die #432348
3015 - fi
3016 - sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
3017 - if ! use run-exes; then
3018 - sed -i '/^MimeType/d' loader/wine.desktop || die #117785
3019 - fi
3020 -
3021 - # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
3022 - cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
3023 -
3024 - l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
3025 -}
3026 -
3027 -src_configure() {
3028 - wine_compiler_check || die
3029 -
3030 - export LDCONFIG=/bin/true
3031 - use custom-cflags || strip-flags
3032 -
3033 - multilib-minimal_src_configure
3034 -}
3035 -
3036 -multilib_src_configure() {
3037 - local myconf=(
3038 - --sysconfdir=/etc/wine
3039 - $(use_with alsa)
3040 - $(use_with capi)
3041 - $(use_with lcms cms)
3042 - $(use_with cups)
3043 - $(use_with ncurses curses)
3044 - $(use_with udisks dbus)
3045 - $(use_with fontconfig)
3046 - $(use_with ssl gnutls)
3047 - $(use_enable gecko mshtml)
3048 - $(use_with gphoto2 gphoto)
3049 - $(use_with gsm)
3050 - $(use_with gstreamer)
3051 - --without-hal
3052 - $(use_with jpeg)
3053 - $(use_with ldap)
3054 - $(use_enable mono mscoree)
3055 - $(use_with mp3 mpg123)
3056 - $(use_with netapi)
3057 - $(use_with nls gettext)
3058 - $(use_with openal)
3059 - $(use_with opencl)
3060 - $(use_with opengl)
3061 - $(use_with osmesa)
3062 - $(use_with oss)
3063 - $(use_with pcap)
3064 - $(use_with png)
3065 - $(use_with pulseaudio pulse)
3066 - $(use_with threads pthread)
3067 - $(use_with scanner sane)
3068 - $(use_enable test tests)
3069 - $(use_with truetype freetype)
3070 - $(use_with udev)
3071 - $(use_with v4l)
3072 - $(use_with X x)
3073 - $(use_with xcomposite)
3074 - $(use_with xinerama)
3075 - $(use_with xml)
3076 - $(use_with xml xslt)
3077 - )
3078 -
3079 - use staging && myconf+=(
3080 - --with-xattr
3081 - $(use_with themes gtk3)
3082 - $(use_with vaapi va)
3083 - )
3084 - use d3d9 && myconf+=( $(use_with d3d9 d3d9-nine) )
3085 -
3086 - local PKG_CONFIG AR RANLIB
3087 - # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
3088 - # set AR and RANLIB to make QA scripts happy; #483342
3089 - tc-export PKG_CONFIG AR RANLIB
3090 -
3091 - if use amd64; then
3092 - if [[ ${ABI} == amd64 ]]; then
3093 - myconf+=( --enable-win64 )
3094 - else
3095 - myconf+=( --disable-win64 )
3096 - fi
3097 -
3098 - # Note: using --with-wine64 results in problems with multilib.eclass
3099 - # CC/LD hackery. We're using separate tools instead.
3100 - fi
3101 -
3102 - ECONF_SOURCE=${S} \
3103 - econf "${myconf[@]}"
3104 - emake depend
3105 -}
3106 -
3107 -multilib_src_test() {
3108 - # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
3109 - if [[ ${ABI} == x86 ]]; then
3110 - if [[ $(id -u) == 0 ]]; then
3111 - ewarn "Skipping tests since they cannot be run under the root user."
3112 - ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
3113 - return
3114 - fi
3115 -
3116 - WINEPREFIX="${T}/.wine-${ABI}" \
3117 - Xemake test
3118 - fi
3119 -}
3120 -
3121 -multilib_src_install_all() {
3122 - local DOCS=( ANNOUNCE AUTHORS README )
3123 - local l
3124 - add_locale_docs() {
3125 - local locale_doc="documentation/README.$1"
3126 - [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
3127 - }
3128 - l10n_for_each_locale_do add_locale_docs
3129 -
3130 - einstalldocs
3131 - prune_libtool_files --all
3132 -
3133 - emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
3134 - if use gecko ; then
3135 - insinto /usr/share/wine/gecko
3136 - use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
3137 - use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
3138 - fi
3139 - if use mono ; then
3140 - insinto /usr/share/wine/mono
3141 - doins "${DISTDIR}"/wine-mono-${MV}.msi
3142 - fi
3143 - if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
3144 - rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
3145 - fi
3146 -
3147 - # Remove wineconsole if neither backend is installed #551124
3148 - if ! use X && ! use ncurses; then
3149 - rm "${D}"/usr/bin/wineconsole* || die
3150 - rm "${D}"/usr/share/man/man1/wineconsole* || die
3151 - rm_wineconsole() {
3152 - rm "${D}usr/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
3153 - }
3154 - multilib_foreach_abi rm_wineconsole
3155 - fi
3156 -
3157 - use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
3158 - use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
3159 -
3160 - if use abi_x86_64 && ! use abi_x86_32; then
3161 - dosym wine64 /usr/bin/wine # 404331
3162 - dosym wine64-preloader /usr/bin/wine-preloader
3163 - fi
3164 -
3165 - # respect LINGUAS when installing man pages, #469418
3166 - for l in de fr pl; do
3167 - has ${l} ${LINGUAS-${l}} || rm -r "${D}"usr/share/man/${l}*
3168 - done
3169 -}
3170 -
3171 -pkg_preinst() {
3172 - gnome2_icon_savelist
3173 -}
3174 -
3175 -pkg_postinst() {
3176 - gnome2_icon_cache_update
3177 - fdo-mime_desktop_database_update
3178 -
3179 - if ! use gecko; then
3180 - ewarn "Without Wine Gecko, wine prefixes will not have a default"
3181 - ewarn "implementation of iexplore. Many older windows applications"
3182 - ewarn "rely upon the existence of an iexplore implementation, so"
3183 - ewarn "you will likely need to install an external one, like via winetricks"
3184 - fi
3185 - if ! use mono; then
3186 - ewarn "Without Wine Mono, wine prefixes will not have a default"
3187 - ewarn "implementation of .NET. Many windows applications rely upon"
3188 - ewarn "the existence of a .NET implementation, so you will likely need"
3189 - ewarn "to install an external one, like via winetricks"
3190 - fi
3191 -}
3192 -
3193 -pkg_postrm() {
3194 - gnome2_icon_cache_update
3195 - fdo-mime_desktop_database_update
3196 -}