From: Paul Eggert Date: Wed, 16 May 2012 09:01:55 +0000 (-0700) Subject: * configure.in: Simplify by removing CPP etc. X-Git-Tag: emacs-24.2.90~471^2~63 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f04940ae9da3e1938b824cb96480be03257f1a5e;p=emacs.git * configure.in: Simplify by removing CPP etc. (CPP_TEST_OPTIONS, NON_GNU_CPP, cc_specified, SPECIFIED_CFLAGS) (SPECIFED_CPP, CPP, NON_GNU_CC, AC_PROG_CPP): Remove; not needed. In particular we no longer need to fiddle with CPP, since we don't use CPP specially any more. (gl_EARLY): Invoke this after adjusting CC, so that it uses the adjusted compiler. (AC_PROG_INSTALL, AC_PROG_MKDIR_P, AC_PROG_RANLIB): Comment out, since gl_EARLY and/or Autoconf already does these. --- diff --git a/ChangeLog b/ChangeLog index 0495e917f21..0b7a79cc3d6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2012-05-16 Paul Eggert + + * configure.in: Simplify by removing CPP etc. + (CPP_TEST_OPTIONS, NON_GNU_CPP, cc_specified, SPECIFIED_CFLAGS) + (SPECIFED_CPP, CPP, NON_GNU_CC, AC_PROG_CPP): Remove; not needed. + In particular we no longer need to fiddle with CPP, since we don't + use CPP specially any more. + (gl_EARLY): Invoke this after adjusting CC, so that it uses the + adjusted compiler. + (AC_PROG_INSTALL, AC_PROG_MKDIR_P, AC_PROG_RANLIB): Comment out, + since gl_EARLY and/or Autoconf already does these. + 2012-05-16 Glenn Morris * configure.in: Try to fix building with gcc >= 4.6 on Darwin. diff --git a/configure.in b/configure.in index 5dfcc921e4f..e35f712c3b8 100644 --- a/configure.in +++ b/configure.in @@ -496,7 +496,6 @@ case "${canonical}" in # FIXME? Is it really our business to decide this for the user? if test -d /sw/include && test -d /sw/lib; then GCC_TEST_OPTIONS="-I/sw/include -L/sw/lib" - CPP_TEST_OPTIONS=${GCC_TEST_OPTIONS} NON_GCC_TEST_OPTIONS=${GCC_TEST_OPTIONS} fi ;; @@ -531,7 +530,6 @@ case "${canonical}" in # Without defining _LANGUAGE_C, things get masked out in the headers # so that, for instance, grepping for `free' in stdlib.h fails and # AC_HEADER_STD_C fails. (MIPSPro 7.2.1.2m compilers, Irix 6.5.3m). - NON_GNU_CPP="/lib/cpp -D_LANGUAGE_C" NON_GCC_TEST_OPTIONS="-D_LANGUAGE_C" ;; @@ -548,18 +546,15 @@ case "${canonical}" in case "${canonical}" in *-sunos5.6* | *-solaris2.6* ) opsys=sol2-6 - NON_GNU_CPP=/usr/ccs/lib/cpp RANLIB="ar -ts" ;; *-sunos5.[7-9]* | *-solaris2.[7-9]* ) opsys=sol2-6 emacs_check_sunpro_c=yes - NON_GNU_CPP=/usr/ccs/lib/cpp ;; *-sunos5* | *-solaris* ) opsys=sol2-10 emacs_check_sunpro_c=yes - NON_GNU_CPP=/usr/ccs/lib/cpp ;; esac ## Watch out for a compiler that we know will not work. @@ -581,9 +576,9 @@ case "${canonical}" in case "${canonical}" in *-cygwin ) opsys=cygwin ;; *-darwin* ) opsys=darwin ;; - *-sysv4.2uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; - *-sysv5uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; - *-sysv5OpenUNIX* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; + *-sysv4.2uw* ) opsys=unixware ;; + *-sysv5uw* ) opsys=unixware ;; + *-sysv5OpenUNIX* ) opsys=unixware ;; ## Otherwise, we'll fall through to the generic opsys code at the bottom. esac ;; @@ -625,111 +620,20 @@ opsysfile="s/${opsys}.h" #### Choose a compiler. -test -n "$CC" && cc_specified=yes - -# Save the value of CFLAGS that the user specified. -SPECIFIED_CFLAGS="$CFLAGS" - -# Save specified CPP (if any), before AC_PROG_CPP runs. -SPECIFIED_CPP="$CPP" dnl Sets GCC=yes if using gcc. AC_PROG_CC AM_PROG_CC_C_O -# Initialize gnulib right after verifying that the C compiler works. -# Note: this ends up setting CPP. -gl_EARLY - -dnl Note: looks like gl_EARLY has already done this (via AC_PROG_CPP). -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi - -## If not using gcc, and on Solaris, and no CPP specified, see if -## using a Sun compiler, which needs -Xs to prevent whitespace. -if test x"$GCC" != xyes && test x"$emacs_check_sunpro_c" = xyes && \ - test x"$CPP" = x; then - AC_MSG_CHECKING([whether we are using a Sun C compiler]) - AC_CACHE_VAL(emacs_cv_sunpro_c, - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], -[[#ifndef __SUNPRO_C -fail; -#endif -]])], emacs_cv_sunpro_c=yes, emacs_cv_sunpro_c=no)]) - AC_MSG_RESULT($emacs_cv_sunpro_c) - - if test x"$emacs_cv_sunpro_c" = xyes; then - NON_GNU_CPP="$CC -E -Xs" - fi -fi - -## If using gcc, and on darwin, see if using Apple's gcc, where old -## (pre gcc 3.3?) versions need -no-cpp-precomp to workaround some -## (unrecorded) issue. -## Frankly, I suspect this option is no longer needed on any system -## still in use today. It is at best a no-op since Apple's version -## of gcc 3.3 (?), which corresponds (?) to Xcode 1.5 from 2004. -## This was for OS X 10.3, and the nextstep port (for example) -## only supports 10.4 or later (although you could be building a -## non-ns version on some older OS X I guess). -if test x"$opsys" = xdarwin && test x"$GCC" = xyes; then - AC_MSG_CHECKING([whether we are using an Apple version of GCC]) - AC_CACHE_VAL(emacs_cv_apple_gcc, - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], -[[#ifndef __APPLE_CC__ -fail; -#endif -]])], emacs_cv_apple_gcc=yes, emacs_cv_apple_gcc=no)]) - AC_MSG_RESULT($emacs_cv_apple_gcc) - - ## This only tests that adding the option does not cause an error. - ## FIXME It may still cause "unrecognized option" - ## (in gcc < 4.6 --no-foo does that; newer versions throw an error). - ## The message appears on stderr, so AC_EGREP_CPP is no use. - ## It would be better to test if it is actually needed. - ## For that, someone would have actually had to document what the - ## issues it worked around were, so we could test for them. - if test $emacs_cv_apple_gcc = yes; then - AC_MSG_CHECKING([whether preprocessor accepts -no-cpp-precomp]) - save_CPP="$CPP" - test x$SPECIFIED_CPP = x && CPP="${CC-cc} -E" - CPP="$CPP -no-cpp-precomp" - dnl NB this will run AC_PROG_CPP first if it has not already happened. - AC_CACHE_VAL(emacs_cv_precomp, - [AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[]],[[]])], emacs_cv_precomp=yes, emacs_cv_precomp=no)]) - AC_MSG_RESULT($emacs_cv_precomp) - - test $emacs_cv_precomp = no && CPP="$save_CPP" - fi -fi - -#### Some systems specify a CPP to use unless we are using GCC. -#### Now that we know whether we are using GCC, we can decide whether -#### to use that one. -if test "x$NON_GNU_CPP" != x && test x$GCC != xyes && test "x$CPP" = x -then - CPP="$NON_GNU_CPP" -fi - -test "x$CPP_TEST_OPTIONS" != x && CPP="$CPP $CPP_TEST_OPTIONS" - -#### Some systems specify a CC to use unless we are using GCC. -#### Now that we know whether we are using GCC, we can decide whether -#### to use that one. -if test "x$NON_GNU_CC" != x && test x$GCC != xyes && - test x$cc_specified != xyes -then - CC="$NON_GNU_CC" -fi - if test x$GCC = xyes; then test "x$GCC_TEST_OPTIONS" != x && CC="$CC $GCC_TEST_OPTIONS" else test "x$NON_GCC_TEST_OPTIONS" != x && CC="$CC $NON_GCC_TEST_OPTIONS" fi +# Initialize gnulib right after choosing the compiler. +gl_EARLY + AC_ARG_ENABLE([gcc-warnings], [AS_HELP_STRING([--enable-gcc-warnings], [turn on lots of GCC warnings (for developers)])], @@ -847,19 +751,13 @@ fi -#### Some other nice autoconf tests. - -dnl Note: looks like gl_EARLY has already done this. -AC_PROG_CPP -AC_PROG_INSTALL - -dnl Note: looks like configure does this very early on anyway. -AC_PROG_MKDIR_P - -dnl Note: looks like gl_EARLY has already done this. -if test "x$RANLIB" = x; then - AC_PROG_RANLIB -fi +dnl Some other nice autoconf tests. +dnl These are commented out, since gl_EARLY and/or Autoconf already does them. +dnl AC_PROG_INSTALL +dnl AC_PROG_MKDIR_P +dnl if test "x$RANLIB" = x; then +dnl AC_PROG_RANLIB +dnl fi ## Although we're running on an amd64 kernel, we're actually compiling for ## the x86 architecture. The user should probably have provided an @@ -950,11 +848,6 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [AC_MSG_RESULT(no)]) -# The value of CPP is a quoted variable reference, so we need to do this -# to get its actual value... -CPP=`eval "echo $CPP"` - - dnl The function dump-emacs will not be defined and temacs will do dnl (load "loadup") automatically unless told otherwise. test "x$CANNOT_DUMP" = "x" && CANNOT_DUMP=no @@ -3982,7 +3875,7 @@ dnl the use of force in the `epaths-force' rule in Makefile.in. AC_CONFIG_COMMANDS([epaths], [ echo creating src/epaths.h ${MAKE-make} epaths-force -], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPPFLAGS="$CPPFLAGS"]) +], [GCC="$GCC" CPPFLAGS="$CPPFLAGS"]) AC_CONFIG_COMMANDS([gdbinit], [ if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then