summaryrefslogtreecommitdiff
path: root/hints/aix.sh
diff options
context:
space:
mode:
authorDarin McBride <dmcbride@cpan.org>2012-06-25 17:36:32 -0600
committerH.Merijn Brand <h.m.brand@xs4all.nl>2012-06-27 08:23:49 +0200
commit9d7bf48eff0f88f150105f63dab97d99b6b4e1fc (patch)
tree7c3fca67cce33959b87f0b33441ae7cec9f11336 /hints/aix.sh
parent11b24ae76382137a580b9b75114adee14ec7afd2 (diff)
downloadperl-9d7bf48eff0f88f150105f63dab97d99b6b4e1fc.tar.gz
AIX Hints file change
Ok, I think my earlier problem came from not cleaning up properly between multiple compiles. So I don't need to modify any test. Proposed log entry: When compiling many of the perl modules available from CPAN, an expectation of C99 support seems implied by many authors. Unfortunately, xlC doesn't do this by default, we have to add -qlanglvl=extc99 to the ccflags to get this to work. And by the time we get to installing modules, this flag is already set in Config. So, add the flag unconditionally at the outset. Also, remove -qlonglong and -qlanglvl=extended from the flags to silence the warning that extc99 includes them and that xlC is going to ignore it, using extc99 instead. Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
Diffstat (limited to 'hints/aix.sh')
-rw-r--r--hints/aix.sh13
1 files changed, 4 insertions, 9 deletions
diff --git a/hints/aix.sh b/hints/aix.sh
index 63f245f276..e1ae2fd798 100644
--- a/hints/aix.sh
+++ b/hints/aix.sh
@@ -96,7 +96,7 @@ cc=${cc:-cc}
ccflags="$ccflags -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE"
case "$cc" in
*gcc*) ;;
- *) ccflags="$ccflags -qmaxmem=-1 -qnoansialias" ;;
+ *) ccflags="$ccflags -qmaxmem=-1 -qnoansialias -qlanglvl=extc99" ;;
esac
nm_opt='-B'
@@ -245,13 +245,9 @@ case "$usethreads" in
cc_r)
;;
xlc_r)
- # for -qlonglong
- ccflags="$ccflags -qlanglvl=extended"
;;
# we do not need the C++ compiler
xlC_r)
- # for -qlonglong
- ccflags="$ccflags -qlanglvl=extended"
cc=xlc_r
;;
'')
@@ -272,13 +268,9 @@ case "$usethreads" in
*)
case "$cc" in
xlc)
- # for -qlonglong
- ccflags="$ccflags -qlanglvl=extended"
;;
# we do not need the C++ compiler
xlC)
- # for -qlonglong
- ccflags="$ccflags -qlanglvl=extended"
cc=xlc
;;
*)
@@ -348,6 +340,9 @@ libswanted_uselargefiles="`getconf XBS5_ILP32_OFFBIG_LIBS 2>/dev/null|sed -e 's@
$define|true|[yY]*) cc="$cc -q64" ;;
*) cc="$cc -q32" ;;
esac
+ # Some 32-bit getconfs will set ccflags to include -qlonglong
+ # but that's no longer needed with an explicit -qextc99.
+ ccflags="`echo $ccflags | sed -e 's@ -qlonglong@@`"
;;
*) # Remove xlc-specific -qflags.
ccflags="`echo $ccflags | sed -e 's@ -q[^ ]*@ @g' -e 's@^-q[^ ]* @@g'`"