X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/142c15906ae08e559b1337c4816a6c2a0c341e24..cac5437927d43225e7f3691060e4b68064403bfc:/hints/aix.sh diff --git a/hints/aix.sh b/hints/aix.sh index baf8c00..a9d0715 100644 --- a/hints/aix.sh +++ b/hints/aix.sh @@ -109,11 +109,11 @@ case "$cc" in ccdlflags='-Xlinker' if [ "X$gccversion" = "X" ]; then # Done too late in Configure if hinted - gccversion=`$cc --version | sed 's/.*(GCC) *//'` + gccversion=`$cc -dumpversion` fi ;; - *) ccversion=`lslpp -L | grep 'C for AIX Compiler$' | grep -v '\.msg\.[A-Za-z_]*\.' | head -1 | awk '{print $1,$2}'` + *) ccversion=`lslpp -ql -Ou vac.C | grep -v '^Path' | head -1 | awk '{print $1,$2}'` case "$ccversion" in '') ccversion=`lslpp -L | grep 'IBM C and C++ Compilers LUM$'` ;; @@ -318,7 +318,11 @@ libswanted_uselargefiles="`getconf XBS5_ILP32_OFFBIG_LIBS 2>/dev/null|sed -e 's@ ccflags="`echo $ccflags | sed -e 's@ -b@ -Wl,-b@g'`" ldflags="`echo ' '$ldflags | sed -e 's@ -b@ -Wl,-b@g'`" lddlflags="`echo ' '$lddlflags | sed -e 's@ -b@ -Wl,-b@g'`" - ld='gcc' + lddlflags="`echo ' '$lddlflags | sed -e 's@ -G @ -Wl,-G @g'`" + case "$use64bitall" in + $define|true|[yY]*) ld="$cc -maix64" ;; + *) ld="$cc" ;; + esac echo >&4 "(using ccflags $ccflags)" echo >&4 "(using ldflags $ldflags)" echo >&4 "(using lddlflags $lddlflags)" @@ -383,6 +387,13 @@ EOM # Remove them. ccflags="`echo $ccflags | sed -e 's@-q32@@'`" ldflags="`echo $ldflags | sed -e 's@-b32@@'`" + case "$cc" in + *gcc*) + ccflags="`echo $ccflags | sed -e 's@-q64@-maix64@'`" + ccflags_uselargefiles="`echo $ccflags_uselargefiles | sed -e 's@-q64@-maix64@'`" + qacflags="`echo $qacflags | sed -e 's@-q64@-maix64@'`" + ;; + esac # Tell archiver to use large format. Unless we remove 'ar' # from 'trylist', the Configure script will just reset it to 'ar' # immediately prior to writing config.sh. This took me hours