From d7a7c3769d0a1dcb8400258cd8adf78a8566de61 Mon Sep 17 00:00:00 2001 From: mob Date: Sun, 26 Feb 2012 19:02:51 -0600 Subject: Multiple fixes for 64 bit sections This changeset attempts to fix a few problems when giving using the high 32bits of a 64bit section offset. There are likely more issues (or perhaps regressions) lurking in the muck here. In general, this moves a few data type declarations to use uplong. Also, add support for 64bit mingw32 building under cygwin. Because native types are used for 64 bit offsets, this won't fix challenges with cross compiling from 32bit -> 64bit. Tested under cygwin, against binary compiled with -Wl,-Ttext=0xffffff8000000000 Signed-off-by: Andrew Mulbrook --- configure | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'configure') diff --git a/configure b/configure index 188c360..ed6ca6f 100755 --- a/configure +++ b/configure @@ -154,6 +154,8 @@ for opt do ;; --enable-cygwin) mingw32="yes" ; cygwin="yes" ; cross_prefix="mingw32-" ; cpu=x86 ;; + --enable-cygwin64) mingw32="yes" ; cygwin="yes" ; cross_prefix="x86_64-w64-mingw32-" ; cpu="x86-64" + ;; --enable-cross) build_cross="yes" ;; --disable-static) disable_static="yes" @@ -431,14 +433,18 @@ if test "$noldl" = "yes" ; then echo "CONFIG_NOLDL=yes" >> config.mak fi if test "$mingw32" = "yes" ; then - echo "CONFIG_WIN32=yes" >> config.mak - echo "#define CONFIG_WIN32 1" >> $TMPH + if test "$cpu" = "x86-64" ; then + echo "CONFIG_WIN64=yes" >> config.mak + echo "#define CONFIG_WIN64 1" >> $TMPH + else + echo "CONFIG_WIN32=yes" >> config.mak + echo "#define CONFIG_WIN32 1" >> $TMPH + fi fi if test "$cygwin" = "yes" ; then echo "#ifndef _WIN32" >> $TMPH echo "#define _WIN32" >> $TMPH echo "#endif" >> $TMPH - echo "AR=ar" >> config.mak fi if test "$bigendian" = "yes" ; then echo "WORDS_BIGENDIAN=yes" >> config.mak -- cgit v1.3.1