commit:     29bdb6848e7e8ba4e28efd06d13e2f0ac8d6e4a0
Author:     Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 29 14:41:21 2016 +0000
Commit:     Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 14:41:21 2016 +0000
URL:        https://gitweb.gentoo.org/dev/bircoph.git/commit/?id=29bdb684

app-emulation/wine: sync with portage

 app-emulation/wine/Manifest                        |  12 +-
 app-emulation/wine/files/builtin_ms_va_list.c      |   9 +
 .../wine/{wine-1.9.9.ebuild => wine-1.9.15.ebuild} | 213 ++++++++++++++-------
 3 files changed, 157 insertions(+), 77 deletions(-)

diff --git a/app-emulation/wine/Manifest b/app-emulation/wine/Manifest
index 4de707a..7a52730 100644
--- a/app-emulation/wine/Manifest
+++ b/app-emulation/wine/Manifest
@@ -1,7 +1,7 @@
-DIST wine-1.9.9.tar.bz2 23155986 SHA256 
a1e76fd9842d0fe385e930cd62e7193035a04ed11fe771d9cd6ee9b2ceda7b41 SHA512 
370caf527eac948b8bf2583e8f8a647e9b353b8ea70a341a0eb1fd768eea6c982a5c8b7eb23ecfded6eebea370d06bd23ee1ba7b2ded63547f571cc293ee1695
 WHIRLPOOL 
bf97f4fcacda1913d2e7be21f6c771392b06653a7877ea07cf65731bf37eae3f3eb5d5fe5971dae18be709afcbbc65b3337e8d1d0c01e938671eed095aacd0af
-DIST wine-d3d9-1.9.9.tar.gz 45615 SHA256 
cc6575ef97c6ff74d11d370f6af012c82b33697cb5d120d93d3d501623ef4856 SHA512 
142e4c11c392a7999093c6703e3e506c365633e7ae4c2426d164e411e5d28fd0c7b00acffc0ca35c755d8ff6d8585072f6a3d3bcb8b5e32417db5597f236c4d0
 WHIRLPOOL 
d56f84a455dc643f756fedfffdc73640cb34aa8164df747fe44f204dd7165d7b000c22de8c33c9978ad97b32b8b6d285551de8607acf75b5f079cb7eeeadb05e
+DIST wine-1.9.15.tar.bz2 23357574 SHA256 
cf992ac991b0e49fd0b186305021acf6e612d5df18d30e3d5808fa6f6731adda SHA512 
39eda9c0123453321d414690db5ca5849326bf44d116a353296e88026fa618535a306b9e0c6666ea6716dc8d44f81a2caeae11be80f15448b67bde2be9e1210a
 WHIRLPOOL 
cdaa74399ef4849a297a9d8040333500e1007ca8374b76e0677ba8b21e087feac262cf449f90826f4cd417989742670f86eed4c2fb5ef4345e8b955e8213fbef
+DIST wine-d3d9-1.9.15.tar.gz 46418 SHA256 
e6d8029e37c4afa8018f595ae8ee23a547782a614d5605352301685889996388 SHA512 
6ad990ebd023d0125146c3b785cf38862368c3034daac6dad1a2e3a04737c5a31fbc81b562e4571ea386f515a04b50d42699b783ab15d9e3b19b12b1a7148c08
 WHIRLPOOL 
01a37e81fbbf99bbeab7b3c06eaadd52e8d4cf6459958465aa53d76b1717fb8bda356bae3f36c790bca29f38f80546c8d32a376f5fcb4d35f1593b647c9f5109
 DIST wine-gentoo-2015.03.07.tar.bz2 85419 SHA256 
f13f93dc49bbc33a294c4d511b6e01aec2d38bff77a1e44d07668291add1ab04 SHA512 
bae1d2d5575d340d01f44008104f0e5ec0c4a4982995dec37d501594cd21d07a2b4ad4465c4273646d5bf6521996b4b82471097864be75342abe3e7d478a56bd
 WHIRLPOOL 
0f254dd692e87a1f71dd19f6c1c8c59b8a91b994e75912a2e6e3ba5e875b85119fe497a331a95c2ce33bbf5f064143d23ee00275da92c494227de0807c9abb06
-DIST wine-mono-4.6.2.msi 45676544 SHA256 
a46c5b32b6ed66e2e8d7ac9b15ff9ffe143a3aa6f12f2ea07a6ca9a4d2023e41 SHA512 
7ff31b64539976cc4d5ded1b38549c9bec620ee7679b5a53093195b7df1a93a57db04ef81d94342ec6e4389fef356660e3eb4c35e7b50b6df98288ca19eb633f
 WHIRLPOOL 
eef536a301127f78b06d56054a95e86e73ce7ecd0522a41f6d581d6cfb8660ded5b8148e00e9f8ee77361bfa4a66996559480cd7881c4d132169b5de698f4ef2
-DIST wine-staging-1.9.9.tar.gz 9997618 SHA256 
23e165b0259561a3449a7c0195352cca96fdc247ad524c6567421d9971ebf517 SHA512 
4e06315eda4ba8e7a44c06a422ebb8a315c808f1f651430e7fc56950916a61c38aa6d3a2467a6c70be2c344744d00b25d83df27c8629c783c8b67584c01f8c0c
 WHIRLPOOL 
01fe2ddb3de5485f221787a3899bca171ecf4d14c3c0c8a9b973757f1507a4ce3dcbf9c4cea2b20b31fb1ddc0ae0eaf8600c811f4fbcd1ffa39eb5fa81dcf313
-DIST wine_gecko-2.44-x86.msi 34832896 SHA256 
77a64ad17571b3a00386a88b9b1b1ea4b7e759061675568bee0ec238fb456d39 SHA512 
6c3b6ccbab0081d8ab188a9a031050ca8fd7ef8f1de0efa3a57569d6166397f91bf13037402e3437cc8cfc4fc25e7c2f8be32f66500306d567055e89aae0797d
 WHIRLPOOL 
59c269a6d6e3ba829bd24cf81eba991f91bb0c1995a1841b7e548593f544088959093ba29eb83b53f38f77e71780d8288f0b12a212862af1374f954d61f24999
-DIST wine_gecko-2.44-x86_64.msi 36273152 SHA256 
628e5a0d3b7406cbd2f031139be06e2ef695081fc77ee18dc06748e649ff6661 SHA512 
71dcbd28ff048fc587ed796f2f09815f624774742abc192d9aa1104485f5d8cd93b2308fb72506f82d0ea5032dd6c7ed2af4ac95121e7b2367e7a6dd77cb042f
 WHIRLPOOL 
a327f2b5a8f47498967b80e06336918006b71b4e1b90a96943faa6f05e481273203259ab6f8a3b45ba85249344c76c100880ad88dd346a94ee45327fffb2f3a1
+DIST wine-mono-4.6.3.msi 45591040 SHA256 
f883e88ae78c7ea3d887c24023aa1ed03bb71a83f717c6595abf18b31fef28b9 SHA512 
b940d7c07d0892ac76ad9e4c3d4d159afeee43765b6bfe07f14beee1fc8674b58a9af20a5ee0a4d9667a15b83a0e6538c0143b9072c677dd753e32bbdd17065b
 WHIRLPOOL 
f04002904d99dc2615a179c13ae810c8208808c60c5e5eda7f9c3f07163d645cccf6f74d4354331fa25dfb41ef2c24e432f83670a3e7c3a90fa6d144b3d193b9
+DIST wine-staging-1.9.15.tar.gz 9926094 SHA256 
10b836e4f78b7da1693cf1199f1b16c160a844a6372733817be31de67ea85150 SHA512 
7eb1774381925944abe6bcbe1a8e1810b4d7f51d1f3c15bcdc15084420bfdb6f90b8edbbc0876ad87e896471ab9c9f21d14420c3ecb485aa8ead4256ff8ca60b
 WHIRLPOOL 
bcb9e7f15437a03baed57aeb082267b47a06504246f029bf31ead117a258b1b26dd70924427c0cda1526f7fab5ac1eb17a756fb5c1b2f87d8f8727923a185d4e
+DIST wine_gecko-2.47-x86.msi 49266176 SHA256 
3b8a361f5d63952d21caafd74e849a774994822fb96c5922b01d554f1677643a SHA512 
e0d06102dcb8ec2d24e8c8c3f5c2ee5cb47c18e203dfb43d85de008d682ff874fb664fef1df909a5a7857de39c7e8ce5175e734a11964ec4cd35f8fbacaea3a4
 WHIRLPOOL 
2b4e3e88d530106d942200e5cdc67e51fc529c51864dee687ff1d6ae4cc94557481f74797a5ca7c1de8ca5ad00f7d9cb71e484ab24d73867d1032ccd88c0c376
+DIST wine_gecko-2.47-x86_64.msi 50806272 SHA256 
c565ea25e50ea953937d4ab01299e4306da4a556946327d253ea9b28357e4a7d SHA512 
7c2496b15a06bc6906bc60afb3ac082e3f9931207fa624e60297020211d66aa9b420a61e95730a0dbdcefbe4b26c811d0c896ecd9c363b5107d08c3fa22fef41
 WHIRLPOOL 
c7619954da22a47dae86ef4c6c0cfbece41943edcceb2c21babe610e0a0b2197b244ebbddd2f3986ee4d5251b062e5f3b8e079426ec77c311b928d18c8451677

diff --git a/app-emulation/wine/files/builtin_ms_va_list.c 
b/app-emulation/wine/files/builtin_ms_va_list.c
new file mode 100644
index 0000000..f36fc26
--- /dev/null
+++ b/app-emulation/wine/files/builtin_ms_va_list.c
@@ -0,0 +1,9 @@
+/* Taken from Wine's configure script. LGPL 2.1+ */
+
+#include <stdarg.h>
+
+int main(void)
+{
+    void func(__builtin_ms_va_list *args);
+    return 0;
+}

diff --git a/app-emulation/wine/wine-1.9.9.ebuild 
b/app-emulation/wine/wine-1.9.15.ebuild
similarity index 75%
rename from app-emulation/wine/wine-1.9.9.ebuild
rename to app-emulation/wine/wine-1.9.15.ebuild
index 7561b7a..4433df1 100644
--- a/app-emulation/wine/wine-1.9.9.ebuild
+++ b/app-emulation/wine/wine-1.9.15.ebuild
@@ -21,8 +21,10 @@ else
        KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
 fi
 
-GV="2.44"
-MV="4.6.2"
+VANILLA_GV="2.47"
+VANILLA_MV="4.6.3"
+STAGING_GV="2.47"
+STAGING_MV="4.6.3"
 [[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
 STAGING_P="wine-staging-${PV}"
 STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
@@ -32,11 +34,20 @@ WINE_GENTOO="wine-gentoo-2015.03.07"
 DESCRIPTION="Free implementation of Windows(tm) on Unix"
 HOMEPAGE="http://www.winehq.org/";
 SRC_URI="${SRC_URI}
-       gecko? (
-               abi_x86_32? ( 
https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
-               abi_x86_64? ( 
https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
+       !staging? (
+               gecko? (
+                       abi_x86_32? ( 
https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi
 )
+                       abi_x86_64? ( 
https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi
 )
+               )
+               mono? ( 
https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
+       )
+       staging? (
+               gecko? (
+                       abi_x86_32? ( 
https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi
 )
+                       abi_x86_64? ( 
https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi
 )
+               )
+               mono? ( 
https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
        )
-       mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
        
https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2";
 
 if [[ ${PV} == "9999" ]] ; then
@@ -50,32 +61,21 @@ fi
 
 LICENSE="LGPL-2.1"
 SLOT="0"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos 
elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +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"
+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"
 REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
-       test? ( abi_x86_32 )
+       X? ( truetype )
        elibc_glibc? ( threads )
+       osmesa? ( opengl )
        pipelight? ( staging )
        s3tc? ( staging )
-       vaapi? ( staging )
-       osmesa? ( opengl )" #286560
+       test? ( abi_x86_32 )
+       vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
 
 # FIXME: the test suite is unsuitable for us; many tests require net access
 # or fail due to Xvfb's opengl limitations.
 RESTRICT="test"
 
 COMMON_DEPEND="
-       truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
-       capi? ( net-dialup/capi4k-utils )
-       d3d9? ( media-libs/mesa[d3d9,${MULTILIB_USEDEP}] )
-       ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
-       udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
-       fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
-       gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
-       openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
-       gstreamer? (
-               media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
-               media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
-       )
        X? (
                x11-libs/libXcursor[${MULTILIB_USEDEP}]
                x11-libs/libXext[${MULTILIB_USEDEP}]
@@ -83,36 +83,53 @@ COMMON_DEPEND="
                x11-libs/libXi[${MULTILIB_USEDEP}]
                x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
        )
-       xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
        alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+       capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
        cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
-       opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
-       opengl? (
-               virtual/glu[${MULTILIB_USEDEP}]
-               virtual/opengl[${MULTILIB_USEDEP}]
+       d3d9? (
+               media-libs/mesa[d3d9,egl,${MULTILIB_USEDEP}]
+               x11-libs/libX11[${MULTILIB_USEDEP}]
+               x11-libs/libXext[${MULTILIB_USEDEP}]
+               x11-libs/libxcb[${MULTILIB_USEDEP}]
        )
+       fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+       gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
        gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+       gstreamer? (
+               media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+               media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+       )
        jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
-       ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
        lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+       ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
        mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
+       ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
        netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
        nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
        odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+       openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+       opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+       opengl? (
+               virtual/glu[${MULTILIB_USEDEP}]
+               virtual/opengl[${MULTILIB_USEDEP}]
+       )
        osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
        pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+       png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
        pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
-       staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
-       xml? (
-               dev-libs/libxml2[${MULTILIB_USEDEP}]
-               dev-libs/libxslt[${MULTILIB_USEDEP}]
-       )
        scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
        ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
-       png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+       staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+       truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+       udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
        v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
        vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
        xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+       xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+       xml? (
+               dev-libs/libxml2[${MULTILIB_USEDEP}]
+               dev-libs/libxslt[${MULTILIB_USEDEP}]
+       )
        abi_x86_32? (
                !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
                !<app-emulation/emul-linux-x86-baselibs-20140508-r14
@@ -131,28 +148,36 @@ COMMON_DEPEND="
        )"
 
 RDEPEND="${COMMON_DEPEND}
-       dos? ( games-emulation/dosbox )
-       perl? ( dev-lang/perl dev-perl/XML-Simple )
+       dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+       perl? (
+               dev-lang/perl
+               dev-perl/XML-Simple
+       )
+       pulseaudio? (
+               realtime? ( sys-auth/rtkit )
+       )
        s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
        samba? ( >=net-fs/samba-3.0.25[winbind] )
        selinux? ( sec-policy/selinux-wine )
-       udisks? ( sys-fs/udisks:2 )
-       pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
+       udisks? ( sys-fs/udisks:2 )"
 
 # tools/make_requests requires perl
 DEPEND="${COMMON_DEPEND}
-       staging? ( dev-lang/perl dev-perl/XML-Simple )
+       sys-devel/flex
+       >=sys-kernel/linux-headers-2.6
+       virtual/pkgconfig
+       virtual/yacc
        X? (
                x11-proto/inputproto
                x11-proto/xextproto
                x11-proto/xf86vidmodeproto
        )
-       xinerama? ( x11-proto/xineramaproto )
        prelink? ( sys-devel/prelink )
-       >=sys-kernel/linux-headers-2.6
-       virtual/pkgconfig
-       virtual/yacc
-       sys-devel/flex"
+       staging? (
+               dev-lang/perl
+               dev-perl/XML-Simple
+       )
+       xinerama? ( x11-proto/xineramaproto )"
 
 # These use a non-standard "Wine" category, which is provided by
 # /etc/xdg/applications-merged/wine.menu
@@ -161,42 +186,62 @@ usr/share/applications/wine-notepad.desktop
 usr/share/applications/wine-uninstaller.desktop
 usr/share/applications/wine-winecfg.desktop"
 
-wine_build_environment_check() {
+wine_compiler_check() {
        [[ ${MERGE_TYPE} = "binary" ]] && return 0
 
-       # bug #549768
-       if use abi_x86_64 && [[ $(gcc-major-version) = 5 && 
$(gcc-minor-version) -le 2 ]]; then
-               einfo "Checking for gcc-5 ms_abi compiler bug ..."
-               $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
-               # Run in subshell to prevent "Aborted" message
-               if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; then
-                       eerror "64-bit wine cannot be built with gcc-5.1 or 
initial patchset of 5.2.0"
-                       eerror "due to compiler bugs; please re-emerge the 
latest gcc-5.2.x ebuild,"
-                       eerror "or use gcc-config to select a different 
compiler version."
-                       eerror "See https://bugs.gentoo.org/549768";
-                       eerror
-                       return 1
+       # GCC-specific bugs
+       if tc-is-gcc; then
+               # bug #549768
+               if use abi_x86_64 && [[ $(gcc-major-version) = 5 && 
$(gcc-minor-version) -le 2 ]]; then
+                       ebegin "Checking for gcc-5 ms_abi compiler bug"
+                       $(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o 
"${T}"/pr66838 || die
+                       # Run in subshell to prevent "Aborted" message
+                       ( "${T}"/pr66838 || false ) >/dev/null 2>&1
+                       eend $?
+                       if [[ $? -ne 0 ]] ; then
+                               eerror "64-bit wine cannot be built with 
gcc-5.1 or initial patchset of 5.2.0"
+                               eerror "due to compiler bugs; please re-emerge 
the latest gcc-5.2.x ebuild,"
+                               eerror "or use gcc-config to select a different 
compiler version."
+                               eerror "See https://bugs.gentoo.org/549768";
+                               eerror
+                               return 1
+                       fi
+               fi
+               # bug #574044
+               if use abi_x86_64 && [[ $(gcc-major-version) = 5 && 
$(gcc-minor-version) = 3 ]]; then
+                       ebegin "Checking for gcc-5-3 stack realignment compiler 
bug"
+                       # Compile in subshell to prevent "Aborted" message
+                       ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 
"${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1
+                       eend $?
+                       if [[ $? -ne 0 ]] ; then
+                               eerror "Wine cannot be built with this version 
of gcc-5.3"
+                               eerror "due to compiler bugs; please re-emerge 
the latest gcc-5.3.x ebuild,"
+                               eerror "or use gcc-config to select a different 
compiler version."
+                               eerror "See https://bugs.gentoo.org/574044";
+                               eerror
+                               return 1
+                       fi
                fi
        fi
-       # bug #574044
-       if use abi_x86_64 && [[ $(gcc-major-version) = 5 && 
$(gcc-minor-version) = 3 ]]; then
-               einfo "Checking for gcc-5-3 stack realignment compiler bug ..."
+
+       # Ensure compiler support
+       if use abi_x86_64; then
+               ebegin "Checking for 64-bit compiler with builtin_ms_va_list 
support"
                # Compile in subshell to prevent "Aborted" message
-               if ! ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 
"${FILESDIR}"/pr69140.c -o "${T}"/pr69140 || false ) >/dev/null 2>&1; then
-                       eerror "Wine cannot be built with this version of 
gcc-5.3"
-                       eerror "due to compiler bugs; please re-emerge the 
latest gcc-5.3.x ebuild,"
-                       eerror "or use gcc-config to select a different 
compiler version."
-                       eerror "See https://bugs.gentoo.org/574044";
+               ( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o 
"${T}"/builtin_ms_va_list >/dev/null 2>&1)
+               eend $?
+               if [[ $? -ne 0 ]]; then
+                       eerror "This version of $(tc-getCC) does not support 
builtin_ms_va_list, can't enable 64-bit wine"
+                       eerror
+                       eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit 
wine"
                        eerror
                        return 1
                fi
        fi
+}
 
-       if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + 
$(gcc-minor-version) )) -lt 404 ]]; then
-               eerror "You need gcc-4.4+ to build 64-bit wine"
-               eerror
-               return 1
-       fi
+wine_build_environment_check() {
+       [[ ${MERGE_TYPE} = "binary" ]] && return 0
 
        if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> 
/dev/null) = "xintel" ]]; then
                eerror "You cannot build wine with USE=opencl because 
intel-ocl-sdk is 64-bit only."
@@ -207,12 +252,31 @@ wine_build_environment_check() {
 }
 
 pkg_pretend() {
+       wine_compiler_check || die
        wine_build_environment_check || die
+
+       # Verify OSS support
+       if use oss && ! use kernel_FreeBSD; then
+               local oss_vers=$(best_version media-sound/oss)
+               if [[ -z ${oss_vers} ]] || ! version_is_at_least "4" 
${oss_vers}; then
+                       eerror "You cannot build wine with USE=oss without 
having support from a"
+                       eerror "FreeBSD kernel or >=media-sound/oss-4 (only 
available through external repos)"
+                       eerror
+                       die
+               fi
+       fi
 }
 
 pkg_setup() {
        enewgroup wine
        wine_build_environment_check || die
+       if ! use staging; then
+               GV=${VANILLA_GV}
+               MV=${VANILLA_MV}
+       else
+               GV=${STAGING_GV}
+               MV=${STAGING_MV}
+       fi
 }
 
 src_unpack() {
@@ -304,7 +368,7 @@ src_prepare() {
        # hi-res default icon, #472990, 
http://bugs.winehq.org/show_bug.cgi?id=24652
        cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico 
dlls/user32/resources/ || die
 
-       l10n_get_locales > po/LINGUAS # otherwise wine doesn't respect LINGUAS
+       l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect 
LINGUAS
 }
 
 src_configure() {
@@ -423,6 +487,13 @@ multilib_src_install_all() {
                rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} 
"${D}"usr/share/man/man1/wine{dump,maker}.1 || die
        fi
 
+       # Remove wineconsole if neither backend is installed #551124
+       if ! use X && ! use ncurses; then
+               rm      "${D}"/usr/{bin/,man/man1/}wineconsole* || die
+               use abi_x86_32 && rm 
"${D}"/usr/lib32/wine/{,fakedlls/}wineconsole.exe* || die
+               use abi_x86_64 && rm 
"${D}"/usr/lib64/wine/{,fakedlls/}wineconsole.exe* || die
+       fi
+
        use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
        use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
 

Reply via email to