fi
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if gcc has a working -fno-strict-aliasing" >&5
+$as_echo_n "checking if gcc has a working -fno-strict-aliasing... " >&6; }
+if ${ac_cv_nsa+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
-case "`$CC -v --help 2>&1`" in
- *-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
-esac
+ save_cflags="$CFLAGS"
+ CFLAGS="$CFLAGS -fno-strict-aliasing"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-case "`$CC -v --help 2>&1`" in
- *-Wpointer-sign* ) CFLAGS="$CFLAGS -Wno-pointer-sign" ;;
-esac
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_nsa="yes"
+else
+ ac_cv_nsa="no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CFLAGS="$save_cflags"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_nsa" >&5
+$as_echo "$ac_cv_nsa" >&6; }
+if test "$ac_cv_nsa" = "yes"; then
+CFLAGS="$CFLAGS -fno-strict-aliasing"
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if gcc has a working -Wno-pointer-sign" >&5
+$as_echo_n "checking if gcc has a working -Wno-pointer-sign... " >&6; }
+if ${ac_cv_nps+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ save_cflags="$CFLAGS"
+ CFLAGS="$CFLAGS -Wno-pointer-sign"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_nps="yes"
+else
+ ac_cv_nps="no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CFLAGS="$save_cflags"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_nps" >&5
+$as_echo "$ac_cv_nps" >&6; }
+if test "$ac_cv_nps" = "yes"; then
+CFLAGS="$CFLAGS -Wno-pointer-sign"
+fi
# Extract the first word of "rm", so it can be a program name with args.
set dummy rm; ac_word=$2
fi
fi
-dnl (the gcc flag detection trick is taken from xemacs/Vin Shelton)
-
dnl UnrealIRCd might not be strict-aliasing safe at this time
-case "`$CC -v --help 2>&1`" in
- *-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
-esac
+AC_CACHE_CHECK(if gcc has a working -fno-strict-aliasing, ac_cv_nsa, [
+ save_cflags="$CFLAGS"
+ CFLAGS="$CFLAGS -fno-strict-aliasing"
+ AC_TRY_COMPILE(,, ac_cv_nsa="yes", ac_cv_nsa="no")
+ CFLAGS="$save_cflags"
+])
+if test "$ac_cv_nsa" = "yes"; then
+CFLAGS="$CFLAGS -fno-strict-aliasing"
+fi
dnl Pointer signedness warnings are really a pain and 99.9% of the time
dnl they are of absolutely no use whatsoever. IMO the person who decided
dnl to enable this without -Wall should be shot on sight.
-case "`$CC -v --help 2>&1`" in
- *-Wpointer-sign* ) CFLAGS="$CFLAGS -Wno-pointer-sign" ;;
-esac
+AC_CACHE_CHECK(if gcc has a working -Wno-pointer-sign, ac_cv_nps, [
+ save_cflags="$CFLAGS"
+ CFLAGS="$CFLAGS -Wno-pointer-sign"
+ AC_TRY_COMPILE(,, ac_cv_nps="yes", ac_cv_nps="no")
+ CFLAGS="$save_cflags"
+])
+if test "$ac_cv_nps" = "yes"; then
+CFLAGS="$CFLAGS -Wno-pointer-sign"
+fi
AC_PATH_PROG(RM,rm)
AC_PATH_PROG(CP,cp)