From 5b4dbb7cd709ae2b891f14c35f20b15bf83cefaa Mon Sep 17 00:00:00 2001 From: Kolan Sh Date: Fri, 27 Nov 2015 10:40:35 +0300 Subject: [PATCH] app-emulation/wine broken (staging), removed, replaced with official one. --- app-emulation/wine/Manifest | 7 - .../files/wine-1.4_rc2-multilib-portage.patch | 40 -- .../wine/files/wine-1.5.26-winegcc.patch | 59 --- .../wine/files/wine-1.6-memset-O3.patch | 21 - .../wine/files/wine-1.7.12-osmesa-check.patch | 38 -- ...ine-1.7.39-gstreamer-v5-staging-post.patch | 38 -- ...wine-1.7.39-gstreamer-v5-staging-pre.patch | 40 -- app-emulation/wine/wine-1.7.55.ebuild | 439 ------------------ 8 files changed, 682 deletions(-) delete mode 100644 app-emulation/wine/Manifest delete mode 100644 app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch delete mode 100644 app-emulation/wine/files/wine-1.5.26-winegcc.patch delete mode 100644 app-emulation/wine/files/wine-1.6-memset-O3.patch delete mode 100644 app-emulation/wine/files/wine-1.7.12-osmesa-check.patch delete mode 100644 app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-post.patch delete mode 100644 app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-pre.patch delete mode 100644 app-emulation/wine/wine-1.7.55.ebuild diff --git a/app-emulation/wine/Manifest b/app-emulation/wine/Manifest deleted file mode 100644 index eed94d3f..00000000 --- a/app-emulation/wine/Manifest +++ /dev/null @@ -1,7 +0,0 @@ -DIST wine-1.7.34-gstreamer-v5.patch.bz2 5703 SHA256 c3bb6f669f46d9f2d7ba494a2264cee457349f559d4b0758db80e39eb22f2aee SHA512 e780394e8739a58593d264322c462bfe9040c1cabce93b84d24f09040026368efb4ac34a6a302beb6048d14b4ac835b87a0c515b52c1a0c143aa4e15691eb01b WHIRLPOOL 1befbb0fbd026d6e833c5d72341064dd6e12157e1b7df58e349b9985648bfbc63f70e9cab45b61155515ac65057968e30ba313e71e183b8027153c9392d89192 -DIST wine-1.7.55.tar.bz2 22814631 SHA256 a148f6c9cb45a75ef1a15e60a7db9c22fce985e0e58fe1350e7931dfe5d36119 SHA512 f47025017836ce1bbf2ed69c7d7421bd8a2f33ff94ced4a5caf92f4fabdf336119c80a28aeb8ba1ebe0239871a6ac62d8af8435d220c317624c17aabc2100dd7 WHIRLPOOL c5575d2ef687caccbdb5cc09a0c6a4ba9f65ec9674cbe3f23ecfced62710dcb0019a11ff66f2ec4c2eafdb30d9891abad158ac4f865cc580a2878067de7304d7 -DIST wine-gentoo-2015.03.07.tar.bz2 85419 SHA256 f13f93dc49bbc33a294c4d511b6e01aec2d38bff77a1e44d07668291add1ab04 SHA512 bae1d2d5575d340d01f44008104f0e5ec0c4a4982995dec37d501594cd21d07a2b4ad4465c4273646d5bf6521996b4b82471097864be75342abe3e7d478a56bd WHIRLPOOL 0f254dd692e87a1f71dd19f6c1c8c59b8a91b994e75912a2e6e3ba5e875b85119fe497a331a95c2ce33bbf5f064143d23ee00275da92c494227de0807c9abb06 -DIST wine-mono-4.5.6.msi 53705216 SHA256 ac681f737f83742d786706529eb85f4bc8d6bdddd8dcdfa9e2e336b71973bc25 SHA512 4d8df04c1d0da09d1abe423dd271e5dd14a193d607fb54e214d2e340827f7c33829342d1580b6907d7cf466e70993d743c6e1ca9a026d4b6225dd7c1fc8b1386 WHIRLPOOL 9a68e502da0be6768e92d88f2ccace607300f3a331e0f9e1b6d60e9c6c2d4eb635b902f03e13aad73461dd5f0c2691c7b41958356ebb7f445e8def4282c675d3 -DIST wine-staging-1.7.51.tar.gz 9628831 SHA256 662cbfcca95405045ba063f312fa4f605d8c48b7b0930c951e2ebac817f3b763 SHA512 f9d2388d63af3aa6ccdc7b66f9d767c19c1577acb84eb3ac03f9b4e07b3ff76906875998fdb42baae3768202129d270b1a1b15fd6bfb20fa33e3bc70559bdf45 WHIRLPOOL f606b6cb2f9a2ece0ce411423df8db1a95217341c2dc6720f748ba8df71758e0a099afc7679fc37fb6621ba1f2fcd5bb505a85cdde797adb45d093836e001441 -DIST wine_gecko-2.40-x86.msi 31741440 SHA256 1a29d17435a52b7663cea6f30a0771f74097962b07031947719bb7b46057d302 SHA512 2f203852afede3f6b0899a54ad6eaa27c972a84df51de1632cb21af0c322e369a13150a5f19f68d7c4fcb0610b65e9244658e622c7e6b14c93ae6b7372bb184f WHIRLPOOL 461358782c8aa21be5bf934bdb7b7397717add883036a773dad20d2ba5169a5229c211781c60fb4df46057b476765c6541340f5764a5a7362daf357ab60877b6 -DIST wine_gecko-2.40-x86_64.msi 33056768 SHA256 c3e28988e7d92221596fc4c569d10eb4dd2ca64b9f4970bf77e791f5dd8c9230 SHA512 af171193f221f2cd51f6dc3382a9b1c658ef2553213be32f201c05f7122eb6883838be97c3ec66177b1e3922df64c409745c3223acb01910680a5476c3f01478 WHIRLPOOL d11234b593f4190ae8fa99bec8363c0047f6de08b186752b9f49764519ee9f4aafd017a16c0496581a0f4791e1109273846cec0314d9e320423d51723cd2083a diff --git a/app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch b/app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch deleted file mode 100644 index be6ffc56..00000000 --- a/app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch +++ /dev/null @@ -1,40 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=395615 - -Explicitly add the required -m32/m64 to *FLAGS; this overrides any -arch-specific -m* flags that may have been appended by multilib-portage. - -Even though -m32/m64 is now added to *FLAGS, -m32/m64 still has to be -explicitly added to CC and CXX due to wine's build system. For example, -winegcc saves the build-time value of CC and uses it at runtime. - ---- a/configure.ac -+++ b/configure.ac -@@ -133,12 +133,18 @@ - then - CC="$CC -m64" - CXX="$CXX -m64" -+ CFLAGS="$CFLAGS -m64" -+ LDFLAGS="$LDFLAGS -m64" -+ CXXFLAGS="$CXXFLAGS -m64" - host_cpu="x86_64" - notice_platform="64-bit " - AC_SUBST(TARGETFLAGS,"-m64") - else - CC="$CC -m32" - CXX="$CXX -m32" -+ CFLAGS="$CFLAGS -m32" -+ LDFLAGS="$LDFLAGS -m32" -+ CXXFLAGS="$CXXFLAGS -m32" - host_cpu="i386" - notice_platform="32-bit " - AC_SUBST(TARGETFLAGS,"-m32") -@@ -150,6 +156,9 @@ - then - CC="$CC -m32" - CXX="$CXX -m32" -+ CFLAGS="$CFLAGS -m32" -+ LDFLAGS="$LDFLAGS -m32" -+ CXXFLAGS="$CXXFLAGS -m32" - AC_MSG_CHECKING([whether $CC works]) - AC_LINK_IFELSE([AC_LANG_PROGRAM()],AC_MSG_RESULT([yes]), - [AC_MSG_RESULT([no]) diff --git a/app-emulation/wine/files/wine-1.5.26-winegcc.patch b/app-emulation/wine/files/wine-1.5.26-winegcc.patch deleted file mode 100644 index 2045e343..00000000 --- a/app-emulation/wine/files/wine-1.5.26-winegcc.patch +++ /dev/null @@ -1,59 +0,0 @@ -http://bugs.gentoo.org/260726 - -diff --git a/tools/winebuild/main.c b/tools/winebuild/main.c -index 16b4165..5c77267 100644 ---- a/tools/winebuild/main.c -+++ b/tools/winebuild/main.c -@@ -48,10 +48,13 @@ int link_ext_symbols = 0; - int force_pointer_size = 0; - int unwind_tables = 0; - -+#undef FORCE_POINTER_SIZE - #ifdef __i386__ - enum target_cpu target_cpu = CPU_x86; -+#define FORCE_POINTER_SIZE - #elif defined(__x86_64__) - enum target_cpu target_cpu = CPU_x86_64; -+#define FORCE_POINTER_SIZE - #elif defined(__powerpc__) - enum target_cpu target_cpu = CPU_POWERPC; - #elif defined(__arm__) -@@ -611,6 +614,10 @@ int main(int argc, char **argv) - signal( SIGTERM, exit_on_signal ); - signal( SIGINT, exit_on_signal ); - -+#ifdef FORCE_POINTER_SIZE -+ force_pointer_size = sizeof(size_t); -+#endif -+ - output_file = stdout; - argv = parse_options( argc, argv, spec ); - -diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c -index 06aa200..c44d2e3 100644 ---- a/tools/winegcc/winegcc.c -+++ b/tools/winegcc/winegcc.c -@@ -213,10 +213,13 @@ struct options - strarray* files; - }; - -+#undef FORCE_POINTER_SIZE - #ifdef __i386__ - static const enum target_cpu build_cpu = CPU_x86; -+#define FORCE_POINTER_SIZE - #elif defined(__x86_64__) - static const enum target_cpu build_cpu = CPU_x86_64; -+#define FORCE_POINTER_SIZE - #elif defined(__powerpc__) - static const enum target_cpu build_cpu = CPU_POWERPC; - #elif defined(__arm__) -@@ -1258,6 +1261,9 @@ int main(int argc, char **argv) - opts.linker_args = strarray_alloc(); - opts.compiler_args = strarray_alloc(); - opts.winebuild_args = strarray_alloc(); -+#ifdef FORCE_POINTER_SIZE -+ opts.force_pointer_size = sizeof(size_t); -+#endif - - /* determine the processor type */ - if (strendswith(argv[0], "winecpp")) opts.processor = proc_cpp; diff --git a/app-emulation/wine/files/wine-1.6-memset-O3.patch b/app-emulation/wine/files/wine-1.6-memset-O3.patch deleted file mode 100644 index 75372f86..00000000 --- a/app-emulation/wine/files/wine-1.6-memset-O3.patch +++ /dev/null @@ -1,21 +0,0 @@ -Avoid "undefined reference to `memset'" error when building with -USE=custom-cflags and -O3 in CFLAGS with gcc-4.8. - -See: - -http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56888 -http://bugs.winehq.org/show_bug.cgi?id=33521 -https://bugs.gentoo.org/show_bug.cgi?id=480508 - -diff --git a/configure.ac b/configure.ac -index d8033cf..fe7cc7d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1767,6 +1767,7 @@ then - - dnl Check for some compiler flags - WINE_TRY_CFLAGS([-fno-builtin],[AC_SUBST(BUILTINFLAG,"-fno-builtin")]) -+ WINE_TRY_CFLAGS([-fno-tree-loop-distribute-patterns]) - WINE_TRY_CFLAGS([-fno-strict-aliasing]) - dnl clang needs to be told to fail on unknown options - saved_CFLAGS=$CFLAGS diff --git a/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch b/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch deleted file mode 100644 index 7cafcd4e..00000000 --- a/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 6932b9a17c4f64c13f7060895d46334bc7022430 Mon Sep 17 00:00:00 2001 -From: Alexandre Rostovtsev -Date: Tue, 7 Aug 2012 01:29:01 -0400 -Subject: [PATCH] Do not check for libGL symbols when checking libOSMesa - -If mesa had been built with shared glapi, glAccum is not available in -libOSMesa without explicitly linking to libGL. In addition, in -mesa-8.0.x and earlier, libOSMesa needs to be explicitly linked to -libglapi if mesa was built with shared glapi, see -https://bugs.gentoo.org/show_bug.cgi?id=399813 -And in mesa-8.1.x, libOSMesa in addition needs libdl, libpthread, and -libstdc++, see https://bugs.gentoo.org/show_bug.cgi?id=431832 ---- - configure.ac | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index de807d2..a2e8684 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1233,7 +1233,13 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c - - if test "x$with_osmesa" != "xno" - then -- WINE_CHECK_SONAME(OSMesa,glAccum,,,[$X_LIBS -lm $X_EXTRA_LIBS]) -+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[$X_LIBS -lm $X_EXTRA_LIBS]) -+ if test "x$ac_cv_lib_soname_OSMesa" = "x"; then -+ osmesa_save_CC=$CC -+ CC=$CXX -+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[-lglapi -lpthread -ldl $X_LIBS -lm $X_EXTRA_LIBS]) -+ CC=$osmesa_save_CC -+ fi - WINE_NOTICE_WITH(osmesa,[test "x$ac_cv_lib_soname_OSMesa" = "x"], - [libOSMesa ${notice_platform}development files not found (or too old), OpenGL rendering in bitmaps won't be supported.]) - fi --- -1.8.5.3 - diff --git a/app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-post.patch b/app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-post.patch deleted file mode 100644 index 25eb2357..00000000 --- a/app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-post.patch +++ /dev/null @@ -1,38 +0,0 @@ -From b97783fd33b4d9897c149d7a14747aa4969bd9e9 Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Thu, 19 Mar 2015 07:56:04 +0100 -Subject: Reapply various changes conflicting with Maarten Lankhorst's - gstreamer hack v5. - ---- - dlls/ntdll/thread.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c -index 1e7f231..cf0461d 100644 ---- a/dlls/ntdll/thread.c -+++ b/dlls/ntdll/thread.c -@@ -461,6 +461,8 @@ static void exit_thread_common( int status ) - static void *prev_teb; - TEB *teb; - #endif -+ shmlocal_t *shmlocal; -+ sigset_t sigset; - - if (status) /* send the exit code to the server (0 is already the default) */ - { -@@ -502,6 +504,11 @@ static void exit_thread_common( int status ) - reap_thread(NtCurrentTeb()); - #endif - -+ sigemptyset( &sigset ); -+ sigaddset( &sigset, SIGQUIT ); -+ pthread_sigmask( SIG_BLOCK, &sigset, NULL ); -+ if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status ); -+ - close( ntdll_get_thread_data()->wait_fd[0] ); - close( ntdll_get_thread_data()->wait_fd[1] ); - close( ntdll_get_thread_data()->reply_fd ); --- -2.3.2 - diff --git a/app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-pre.patch b/app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-pre.patch deleted file mode 100644 index 81aa699b..00000000 --- a/app-emulation/wine/files/wine-1.7.39-gstreamer-v5-staging-pre.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 1527fb44c331f2c61224514beb758895a5f85c8d Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Thu, 19 Mar 2015 07:51:48 +0100 -Subject: Revert various changes conflicting with Maarten Lankhorst's gstreamer - hack v5. - -Note: These changes have to be reapplied with the corresponding -post patchset -afterwards. ---- - dlls/ntdll/thread.c | 7 ------- - 1 file changed, 7 deletions(-) - -diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c -index 30a4720..843be0f 100644 ---- a/dlls/ntdll/thread.c -+++ b/dlls/ntdll/thread.c -@@ -385,8 +385,6 @@ void terminate_thread( int status ) - void exit_thread( int status ) - { - static void *prev_teb; -- shmlocal_t *shmlocal; -- sigset_t sigset; - TEB *teb; - - if (status) /* send the exit code to the server (0 is already the default) */ -@@ -425,11 +423,6 @@ void exit_thread( int status ) - } - } - -- sigemptyset( &sigset ); -- sigaddset( &sigset, SIGQUIT ); -- pthread_sigmask( SIG_BLOCK, &sigset, NULL ); -- if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status ); -- - close( ntdll_get_thread_data()->wait_fd[0] ); - close( ntdll_get_thread_data()->wait_fd[1] ); - close( ntdll_get_thread_data()->reply_fd ); --- -2.3.2 - diff --git a/app-emulation/wine/wine-1.7.55.ebuild b/app-emulation/wine/wine-1.7.55.ebuild deleted file mode 100644 index fe70f839..00000000 --- a/app-emulation/wine/wine-1.7.55.ebuild +++ /dev/null @@ -1,439 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI="5" - -AUTOTOOLS_AUTORECONF=1 -PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW" -PLOCALE_BACKUP="en" - -inherit autotools-utils eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git" - EGIT_BRANCH="master" - inherit git-r3 - SRC_URI="" - #KEYWORDS="" -else - MY_P="${PN}-${PV/_/-}" - SRC_URI="mirror://sourceforge/${PN}/Source/${MY_P}.tar.bz2" - KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" - S=${WORKDIR}/${MY_P} -fi - -GV="2.40" -MV="4.5.6" -STAGING_P="wine-staging-1.7.51" #${PV}" -STAGING_DIR="${WORKDIR}/${STAGING_P}" -WINE_GENTOO="wine-gentoo-2015.03.07" -GST_P="wine-1.7.34-gstreamer-v5" -DESCRIPTION="Free implementation of Windows(tm) on Unix" -HOMEPAGE="http://www.winehq.org/" -SRC_URI="${SRC_URI} - gecko? ( - abi_x86_32? ( mirror://sourceforge/${PN}/Wine%20Gecko/${GV}/wine_gecko-${GV}-x86.msi ) - abi_x86_64? ( mirror://sourceforge/${PN}/Wine%20Gecko/${GV}/wine_gecko-${GV}-x86_64.msi ) - ) - mono? ( mirror://sourceforge/${PN}/Wine%20Mono/${MV}/wine-mono-${MV}.msi ) - gstreamer? ( https://dev.gentoo.org/~tetromino/distfiles/${PN}/${GST_P}.patch.bz2 ) - https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2" - -if [[ ${PV} == "9999" ]] ; then - STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git" -else - SRC_URI="${SRC_URI} - staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz ) - pulseaudio? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )" -fi - -LICENSE="LGPL-2.1" -SLOT="0" -IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +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 ) - elibc_glibc? ( threads ) - mono? ( abi_x86_32 ) - pipelight? ( staging ) - s3tc? ( staging ) - vaapi? ( staging ) - ?? ( gstreamer staging ) - osmesa? ( opengl )" #286560 - -# 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 ) - 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:0.10[${MULTILIB_USEDEP}] - media-libs/gst-plugins-base:0.10[${MULTILIB_USEDEP}] - ) - X? ( - x11-libs/libXcursor[${MULTILIB_USEDEP}] - x11-libs/libXext[${MULTILIB_USEDEP}] - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-libs/libXi[${MULTILIB_USEDEP}] - x11-libs/libXxf86vm[${MULTILIB_USEDEP}] - ) - xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) - alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] ) - cups? ( net-print/cups:=[${MULTILIB_USEDEP}] ) - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] ) - opengl? ( - virtual/glu[${MULTILIB_USEDEP}] - virtual/opengl[${MULTILIB_USEDEP}] - ) - gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] ) - jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] ) - ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] ) - lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] ) - mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] ) - netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] ) - nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] ) - odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] ) - osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] ) - pcap? ( net-libs/libpcap[${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}] ) - v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] ) - vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] ) - xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] ) - abi_x86_32? ( - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] - ! /dev/null) = "xintel" ]]; then - eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only." - eerror "See https://bugs.gentoo.org/487864 for more details." - eerror - return 1 - fi -} - -pkg_pretend() { - wine_build_environment_check || die -} - -pkg_setup() { - wine_build_environment_check || die -} - -src_unpack() { - if [[ ${PV} == "9999" ]] ; then - git-r3_src_unpack - if use staging || use pulseaudio; then - EGIT_REPO_URI=${STAGING_EGIT_REPO_URI} - unset ${PN}_LIVE_REPO; - EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack - fi - else - unpack ${MY_P}.tar.bz2 - use staging || use pulseaudio && unpack "${STAGING_P}.tar.gz" - fi - - unpack "${WINE_GENTOO}.tar.bz2" - use gstreamer && unpack "${GST_P}.patch.bz2" - - l10n_find_plocales_changes "${S}/po" "" ".po" -} - -src_prepare() { - local md5="$(md5sum server/protocol.def)" - local PATCHES=( - "${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726 - "${FILESDIR}"/${PN}-1.4_rc2-multilib-portage.patch #395615 - "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386 - "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508 - ) - if use gstreamer; then - # See http://bugs.winehq.org/show_bug.cgi?id=30557 - ewarn "Applying experimental patch to fix GStreamer support. Note that" - ewarn "this patch has been reported to cause crashes in certain games." - - # Wine-Staging 1.7.38 "ntdll: Fix race-condition when threads are killed - # during shutdown" patch and "Added patch to implement shared memory - # wineserver communication for various user32 functions" prevents the - # gstreamer patch from applying cleanly. - # So undo the staging patch, apply gstreamer, then re-apply rebased staging - # patch on top. - if use staging; then - PATCHES+=( - "${FILESDIR}/${PN}-1.7.39-gstreamer-v5-staging-pre.patch" - "${WORKDIR}/${GST_P}.patch" - "${FILESDIR}/${PN}-1.7.39-gstreamer-v5-staging-post.patch" ) - else - PATCHES+=( "${WORKDIR}/${GST_P}.patch" ) - fi - fi - if use staging; then - ewarn "Applying the unofficial Wine-Staging patchset which is unsupported" - ewarn "by Wine developers. Please don't report bugs to Wine bugzilla" - ewarn "unless you can reproduce them with USE=-staging" - - local STAGING_EXCLUDE="" - use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight" - - # Launch wine-staging patcher in a subshell, using epatch as a backend, and gitapply.sh as a backend for binary patches - ebegin "Running Wine-Staging patch installer" - ( - set -- DESTDIR="${S}" --backend=epatch --no-autoconf --all ${STAGING_EXCLUDE} - cd "${STAGING_DIR}/patches" - source "${STAGING_DIR}/patches/patchinstall.sh" - ) - eend $? - elif use pulseaudio; then - PATCHES+=( "${STAGING_DIR}/patches/winepulse-PulseAudio_Support"/*.patch ) - fi - autotools-utils_src_prepare - - # Modification of the server protocol requires regenerating the server requests - if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then - einfo "server/protocol.def was patched; running tools/make_requests" - tools/make_requests || die #432348 - fi - sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die - if ! use run-exes; then - sed -i '/^MimeType/d' tools/wine.desktop || die #117785 - fi - - # 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 -} - -src_configure() { - export LDCONFIG=/bin/true - use custom-cflags || strip-flags - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myconf=( - --sysconfdir=/etc/wine - $(use_with alsa) - $(use_with capi) - $(use_with lcms cms) - $(use_with cups) - $(use_with ncurses curses) - $(use_with udisks dbus) - $(use_with fontconfig) - $(use_with ssl gnutls) - $(use_enable gecko mshtml) - $(use_with gphoto2 gphoto) - $(use_with gsm) - $(use_with gstreamer) - --without-hal - $(use_with jpeg) - $(use_with ldap) - $(use_enable mono mscoree) - $(use_with mp3 mpg123) - $(use_with netapi) - $(use_with nls gettext) - $(use_with openal) - $(use_with opencl) - $(use_with opengl) - $(use_with osmesa) - $(use_with oss) - $(use_with pcap) - $(use_with png) - $(use_with threads pthread) - $(use_with scanner sane) - $(use_enable test tests) - $(use_with truetype freetype) - $(use_with v4l) - $(use_with X x) - $(use_with xcomposite) - $(use_with xinerama) - $(use_with xml) - $(use_with xml xslt) - ) - - if use pulseaudio || use staging; then - myconf+=( $(use_with pulseaudio pulse) ) - fi - use staging && myconf+=( - --with-xattr - $(use_with vaapi va) - ) - - local PKG_CONFIG AR RANLIB - # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038 - # set AR and RANLIB to make QA scripts happy; #483342 - tc-export PKG_CONFIG AR RANLIB - - if use amd64; then - if [[ ${ABI} == amd64 ]]; then - myconf+=( --enable-win64 ) - else - myconf+=( --disable-win64 ) - fi - - # Note: using --with-wine64 results in problems with multilib.eclass - # CC/LD hackery. We're using separate tools instead. - fi - - ECONF_SOURCE=${S} \ - econf "${myconf[@]}" - emake depend -} - -multilib_src_test() { - # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader" - if [[ ${ABI} == x86 ]]; then - if [[ $(id -u) == 0 ]]; then - ewarn "Skipping tests since they cannot be run under the root user." - ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf" - return - fi - - WINEPREFIX="${T}/.wine-${ABI}" \ - Xemake test - fi -} - -multilib_src_install_all() { - local DOCS=( ANNOUNCE AUTHORS README ) - local l - add_locale_docs() { - local locale_doc="documentation/README.$1" - [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} ) - } - l10n_for_each_locale_do add_locale_docs - - einstalldocs - prune_libtool_files --all - - emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}" - if use gecko ; then - insinto /usr/share/wine/gecko - use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi - use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi - fi - if use mono ; then - insinto /usr/share/wine/mono - doins "${DISTDIR}"/wine-mono-${MV}.msi - fi - if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script - rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die - fi - - use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055 - use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader} - - if use abi_x86_64 && ! use abi_x86_32; then - dosym /usr/bin/wine{64,} # 404331 - dosym /usr/bin/wine{64,}-preloader - fi - - # respect LINGUAS when installing man pages, #469418 - for l in de fr pl; do - use linguas_${l} || rm -r "${D}"usr/share/man/${l}* - done -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - gnome2_icon_cache_update - fdo-mime_desktop_database_update - - if ! use gecko; then - ewarn "Without Wine Gecko, wine prefixes will not have a default" - ewarn "implementation of iexplore. Many older windows applications" - ewarn "rely upon the existence of an iexplore implementation, so" - ewarn "you will likely need to install an external one, like via winetricks" - fi - if ! use mono; then - ewarn "Without Wine Mono, wine prefixes will not have a default" - ewarn "implementation of .NET. Many windows applications rely upon" - ewarn "the existence of a .NET implementation, so you will likely need" - ewarn "to install an external one, like via winetricks" - fi -} - -pkg_postrm() { - gnome2_icon_cache_update - fdo-mime_desktop_database_update -}