Gentoo Archives: gentoo-commits

From: Andrew Savchenko <bircoph@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] dev/bircoph:master commit in: app-emulation/wine/, app-emulation/wine/files/
Date: Fri, 29 Jul 2016 14:55:09
Message-Id: 1469803281.29bdb6848e7e8ba4e28efd06d13e2f0ac8d6e4a0.bircoph@gentoo
1 commit: 29bdb6848e7e8ba4e28efd06d13e2f0ac8d6e4a0
2 Author: Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
3 AuthorDate: Fri Jul 29 14:41:21 2016 +0000
4 Commit: Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
5 CommitDate: Fri Jul 29 14:41:21 2016 +0000
6 URL: https://gitweb.gentoo.org/dev/bircoph.git/commit/?id=29bdb684
7
8 app-emulation/wine: sync with portage
9
10 app-emulation/wine/Manifest | 12 +-
11 app-emulation/wine/files/builtin_ms_va_list.c | 9 +
12 .../wine/{wine-1.9.9.ebuild => wine-1.9.15.ebuild} | 213 ++++++++++++++-------
13 3 files changed, 157 insertions(+), 77 deletions(-)
14
15 diff --git a/app-emulation/wine/Manifest b/app-emulation/wine/Manifest
16 index 4de707a..7a52730 100644
17 --- a/app-emulation/wine/Manifest
18 +++ b/app-emulation/wine/Manifest
19 @@ -1,7 +1,7 @@
20 -DIST wine-1.9.9.tar.bz2 23155986 SHA256 a1e76fd9842d0fe385e930cd62e7193035a04ed11fe771d9cd6ee9b2ceda7b41 SHA512 370caf527eac948b8bf2583e8f8a647e9b353b8ea70a341a0eb1fd768eea6c982a5c8b7eb23ecfded6eebea370d06bd23ee1ba7b2ded63547f571cc293ee1695 WHIRLPOOL bf97f4fcacda1913d2e7be21f6c771392b06653a7877ea07cf65731bf37eae3f3eb5d5fe5971dae18be709afcbbc65b3337e8d1d0c01e938671eed095aacd0af
21 -DIST wine-d3d9-1.9.9.tar.gz 45615 SHA256 cc6575ef97c6ff74d11d370f6af012c82b33697cb5d120d93d3d501623ef4856 SHA512 142e4c11c392a7999093c6703e3e506c365633e7ae4c2426d164e411e5d28fd0c7b00acffc0ca35c755d8ff6d8585072f6a3d3bcb8b5e32417db5597f236c4d0 WHIRLPOOL d56f84a455dc643f756fedfffdc73640cb34aa8164df747fe44f204dd7165d7b000c22de8c33c9978ad97b32b8b6d285551de8607acf75b5f079cb7eeeadb05e
22 +DIST wine-1.9.15.tar.bz2 23357574 SHA256 cf992ac991b0e49fd0b186305021acf6e612d5df18d30e3d5808fa6f6731adda SHA512 39eda9c0123453321d414690db5ca5849326bf44d116a353296e88026fa618535a306b9e0c6666ea6716dc8d44f81a2caeae11be80f15448b67bde2be9e1210a WHIRLPOOL cdaa74399ef4849a297a9d8040333500e1007ca8374b76e0677ba8b21e087feac262cf449f90826f4cd417989742670f86eed4c2fb5ef4345e8b955e8213fbef
23 +DIST wine-d3d9-1.9.15.tar.gz 46418 SHA256 e6d8029e37c4afa8018f595ae8ee23a547782a614d5605352301685889996388 SHA512 6ad990ebd023d0125146c3b785cf38862368c3034daac6dad1a2e3a04737c5a31fbc81b562e4571ea386f515a04b50d42699b783ab15d9e3b19b12b1a7148c08 WHIRLPOOL 01a37e81fbbf99bbeab7b3c06eaadd52e8d4cf6459958465aa53d76b1717fb8bda356bae3f36c790bca29f38f80546c8d32a376f5fcb4d35f1593b647c9f5109
24 DIST wine-gentoo-2015.03.07.tar.bz2 85419 SHA256 f13f93dc49bbc33a294c4d511b6e01aec2d38bff77a1e44d07668291add1ab04 SHA512 bae1d2d5575d340d01f44008104f0e5ec0c4a4982995dec37d501594cd21d07a2b4ad4465c4273646d5bf6521996b4b82471097864be75342abe3e7d478a56bd WHIRLPOOL 0f254dd692e87a1f71dd19f6c1c8c59b8a91b994e75912a2e6e3ba5e875b85119fe497a331a95c2ce33bbf5f064143d23ee00275da92c494227de0807c9abb06
25 -DIST wine-mono-4.6.2.msi 45676544 SHA256 a46c5b32b6ed66e2e8d7ac9b15ff9ffe143a3aa6f12f2ea07a6ca9a4d2023e41 SHA512 7ff31b64539976cc4d5ded1b38549c9bec620ee7679b5a53093195b7df1a93a57db04ef81d94342ec6e4389fef356660e3eb4c35e7b50b6df98288ca19eb633f WHIRLPOOL eef536a301127f78b06d56054a95e86e73ce7ecd0522a41f6d581d6cfb8660ded5b8148e00e9f8ee77361bfa4a66996559480cd7881c4d132169b5de698f4ef2
26 -DIST wine-staging-1.9.9.tar.gz 9997618 SHA256 23e165b0259561a3449a7c0195352cca96fdc247ad524c6567421d9971ebf517 SHA512 4e06315eda4ba8e7a44c06a422ebb8a315c808f1f651430e7fc56950916a61c38aa6d3a2467a6c70be2c344744d00b25d83df27c8629c783c8b67584c01f8c0c WHIRLPOOL 01fe2ddb3de5485f221787a3899bca171ecf4d14c3c0c8a9b973757f1507a4ce3dcbf9c4cea2b20b31fb1ddc0ae0eaf8600c811f4fbcd1ffa39eb5fa81dcf313
27 -DIST wine_gecko-2.44-x86.msi 34832896 SHA256 77a64ad17571b3a00386a88b9b1b1ea4b7e759061675568bee0ec238fb456d39 SHA512 6c3b6ccbab0081d8ab188a9a031050ca8fd7ef8f1de0efa3a57569d6166397f91bf13037402e3437cc8cfc4fc25e7c2f8be32f66500306d567055e89aae0797d WHIRLPOOL 59c269a6d6e3ba829bd24cf81eba991f91bb0c1995a1841b7e548593f544088959093ba29eb83b53f38f77e71780d8288f0b12a212862af1374f954d61f24999
28 -DIST wine_gecko-2.44-x86_64.msi 36273152 SHA256 628e5a0d3b7406cbd2f031139be06e2ef695081fc77ee18dc06748e649ff6661 SHA512 71dcbd28ff048fc587ed796f2f09815f624774742abc192d9aa1104485f5d8cd93b2308fb72506f82d0ea5032dd6c7ed2af4ac95121e7b2367e7a6dd77cb042f WHIRLPOOL a327f2b5a8f47498967b80e06336918006b71b4e1b90a96943faa6f05e481273203259ab6f8a3b45ba85249344c76c100880ad88dd346a94ee45327fffb2f3a1
29 +DIST wine-mono-4.6.3.msi 45591040 SHA256 f883e88ae78c7ea3d887c24023aa1ed03bb71a83f717c6595abf18b31fef28b9 SHA512 b940d7c07d0892ac76ad9e4c3d4d159afeee43765b6bfe07f14beee1fc8674b58a9af20a5ee0a4d9667a15b83a0e6538c0143b9072c677dd753e32bbdd17065b WHIRLPOOL f04002904d99dc2615a179c13ae810c8208808c60c5e5eda7f9c3f07163d645cccf6f74d4354331fa25dfb41ef2c24e432f83670a3e7c3a90fa6d144b3d193b9
30 +DIST wine-staging-1.9.15.tar.gz 9926094 SHA256 10b836e4f78b7da1693cf1199f1b16c160a844a6372733817be31de67ea85150 SHA512 7eb1774381925944abe6bcbe1a8e1810b4d7f51d1f3c15bcdc15084420bfdb6f90b8edbbc0876ad87e896471ab9c9f21d14420c3ecb485aa8ead4256ff8ca60b WHIRLPOOL bcb9e7f15437a03baed57aeb082267b47a06504246f029bf31ead117a258b1b26dd70924427c0cda1526f7fab5ac1eb17a756fb5c1b2f87d8f8727923a185d4e
31 +DIST wine_gecko-2.47-x86.msi 49266176 SHA256 3b8a361f5d63952d21caafd74e849a774994822fb96c5922b01d554f1677643a SHA512 e0d06102dcb8ec2d24e8c8c3f5c2ee5cb47c18e203dfb43d85de008d682ff874fb664fef1df909a5a7857de39c7e8ce5175e734a11964ec4cd35f8fbacaea3a4 WHIRLPOOL 2b4e3e88d530106d942200e5cdc67e51fc529c51864dee687ff1d6ae4cc94557481f74797a5ca7c1de8ca5ad00f7d9cb71e484ab24d73867d1032ccd88c0c376
32 +DIST wine_gecko-2.47-x86_64.msi 50806272 SHA256 c565ea25e50ea953937d4ab01299e4306da4a556946327d253ea9b28357e4a7d SHA512 7c2496b15a06bc6906bc60afb3ac082e3f9931207fa624e60297020211d66aa9b420a61e95730a0dbdcefbe4b26c811d0c896ecd9c363b5107d08c3fa22fef41 WHIRLPOOL c7619954da22a47dae86ef4c6c0cfbece41943edcceb2c21babe610e0a0b2197b244ebbddd2f3986ee4d5251b062e5f3b8e079426ec77c311b928d18c8451677
33
34 diff --git a/app-emulation/wine/files/builtin_ms_va_list.c b/app-emulation/wine/files/builtin_ms_va_list.c
35 new file mode 100644
36 index 0000000..f36fc26
37 --- /dev/null
38 +++ b/app-emulation/wine/files/builtin_ms_va_list.c
39 @@ -0,0 +1,9 @@
40 +/* Taken from Wine's configure script. LGPL 2.1+ */
41 +
42 +#include <stdarg.h>
43 +
44 +int main(void)
45 +{
46 + void func(__builtin_ms_va_list *args);
47 + return 0;
48 +}
49
50 diff --git a/app-emulation/wine/wine-1.9.9.ebuild b/app-emulation/wine/wine-1.9.15.ebuild
51 similarity index 75%
52 rename from app-emulation/wine/wine-1.9.9.ebuild
53 rename to app-emulation/wine/wine-1.9.15.ebuild
54 index 7561b7a..4433df1 100644
55 --- a/app-emulation/wine/wine-1.9.9.ebuild
56 +++ b/app-emulation/wine/wine-1.9.15.ebuild
57 @@ -21,8 +21,10 @@ else
58 KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
59 fi
60
61 -GV="2.44"
62 -MV="4.6.2"
63 +VANILLA_GV="2.47"
64 +VANILLA_MV="4.6.3"
65 +STAGING_GV="2.47"
66 +STAGING_MV="4.6.3"
67 [[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
68 STAGING_P="wine-staging-${PV}"
69 STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
70 @@ -32,11 +34,20 @@ WINE_GENTOO="wine-gentoo-2015.03.07"
71 DESCRIPTION="Free implementation of Windows(tm) on Unix"
72 HOMEPAGE="http://www.winehq.org/"
73 SRC_URI="${SRC_URI}
74 - gecko? (
75 - abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
76 - abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
77 + !staging? (
78 + gecko? (
79 + abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
80 + abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
81 + )
82 + mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
83 + )
84 + staging? (
85 + gecko? (
86 + abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
87 + abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
88 + )
89 + mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
90 )
91 - mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
92 https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
93
94 if [[ ${PV} == "9999" ]] ; then
95 @@ -50,32 +61,21 @@ fi
96
97 LICENSE="LGPL-2.1"
98 SLOT="0"
99 -IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +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 +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
100 +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 +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
101 REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
102 - test? ( abi_x86_32 )
103 + X? ( truetype )
104 elibc_glibc? ( threads )
105 + osmesa? ( opengl )
106 pipelight? ( staging )
107 s3tc? ( staging )
108 - vaapi? ( staging )
109 - osmesa? ( opengl )" #286560
110 + test? ( abi_x86_32 )
111 + vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
112
113 # FIXME: the test suite is unsuitable for us; many tests require net access
114 # or fail due to Xvfb's opengl limitations.
115 RESTRICT="test"
116
117 COMMON_DEPEND="
118 - truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
119 - capi? ( net-dialup/capi4k-utils )
120 - d3d9? ( media-libs/mesa[d3d9,${MULTILIB_USEDEP}] )
121 - ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
122 - udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
123 - fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
124 - gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
125 - openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
126 - gstreamer? (
127 - media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
128 - media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
129 - )
130 X? (
131 x11-libs/libXcursor[${MULTILIB_USEDEP}]
132 x11-libs/libXext[${MULTILIB_USEDEP}]
133 @@ -83,36 +83,53 @@ COMMON_DEPEND="
134 x11-libs/libXi[${MULTILIB_USEDEP}]
135 x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
136 )
137 - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
138 alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
139 + capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
140 cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
141 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
142 - opengl? (
143 - virtual/glu[${MULTILIB_USEDEP}]
144 - virtual/opengl[${MULTILIB_USEDEP}]
145 + d3d9? (
146 + media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
147 + x11-libs/libX11[${MULTILIB_USEDEP}]
148 + x11-libs/libXext[${MULTILIB_USEDEP}]
149 + x11-libs/libxcb[${MULTILIB_USEDEP}]
150 )
151 + fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
152 + gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
153 gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
154 + gstreamer? (
155 + media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
156 + media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
157 + )
158 jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
159 - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
160 lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
161 + ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
162 mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
163 + ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
164 netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
165 nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
166 odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
167 + openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
168 + opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
169 + opengl? (
170 + virtual/glu[${MULTILIB_USEDEP}]
171 + virtual/opengl[${MULTILIB_USEDEP}]
172 + )
173 osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
174 pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
175 + png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
176 pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
177 - staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
178 - xml? (
179 - dev-libs/libxml2[${MULTILIB_USEDEP}]
180 - dev-libs/libxslt[${MULTILIB_USEDEP}]
181 - )
182 scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
183 ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
184 - png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
185 + staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
186 + truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
187 + udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
188 v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
189 vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
190 xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
191 + xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
192 + xml? (
193 + dev-libs/libxml2[${MULTILIB_USEDEP}]
194 + dev-libs/libxslt[${MULTILIB_USEDEP}]
195 + )
196 abi_x86_32? (
197 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
198 !<app-emulation/emul-linux-x86-baselibs-20140508-r14
199 @@ -131,28 +148,36 @@ COMMON_DEPEND="
200 )"
201
202 RDEPEND="${COMMON_DEPEND}
203 - dos? ( games-emulation/dosbox )
204 - perl? ( dev-lang/perl dev-perl/XML-Simple )
205 + dos? ( >=games-emulation/dosbox-0.74_p20160629 )
206 + perl? (
207 + dev-lang/perl
208 + dev-perl/XML-Simple
209 + )
210 + pulseaudio? (
211 + realtime? ( sys-auth/rtkit )
212 + )
213 s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
214 samba? ( >=net-fs/samba-3.0.25[winbind] )
215 selinux? ( sec-policy/selinux-wine )
216 - udisks? ( sys-fs/udisks:2 )
217 - pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
218 + udisks? ( sys-fs/udisks:2 )"
219
220 # tools/make_requests requires perl
221 DEPEND="${COMMON_DEPEND}
222 - staging? ( dev-lang/perl dev-perl/XML-Simple )
223 + sys-devel/flex
224 + >=sys-kernel/linux-headers-2.6
225 + virtual/pkgconfig
226 + virtual/yacc
227 X? (
228 x11-proto/inputproto
229 x11-proto/xextproto
230 x11-proto/xf86vidmodeproto
231 )
232 - xinerama? ( x11-proto/xineramaproto )
233 prelink? ( sys-devel/prelink )
234 - >=sys-kernel/linux-headers-2.6
235 - virtual/pkgconfig
236 - virtual/yacc
237 - sys-devel/flex"
238 + staging? (
239 + dev-lang/perl
240 + dev-perl/XML-Simple
241 + )
242 + xinerama? ( x11-proto/xineramaproto )"
243
244 # These use a non-standard "Wine" category, which is provided by
245 # /etc/xdg/applications-merged/wine.menu
246 @@ -161,42 +186,62 @@ usr/share/applications/wine-notepad.desktop
247 usr/share/applications/wine-uninstaller.desktop
248 usr/share/applications/wine-winecfg.desktop"
249
250 -wine_build_environment_check() {
251 +wine_compiler_check() {
252 [[ ${MERGE_TYPE} = "binary" ]] && return 0
253
254 - # bug #549768
255 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
256 - einfo "Checking for gcc-5 ms_abi compiler bug ..."
257 - $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
258 - # Run in subshell to prevent "Aborted" message
259 - if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; then
260 - eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
261 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
262 - eerror "or use gcc-config to select a different compiler version."
263 - eerror "See https://bugs.gentoo.org/549768"
264 - eerror
265 - return 1
266 + # GCC-specific bugs
267 + if tc-is-gcc; then
268 + # bug #549768
269 + if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
270 + ebegin "Checking for gcc-5 ms_abi compiler bug"
271 + $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
272 + # Run in subshell to prevent "Aborted" message
273 + ( "${T}"/pr66838 || false ) >/dev/null 2>&1
274 + eend $?
275 + if [[ $? -ne 0 ]] ; then
276 + eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
277 + eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
278 + eerror "or use gcc-config to select a different compiler version."
279 + eerror "See https://bugs.gentoo.org/549768"
280 + eerror
281 + return 1
282 + fi
283 + fi
284 + # bug #574044
285 + if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
286 + ebegin "Checking for gcc-5-3 stack realignment compiler bug"
287 + # Compile in subshell to prevent "Aborted" message
288 + ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1
289 + eend $?
290 + if [[ $? -ne 0 ]] ; then
291 + eerror "Wine cannot be built with this version of gcc-5.3"
292 + eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
293 + eerror "or use gcc-config to select a different compiler version."
294 + eerror "See https://bugs.gentoo.org/574044"
295 + eerror
296 + return 1
297 + fi
298 fi
299 fi
300 - # bug #574044
301 - if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
302 - einfo "Checking for gcc-5-3 stack realignment compiler bug ..."
303 +
304 + # Ensure compiler support
305 + if use abi_x86_64; then
306 + ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
307 # Compile in subshell to prevent "Aborted" message
308 - if ! ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1; then
309 - eerror "Wine cannot be built with this version of gcc-5.3"
310 - eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
311 - eerror "or use gcc-config to select a different compiler version."
312 - eerror "See https://bugs.gentoo.org/574044"
313 + ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
314 + eend $?
315 + if [[ $? -ne 0 ]]; then
316 + eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
317 + eerror
318 + eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
319 eerror
320 return 1
321 fi
322 fi
323 +}
324
325 - if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]]; then
326 - eerror "You need gcc-4.4+ to build 64-bit wine"
327 - eerror
328 - return 1
329 - fi
330 +wine_build_environment_check() {
331 + [[ ${MERGE_TYPE} = "binary" ]] && return 0
332
333 if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> /dev/null) = "xintel" ]]; then
334 eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
335 @@ -207,12 +252,31 @@ wine_build_environment_check() {
336 }
337
338 pkg_pretend() {
339 + wine_compiler_check || die
340 wine_build_environment_check || die
341 +
342 + # Verify OSS support
343 + if use oss && ! use kernel_FreeBSD; then
344 + local oss_vers=$(best_version media-sound/oss)
345 + if [[ -z ${oss_vers} ]] || ! version_is_at_least "4" ${oss_vers}; then
346 + eerror "You cannot build wine with USE=oss without having support from a"
347 + eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
348 + eerror
349 + die
350 + fi
351 + fi
352 }
353
354 pkg_setup() {
355 enewgroup wine
356 wine_build_environment_check || die
357 + if ! use staging; then
358 + GV=${VANILLA_GV}
359 + MV=${VANILLA_MV}
360 + else
361 + GV=${STAGING_GV}
362 + MV=${STAGING_MV}
363 + fi
364 }
365
366 src_unpack() {
367 @@ -304,7 +368,7 @@ src_prepare() {
368 # hi-res default icon, #472990, http://bugs.winehq.org/show_bug.cgi?id=24652
369 cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
370
371 - l10n_get_locales > po/LINGUAS # otherwise wine doesn't respect LINGUAS
372 + l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
373 }
374
375 src_configure() {
376 @@ -423,6 +487,13 @@ multilib_src_install_all() {
377 rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
378 fi
379
380 + # Remove wineconsole if neither backend is installed #551124
381 + if ! use X && ! use ncurses; then
382 + rm "${D}"/usr/{bin/,man/man1/}wineconsole* || die
383 + use abi_x86_32 && rm "${D}"/usr/lib32/wine/{,fakedlls/}wineconsole.exe* || die
384 + use abi_x86_64 && rm "${D}"/usr/lib64/wine/{,fakedlls/}wineconsole.exe* || die
385 + fi
386 +
387 use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
388 use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}