Mesa (master): mesa: fix 32bit cross compilation on a 64bit machine
Brian Paul
brianp at kemper.freedesktop.org
Mon Aug 31 17:23:22 UTC 2009
Module: Mesa
Branch: master
Commit: c705e7238292d6c534d18dddcc03ecc6a24a5d66
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c705e7238292d6c534d18dddcc03ecc6a24a5d66
Author: Marc Dietrich <marvin24 at gmx.de>
Date: Mon Aug 31 08:56:33 2009 -0700
mesa: fix 32bit cross compilation on a 64bit machine
When cross compiling on a 64bit machine, gen_matypes.c is build
for the host machine (64bit) but must generates code for the target
machine (32bit). This causes wrong offsets all over the place and
crashes googleearth on my machine. Solution is to add -m32 when
cross compiling.
Attached patch is compatible with linux-x86-32 and autoconf based
builds.
---
configure.ac | 1 +
src/mesa/x86/Makefile | 2 +-
2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/configure.ac b/configure.ac
index 9d318b3..c5ef676 100644
--- a/configure.ac
+++ b/configure.ac
@@ -126,6 +126,7 @@ AC_ARG_ENABLE([32-bit],
if test "x$enable_32bit" = xyes; then
if test "x$GCC" = xyes; then
CFLAGS="$CFLAGS -m32"
+ ARCH_FLAGS="$ARCH_FLAGS -m32"
fi
if test "x$GXX" = xyes; then
CXXFLAGS="$CXXFLAGS -m32"
diff --git a/src/mesa/x86/Makefile b/src/mesa/x86/Makefile
index aa49a91..69122c1 100644
--- a/src/mesa/x86/Makefile
+++ b/src/mesa/x86/Makefile
@@ -21,7 +21,7 @@ clean:
gen_matypes: gen_matypes.c
- $(HOST_CC) $(INCLUDE_DIRS) $(HOST_CFLAGS) gen_matypes.c -o gen_matypes
+ $(HOST_CC) $(ARCH_FLAGS) $(INCLUDE_DIRS) $(HOST_CFLAGS) gen_matypes.c -o gen_matypes
# need some special rules here, unfortunately
matypes.h: ../main/mtypes.h ../tnl/t_context.h gen_matypes
More information about the mesa-commit
mailing list