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/builtin_ms_va_list.c9
-rw-r--r--app-emulation/wine/files/pr66838.c36
-rw-r--r--app-emulation/wine/files/pr69140.c37
-rw-r--r--app-emulation/wine/files/wine-1.5.26-winegcc.patch59
-rw-r--r--app-emulation/wine/files/wine-1.6-memset-O3.patch21
-rw-r--r--app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch39
-rw-r--r--app-emulation/wine/files/wine-1.9.5-multilib-portage.patch (renamed from app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch)35
-rw-r--r--app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch35
-rw-r--r--app-emulation/wine/files/wine-sysmacros.patch177
9 files changed, 175 insertions, 273 deletions
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 00000000..f36fc260
--- /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/files/pr66838.c b/app-emulation/wine/files/pr66838.c
new file mode 100644
index 00000000..cd616859
--- /dev/null
+++ b/app-emulation/wine/files/pr66838.c
@@ -0,0 +1,36 @@
+/* From gcc svn, /branches/gcc-5-branch/gcc/testsuite/gcc.target/i386/pr66838.c */
+/* Copyrighted and distributed under the same terms as gcc */
+
+void abort (void);
+
+char global;
+
+__attribute__((sysv_abi, noinline, noclone))
+void sysv_abi_func(char const *desc, void *local)
+{
+ register int esi asm ("esi");
+ register int edi asm ("edi");
+
+ if (local != &global)
+ abort ();
+
+ /* Clobber some of the extra SYSV ABI registers. */
+ asm volatile ("movl\t%2, %0\n\tmovl\t%2, %1"
+ : "=r" (esi), "=r" (edi)
+ : "i" (0xdeadbeef));
+}
+
+__attribute__((ms_abi, noinline, noclone))
+void ms_abi_func ()
+{
+ sysv_abi_func ("1st call", &global);
+ sysv_abi_func ("2nd call", &global);
+ sysv_abi_func ("3rd call", &global);
+}
+
+int
+main(void)
+{
+ ms_abi_func();
+ return 0;
+}
diff --git a/app-emulation/wine/files/pr69140.c b/app-emulation/wine/files/pr69140.c
new file mode 100644
index 00000000..7c9e001f
--- /dev/null
+++ b/app-emulation/wine/files/pr69140.c
@@ -0,0 +1,37 @@
+/* { dg-do compile { target lp64 } } */
+/* { dg-options "-O2 -mincoming-stack-boundary=3" } */
+
+typedef struct {
+ unsigned int buf[4];
+ unsigned char in[64];
+} MD4_CTX;
+
+static void
+MD4Transform (unsigned int buf[4], const unsigned int in[16])
+{
+ unsigned int a, b, c, d;
+ (b) += ((((c)) & ((d))) | ((~(c)) & ((a)))) + (in[7]);
+ (a) += ((((b)) & ((c))) | ((~(b)) & ((d)))) + (in[8]);
+ (d) += ((((a)) & ((b))) | ((~(a)) & ((c)))) + (in[9]);
+ buf[3] += d;
+}
+
+void __attribute__((ms_abi))
+MD4Update (MD4_CTX *ctx, const unsigned char *buf)
+{
+ MD4Transform( ctx->buf, (unsigned int *)ctx->in);
+ MD4Transform( ctx->buf, (unsigned int *)ctx->in);
+}
+
+int
+main(void)
+{
+ MD4_CTX ctx_test =
+ {
+ { 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476 },
+ { 0, 0 }
+ };
+ unsigned char buf[64];
+
+ MD4Update(&ctx_test, (const unsigned char *) &buf);
+}
diff --git a/app-emulation/wine/files/wine-1.5.26-winegcc.patch b/app-emulation/wine/files/wine-1.5.26-winegcc.patch
new file mode 100644
index 00000000..2045e343
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.5.26-winegcc.patch
@@ -0,0 +1,59 @@
+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
new file mode 100644
index 00000000..75372f86
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.6-memset-O3.patch
@@ -0,0 +1,21 @@
+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.8-gnutls-3.5-compat.patch b/app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch
deleted file mode 100644
index 291c4a51..00000000
--- a/app-emulation/wine/files/wine-1.8-gnutls-3.5-compat.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-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-1.4_rc2-multilib-portage.patch b/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch
index be6ffc56..c19d0d8a 100644
--- a/app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch
+++ b/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch
@@ -7,28 +7,9 @@ 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 @@
+--- a/configure.ac 2016-03-05 20:53:50.574628728 -0500
++++ b/configure.ac 2016-03-05 20:57:54.945617833 -0500
+@@ -141,6 +141,9 @@
then
CC="$CC -m32"
CXX="$CXX -m32"
@@ -38,3 +19,13 @@ winegcc saves the build-time value of CC and uses it at runtime.
AC_MSG_CHECKING([whether $CC works])
AC_LINK_IFELSE([AC_LANG_PROGRAM()],AC_MSG_RESULT([yes]),
[AC_MSG_RESULT([no])
+@@ -160,6 +163,9 @@
+ fi
+ 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")
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
deleted file mode 100644
index 213f2c6c..00000000
--- a/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-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
deleted file mode 100644
index 4ea515df..00000000
--- a/app-emulation/wine/files/wine-sysmacros.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-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
-