aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2006-04-21 23:11:58 +0000
committerBruce Momjian <bruce@momjian.us>2006-04-21 23:11:58 +0000
commit899f49cfce7484b97be50d9c1aac2557ca7d359c (patch)
treedf190c01d86ef1f247080d8e1f3d6218c8d78d3c
parent1b4504ced27d902208114bdc936fef7b6e33d419 (diff)
downloadpostgresql-899f49cfce7484b97be50d9c1aac2557ca7d359c.tar.gz
postgresql-899f49cfce7484b97be50d9c1aac2557ca7d359c.zip
Use special gcc -W flags only if we are using gcc, not if we are using
the Intel compiler. Jeremy Drake
-rwxr-xr-xconfigure65
-rw-r--r--configure.in23
2 files changed, 75 insertions, 13 deletions
diff --git a/configure b/configure
index 4bfa4167ceb..ebab2289bac 100755
--- a/configure
+++ b/configure
@@ -2713,12 +2713,65 @@ else
fi
fi
+# The Intel compiler on Linux supports most gcc options, but not
+# all of them, so only add these options if we are really using
+# gcc
+
if test "$GCC" = yes; then
- CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith -Winline"
- # Some versions of GCC support some additional useful warning flags.
- # Check whether they are supported, and add them to CFLAGS if so.
- echo "$as_me:$LINENO: checking if $CC supports -Wdeclaration-after-statement" >&5
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __INTEL_COMPILER
+choke me
+#endif
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ICC=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ICC=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test "$ICC" = no; then
+ CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith -Winline"
+
+ # Some versions of GCC support some additional useful warning flags.
+ # Check whether they are supported, and add them to CFLAGS if so.
+ echo "$as_me:$LINENO: checking if $CC supports -Wdeclaration-after-statement" >&5
echo $ECHO_N "checking if $CC supports -Wdeclaration-after-statement... $ECHO_C" >&6
pgac_save_CFLAGS=$CFLAGS
CFLAGS="$pgac_save_CFLAGS -Wdeclaration-after-statement"
@@ -2771,7 +2824,7 @@ echo "${ECHO_T}no" >&6
fi
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- echo "$as_me:$LINENO: checking if $CC supports -Wendif-labels" >&5
+ echo "$as_me:$LINENO: checking if $CC supports -Wendif-labels" >&5
echo $ECHO_N "checking if $CC supports -Wendif-labels... $ECHO_C" >&6
pgac_save_CFLAGS=$CFLAGS
CFLAGS="$pgac_save_CFLAGS -Wendif-labels"
@@ -2824,6 +2877,7 @@ echo "${ECHO_T}no" >&6
fi
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
# Disable strict-aliasing rules; needed for gcc 3.3+
echo "$as_me:$LINENO: checking if $CC supports -fno-strict-aliasing" >&5
@@ -2897,7 +2951,6 @@ fi
# Check if the compiler still works with the template settings
echo "$as_me:$LINENO: checking whether the C compiler still works" >&5
echo $ECHO_N "checking whether the C compiler still works... $ECHO_C" >&6
-
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
diff --git a/configure.in b/configure.in
index 8e627b9ce54..982e2081ce2 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-dnl $PostgreSQL: pgsql/configure.in,v 1.457 2006/04/19 16:32:08 tgl Exp $
+dnl $PostgreSQL: pgsql/configure.in,v 1.458 2006/04/21 23:11:58 momjian Exp $
dnl
dnl Developers, please strive to achieve this order:
dnl
@@ -248,13 +248,22 @@ else
fi
fi
-if test "$GCC" = yes; then
- CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith -Winline"
+# The Intel compiler on Linux supports most gcc options, but not
+# all of them, so only add these options if we are really using
+# gcc
- # Some versions of GCC support some additional useful warning flags.
- # Check whether they are supported, and add them to CFLAGS if so.
- PGAC_PROG_CC_CFLAGS_OPT([-Wdeclaration-after-statement])
- PGAC_PROG_CC_CFLAGS_OPT([-Wendif-labels])
+if test "$GCC" = yes; then
+AC_TRY_COMPILE([], [@%:@ifndef __INTEL_COMPILER
+choke me
+@%:@endif], [ICC=[yes]], [ICC=[no]])
+ if test "$ICC" = no; then
+ CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith -Winline"
+
+ # Some versions of GCC support some additional useful warning flags.
+ # Check whether they are supported, and add them to CFLAGS if so.
+ PGAC_PROG_CC_CFLAGS_OPT([-Wdeclaration-after-statement])
+ PGAC_PROG_CC_CFLAGS_OPT([-Wendif-labels])
+ fi
# Disable strict-aliasing rules; needed for gcc 3.3+
PGAC_PROG_CC_CFLAGS_OPT([-fno-strict-aliasing])