[app-emulation/wine] kill the osmesa hack for win32 which disables it on amd64. requires FireBurn overlay to work, therefore not keyworded, also osmesa use flag on mesa-32bit is required which is not checked here yet due to lazyness
This commit is contained in:
55
app-emulation/wine/files/wine-1.1.15-winegcc.patch
Normal file
55
app-emulation/wine/files/wine-1.1.15-winegcc.patch
Normal file
@@ -0,0 +1,55 @@
|
||||
http://bugs.gentoo.org/260726
|
||||
|
||||
--- wine-1.1.15/tools/winegcc/winegcc.c
|
||||
+++ wine-1.1.15/tools/winegcc/winegcc.c
|
||||
@@ -215,10 +215,13 @@
|
||||
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(__sparc__)
|
||||
static const enum target_cpu build_cpu = CPU_SPARC;
|
||||
#elif defined(__ALPHA__)
|
||||
@@ -968,6 +971,9 @@
|
||||
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;
|
||||
--- wine-1.1.15/tools/winebuild/main.c
|
||||
+++ wine-1.1.15/tools/winebuild/main.c
|
||||
@@ -50,10 +50,13 @@
|
||||
int link_ext_symbols = 0;
|
||||
int force_pointer_size = 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(__sparc__)
|
||||
enum target_cpu target_cpu = CPU_SPARC;
|
||||
#elif defined(__ALPHA__)
|
||||
@@ -574,6 +577,10 @@
|
||||
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 );
|
||||
|
||||
40
app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch
Normal file
40
app-emulation/wine/files/wine-1.4_rc2-multilib-portage.patch
Normal file
@@ -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])
|
||||
38
app-emulation/wine/files/wine-1.5.11-osmesa-check.patch
Normal file
38
app-emulation/wine/files/wine-1.5.11-osmesa-check.patch
Normal file
@@ -0,0 +1,38 @@
|
||||
From 22fcf835dfe713ad93f649a901973208e0f7b62d 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 files changed, 7 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 15ada86..6eab75e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1133,7 +1133,13 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c
|
||||
|
||||
if test "$ac_cv_header_GL_osmesa_h" = "yes"
|
||||
then
|
||||
- WINE_CHECK_SONAME(OSMesa,glAccum,,,[$X_LIBS $X_PRE_LIBS $XLIB -lm $X_EXTRA_LIBS])
|
||||
+ WINE_CHECK_SONAME(OSMesa,OSMesaCreateContext,,,[$X_LIBS $X_PRE_LIBS $XLIB -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 $X_PRE_LIBS $XLIB -lm $X_EXTRA_LIBS])
|
||||
+ CC=$osmesa_save_CC
|
||||
+ fi
|
||||
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.])
|
||||
--
|
||||
1.7.8.6
|
||||
|
||||
Reference in New Issue
Block a user