X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/315f675857250c2204d024748e9eafa57c68410f..296094c3dde63e458242a8537d1d3c0ca299dd56:/configure.in diff --git a/configure.in b/configure.in index bc78cd4714..20b4cf2d59 100644 --- a/configure.in +++ b/configure.in @@ -38,9 +38,10 @@ dnl (autoconf) Installation Directory Variables dnl See also epaths.h below. lispdir='${datadir}/emacs/${version}/lisp' leimdir='${datadir}/emacs/${version}/leim' +standardlisppath='${lispdir}:${leimdir}' locallisppath='${datadir}/emacs/${version}/site-lisp:'\ '${datadir}/emacs/site-lisp' -lisppath='${locallisppath}:${lispdir}:${datadir}/emacs/${version}/leim' +lisppath='${locallisppath}:${standardlisppath}' etcdir='${datadir}/emacs/${version}/etc' archlibdir='${libexecdir}/emacs/${version}/${configuration}' docdir='${datadir}/emacs/${version}/etc' @@ -230,11 +231,6 @@ AC_ARG_ENABLE(ns-self-contained, EN_NS_SELF_CONTAINED=$enableval, EN_NS_SELF_CONTAINED=yes) -AC_ARG_ENABLE(asserts, -[AS_HELP_STRING([--enable-asserts], [compile code with asserts enabled])], - USE_XASSERTS=$enableval, - USE_XASSERTS=no) - AC_ARG_ENABLE(locallisppath, [AS_HELP_STRING([--enable-locallisppath=PATH], [directories Emacs should search for lisp files specific @@ -251,7 +247,7 @@ AC_ARG_ENABLE(checking, enable only specific categories of checks. Categories are: all,yes,no. Flags are: stringbytes, stringoverrun, stringfreelist, - xmallocoverrun, conslist])], + xmallocoverrun, conslist, glyphs])], [ac_checking_flags="${enableval}"],[]) IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS," for check in $ac_checking_flags @@ -264,19 +260,22 @@ do ac_gc_check_string_overrun= ; ac_gc_check_string_free_list= ; ac_xmalloc_overrun= ; - ac_gc_check_cons_list= ;; + ac_gc_check_cons_list= ; + ac_glyphs_debug= ;; all) ac_enable_checking=1 ; ac_gc_check_stringbytes=1 ; ac_gc_check_string_overrun=1 ; ac_gc_check_string_free_list=1 ; ac_xmalloc_overrun=1 ; - ac_gc_check_cons_list=1 ;; + ac_gc_check_cons_list=1 ; + ac_glyphs_debug=1 ;; # these enable particular checks stringbytes) ac_gc_check_stringbytes=1 ;; stringoverrun) ac_gc_check_string_overrun=1 ;; stringfreelist) ac_gc_check_string_free_list=1 ;; xmallocoverrun) ac_xmalloc_overrun=1 ;; conslist) ac_gc_check_cons_list=1 ;; + glyphs) ac_glyphs_debug=1 ;; *) AC_MSG_ERROR(unknown check category $check) ;; esac done @@ -284,7 +283,7 @@ IFS="$ac_save_IFS" if test x$ac_enable_checking != x ; then AC_DEFINE(ENABLE_CHECKING, 1, -[Enable expensive run-time checking of data types?]) +[Define to 1 if expensive run-time data type and consistency checks are enabled.]) fi if test x$ac_gc_check_stringbytes != x ; then AC_DEFINE(GC_CHECK_STRING_BYTES, 1, @@ -308,6 +307,10 @@ if test x$ac_gc_check_cons_list != x ; then AC_DEFINE(GC_CHECK_CONS_LIST, 1, [Define this to check for errors in cons list.]) fi +if test x$ac_glyphs_debug != x ; then + AC_DEFINE(GLYPH_DEBUG, 1, +[Define this to enable glyphs debugging code.]) +fi AC_ARG_ENABLE(check-lisp-object-type, [AS_HELP_STRING([--enable-check-lisp-object-type], @@ -581,6 +584,32 @@ AC_ARG_ENABLE([gcc-warnings], [gl_gcc_warnings=no] ) +AC_ARG_ENABLE(link-time-optimization, +[AS_HELP_STRING([--enable-link-time-optimization], + [build emacs with link-time optimization. + This is supported only for GCC since 4.5.0.])], +if test "${enableval}" != "no"; then + AC_MSG_CHECKING([whether link-time optimization is supported]) + ac_lto_supported=no + if test x$GCC = xyes; then + CPUS=`getconf _NPROCESSORS_ONLN 2>/dev/null` + if test x$CPUS != x; then + LTO="-flto=$CPUS" + else + LTO="-flto" + fi + old_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS $LTO" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], + [ac_lto_supported=yes], [ac_lto_supported=no]) + CFLAGS="$old_CFLAGS" + fi + AC_MSG_RESULT([$ac_lto_supported]) + if test "$ac_lto_supported" = "yes"; then + CFLAGS="$CFLAGS $LTO" + fi +fi) + # gl_GCC_VERSION_IFELSE([major], [minor], [run-if-found], [run-if-not-found]) # ------------------------------------------------ # If $CPP is gcc-MAJOR.MINOR or newer, then run RUN-IF-FOUND. @@ -699,9 +728,11 @@ AC_PATH_PROG(INSTALL_INFO, install-info, :, $PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin) dnl Don't use GZIP, which is used by gzip for additional parameters. AC_PATH_PROG(GZIP_PROG, gzip) -AC_PATH_PROG(PAXCTL, paxctl,, - [$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin]) +if test $opsys = gnu-linux; then + AC_PATH_PROG(PAXCTL, paxctl,, + [$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin]) +fi ## Need makeinfo >= 4.7 (?) to build the manuals. AC_PATH_PROG(MAKEINFO, makeinfo, no) @@ -1069,6 +1100,13 @@ case $opsys in esac +# Configure gnulib before invoking PKG_CHECK_MODULES, as the latter might +# for example add -lrt to RSVG_LIBS, which would then cause gnulib to +# incorrectly conclude that -lrt is not needed to link clock_gettime. +gl_ASSERT_NO_GNULIB_POSIXCHECK +gl_ASSERT_NO_GNULIB_TESTS +gl_INIT + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) dnl This function definition taken from Gnome 2.0 @@ -1179,7 +1217,6 @@ fi dnl checks for header files AC_CHECK_HEADERS_ONCE( - sys/select.h sys/time.h utime.h linux/version.h sys/systeminfo.h stdio_ext.h fcntl.h coff.h pty.h sys/vlimit.h sys/resource.h @@ -1211,26 +1248,6 @@ if test $ac_cv_have_decl_sys_siglist != yes; then fi AC_HEADER_SYS_WAIT -dnl Some systems have utime.h but don't declare the struct anyplace. -AC_CACHE_CHECK(for struct utimbuf, emacs_cv_struct_utimbuf, -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef TIME_WITH_SYS_TIME -#include -#include -#else -#ifdef HAVE_SYS_TIME_H -#include -#else -#include -#endif -#endif -#ifdef HAVE_UTIME_H -#include -#endif]], [[static struct utimbuf x; x.actime = x.modtime;]])], - emacs_cv_struct_utimbuf=yes, emacs_cv_struct_utimbuf=no)) -if test $emacs_cv_struct_utimbuf = yes; then - AC_DEFINE(HAVE_STRUCT_UTIMBUF, 1, [Define to 1 if `struct utimbuf' is declared by .]) -fi - dnl Check for speed_t typedef. AC_CACHE_CHECK(for speed_t, emacs_cv_speed_t, [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[speed_t x = 1;]])], @@ -1240,23 +1257,6 @@ if test $emacs_cv_speed_t = yes; then [Define to 1 if `speed_t' is declared by .]) fi -AC_CACHE_CHECK(for struct timeval, emacs_cv_struct_timeval, -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef TIME_WITH_SYS_TIME -#include -#include -#else -#ifdef HAVE_SYS_TIME_H -#include -#else -#include -#endif -#endif]], [[static struct timeval x; x.tv_sec = x.tv_usec;]])], - emacs_cv_struct_timeval=yes, emacs_cv_struct_timeval=no)) -HAVE_TIMEVAL=$emacs_cv_struct_timeval -if test $emacs_cv_struct_timeval = yes; then - AC_DEFINE(HAVE_TIMEVAL, 1, [Define to 1 if `struct timeval' is declared by .]) -fi - AC_CACHE_CHECK(for struct exception, emacs_cv_struct_exception, AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[static struct exception x; x.arg1 = x.arg2 = x.retval; x.name = ""; x.type = 1;]])], @@ -2690,7 +2690,7 @@ esac AC_SUBST(BLESSMAIL_TARGET) -AC_CHECK_FUNCS_ONCE(gethostname \ +AC_CHECK_FUNCS(gethostname \ rename closedir mkdir rmdir getrusage get_current_dir_name \ random lrand48 logb frexp fmod rint cbrt setsid \ strerror fpathconf select euidaccess getpagesize setlocale \ @@ -2701,6 +2701,7 @@ gai_strerror mkstemp getline getdelim fsync sync \ difftime posix_memalign \ getpwent endpwent getgrent endgrent \ touchlock \ +strcasecmp strncasecmp \ cfmakeraw cfsetspeed copysign __executable_start) dnl Cannot use AC_CHECK_FUNCS @@ -2721,10 +2722,10 @@ AC_FUNC_FSEEKO AC_FUNC_GETPGRP # UNIX98 PTYs. -AC_CHECK_FUNCS_ONCE(grantpt) +AC_CHECK_FUNCS(grantpt) # PTY-related GNU extensions. -AC_CHECK_FUNCS_ONCE(getpt) +AC_CHECK_FUNCS(getpt) # Check this now, so that we will NOT find the above functions in ncurses. # That is because we have not set up to link ncurses in lib-src. @@ -2981,7 +2982,7 @@ AC_SUBST(KRB5LIB) AC_SUBST(DESLIB) AC_SUBST(KRB4LIB) -AC_CHECK_FUNCS_ONCE(tzset) +AC_CHECK_FUNCS(tzset) AC_MSG_CHECKING(whether localtime caches TZ) AC_CACHE_VAL(emacs_cv_localtime_cache, [if test x$ac_cv_func_tzset = xyes; then @@ -3019,33 +3020,6 @@ if test $emacs_cv_localtime_cache = yes; then [Define to 1 if localtime caches TZ.]) fi -if test "x$HAVE_TIMEVAL" = xyes; then - AC_CHECK_FUNCS(gettimeofday) - if test $ac_cv_func_gettimeofday = yes; then - AC_CACHE_CHECK(whether gettimeofday can accept two arguments, - emacs_cv_gettimeofday_two_arguments, - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ -#ifdef TIME_WITH_SYS_TIME -#include -#include -#else -#ifdef HAVE_SYS_TIME_H -#include -#else -#include -#endif -#endif]], - [[struct timeval time; - gettimeofday (&time, 0);]])], - emacs_cv_gettimeofday_two_arguments=yes, - emacs_cv_gettimeofday_two_arguments=no)]) - if test $emacs_cv_gettimeofday_two_arguments = no; then - AC_DEFINE(GETTIMEOFDAY_ONE_ARGUMENT, 1, - [Define to 1 if gettimeofday accepts only one argument.]) - fi - fi -fi - ok_so_far=yes AC_CHECK_FUNC(socket, , ok_so_far=no) if test $ok_so_far = yes; then @@ -3075,7 +3049,7 @@ fi AC_FUNC_FORK -AC_CHECK_FUNCS_ONCE(snprintf) +AC_CHECK_FUNCS(snprintf) dnl Adapted from Haible's version. AC_CACHE_CHECK([for nl_langinfo and CODESET], emacs_cv_langinfo_codeset, @@ -3118,7 +3092,7 @@ case $opsys in esac dnl SIGIO exists, but the feature doesn't work in the way Emacs needs. -dnl See eg . +dnl See eg . case $opsys in hpux* | irix6-5 | openbsd | sol2* | unixware ) AC_DEFINE(BROKEN_SIGIO, 1, [Define if SIGIO should not be used.]) @@ -3188,6 +3162,7 @@ AC_SUBST(mandir) AC_SUBST(infodir) AC_SUBST(lispdir) AC_SUBST(leimdir) +AC_SUBST(standardlisppath) AC_SUBST(locallisppath) AC_SUBST(lisppath) AC_SUBST(x_default_search_path) @@ -3376,11 +3351,6 @@ AC_SUBST(CYGWIN_OBJ) AC_SUBST(PRE_ALLOC_OBJ) AC_SUBST(POST_ALLOC_OBJ) -# Configure gnulib here, now that we know LIBS. -gl_ASSERT_NO_GNULIB_POSIXCHECK -gl_ASSERT_NO_GNULIB_TESTS -gl_INIT - case "$opsys" in aix4-2) LD_SWITCH_SYSTEM_TEMACS="-Wl,-bnodelcsect" ;; @@ -3598,13 +3568,6 @@ AH_BOTTOM([ #include #include -#if defined __GNUC__ && (__GNUC__ > 2 \ - || (__GNUC__ == 2 && __GNUC_MINOR__ >= 5)) -#define NO_RETURN __attribute__ ((__noreturn__)) -#else -#define NO_RETURN /* nothing */ -#endif - #if __GNUC__ >= 3 /* On GCC 3.0 we might get a warning. */ #define NO_INLINE __attribute__((noinline)) #else @@ -3717,11 +3680,6 @@ if test -n "${EMACSDOC}"; then echo " Environment variable EMACSDOC set to: $EMACSDOC" fi -if test $USE_XASSERTS = yes; then - echo " Compiling with asserts turned on." - CPPFLAGS="$CPPFLAGS -DXASSERTS=1" -fi - echo if test "$HAVE_NS" = "yes"; then