summaryrefslogtreecommitdiff
path: root/app-emulation/wine/files
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/wine/files')
-rw-r--r--app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch40
-rw-r--r--app-emulation/wine/files/wine-1.7.12-osmesa-check.patch38
-rw-r--r--app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch39
-rw-r--r--app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch35
-rw-r--r--app-emulation/wine/files/wine-sysmacros.patch177
5 files changed, 329 insertions, 0 deletions
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
new file mode 100644
index 00000000..be6ffc56
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch
@@ -0,0 +1,40 @@
+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.7.12-osmesa-check.patch b/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch
new file mode 100644
index 00000000..7cafcd4e
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.7.12-osmesa-check.patch
@@ -0,0 +1,38 @@
+From 6932b9a17c4f64c13f7060895d46334bc7022430 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Tue, 7 Aug 2012 01:29:01 -0400
+Subject: [PATCH] Do not check for libGL symbols when checking libOSMesa
+
+If mesa had been built with shared glapi, glAccum is not available in
+libOSMesa without explicitly linking to libGL. In addition, in
+mesa-8.0.x and earlier, libOSMesa needs to be explicitly linked to
+libglapi if mesa was built with shared glapi, see
+https://bugs.gentoo.org/show_bug.cgi?id=399813
+And in mesa-8.1.x, libOSMesa in addition needs libdl, libpthread, and
+libstdc++, see https://bugs.gentoo.org/show_bug.cgi?id=431832
+---
+ configure.ac | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index de807d2..a2e8684 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1233,7 +1233,13 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c
+
+ if test "x$with_osmesa" != "xno"
+ then
+- WINE_CHECK_SONAME(OSMesa,glAccum,,,[$X_LIBS -lm $X_EXTRA_LIBS])
++ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[$X_LIBS -lm $X_EXTRA_LIBS])
++ if test "x$ac_cv_lib_soname_OSMesa" = "x"; then
++ osmesa_save_CC=$CC
++ CC=$CXX
++ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[-lglapi -lpthread -ldl $X_LIBS -lm $X_EXTRA_LIBS])
++ CC=$osmesa_save_CC
++ fi
+ WINE_NOTICE_WITH(osmesa,[test "x$ac_cv_lib_soname_OSMesa" = "x"],
+ [libOSMesa ${notice_platform}development files not found (or too old), OpenGL rendering in bitmaps won't be supported.])
+ fi
+--
+1.8.5.3
+
diff --git a/app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch b/app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch
new file mode 100644
index 00000000..291c4a51
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch
@@ -0,0 +1,39 @@
+From bf5ac531a030bce9e798ab66bc53e84a65ca8fdb Mon Sep 17 00:00:00 2001
+From: Michael Cronenworth <mike@cchtml.com>
+Date: Thu, 16 Jun 2016 00:21:13 -0500
+Subject: [PATCH] secur32: Provide a static declaration for
+ gnutls_cipher_get_block_size.
+
+Instead of providing an extern provide a static declaration. The
+function return type changed from signed to unsigned in GnuTLS 3.5.
+
+Signed-off-by: Michael Cronenworth <mike@cchtml.com>
+Signed-off-by: Alexandre Julliard <julliard@winehq.org>
+---
+ dlls/secur32/schannel_gnutls.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/dlls/secur32/schannel_gnutls.c b/dlls/secur32/schannel_gnutls.c
+index b10b629..bcadd47 100644
+--- a/dlls/secur32/schannel_gnutls.c
++++ b/dlls/secur32/schannel_gnutls.c
+@@ -42,7 +42,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(secur32);
+ WINE_DECLARE_DEBUG_CHANNEL(winediag);
+
+ /* Not present in gnutls version < 2.9.10. */
+-extern int gnutls_cipher_get_block_size(gnutls_cipher_algorithm_t algorithm);
++static int (*pgnutls_cipher_get_block_size)(gnutls_cipher_algorithm_t algorithm);
+
+ static void *libgnutls_handle;
+ #define MAKE_FUNCPTR(f) static typeof(f) * p##f
+@@ -52,7 +52,6 @@ MAKE_FUNCPTR(gnutls_certificate_allocate_credentials);
+ MAKE_FUNCPTR(gnutls_certificate_free_credentials);
+ MAKE_FUNCPTR(gnutls_certificate_get_peers);
+ MAKE_FUNCPTR(gnutls_cipher_get);
+-MAKE_FUNCPTR(gnutls_cipher_get_block_size);
+ MAKE_FUNCPTR(gnutls_cipher_get_key_size);
+ MAKE_FUNCPTR(gnutls_credentials_set);
+ MAKE_FUNCPTR(gnutls_deinit);
+--
+2.1.4
+
diff --git a/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch b/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch
new file mode 100644
index 00000000..213f2c6c
--- /dev/null
+++ b/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch
@@ -0,0 +1,35 @@
+From deb274226783ab886bdb44876944e156757efe2b Mon Sep 17 00:00:00 2001
+From: Daniel Beitler <dan@dablabs.com>
+Date: Sun, 18 May 2014 13:27:42 -0400
+Subject: [PATCH] msi: Prevent call to memset with a null pointer in
+ get_tablecolumns function.
+
+---
+ dlls/msi/table.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/dlls/msi/table.c b/dlls/msi/table.c
+index 8012369..9ed9421 100644
+--- a/dlls/msi/table.c
++++ b/dlls/msi/table.c
+@@ -671,7 +671,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF
+ /* Note: _Columns table doesn't have non-persistent data */
+
+ /* if maxcount is non-zero, assume it's exactly right for this table */
+- memset( colinfo, 0, maxcount * sizeof(*colinfo) );
++ if (colinfo) memset( colinfo, 0, maxcount * sizeof(*colinfo) );
+ count = table->row_count;
+ for (i = 0; i < count; i++)
+ {
+@@ -684,7 +684,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF
+ /* check the column number is in range */
+ if (col < 1 || col > maxcount)
+ {
+- ERR("column %d out of range\n", col);
++ ERR("column %d out of range (maxcount: %d)\n", col, maxcount);
+ continue;
+ }
+ /* check if this column was already set */
+--
+1.9.1
+
diff --git a/app-emulation/wine/files/wine-sysmacros.patch b/app-emulation/wine/files/wine-sysmacros.patch
new file mode 100644
index 00000000..4ea515df
--- /dev/null
+++ b/app-emulation/wine/files/wine-sysmacros.patch
@@ -0,0 +1,177 @@
+From ca8a08606d3f0900b3f4aa8f2e6547882a22dba8 Mon Sep 17 00:00:00 2001
+From: Seong-ho Cho <darkcircle.0426@gmail.com>
+Date: Mon, 18 Apr 2016 04:25:38 +0900
+Subject: [PATCH] configure: Add AC_HEADER_MAJOR to find where major() is
+ defined.
+
+Signed-off-by: Seong-ho Cho <darkcircle.0426@gmail.com>
+Signed-off-by: Alexandre Julliard <julliard@winehq.org>
+---
+ configure | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ configure.ac | 1 +
+ dlls/ntdll/cdrom.c | 5 +++++
+ dlls/ntdll/directory.c | 5 +++++
+ dlls/ntdll/file.c | 5 +++++
+ include/config.h.in | 8 ++++++++
+ server/fd.c | 5 +++++
+ 7 files changed, 79 insertions(+)
+
+diff --git a/configure b/configure
+index 1cb0e59..ffb1825 100755
+--- a/configure
++++ b/configure
+@@ -6836,6 +6836,56 @@ fi
+
+ done
+
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sys/types.h defines makedev" >&5
++$as_echo_n "checking whether sys/types.h defines makedev... " >&6; }
++if ${ac_cv_header_sys_types_h_makedev+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++#include <sys/types.h>
++int
++main ()
++{
++return makedev(0, 0);
++ ;
++ return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++ ac_cv_header_sys_types_h_makedev=yes
++else
++ ac_cv_header_sys_types_h_makedev=no
++fi
++rm -f core conftest.err conftest.$ac_objext \
++ conftest$ac_exeext conftest.$ac_ext
++
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_types_h_makedev" >&5
++$as_echo "$ac_cv_header_sys_types_h_makedev" >&6; }
++
++if test $ac_cv_header_sys_types_h_makedev = no; then
++ac_fn_c_check_header_mongrel "$LINENO" "sys/mkdev.h" "ac_cv_header_sys_mkdev_h" "$ac_includes_default"
++if test "x$ac_cv_header_sys_mkdev_h" = xyes; then :
++
++$as_echo "#define MAJOR_IN_MKDEV 1" >>confdefs.h
++
++fi
++
++
++
++ if test $ac_cv_header_sys_mkdev_h = no; then
++ ac_fn_c_check_header_mongrel "$LINENO" "sys/sysmacros.h" "ac_cv_header_sys_sysmacros_h" "$ac_includes_default"
++if test "x$ac_cv_header_sys_sysmacros_h" = xyes; then :
++
++$as_echo "#define MAJOR_IN_SYSMACROS 1" >>confdefs.h
++
++fi
++
++
++ fi
++fi
++
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5
+ $as_echo_n "checking whether stat file-mode macros are broken... " >&6; }
+ if ${ac_cv_header_stat_broken+:} false; then :
+diff --git a/configure.ac b/configure.ac
+index 6189aa9..201bc77 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -512,6 +512,7 @@ AC_CHECK_HEADERS(\
+ valgrind/valgrind.h \
+ zlib.h
+ )
++AC_HEADER_MAJOR()
+ AC_HEADER_STAT()
+
+ dnl **** Checks for headers that depend on other ones ****
+diff --git a/dlls/ntdll/cdrom.c b/dlls/ntdll/cdrom.c
+index ee36045..2c64106 100644
+--- a/dlls/ntdll/cdrom.c
++++ b/dlls/ntdll/cdrom.c
+@@ -38,6 +38,11 @@
+ #ifdef HAVE_SYS_STAT_H
+ # include <sys/stat.h>
+ #endif
++#ifdef MAJOR_IN_MKDEV
++# include <sys/mkdev.h>
++#elif defined(MAJOR_IN_SYSMACROS)
++# include <sys/sysmacros.h>
++#endif
+ #include <sys/types.h>
+
+ #ifdef HAVE_SYS_IOCTL_H
+diff --git a/dlls/ntdll/directory.c b/dlls/ntdll/directory.c
+index 93fe594..4d431c0 100644
+--- a/dlls/ntdll/directory.c
++++ b/dlls/ntdll/directory.c
+@@ -47,6 +47,11 @@
+ #ifdef HAVE_SYS_ATTR_H
+ #include <sys/attr.h>
+ #endif
++#ifdef MAJOR_IN_MKDEV
++# include <sys/mkdev.h>
++#elif defined(MAJOR_IN_SYSMACROS)
++# include <sys/sysmacros.h>
++#endif
+ #ifdef HAVE_SYS_VNODE_H
+ /* Work around a conflict with Solaris' system list defined in sys/list.h. */
+ #define list SYSLIST
+diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
+index 7e5da59..b3bd9d6 100644
+--- a/dlls/ntdll/file.c
++++ b/dlls/ntdll/file.c
+@@ -57,6 +57,11 @@
+ #ifdef HAVE_SYS_SOCKET_H
+ #include <sys/socket.h>
+ #endif
++#ifdef MAJOR_IN_MKDEV
++# include <sys/mkdev.h>
++#elif defined(MAJOR_IN_SYSMACROS)
++# include <sys/sysmacros.h>
++#endif
+ #ifdef HAVE_UTIME_H
+ # include <utime.h>
+ #endif
+diff --git a/include/config.h.in b/include/config.h.in
+index 0650f31..06b192f 100644
+--- a/include/config.h.in
++++ b/include/config.h.in
+@@ -1335,6 +1335,14 @@
+ /* Define to 1 if you have the `__res_get_state' function. */
+ #undef HAVE___RES_GET_STATE
+
++/* Define to 1 if `major', `minor', and `makedev' are declared in <mkdev.h>.
++ */
++#undef MAJOR_IN_MKDEV
++
++/* Define to 1 if `major', `minor', and `makedev' are declared in
++ <sysmacros.h>. */
++#undef MAJOR_IN_SYSMACROS
++
+ /* Define to the address where bug reports for this package should be sent. */
+ #undef PACKAGE_BUGREPORT
+
+diff --git a/server/fd.c b/server/fd.c
+index 1fd1ce7..17b1b66 100644
+--- a/server/fd.c
++++ b/server/fd.c
+@@ -83,6 +83,11 @@
+ #endif
+ #include <sys/stat.h>
+ #include <sys/time.h>
++#ifdef MAJOR_IN_MKDEV
++#include <sys/mkdev.h>
++#elif defined(MAJOR_IN_SYSMACROS)
++#include <sys/sysmacros.h>
++#endif
+ #include <sys/types.h>
+ #include <unistd.h>
+ #ifdef HAVE_SYS_SYSCALL_H
+--
+2.7.4
+