X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/49d9e6b07bc34acf755ded0fc255e974a37f9189..8d1d9587c92457e1a7171493fdd1bccf682d26f0:/configure.in diff --git a/configure.in b/configure.in index a91d3c7b6a..8512c852c4 100644 --- a/configure.in +++ b/configure.in @@ -327,6 +327,8 @@ else PROFILING_CFLAGS= PROFILING_LDFLAGS= fi +AC_SUBST(PROFILING_CFLAGS) +AC_SUBST(PROFILING_LDFLAGS) AC_ARG_ENABLE(autodepend, [AS_HELP_STRING([--enable-autodepend], @@ -720,14 +722,6 @@ then CC="$NON_GNU_CC" fi -if test x$GCC = xyes; then - C_OPTIMIZE_SWITCH=-O2 - test "x$GCC_TEST_OPTIONS" != x && CC="$CC $GCC_TEST_OPTIONS" -else - C_OPTIMIZE_SWITCH=-O - test "x$NON_GCC_TEST_OPTIONS" != x && CC="$CC $NON_GCC_TEST_OPTIONS" -fi - dnl checks for Unix variants AC_USE_SYSTEM_EXTENSIONS @@ -757,6 +751,22 @@ CFLAGS="$SAVE_CFLAGS" unset has_option unset SAVE_CFLAGS +### Use -Wold-style-definition if the compiler supports it +# This can be removed when conversion to standard C is finished. +AC_MSG_CHECKING([whether gcc understands -Wold-style-definition]) +SAVE_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Wold-style-definition" +AC_TRY_COMPILE([], [], has_option=yes, has_option=no,) +if test $has_option = yes; then + C_WARNINGS_SWITCH="-Wold-style-definition $C_WARNINGS_SWITCH" +fi +AC_MSG_RESULT($has_option) +CFLAGS="$SAVE_CFLAGS" +unset has_option +unset SAVE_CFLAGS +AC_SUBST(C_WARNINGS_SWITCH) + + #### Some other nice autoconf tests. dnl checks for programs @@ -846,35 +856,12 @@ AC_LINK_IFELSE([main(){return 0;}], LDFLAGS=$late_LDFLAGS [AC_MSG_RESULT(no)]) -LDFLAGS="${LDFLAGS} ${PROFILING_LDFLAGS}" - # The value of CPP is a quoted variable reference, so we need to do this # to get its actual value... CPP=`eval "echo $CPP"` -### First figure out CFLAGS (which we use for running the compiler here) -### and REAL_CFLAGS (which we use for real compilation). -### The two are the same except when using GCC where we might use -### extra warning and profiling flags. - -### If the CFLAGS env var is specified, we use that value -### instead of the default. - -dnl Note AC_PROG_CC sets CFLAGS to -g -O2 for gcc anyway. -if test "x$SPECIFIED_CFLAGS" = x; then - CFLAGS="-g $C_OPTIMIZE_SWITCH" - if test x$GCC = xyes; then - REAL_CFLAGS="$CFLAGS $C_WARNINGS_SWITCH $PROFILING_CFLAGS" - else - REAL_CFLAGS="$CFLAGS" - fi -else - REAL_CFLAGS="$CFLAGS" -fi - - dnl Not used by any currently supported platform. dnl The function dump-emacs will not be defined and temacs will do dnl (load "loadup") automatically unless told otherwise. @@ -1073,7 +1060,7 @@ START_FILES= case $opsys in cygwin ) LIB_MATH= - START_FILES='ecrt0.o' + START_FILES='pre-crt0.o' ;; darwin ) ## Adding -lm confuses the dynamic linker, so omit it. @@ -1217,7 +1204,7 @@ AC_CHECK_HEADERS(sys/select.h sys/timeb.h sys/time.h unistd.h utime.h \ linux/version.h sys/systeminfo.h termios.h limits.h string.h stdlib.h \ stdio_ext.h fcntl.h strings.h coff.h pty.h sys/mman.h \ sys/param.h sys/vlimit.h sys/resource.h locale.h sys/_mbstate_t.h \ - sys/utsname.h pwd.h utmp.h) + sys/utsname.h pwd.h utmp.h dirent.h) AC_MSG_CHECKING(if personality LINUX32 can be set) AC_TRY_COMPILE([#include ], [personality (PER_LINUX32)], @@ -1482,7 +1469,7 @@ tmp_CPPFLAGS="$CPPFLAGS" tmp_CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS -x objective-c" CFLAGS="$CFLAGS -x objective-c" -TEMACS_LDFLAGS2="\${LDFLAGS}" +TEMACS_LDFLAGS2="\${LDFLAGS} \${PROFILING_LDFLAGS}" dnl I don't think it's especially important, but src/Makefile.in dnl (now the only user of ns_appdir) used to go to the trouble of adding a dnl trailing "/" to it, so now we do it here. @@ -1511,7 +1498,6 @@ if test "${with_ns}" != no; then GNUSTEP_LOCAL_LIBRARIES="-L${GNUSTEP_LOCAL_LIBRARIES}" CPPFLAGS="$CPPFLAGS -I${GNUSTEP_SYSTEM_HEADERS} ${GNUSTEP_LOCAL_HEADERS}" CFLAGS="$CFLAGS -I${GNUSTEP_SYSTEM_HEADERS} ${GNUSTEP_LOCAL_HEADERS}" - REAL_CFLAGS="$REAL_CFLAGS -I${GNUSTEP_SYSTEM_HEADERS} ${GNUSTEP_LOCAL_HEADERS}" LDFLAGS="$LDFLAGS -L${GNUSTEP_SYSTEM_LIBRARIES} ${GNUSTEP_LOCAL_LIBRARIES}" LIB_STANDARD= START_FILES= @@ -1717,6 +1703,7 @@ esac # used for the tests that follow. We set them back to REAL_CFLAGS and # REAL_CPPFLAGS later on. +REAL_CFLAGS="$CFLAGS" REAL_CPPFLAGS="$CPPFLAGS" if test "${HAVE_X11}" = "yes"; then @@ -2620,11 +2607,11 @@ rename closedir mkdir rmdir sysinfo getrusage get_current_dir_name \ random lrand48 logb frexp fmod rint cbrt ftime setsid \ strerror fpathconf select mktime euidaccess getpagesize tzset setlocale \ utimes getrlimit setrlimit setpgid getcwd getwd shutdown getaddrinfo \ -__fpending mblen mbrlen mbsinit strsignal setitimer ualarm index rindex \ +__fpending mblen mbrlen mbsinit strsignal setitimer ualarm strchr strrchr \ sendto recvfrom getsockopt setsockopt getsockname getpeername \ gai_strerror mkstemp getline getdelim mremap memmove fsync sync \ memset memcmp difftime memcpy mempcpy mblen mbrlen posix_memalign \ -cfmakeraw cfsetspeed isnan copysign) +cfmakeraw cfsetspeed isnan copysign __executable_start) AC_CHECK_HEADERS(sys/un.h) @@ -3339,9 +3326,7 @@ LINKER= ORDINARY_LINK= case "$opsys" in ## gnu: GNU needs its own crt0. - aix4-2|darwin|gnu|usg5-4|irix6-5|sol2*|unixware) ORDINARY_LINK=yes ;; - - cygwin) LINKER="\$(CC)" ;; + aix4-2|cygwin|darwin|gnu|irix6-5|sol2*|unixware) ORDINARY_LINK=yes ;; ## On post 1.3 releases of NetBSD, gcc -nostdlib also clears the ## library search parth, i.e. it won't search /usr/lib for libc and @@ -3394,8 +3379,7 @@ LIB_GCC= if test "x$GCC" = "xyes" && test "x$ORDINARY_LINK" != "xyes"; then case "$opsys" in - ## cygwin: don't link against static libgcc. - cygwin|freebsd|netbsd|openbsd) LIB_GCC= ;; + freebsd|netbsd|openbsd) LIB_GCC= ;; gnu-*) ## armin76@gentoo.org reported that the lgcc_s flag is necessary to @@ -3586,6 +3570,14 @@ void *alloca (size_t); typedef unsigned size_t; #endif +#ifndef HAVE_STRCHR +#define strchr(a, b) index (a, b) +#endif + +#ifndef HAVE_STRRCHR +#define strrchr(a, b) rindex (a, b) +#endif + #if defined __GNUC__ && (__GNUC__ > 2 \ || (__GNUC__ == 2 && __GNUC_MINOR__ >= 5)) #define NO_RETURN __attribute__ ((__noreturn__))