X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/c146e557088423de6d404fc19bac82fb5117d207..43a65e9777214029046fe7a1427493e6e503a717:/configure.ac diff --git a/configure.ac b/configure.ac index 0788b9f1..f206b809 100644 --- a/configure.ac +++ b/configure.ac @@ -97,6 +97,13 @@ if test x"$enable_debug" = x"yes"; then test -z "$LDFLAGS" && LDFLAGS=-g fi +dnl Use SunStudio cc, with -v, on Solaris if user didn't set CC. +if test -z "$CC" -a -d /opt/solarisstudio12.3/bin; then + CC=/opt/solarisstudio12.3/bin/cc; export CC + ${CC} -V + CFLAGS="${CFLAGS:+$CFLAGS }-v" +fi + AC_PROG_CC AM_PROG_CC_C_O @@ -107,34 +114,33 @@ AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_has_wextra], CFLAGS="$nmh_saved_cflags"]) dnl Can't use -ansi with gcc 4.5.3 on Cygwin, at least through setup -dnl setup version 2.763, because it disables some features in the -dnl system system header files and warns about them with -Wall. Try -dnl to test for that generally, though still with gcc. +dnl version 2.763, because it disables some features in the system +dnl header files and warns about them with -Wall. Try to test for +dnl that generally, though still with gcc. if test "$GCC" = yes; then - AC_CACHE_CHECK([whether we can use -ansi with linker], - [nmh_cv_has_dash_ansi_with_linker], - [nmh_saved_ldflags="$LDFLAGS" - LDFLAGS="-ansi" + AC_CACHE_CHECK([whether we can use -ansi with gcc], [nmh_cv_has_dash_ansi], + [nmh_saved_cppflags="$CPPFLAGS" + nmh_saved_cflags="$CFLAGS" + CPPFLAGS="-D_GNU_SOURCE" + CFLAGS="-ansi -Wall -Werror" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ],[tzset();])], - [nmh_cv_has_dash_ansi_with_linker=yes], - [nmh_cv_has_dash_ansi_with_linker=no]) + [nmh_cv_has_dash_ansi=yes], + [nmh_cv_has_dash_ansi=no]) + CPPFLAGS="$nmh_saved_cppflags" + CFLAGS="$nmh_saved_cflags"]) + + dnl Disable clang complaint about unused -ansi when linking. + AC_CACHE_CHECK([whether linker supports -Qunused-arguments], + [nmh_cv_has_q_unused_arguments], + [nmh_saved_ldflags="$LDFLAGS" + LDFLAGS="$LDFLAGS -Qunused-arguments" + AC_TRY_LINK([],[],nmh_cv_has_q_unused_arguments=yes, + nmh_cv_has_q_unused_arguments=no) LDFLAGS="$nmh_saved_ldflags"]) - dnl Can't use -ansi with the linker on FreeBSD 10. If -ansi can't - dnl be used with the linker, don't try to put it in CFLAGS. - if test "$nmh_cv_has_dash_ansi_with_linker" = yes; then - AC_CACHE_CHECK([whether we can use -ansi with gcc], [nmh_cv_has_dash_ansi], - [nmh_saved_cppflags="$CPPFLAGS" - nmh_saved_cflags="$CFLAGS" - CPPFLAGS="-D_GNU_SOURCE" - CFLAGS="-ansi -Wall -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ],[tzset();])], - [nmh_cv_has_dash_ansi=yes], - [nmh_cv_has_dash_ansi=no]) - CPPFLAGS="$nmh_saved_cppflags" - CFLAGS="$nmh_saved_cflags"]) - else - nmh_cv_has_dash_ansi=no + if test "$nmh_cv_has_q_unused_arguments" = "yes"; then + test -z "$LDFLAGS" && LDFLAGS=-Qunused-arguments \ + || LDFLAGS="$LDFLAGS -Qunused-arguments" fi else nmh_cv_has_dash_ansi=no