Commit 68d95f12 authored by Tom Lane's avatar Tom Lane

Tweak configure to attempt to add -qnoansialias to CFLAGS whenever running

on AIX with a non-gcc compiler.  The previous coding would do this only if
CC was exactly "xlc"; which is a bad idea, as demonstrated by trouble report
from Mihai Criveti.
parent 787020fd
...@@ -3833,7 +3833,7 @@ unset CFLAGS ...@@ -3833,7 +3833,7 @@ unset CFLAGS
# else: If the template file set something, that is used. # else: If the template file set something, that is used.
# else: If coverage was enabled, don't set anything. # else: If coverage was enabled, don't set anything.
# else: If the compiler is GCC, then we use -O2. # else: If the compiler is GCC, then we use -O2.
# else: If the compiler is something else, then we use -O. # else: If the compiler is something else, then we use -O, unless debugging.
if test "$ac_env_CFLAGS_set" = set; then if test "$ac_env_CFLAGS_set" = set; then
CFLAGS=$ac_env_CFLAGS_value CFLAGS=$ac_env_CFLAGS_value
...@@ -3852,7 +3852,8 @@ fi ...@@ -3852,7 +3852,8 @@ fi
# Some versions of GCC support some additional useful warning flags. # Some versions of GCC support some additional useful warning flags.
# Check whether they are supported, and add them to CFLAGS if so. # Check whether they are supported, and add them to CFLAGS if so.
# ICC pretends to be GCC but it's lying; it doesn't support these options. # ICC pretends to be GCC but it's lying; it doesn't support these flags,
# but has its own. Also check other compiler-specific flags here.
if test "$GCC" = yes -a "$ICC" = no; then if test "$GCC" = yes -a "$ICC" = no; then
CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith" CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith"
...@@ -4157,8 +4158,8 @@ fi ...@@ -4157,8 +4158,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
elif test x"${CC}" = x"xlc"; then elif test "$PORTNAME" = "aix"; then
# AIX xlc has to have strict aliasing turned off too # AIX's xlc has to have strict aliasing turned off too
{ echo "$as_me:$LINENO: checking if $CC supports -qnoansialias" >&5 { echo "$as_me:$LINENO: checking if $CC supports -qnoansialias" >&5
echo $ECHO_N "checking if $CC supports -qnoansialias... $ECHO_C" >&6; } echo $ECHO_N "checking if $CC supports -qnoansialias... $ECHO_C" >&6; }
pgac_save_CFLAGS=$CFLAGS pgac_save_CFLAGS=$CFLAGS
......
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
dnl $PostgreSQL: pgsql/configure.in,v 1.589 2009/01/22 22:27:12 petere Exp $ dnl $PostgreSQL: pgsql/configure.in,v 1.590 2009/02/11 20:02:39 tgl Exp $
dnl dnl
dnl Developers, please strive to achieve this order: dnl Developers, please strive to achieve this order:
dnl dnl
...@@ -402,7 +402,7 @@ unset CFLAGS ...@@ -402,7 +402,7 @@ unset CFLAGS
# else: If the template file set something, that is used. # else: If the template file set something, that is used.
# else: If coverage was enabled, don't set anything. # else: If coverage was enabled, don't set anything.
# else: If the compiler is GCC, then we use -O2. # else: If the compiler is GCC, then we use -O2.
# else: If the compiler is something else, then we use -O. # else: If the compiler is something else, then we use -O, unless debugging.
if test "$ac_env_CFLAGS_set" = set; then if test "$ac_env_CFLAGS_set" = set; then
CFLAGS=$ac_env_CFLAGS_value CFLAGS=$ac_env_CFLAGS_value
...@@ -421,7 +421,8 @@ fi ...@@ -421,7 +421,8 @@ fi
# Some versions of GCC support some additional useful warning flags. # Some versions of GCC support some additional useful warning flags.
# Check whether they are supported, and add them to CFLAGS if so. # Check whether they are supported, and add them to CFLAGS if so.
# ICC pretends to be GCC but it's lying; it doesn't support these options. # ICC pretends to be GCC but it's lying; it doesn't support these flags,
# but has its own. Also check other compiler-specific flags here.
if test "$GCC" = yes -a "$ICC" = no; then if test "$GCC" = yes -a "$ICC" = no; then
CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith" CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith"
...@@ -438,8 +439,8 @@ elif test "$ICC" = yes; then ...@@ -438,8 +439,8 @@ elif test "$ICC" = yes; then
PGAC_PROG_CC_CFLAGS_OPT([-mp1]) PGAC_PROG_CC_CFLAGS_OPT([-mp1])
# Make sure strict aliasing is off (though this is said to be the default) # Make sure strict aliasing is off (though this is said to be the default)
PGAC_PROG_CC_CFLAGS_OPT([-fno-strict-aliasing]) PGAC_PROG_CC_CFLAGS_OPT([-fno-strict-aliasing])
elif test x"${CC}" = x"xlc"; then elif test "$PORTNAME" = "aix"; then
# AIX xlc has to have strict aliasing turned off too # AIX's xlc has to have strict aliasing turned off too
PGAC_PROG_CC_CFLAGS_OPT([-qnoansialias]) PGAC_PROG_CC_CFLAGS_OPT([-qnoansialias])
fi fi
......
# Set appropriate default compiler options if using xlc
# Note: configure will add -qnoansialias if the compiler accepts it,
# even if user specifies a non-default CFLAGS setting.
if test "$GCC" != yes ; then if test "$GCC" != yes ; then
case $host_os in case $host_os in
aix3.2.5 | aix4.1*) aix3.2.5 | aix4.1*)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment