X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/50bee071548758300c40d0c5f8871ec9f3075289..fa8678ebb05c28c54f114727a0bec7453903dbf0:/configure.ac diff --git a/configure.ac b/configure.ac index 702b857057..3267e73fbd 100644 --- a/configure.ac +++ b/configure.ac @@ -22,23 +22,8 @@ dnl You should have received a copy of the GNU General Public License dnl along with GNU Emacs. If not, see . AC_PREREQ(2.65) -AC_INIT(emacs, 24.3.91) - -dnl We get MINGW64 with MSYS2 -if test "x$MSYSTEM" = "xMINGW32" -o "x$MSYSTEM" = "xMINGW64" -then - . $srcdir/nt/mingw-cfg.site - - case $srcdir in - /* | ?:*) - # srcdir is an absolute path. In this case, force the format - # "/c/foo/bar", to simplify later conversions to native Windows - # format ("c:/foo/bar") - srcdir=`cd "${srcdir}" && pwd -W` - srcdir="/${srcdir:0:1}${srcdir:2}" - ;; - esac -fi +dnl Note this is parsed by (at least) make-dist and lisp/cedet/ede/emacs.el. +AC_INIT(GNU Emacs, 24.4.50, bug-gnu-emacs@gnu.org) dnl Set emacs_config_options to the options of 'configure', quoted for the shell, dnl and then quoted again for a C string. Separate options with spaces. @@ -82,13 +67,16 @@ done AC_CONFIG_HEADERS(src/config.h:src/config.in) AC_CONFIG_SRCDIR(src/lisp.h) AC_CONFIG_AUX_DIR(build-aux) +dnl automake 1.13 and later understand this, making -I m4 unnecessary. +dnl With older versions this is a no-op. +AC_CONFIG_MACRO_DIR(m4) xcsdkdir= AC_CHECK_PROGS(XCRUN, [xcrun]) if test -n "$XCRUN"; then if test -z "$MAKE"; then dnl Call the variable MAKE_PROG, not MAKE, to avoid confusion with - dnl SET_MAKE and with the usual MAKE variable that 'make' itself uses. + dnl the usual MAKE variable that 'make' itself uses. AC_CHECK_PROG([MAKE_PROG], [make], [yes]) if test -z "$MAKE_PROG"; then MAKE="$XCRUN MAKE" @@ -98,9 +86,75 @@ if test -n "$XCRUN"; then fi fi +dnl GNU Make is required, so don't test for its individual features. +am_cv_make_support_nested_variables=yes +AC_DEFUN([AC_PROG_MAKE_SET], + [SET_MAKE= + AC_SUBST([SET_MAKE])]) + +dnl Check for GNU Make and possibly set MAKE before running AM_INIT_AUTOMAKE. +[emacs_check_gnu_make () +{ + emacs_makeout=`($1 --version) 2>/dev/null` && + case $emacs_makeout in + 'GNU Make '3.8[1-9]* | 'GNU Make '3.9[0-9]* | \ + 'GNU Make '3.[1-9][0-9][0-9]* | 'GNU Make '[4-9]* | 'GNU Make '[1-9][0-9]* ) + ac_path_MAKE_found=:;; + esac +}] +AC_CACHE_CHECK([for GNU Make], [ac_cv_path_MAKE], + [ac_path_MAKE_found=false + if test -n "$MAKE"; then + emacs_check_gnu_make "$MAKE" + ac_cv_path_MAKE=$MAKE + else + emacs_tried_make=false + emacs_tried_gmake=false + emacs_tried_gnumake=false + AC_PATH_PROGS_FEATURE_CHECK([MAKE], [make gmake gnumake], + [[emacs_check_gnu_make "$ac_path_MAKE" + if $ac_path_MAKE_found; then + # Use the fully-qualified program name only if the basename + # would not resolve to it. + if eval \$emacs_tried_$ac_prog; then + ac_cv_path_MAKE=$ac_path_MAKE + else + ac_cv_path_MAKE=$ac_prog + fi + fi + eval emacs_tried_$ac_prog=:]]) + fi]) +$ac_path_MAKE_found || { +AC_MSG_ERROR([[Building Emacs requires GNU Make, at least version 3.81. +If you have it installed under another name, configure with 'MAKE=...'. +For example, run '$0 MAKE=gnu-make'.]]) +} +MAKE=$ac_cv_path_MAKE + dnl Fairly arbitrary, older versions might work too. AM_INIT_AUTOMAKE(1.11) +dnl Canonicalize the configuration name. +AC_CANONICAL_HOST +canonical=$host +configuration=${host_alias-${build_alias-$host}} + +dnl We get MINGW64 with MSYS2. +case $canonical in + *-mingw*) + . $srcdir/nt/mingw-cfg.site + + case $srcdir in + /* | ?:*) + # srcdir is an absolute path. In this case, force the format + # "/c/foo/bar", to simplify later conversions to native Windows + # format ("c:/foo/bar"). + srcdir=`cd "${srcdir}" && pwd -W` + srcdir="/${srcdir:0:1}${srcdir:2}" + ;; + esac;; +esac + dnl Support for --program-prefix, --program-suffix and dnl --program-transform-name options AC_ARG_PROGRAM @@ -293,6 +347,9 @@ otherwise for the first of `gfile' or `inotify' that is usable.]) dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html OPTION_DEFAULT_ON([makeinfo],[don't require makeinfo for building manuals]) +## This might be a 'configure' arg. +AC_SUBST([ACLOCAL_PATH]) + ## Makefile.in needs the cache file name. AC_SUBST(cache_file) @@ -302,15 +359,6 @@ OPTION_DEFAULT_ON([compress-install], [don't compress some files (.el, .info, etc.) when installing. Equivalent to: make GZIP_PROG= install]) -AC_ARG_WITH([pkg-config-prog],dnl -[AS_HELP_STRING([--with-pkg-config-prog=FILENAME], - [file name of pkg-config for finding GTK and librsvg])]) -if test "X${with_pkg_config_prog}" != X; then - if test "${with_pkg_config_prog}" != yes; then - PKG_CONFIG="${with_pkg_config_prog}" - fi -fi - AC_ARG_WITH(gameuser,dnl [AS_HELP_STRING([--with-gameuser=USER],[user for shared game score files])]) test "X${with_gameuser}" != X && test "${with_gameuser}" != yes \ @@ -343,11 +391,7 @@ fi) AC_ARG_ENABLE(checking, [AS_HELP_STRING([--enable-checking@<:@=LIST@:>@], - [enable expensive run-time checks. With LIST, - enable only specific categories of checks. - Categories are: all,yes,no. - Flags are: stringbytes, stringoverrun, stringfreelist, - xmallocoverrun, conslist, glyphs])], + [enable expensive run-time checks])] [ac_checking_flags="${enableval}"],[]) IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS," for check in $ac_checking_flags @@ -355,27 +399,7 @@ do case $check in # these set all the flags to specific states yes) ac_enable_checking=1 ;; - no) ac_enable_checking= ; - ac_gc_check_stringbytes= ; - ac_gc_check_string_overrun= ; - ac_gc_check_string_free_list= ; - ac_xmalloc_overrun= ; - 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_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 ;; + all) ac_enable_checking=1 ;; *) AC_MSG_ERROR(unknown check category $check) ;; esac done @@ -385,32 +409,6 @@ if test x$ac_enable_checking != x ; then AC_DEFINE(ENABLE_CHECKING, 1, [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, -[Define this temporarily to hunt a bug. If defined, the size of - strings is redundantly recorded in sdata structures so that it can - be compared to the sizes recorded in Lisp strings.]) -fi -if test x$ac_gc_check_string_overrun != x ; then - AC_DEFINE(GC_CHECK_STRING_OVERRUN, 1, -[Define this to check for short string overrun.]) -fi -if test x$ac_gc_check_string_free_list != x ; then - AC_DEFINE(GC_CHECK_STRING_FREE_LIST, 1, -[Define this to check the string free list.]) -fi -if test x$ac_xmalloc_overrun != x ; then - AC_DEFINE(XMALLOC_OVERRUN_CHECK, 1, -[Define this to check for malloc buffer overrun.]) -fi -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], @@ -442,8 +440,7 @@ AC_SUBST(PROFILING_CFLAGS) AC_ARG_ENABLE(autodepend, [AS_HELP_STRING([--enable-autodepend], [automatically generate dependencies to .h-files. - Requires GNU Make and Gcc. Enabled if GNU Make and Gcc is - found])], + Requires gcc, enabled if found.])], [ac_enable_autodepend="${enableval}"],[ac_enable_autodepend=yes]) AC_ARG_ENABLE(gtk-deprecation-warnings, @@ -451,12 +448,6 @@ AC_ARG_ENABLE(gtk-deprecation-warnings, [Show Gtk+/Gdk deprecation warnings for Gtk+ >= 3.0])], [ac_enable_gtk_deprecation_warnings="${enableval}"],[]) -### Canonicalize the configuration name. - -AC_CANONICAL_HOST -canonical=$host -configuration=${host_alias-${build_alias-$host}} - dnl This used to use changequote, but, apart from `changequote is evil' dnl per the autoconf manual, we can speed up autoconf somewhat by quoting dnl the great gob of text. Thus it's not processed for possible expansion. @@ -580,10 +571,13 @@ case "${canonical}" in opsys=sol2-10 emacs_check_sunpro_c=yes ;; + *-sunos5.[1-5]* | *-solaris2.[1-5]* ) unported=yes ;; + ## Note that Emacs 23.1's NEWS said the following would be dropped. *-sunos5.6* | *-solaris2.6* ) opsys=sol2-6 RANLIB="ar -ts" ;; + ## 5.7 EOL Aug 2008, 5.8 EOL Mar 2012. *-sunos5.[7-9]* | *-solaris2.[7-9]* ) opsys=sol2-6 emacs_check_sunpro_c=yes @@ -655,13 +649,16 @@ dnl quotation ends if test $unported = yes; then AC_MSG_ERROR([Emacs does not support `${canonical}' systems. -If you think it should, please send a report to bug-gnu-emacs@gnu.org. +If you think it should, please send a report to ${PACKAGE_BUGREPORT}. Check `etc/MACHINES' for recognized configuration names.]) fi #### Choose a compiler. +dnl Don't bother to test for C89. +AC_DEFUN([_AC_PROG_CC_C89], [$2]) + dnl Sets GCC=yes if using gcc. AC_PROG_CC([gcc cc cl clang "$XCRUN gcc" "$XCRUN clang"]) if test -n "$XCRUN"; then @@ -669,6 +666,9 @@ if test -n "$XCRUN"; then test -n "$AR" && export AR fi +dnl Emacs needs C99 or later. +gl_PROG_CC_C99 + AM_PROG_CC_C_O if test x$GCC = xyes; then @@ -687,8 +687,6 @@ AC_DEFUN([gl_CRYPTO_CHECK]) # Avoid gnulib's tests for HAVE_WORKING_O_NOATIME and HAVE_WORKING_O_NOFOLLOW, # as we don't use them. AC_DEFUN([gl_FCNTL_O_FLAGS]) -# Avoid gnulib's threadlib module, as we do threads our own way. -AC_DEFUN([gl_THREADLIB]) # Initialize gnulib right after choosing the compiler. dnl Amongst other things, this sets AR and ARFLAGS. @@ -754,32 +752,6 @@ 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) - # clang is unduly picky about some things. AC_CACHE_CHECK([whether the compiler is clang], [emacs_cv_clang], [AC_COMPILE_IFELSE( @@ -860,6 +832,7 @@ else for w in $ws; do gl_WARN_ADD([$w]) done + gl_WARN_ADD([-Wredundant-decls]) # Prefer this, as we don't use Bison. gl_WARN_ADD([-Wno-missing-field-initializers]) # We need this one gl_WARN_ADD([-Wno-sign-compare]) # Too many warnings for now gl_WARN_ADD([-Wno-type-limits]) # Too many warnings for now @@ -905,6 +878,61 @@ edit_cflags=" s/^ // " +AC_ARG_ENABLE(link-time-optimization, +[AS_HELP_STRING([--enable-link-time-optimization], + [build emacs with link-time optimization. + This requires GCC 4.5.0 or later, or clang. + (Note that clang support is experimental - see INSTALL.) + It also makes Emacs harder to debug, and when we tried it + with GCC 4.9.0 x86-64 it made Emacs slower, so it's not + recommended for typical use.])], +if test "${enableval}" != "no"; then + ac_lto_supported=no + if test $emacs_cv_clang = yes; then + AC_MSG_CHECKING([whether link-time optimization is supported by clang]) + GOLD_PLUGIN=`$CC -print-file-name=LLVMgold.so 2>/dev/null` + if test -x "$GOLD_PLUGIN"; then + LTO="-flto" + fi + elif test x$GCC = xyes; then + AC_MSG_CHECKING([whether link-time optimization is supported by gcc]) + CPUS=`getconf _NPROCESSORS_ONLN 2>/dev/null` + if test x$CPUS != x; then + LTO="-flto=$CPUS" + else + LTO="-flto" + fi + else + AC_MSG_ERROR([Link-time optimization is not supported with your compiler.]) + fi + if test -z "$LTO"; then + ac_lto_supported=no + else + 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" + if test x$emacs_cv_clang = xyes; then + AC_MSG_WARN([Please read INSTALL before using link-time optimization with clang]) + # WARNING: 'ar --plugin ...' doesn't work without + # command, so plugin name is appended to ARFLAGS. + ARFLAGS="cru --plugin $GOLD_PLUGIN" + RANLIB="$RANLIB --plugin $GOLD_PLUGIN" + else + dnl The following is needed for GCC 4.9.0. The GCC 4.9.0 release notes + dnl suggest that instead of -ffat-lto-objects we should use gcc-ar and + dnl gcc-ranlib in place of ar and ranlib, but gcc-ar makes /usr/bin/ar + dnl dump core on Fedora 20, so play it safe for now. + gl_COMPILER_OPTION_IF([-ffat-lto-objects], + [CFLAGS="$CFLAGS -ffat-lto-objects"]) + fi + fi +fi) dnl Some other nice autoconf tests. dnl These are commented out, since gl_EARLY and/or Autoconf already does them. @@ -1049,12 +1077,6 @@ with the `--without-makeinfo' option to build without the manuals.] ) fi AC_SUBST(HAVE_MAKEINFO) -dnl Just so that there is only a single place we need to edit. -INFO_EXT=.info -INFO_OPTS=--no-split -AC_SUBST(INFO_EXT) -AC_SUBST(INFO_OPTS) - if test $opsys = mingw32; then DOCMISC_W32=efaq-w32 else @@ -1120,19 +1142,8 @@ AC_CACHE_CHECK([whether addresses are sanitized], 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 -case "$opsys" in - your-opsys-here) CANNOT_DUMP=yes ;; -esac - -if test "$CANNOT_DUMP" = "yes"; then - AC_DEFINE(CANNOT_DUMP, 1, [Define if Emacs cannot be dumped on your system.]) -elif test "$emacs_cv_sanitize_address" = yes; then - AC_MSG_WARN([[Addresses are sanitized; suggest CANNOT_DUMP=yes]]) -fi - -AC_SUBST(CANNOT_DUMP) - +AC_DEFINE(CANNOT_DUMP, 1, [Define if Emacs cannot be dumped on your system.]) +AC_SUBST(CANNOT_DUMP, yes) UNEXEC_OBJ=unexelf.o case "$opsys" in @@ -1285,13 +1296,22 @@ else CPPFLAGS="$C_SWITCH_SYSTEM $C_SWITCH_MACHINE $CPPFLAGS" fi -# Suppress obsolescent Autoconf test for size_t; Emacs assumes C89 or better. +# Suppress obsolescent Autoconf test for size_t; Emacs assumes C99 or better. AC_DEFUN([AC_TYPE_SIZE_T]) # Likewise for obsolescent test for uid_t, gid_t; Emacs assumes them. AC_DEFUN([AC_TYPE_UID_T]) +# sqrt and other floating-point functions such as fmod and frexp +# are found in -lm on many systems. +OLD_LIBS=$LIBS +AC_SEARCH_LIBS([sqrt], [m]) +if test "X$LIBS" = "X$OLD_LIBS"; then + LIB_MATH= +else + LIB_MATH=$ac_cv_search_sqrt +fi +LIBS=$OLD_LIBS -LIB_MATH=-lm dnl Current possibilities handled by sed (aix4-2 -> aix, dnl gnu-linux -> gnu/linux, etc.): dnl gnu, gnu/linux, gnu/kfreebsd, aix, cygwin, darwin, hpux, irix. @@ -1336,57 +1356,33 @@ AC_DEFINE_UNQUOTED(SYSTEM_TYPE, "$SYSTEM_TYPE", pre_PKG_CONFIG_CFLAGS=$CFLAGS pre_PKG_CONFIG_LIBS=$LIBS -AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - -dnl This function definition taken from Gnome 2.0 -dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) -dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page -dnl also defines GSTUFF_PKG_ERRORS on error -AC_DEFUN([PKG_CHECK_MODULES], [ - succeeded=no +PKG_PROG_PKG_CONFIG(0.9.0) - if test "$PKG_CONFIG" = "no" ; then - ifelse([$4], , [AC_MSG_ERROR([ - *** The pkg-config script could not be found. Make sure it is in your path, or give the full name of pkg-config with the PKG_CONFIG environment variable or --with-pkg-config-prog. Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config.])], [$4]) - else - PKG_CONFIG_MIN_VERSION=0.9.0 - if "$PKG_CONFIG" --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then - AC_MSG_CHECKING(for $2) - - if "$PKG_CONFIG" --exists "$2" 2>&AS_MESSAGE_LOG_FD && - $1_CFLAGS=`"$PKG_CONFIG" --cflags "$2" 2>&AS_MESSAGE_LOG_FD` && - $1_LIBS=`"$PKG_CONFIG" --libs "$2" 2>&AS_MESSAGE_LOG_FD`; then - $1_CFLAGS=`AS_ECHO(["$$1_CFLAGS"]) | sed -e "$edit_cflags"` - $1_LIBS=`AS_ECHO(["$$1_LIBS"]) | sed -e 's,///*,/,g'` - AC_MSG_RESULT([yes CFLAGS='$$1_CFLAGS' LIBS='$$1_LIBS']) - succeeded=yes - else - AC_MSG_RESULT(no) - $1_CFLAGS="" - $1_LIBS="" - ## If we have a custom action on failure, don't print errors, but - ## do set a variable so people can do so. Do it in a subshell - ## to capture any diagnostics in invoking pkg-config. - $1_PKG_ERRORS=`("$PKG_CONFIG" --print-errors "$2") 2>&1` - ifelse([$4], ,echo "$$1_PKG_ERRORS",) - fi +dnl EMACS_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4) +dnl acts like PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, +dnl HAVE_GSTUFF=yes, HAVE_GSTUFF=no) -- see pkg-config man page -- +dnl except that it postprocesses CFLAGS as needed for --enable-gcc-warnings. +dnl EMACS_CHECK_MODULES accepts optional 3rd and 4th arguments that +dnl can take the place of the default HAVE_GSTUFF=yes and HAVE_GSTUFF=no +dnl actions. +AC_DEFUN([EMACS_CHECK_MODULES], + [PKG_CHECK_MODULES([$1], [$2], + [$1_CFLAGS=`AS_ECHO(["$$1_CFLAGS"]) | sed -e "$edit_cflags"` + m4_default([$3], [HAVE_$1=yes])], + [m4_default([$4], [HAVE_$1=no])])]) - AC_SUBST($1_CFLAGS) - AC_SUBST($1_LIBS) - else - echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." - echo "*** See http://www.freedesktop.org/software/pkgconfig" - fi - fi +PKG_CHECK_MODULES([GUILE], [guile-2.2], [], + [PKG_CHECK_MODULES([GUILE], [guile-2.0])]) +AC_SUBST(GUILE_CFLAGS) +AC_SUBST(GUILE_LIBS) - if test $succeeded = yes; then - ifelse([$3], , :, [$3]) - else - ifelse([$4], , [AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.])], [$4]) - fi -]) +AC_PATH_PROG(GUILE_SNARF, guile-snarf, no) +if test "$GUILE_SNARF" = "no"; then + AC_MSG_ERROR([guile-snarf not found]) +fi HAVE_SOUND=no + if test "${with_sound}" != "no"; then # Sound support for GNU/Linux, the free BSDs, and MinGW. AC_CHECK_HEADERS([machine/soundcard.h sys/soundcard.h soundcard.h], @@ -1412,7 +1408,7 @@ if test "${with_sound}" != "no"; then if test "${with_sound}" = "alsa" || test "${with_sound}" = "yes"; then ALSA_REQUIRED=1.0.0 ALSA_MODULES="alsa >= $ALSA_REQUIRED" - PKG_CHECK_MODULES(ALSA, $ALSA_MODULES, HAVE_ALSA=yes, HAVE_ALSA=no) + EMACS_CHECK_MODULES([ALSA], [$ALSA_MODULES]) if test $HAVE_ALSA = yes; then SAVE_CFLAGS="$CFLAGS" SAVE_LIBS="$LIBS" @@ -1523,32 +1519,20 @@ dnl Check for endianness. dnl AC_C_BIGENDIAN is done by gnulib. dnl check for Make feature -dnl AC_PROG_MAKE_SET is done by Automake. DEPFLAGS= MKDEPDIR=":" deps_frag=deps.mk -dnl check for GNU Make if we have GCC and autodepend is on. +dnl check if we have GCC and autodepend is on. if test "$GCC" = yes && test "$ac_enable_autodepend" = yes; then - AC_MSG_CHECKING([whether we are using GNU Make]) - HAVE_GNU_MAKE=no - testval=`${MAKE-make} --version 2>/dev/null | grep 'GNU Make'` - if test "x$testval" != x; then - HAVE_GNU_MAKE=yes - else - ac_enable_autodepend=no - fi - AC_MSG_RESULT([$HAVE_GNU_MAKE]) - if test $HAVE_GNU_MAKE = yes; then - AC_MSG_CHECKING([whether gcc understands -MMD -MF]) - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -MMD -MF deps.d -MP" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], , ac_enable_autodepend=no) - CFLAGS="$SAVE_CFLAGS" - test -f deps.d || ac_enable_autodepend=no - rm -rf deps.d - AC_MSG_RESULT([$ac_enable_autodepend]) - fi + AC_MSG_CHECKING([whether gcc understands -MMD -MF]) + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -MMD -MF deps.d -MP" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], , ac_enable_autodepend=no) + CFLAGS="$SAVE_CFLAGS" + test -f deps.d || ac_enable_autodepend=no + rm -rf deps.d + AC_MSG_RESULT([$ac_enable_autodepend]) if test $ac_enable_autodepend = yes; then DEPFLAGS='-MMD -MF ${DEPDIR}/$*.d -MP' ## MKDIR_P is documented (see AC_PROG_MKDIR_P) to be parallel-safe. @@ -1556,11 +1540,14 @@ if test "$GCC" = yes && test "$ac_enable_autodepend" = yes; then deps_frag=autodeps.mk fi fi +lwlib_deps_frag=$srcdir/lwlib/$deps_frag +oldxmenu_deps_frag=$srcdir/oldXMenu/$deps_frag deps_frag=$srcdir/src/$deps_frag AC_SUBST(MKDEPDIR) AC_SUBST(DEPFLAGS) AC_SUBST_FILE(deps_frag) - +AC_SUBST_FILE(lwlib_deps_frag) +AC_SUBST_FILE(oldxmenu_deps_frag) lisp_frag=$srcdir/src/lisp.mk AC_SUBST_FILE(lisp_frag) @@ -1977,7 +1964,7 @@ doug_lea_malloc=$emacs_cv_var_doug_lea_malloc system_malloc=$emacs_cv_sanitize_address case "$opsys" in ## darwin ld insists on the use of malloc routines in the System framework. - darwin|sol2-10) system_malloc=yes ;; + darwin|mingw32|sol2-10) system_malloc=yes ;; esac GMALLOC_OBJ= @@ -2024,7 +2011,7 @@ if test "$doug_lea_malloc" = "yes" ; then ## #ifdef DOUG_LEA_MALLOC; #undef REL_ALLOC; #endif ## Does the AC_FUNC_MMAP test below make this check unnecessary? case "$opsys" in - gnu*) REL_ALLOC=no ;; + mingw32|gnu*) REL_ALLOC=no ;; esac fi @@ -2034,7 +2021,7 @@ fi use_mmap_for_buffers=no case "$opsys" in - cygwin|freebsd|irix6-5) use_mmap_for_buffers=yes ;; + cygwin|mingw32|freebsd|irix6-5) use_mmap_for_buffers=yes ;; esac AC_FUNC_MMAP @@ -2045,64 +2032,44 @@ fi LIBS="$LIBS_SYSTEM $LIBS" -dnl If found, this adds -ldnet to LIBS, which Autoconf uses for checks. -AC_CHECK_LIB(dnet, dnet_ntoa) -dnl This causes -lresolv to get used in subsequent tests, -dnl which causes failures on some systems such as HPUX 9. -dnl AC_CHECK_LIB(resolv, gethostbyname) - dnl FIXME replace main with a function we actually want from this library. AC_CHECK_LIB(Xbsd, main, LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -lXbsd") -dnl Check if pthreads is available. +dnl Check for the POSIX thread library. LIB_PTHREAD= +if test "$opsys" != "mingw32"; then AC_CHECK_HEADERS_ONCE(pthread.h) if test "$ac_cv_header_pthread_h"; then dnl gmalloc.c uses pthread_atfork, which is not available on older-style dnl hosts such as MirBSD 10, so test for pthread_atfork instead of merely - dnl testing for pthread_self if Emacs uses gmalloc.c. + dnl testing for pthread_kill if Emacs uses gmalloc.c. if test "$GMALLOC_OBJ" = gmalloc.o; then emacs_pthread_function=pthread_atfork else - emacs_pthread_function=pthread_self + emacs_pthread_function=pthread_kill fi - AC_CHECK_LIB(pthread, $emacs_pthread_function, HAVE_PTHREAD=yes) -fi -if test "$HAVE_PTHREAD" = yes; then - case "${canonical}" in - *-hpux*) ;; - *) LIB_PTHREAD="-lpthread" - LIBS="$LIB_PTHREAD $LIBS" ;; - esac - AC_DEFINE(HAVE_PTHREAD, 1, [Define to 1 if you have pthread (-lpthread).]) - - # Some systems optimize for single-threaded programs by default, and - # need special flags to disable these optimizations. For example, the - # definition of 'errno' in . - case $opsys in - sol*) - AC_DEFINE([_REENTRANT], 1, - [Define to 1 if your system requires this in multithreaded code.]);; - aix4-2) - AC_DEFINE([_THREAD_SAFE], 1, - [Define to 1 if your system requires this in multithreaded code.]);; - esac + OLD_LIBS=$LIBS + AC_SEARCH_LIBS([$emacs_pthread_function], [pthread], + [AC_DEFINE([HAVE_PTHREAD], [1], + [Define to 1 if you have pthread (-lpthread).]) + # Some systems optimize for single-threaded programs by default, and + # need special flags to disable these optimizations. For example, the + # definition of 'errno' in . + case $opsys in + sol*) + AC_DEFINE([_REENTRANT], 1, + [Define to 1 if your system requires this in multithreaded code.]);; + aix4-2) + AC_DEFINE([_THREAD_SAFE], 1, + [Define to 1 if your system requires this in multithreaded code.]);; + esac]) + if test "X$LIBS" != "X$OLD_LIBS"; then + eval LIB_PTHREAD=\$ac_cv_search_$emacs_pthread_function + fi + LIBS=$OLD_LIBS fi AC_SUBST([LIB_PTHREAD]) - -AC_CHECK_LIB(pthreads, cma_open) - -## Note: when using cpp in s/aix4.2.h, this definition depended on -## HAVE_LIBPTHREADS. That was not defined earlier in configure when -## the system file was sourced. Hence the value of LIBS_SYSTEM -## added to LIBS in configure would never contain the pthreads part, -## but the value used in Makefiles might. FIXME? -## -## -lpthreads seems to be necessary for Xlib in X11R6, and should -## be harmless on older versions of X where it happens to exist. -test "$opsys" = "aix4-2" && \ - test $ac_cv_lib_pthreads_cma_open = yes && \ - LIBS_SYSTEM="$LIBS_SYSTEM -lpthreads" +fi dnl Check for need for bigtoc support on IBM AIX @@ -2120,12 +2087,12 @@ aix*) ;; esac -# Change CFLAGS and CPPFLAGS temporarily so that C_SWITCH_X_SITE gets -# used for the tests that follow. We set them back to REAL_CFLAGS and -# REAL_CPPFLAGS later on. +# Change CFLAGS, CPPFLAGS, and LIBS temporarily so that C_SWITCH_X_SITE +# is for the tests that follow. We set them back later on. REAL_CFLAGS="$CFLAGS" REAL_CPPFLAGS="$CPPFLAGS" +REAL_LIBS="$LIBS" if test "${HAVE_X11}" = "yes"; then DEFS="$C_SWITCH_X_SITE $DEFS" @@ -2150,12 +2117,8 @@ if test "${HAVE_X11}" = "yes"; then [xgnu_linux_first_failure=no], [xgnu_linux_first_failure=yes]) if test "${xgnu_linux_first_failure}" = "yes"; then - OLD_LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE" - OLD_C_SWITCH_X_SITE="$C_SWITCH_X_SITE" OLD_CPPFLAGS="$CPPFLAGS" OLD_LIBS="$LIBS" - LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -b i486-linuxaout" - C_SWITCH_X_SITE="$C_SWITCH_X_SITE -b i486-linuxaout" CPPFLAGS="$CPPFLAGS -b i486-linuxaout" LIBS="$LIBS -b i486-linuxaout" AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], @@ -2164,15 +2127,15 @@ if test "${HAVE_X11}" = "yes"; then [xgnu_linux_second_failure=yes]) if test "${xgnu_linux_second_failure}" = "yes"; then # If we get the same failure with -b, there is no use adding -b. - # So take it out. This plays safe. - LD_SWITCH_X_SITE="$OLD_LD_SWITCH_X_SITE" - C_SWITCH_X_SITE="$OLD_C_SWITCH_X_SITE" - CPPFLAGS="$OLD_CPPFLAGS" - LIBS="$OLD_LIBS" + # So leave it out. This plays safe. AC_MSG_RESULT(no) else + LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -b i486-linuxaout" + C_SWITCH_X_SITE="$C_SWITCH_X_SITE -b i486-linuxaout" AC_MSG_RESULT(yes) fi + CPPFLAGS=$OLD_CPPFLAGS + LIBS=$OLD_LIBS else AC_MSG_RESULT(no) fi @@ -2228,7 +2191,7 @@ if test "${HAVE_X11}" = "yes" || test "${HAVE_NS}" = "yes" || test "${opsys}" = RSVG_REQUIRED=2.11.0 RSVG_MODULE="librsvg-2.0 >= $RSVG_REQUIRED" - PKG_CHECK_MODULES(RSVG, $RSVG_MODULE, HAVE_RSVG=yes, :) + EMACS_CHECK_MODULES([RSVG], [$RSVG_MODULE]) AC_SUBST(RSVG_CFLAGS) AC_SUBST(RSVG_LIBS) @@ -2239,7 +2202,6 @@ if test "${HAVE_X11}" = "yes" || test "${HAVE_NS}" = "yes" || test "${opsys}" = if test "${opsys}" = "mingw32"; then RSVG_LIBS= fi - LIBS="$RSVG_LIBS $LIBS" fi fi fi @@ -2250,15 +2212,19 @@ if test "${HAVE_X11}" = "yes" || test "${HAVE_NS}" = "yes" || test "${HAVE_W32}" ## 6.3.5 is the earliest version known to work; see Bug#17339. ## 6.8.2 makes Emacs crash; see Bug#13867. IMAGEMAGICK_MODULE="Wand >= 6.3.5 Wand != 6.8.2" - PKG_CHECK_MODULES(IMAGEMAGICK, $IMAGEMAGICK_MODULE, HAVE_IMAGEMAGICK=yes, :) + EMACS_CHECK_MODULES([IMAGEMAGICK], [$IMAGEMAGICK_MODULE]) AC_SUBST(IMAGEMAGICK_CFLAGS) AC_SUBST(IMAGEMAGICK_LIBS) if test $HAVE_IMAGEMAGICK = yes; then AC_DEFINE(HAVE_IMAGEMAGICK, 1, [Define to 1 if using imagemagick.]) + OLD_CFLAGS=$CFLAGS + OLD_LIBS=$LIBS CFLAGS="$CFLAGS $IMAGEMAGICK_CFLAGS" LIBS="$IMAGEMAGICK_LIBS $LIBS" AC_CHECK_FUNCS(MagickExportImagePixels MagickMergeImageLayers) + CFLAGS=$OLD_CFLAGS + LIBS=$OLD_LIBS fi fi fi @@ -2276,7 +2242,8 @@ if test "${opsys}" != "mingw32"; then GTK_MODULES="gtk+-3.0 >= $GTK_REQUIRED glib-2.0 >= $GLIB_REQUIRED" dnl Checks for libraries. - PKG_CHECK_MODULES(GTK, $GTK_MODULES, pkg_check_gtk=yes, pkg_check_gtk=no) + EMACS_CHECK_MODULES([GTK], [$GTK_MODULES], + [pkg_check_gtk=yes], [pkg_check_gtk=no]) if test "$pkg_check_gtk" = "no" && test "$with_gtk3" = "yes"; then AC_MSG_ERROR($GTK_PKG_ERRORS) fi @@ -2303,7 +2270,8 @@ if test "${opsys}" != "mingw32"; then GTK_MODULES="gtk+-2.0 >= $GTK_REQUIRED glib-2.0 >= $GLIB_REQUIRED" dnl Checks for libraries. - PKG_CHECK_MODULES(GTK, $GTK_MODULES, pkg_check_gtk=yes, pkg_check_gtk=no) + EMACS_CHECK_MODULES([GTK], [$GTK_MODULES], + [pkg_check_gtk=yes], [pkg_check_gtk=no]) if test "$pkg_check_gtk" = "no" && { test "$with_gtk" = yes || test "$with_gtk2" = "yes"; } then @@ -2313,10 +2281,12 @@ if test "${opsys}" != "mingw32"; then fi fi +OLD_CFLAGS=$CFLAGS +OLD_LIBS=$LIBS + if test x"$pkg_check_gtk" = xyes; then AC_SUBST(GTK_LIBS) - C_SWITCH_X_SITE="$C_SWITCH_X_SITE $GTK_CFLAGS" CFLAGS="$CFLAGS $GTK_CFLAGS" LIBS="$GTK_LIBS $LIBS" dnl Try to compile a simple GTK program. @@ -2348,6 +2318,7 @@ if test x"$pkg_check_gtk" = xyes; then AC_MSG_ERROR([Gtk+ wanted, but it does not compile, see config.log. Maybe some x11-devel files missing?]); fi else + C_SWITCH_X_SITE="$C_SWITCH_X_SITE $GTK_CFLAGS" HAVE_GTK=yes AC_DEFINE(USE_GTK, 1, [Define to 1 if using GTK.]) GTK_OBJ="gtkutil.o $GTK_OBJ" @@ -2416,33 +2387,40 @@ if test "${HAVE_GTK}" = "yes"; then term_header=gtkutil.h fi +CFLAGS=$OLD_CFLAGS +LIBS=$OLD_LIBS + dnl D-Bus has been tested under GNU/Linux only. Must be adapted for dnl other platforms. HAVE_DBUS=no DBUS_OBJ= if test "${with_dbus}" = "yes"; then - PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0, HAVE_DBUS=yes, HAVE_DBUS=no) + EMACS_CHECK_MODULES([DBUS], [dbus-1 >= 1.0]) if test "$HAVE_DBUS" = yes; then - LIBS="$LIBS $DBUS_LIBS" AC_DEFINE(HAVE_DBUS, 1, [Define to 1 if using D-Bus.]) dnl dbus_watch_get_unix_fd has been introduced in D-Bus 1.1.1. dnl dbus_type_is_valid and dbus_validate_* have been introduced in dnl D-Bus 1.5.12. + OLD_LIBS=$LIBS + LIBS="$LIBS $DBUS_LIBS" AC_CHECK_FUNCS(dbus_watch_get_unix_fd \ dbus_type_is_valid \ dbus_validate_bus_name \ dbus_validate_path \ dbus_validate_interface \ dbus_validate_member) + LIBS=$OLD_LIBS DBUS_OBJ=dbusbind.o fi fi +AC_SUBST(DBUS_CFLAGS) +AC_SUBST(DBUS_LIBS) AC_SUBST(DBUS_OBJ) dnl GSettings has been tested under GNU/Linux only. HAVE_GSETTINGS=no if test "${HAVE_X11}" = "yes" && test "${with_gsettings}" = "yes"; then - PKG_CHECK_MODULES(GSETTINGS, gio-2.0 >= 2.26, HAVE_GSETTINGS=yes, HAVE_GSETTINGS=no) + EMACS_CHECK_MODULES([GSETTINGS], [gio-2.0 >= 2.26]) if test "$HAVE_GSETTINGS" = "yes"; then old_CFLAGS=$CFLAGS CFLAGS="$CFLAGS $GSETTINGS_CFLAGS" @@ -2476,7 +2454,7 @@ dnl GConf has been tested under GNU/Linux only. dnl The version is really arbitrary, it is about the same age as Gtk+ 2.6. HAVE_GCONF=no if test "${HAVE_X11}" = "yes" && test "${with_gconf}" = "yes"; then - PKG_CHECK_MODULES(GCONF, gconf-2.0 >= 2.13, HAVE_GCONF=yes, HAVE_GCONF=no) + EMACS_CHECK_MODULES([GCONF], [gconf-2.0 >= 2.13]) if test "$HAVE_GCONF" = yes; then AC_DEFINE(HAVE_GCONF, 1, [Define to 1 if using GConf.]) dnl Newer GConf doesn't link with g_objects, so this is not defined. @@ -2486,7 +2464,7 @@ if test "${HAVE_X11}" = "yes" && test "${with_gconf}" = "yes"; then fi if test "$HAVE_GSETTINGS" = "yes" || test "$HAVE_GCONF" = "yes"; then - PKG_CHECK_MODULES(GOBJECT, gobject-2.0 >= 2.0, HAVE_GOBJECT=yes, HAVE_GOBJECT=no) + EMACS_CHECK_MODULES([GOBJECT], [gobject-2.0 >= 2.0]) if test "$HAVE_GOBJECT" = "yes"; then SETTINGS_CFLAGS="$SETTINGS_CFLAGS $GOBJECT_CFLAGS" SETTINGS_LIBS="$SETTINGS_LIBS $GOBJECT_LIBS" @@ -2517,12 +2495,14 @@ AC_SUBST(LIBSELINUX_LIBS) HAVE_GNUTLS=no HAVE_GNUTLS3=no if test "${with_gnutls}" = "yes" ; then - PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 3.0.0], HAVE_GNUTLS3=yes, HAVE_GNUTLS3=no) + EMACS_CHECK_MODULES([LIBGNUTLS], [gnutls >= 3.0.0], + [HAVE_GNUTLS3=yes], [HAVE_GNUTLS3=no]) if test "${HAVE_GNUTLS3}" = "yes"; then AC_DEFINE(HAVE_GNUTLS3, 1, [Define if using GnuTLS v3.]) HAVE_GNUTLS="yes" else - PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 2.6.6], HAVE_GNUTLS=yes, HAVE_GNUTLS=no) + EMACS_CHECK_MODULES([LIBGNUTLS], [gnutls >= 2.6.6], + [HAVE_GNUTLS=yes], [HAVE_GNUTLS=no]) fi if test "${HAVE_GNUTLS}" = "yes"; then AC_DEFINE(HAVE_GNUTLS, 1, [Define if using GnuTLS.]) @@ -2564,7 +2544,7 @@ dnl only sense when glib has been compiled with inotify support. How dnl to check? case $with_file_notification,$NOTIFY_OBJ in gfile, | yes,) - PKG_CHECK_MODULES(GFILENOTIFY, gio-2.0 >= 2.24, HAVE_GFILENOTIFY=yes, HAVE_GFILENOTIFY=no) + EMACS_CHECK_MODULES([GFILENOTIFY], [gio-2.0 >= 2.24]) if test "$HAVE_GFILENOTIFY" = "yes"; then AC_DEFINE(HAVE_GFILENOTIFY, 1, [Define to 1 if using GFile.]) NOTIFY_OBJ=gfilenotify.o @@ -2653,6 +2633,7 @@ fi X_TOOLKIT_TYPE=$USE_X_TOOLKIT LIBXTR6= +LIBXMU= if test "${USE_X_TOOLKIT}" != "none"; then AC_MSG_CHECKING(X11 toolkit version) AC_CACHE_VAL(emacs_cv_x11_toolkit_version_6, @@ -2679,37 +2660,20 @@ dnl If using toolkit, check whether libXmu.a exists. dnl tranle@intellicorp.com says libXmu.a can need XtMalloc in libXt.a to link. OLDLIBS="$LIBS" if test x$HAVE_X11XTR6 = xyes; then - LIBS="-lXt -lSM -lICE $LIBS" + OTHERLIBS='-lXt -lSM -lICE' else - LIBS="-lXt $LIBS" + OTHERLIBS='-lXt' + fi + AC_SEARCH_LIBS([XmuConvertStandardSelection], [Xmu], [], [], [$OTHERLIBS]) + if test "X$LIBS" != "X$OLDLIBS"; then + LIBXMU=$ac_cv_search_XmuConvertStandardSelection fi - AC_CHECK_LIB(Xmu, XmuConvertStandardSelection) - test $ac_cv_lib_Xmu_XmuConvertStandardSelection = no && LIBS="$OLDLIBS" - dnl ac_cv_lib_Xmu_XmuConvertStandardSelection is also referenced below. + LIBS=$OLDLIBS + dnl ac_cv_search_XmuConvertStandardSelection is also referenced below. fi AC_SUBST(LIBXTR6) - -dnl FIXME the logic here seems weird, but this is what cpp was doing. -dnl Why not just test for libxmu in the normal way? -LIBXMU=-lXmu -case $opsys in - ## These systems don't supply Xmu. - hpux* | aix4-2 ) - test "X$ac_cv_lib_Xmu_XmuConvertStandardSelection" != "Xyes" && LIBXMU= - ;; - mingw32 ) - LIBXMU= - ;; -esac AC_SUBST(LIBXMU) -# On Irix 6.5, at least, we need XShapeQueryExtension from -lXext for Xaw3D. -if test "${HAVE_X11}" = "yes"; then - if test "${USE_X_TOOLKIT}" != "none"; then - AC_CHECK_LIB(Xext, XShapeQueryExtension) - fi -fi - LIBXP= if test "${USE_X_TOOLKIT}" = "MOTIF"; then # OpenMotif may be installed in such a way on some GNU/Linux systems. @@ -2854,16 +2818,20 @@ fi ### Start of font-backend (under X11) section. if test "${HAVE_X11}" = "yes"; then - PKG_CHECK_MODULES(FONTCONFIG, fontconfig >= 2.2.0, HAVE_FC=yes, HAVE_FC=no) - - ## Use -lXft if available, unless `--with-xft=no'. - HAVE_XFT=maybe - if test "${HAVE_FC}" = "no" || test "x${with_x}" = "xno"; then + ## Use -lXft if available, unless `--with-xft=no'. + HAVE_XFT=maybe + if test "x${with_x}" = "xno"; then with_xft="no"; fi + + if test "$with_xft" != no; then + EMACS_CHECK_MODULES([FONTCONFIG], [fontconfig >= 2.2.0]) + with_xft=$HAVE_FONTCONFIG + fi + if test "x${with_xft}" != "xno"; then - PKG_CHECK_MODULES(XFT, xft >= 0.13.0, , HAVE_XFT=no) + EMACS_CHECK_MODULES([XFT], [xft >= 0.13.0], [], [HAVE_XFT=no]) ## Because xftfont.c uses XRenderQueryExtension, we also ## need to link to -lXrender. HAVE_XRENDER=no @@ -2884,11 +2852,10 @@ if test "${HAVE_X11}" = "yes"; then AC_DEFINE(HAVE_XFT, 1, [Define to 1 if you have the Xft library.]) AC_SUBST(XFT_LIBS) C_SWITCH_X_SITE="$C_SWITCH_X_SITE $XFT_CFLAGS" - else - CPPFLAGS="$OLD_CPPFLAGS" - CFLAGS="$OLD_CFLAGS" - LIBS="$OLD_LIBS" fi # "${HAVE_XFT}" = "yes" + CPPFLAGS=$OLD_CPPFLAGS + CFLAGS=$OLD_CFLAGS + LIBS=$OLD_LIBS fi # "$HAVE_XFT" != no fi # "x${with_xft}" != "xno" @@ -2903,8 +2870,7 @@ if test "${HAVE_X11}" = "yes"; then dnl ftfont.o: undefined reference to symbol 'FT_New_Face' dnl if -lfreetype is not specified. dnl The following is needed to set FREETYPE_LIBS. - PKG_CHECK_MODULES(FREETYPE, freetype2, HAVE_FREETYPE=yes, - HAVE_FREETYPE=no) + EMACS_CHECK_MODULES([FREETYPE], [freetype2]) test "$HAVE_FREETYPE" = "no" && AC_MSG_ERROR(libxft requires libfreetype) fi @@ -2914,8 +2880,7 @@ if test "${HAVE_X11}" = "yes"; then AC_DEFINE(HAVE_FREETYPE, 1, [Define to 1 if using the freetype and fontconfig libraries.]) if test "${with_libotf}" != "no"; then - PKG_CHECK_MODULES(LIBOTF, libotf, HAVE_LIBOTF=yes, - HAVE_LIBOTF=no) + EMACS_CHECK_MODULES([LIBOTF], [libotf]) if test "$HAVE_LIBOTF" = "yes"; then AC_DEFINE(HAVE_LIBOTF, 1, [Define to 1 if using libotf.]) AC_CHECK_LIB(otf, OTF_get_variation_glyphs, @@ -2934,7 +2899,7 @@ if test "${HAVE_X11}" = "yes"; then HAVE_M17N_FLT=no if test "${HAVE_LIBOTF}" = yes; then if test "${with_m17n_flt}" != "no"; then - PKG_CHECK_MODULES(M17N_FLT, m17n-flt, HAVE_M17N_FLT=yes, HAVE_M17N_FLT=no) + EMACS_CHECK_MODULES([M17N_FLT], [m17n-flt]) if test "$HAVE_M17N_FLT" = "yes"; then AC_DEFINE(HAVE_M17N_FLT, 1, [Define to 1 if using libm17n-flt.]) fi @@ -3092,67 +3057,6 @@ elif test "${HAVE_X11}" = "yes" || test "${HAVE_W32}" = "yes"; then fi AC_SUBST(LIBJPEG) -### Use -lpng if available, unless `--with-png=no'. -### mingw32 doesn't use -lpng, since it loads the library dynamically. -HAVE_PNG=no -LIBPNG= -if test "${opsys}" = "mingw32"; then - if test "${with_png}" != "no"; then - AC_CHECK_HEADER(png.h, HAVE_PNG=yes, HAVE_PNG=no) - fi - if test "${HAVE_PNG}" = "yes"; then - AC_DEFINE(HAVE_PNG, 1, [Define to 1 if you have the png library (-lpng).]) - - AC_CHECK_DECL(png_longjmp, - [], - [AC_DEFINE(PNG_DEPSTRUCT, [], - [Define to empty to suppress deprecation warnings when building - with --enable-gcc-warnings and with libpng versions before 1.5, - which lack png_longjmp.])], - [[#ifdef HAVE_LIBPNG_PNG_H - # include - #else - # include - #endif - ]]) - fi -elif test "${HAVE_X11}" = "yes" || test "${HAVE_W32}" = "yes"; then - if test "${with_png}" != "no"; then - # Debian unstable as of July 2003 has multiple libpngs, and puts png.h - # in /usr/include/libpng. - AC_CHECK_HEADERS(png.h libpng/png.h, break) - if test "$ac_cv_header_png_h" = yes || test "$ac_cv_header_libpng_png_h" = yes ; then - AC_CHECK_LIB(png, png_get_channels, HAVE_PNG=yes, , -lz -lm) - fi - fi - - if test "${HAVE_PNG}" = "yes"; then - AC_DEFINE(HAVE_PNG, 1, [Define to 1 if you have the png library.]) - - dnl Some systems, eg NetBSD 6, only provide eg "libpng16", not "libpng". - lpng=`libpng-config --libs 2> /dev/null` - case $lpng in - -l*) : ;; - *) lpng="-lpng" ;; - esac - LIBPNG="$lpng -lz -lm" - - AC_CHECK_DECL(png_longjmp, - [], - [AC_DEFINE(PNG_DEPSTRUCT, [], - [Define to empty to suppress deprecation warnings when building - with --enable-gcc-warnings and with libpng versions before 1.5, - which lack png_longjmp.])], - [[#ifdef HAVE_LIBPNG_PNG_H - # include - #else - # include - #endif - ]]) - fi -fi -AC_SUBST(LIBPNG) - HAVE_ZLIB=no LIBZ= if test "${with_zlib}" != "no"; then @@ -3172,6 +3076,69 @@ if test "${HAVE_ZLIB}" = "yes"; then fi AC_SUBST(LIBZ) +### Use -lpng if available, unless `--with-png=no'. +HAVE_PNG=no +LIBPNG= +PNG_CFLAGS= +if test "${NS_IMPL_COCOA}" = yes; then + : # Nothing to do +elif test "${with_png}" != no; then + # mingw32 loads the library dynamically. + if test "$opsys" = mingw32; then + AC_CHECK_HEADER([png.h], [HAVE_PNG=yes]) + elif test "${HAVE_X11}" = "yes" || test "${HAVE_W32}" = "yes"; then + AC_MSG_CHECKING([for png]) + png_cflags=`(libpng-config --cflags) 2>&AS_MESSAGE_LOG_FD` && + png_libs=`(libpng-config --libs) 2>&AS_MESSAGE_LOG_FD` || { + # libpng-config does not work; configure by hand. + # Debian unstable as of July 2003 has multiple libpngs, and puts png.h + # in /usr/include/libpng. + if test -r /usr/include/libpng/png.h && + test ! -r /usr/include/png.h; then + png_cflags=-I/usr/include/libpng + else + png_cflags= + fi + png_libs='-lpng' + } + SAVE_CFLAGS=$CFLAGS + SAVE_LIBS=$LIBS + CFLAGS="$CFLAGS $png_cflags" + LIBS="$png_libs -lz -lm $LIBS" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[#include ]], + [[return !png_get_channels (0, 0);]])], + [HAVE_PNG=yes + PNG_CFLAGS=`AS_ECHO(["$png_cflags"]) | sed -e "$edit_cflags"` + LIBPNG=$png_libs + # $LIBPNG requires explicit -lz in some cases. + # We don't know what those cases are, exactly, so play it safe and + # append -lz to any nonempty $LIBPNG, unless we're already using LIBZ. + if test -n "$LIBPNG" && test -z "$LIBZ"; then + LIBPNG="$LIBPNG -lz" + fi]) + CFLAGS=$SAVE_CFLAGS + LIBS=$SAVE_LIBS + AC_MSG_RESULT([$HAVE_PNG]) + fi +fi +if test $HAVE_PNG = yes; then + AC_DEFINE([HAVE_PNG], [1], [Define to 1 if you have the png library.]) + + SAVE_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS $PNG_CFLAGS" + AC_CHECK_DECL([png_longjmp], + [], + [AC_DEFINE([PNG_DEPSTRUCT], [], + [Define to empty to suppress deprecation warnings when building + with --enable-gcc-warnings and with libpng versions before 1.5, + which lack png_longjmp.])], + [[#include + ]]) + CFLAGS=$SAVE_CFLAGS +fi +AC_SUBST(LIBPNG) +AC_SUBST(PNG_CFLAGS) ### Use -ltiff if available, unless `--with-tiff=no'. ### mingw32 doesn't use -ltiff, since it loads the library dynamically. @@ -3304,10 +3271,6 @@ if test "${HAVE_X11}" = "yes"; then if test "${HAVE_X_SM}" = "yes"; then AC_DEFINE(HAVE_X_SM, 1, [Define to 1 if you have the SM library (-lSM).]) LIBXSM="-lSM -lICE" - case "$LIBS" in - *-lSM*) ;; - *) LIBS="$LIBXSM $LIBS" ;; - esac fi fi AC_SUBST(LIBXSM) @@ -3317,14 +3280,13 @@ HAVE_XRANDR=no if test "${HAVE_X11}" = "yes"; then XRANDR_REQUIRED=1.2.2 XRANDR_MODULES="xrandr >= $XRANDR_REQUIRED" - PKG_CHECK_MODULES(XRANDR, $XRANDR_MODULES, HAVE_XRANDR=yes, HAVE_XRANDR=no) + EMACS_CHECK_MODULES([XRANDR], [$XRANDR_MODULES]) if test $HAVE_XRANDR = no; then # Test old way in case pkg-config doesn't have it (older machines). AC_CHECK_HEADER(X11/extensions/Xrandr.h, [AC_CHECK_LIB(Xrandr, XRRGetScreenResources, HAVE_XRANDR=yes)]) if test $HAVE_XRANDR = yes; then XRANDR_LIBS=-lXrandr - AC_SUBST(XRANDR_LIBS) fi fi if test $HAVE_XRANDR = yes; then @@ -3339,35 +3301,57 @@ if test "${HAVE_X11}" = "yes"; then AC_DEFINE(HAVE_XRANDR, 1, [Define to 1 if you have the XRandr extension.]) fi fi +AC_SUBST(XRANDR_CFLAGS) +AC_SUBST(XRANDR_LIBS) ### Use Xinerama (-lXinerama) if available HAVE_XINERAMA=no if test "${HAVE_X11}" = "yes"; then XINERAMA_REQUIRED=1.0.2 XINERAMA_MODULES="xinerama >= $XINERAMA_REQUIRED" - PKG_CHECK_MODULES(XINERAMA, $XINERAMA_MODULES, HAVE_XINERAMA=yes, - HAVE_XINERAMA=no) + EMACS_CHECK_MODULES([XINERAMA], [$XINERAMA_MODULES]) if test $HAVE_XINERAMA = no; then # Test old way in case pkg-config doesn't have it (older machines). AC_CHECK_HEADER(X11/extensions/Xinerama.h, [AC_CHECK_LIB(Xinerama, XineramaQueryExtension, HAVE_XINERAMA=yes)]) if test $HAVE_XINERAMA = yes; then XINERAMA_LIBS=-lXinerama - AC_SUBST(XINERAMA_LIBS) fi fi if test $HAVE_XINERAMA = yes; then AC_DEFINE(HAVE_XINERAMA, 1, [Define to 1 if you have the Xinerama extension.]) fi fi +AC_SUBST(XINERAMA_CFLAGS) +AC_SUBST(XINERAMA_LIBS) +### Use Xfixes (-lXfixes) if available +HAVE_XFIXES=no +if test "${HAVE_X11}" = "yes"; then + XFIXES_REQUIRED=4.0.0 + XFIXES_MODULES="xfixes >= $XFIXES_REQUIRED" + EMACS_CHECK_MODULES([XFIXES], [$XFIXES_MODULES]) + if test $HAVE_XFIXES = no; then + # Test old way in case pkg-config doesn't have it (older machines). + AC_CHECK_HEADER(X11/extensions/Xfixes.h, + [AC_CHECK_LIB(Xfixes, XFixesHideCursor, HAVE_XFIXES=yes)]) + if test $HAVE_XFIXES = yes; then + XFIXES_LIBS=-lXfixes + fi + fi + if test $HAVE_XFIXES = yes; then + AC_DEFINE(HAVE_XFIXES, 1, [Define to 1 if you have the Xfixes extension.]) + fi +fi +AC_SUBST(XFIXES_CFLAGS) +AC_SUBST(XFIXES_LIBS) ### Use libxml (-lxml2) if available ### mingw32 doesn't use -lxml2, since it loads the library dynamically. HAVE_LIBXML2=no if test "${with_xml2}" != "no"; then ### I'm not sure what the version number should be, so I just guessed. - PKG_CHECK_MODULES(LIBXML2, libxml-2.0 > 2.6.17, HAVE_LIBXML2=yes, HAVE_LIBXML2=no) + EMACS_CHECK_MODULES([LIBXML2], [libxml-2.0 > 2.6.17]) # Built-in libxml2 on OS X 10.8 lacks libxml-2.0.pc. if test "${HAVE_LIBXML2}" != "yes" -a "$opsys" = "darwin"; then SAVE_CPPFLAGS="$CPPFLAGS" @@ -3383,8 +3367,8 @@ if test "${with_xml2}" != "no"; then fi if test "${HAVE_LIBXML2}" = "yes"; then if test "${opsys}" != "mingw32"; then - LIBS="$LIBXML2_LIBS $LIBS" - AC_CHECK_LIB(xml2, htmlReadMemory, HAVE_LIBXML2=yes, HAVE_LIBXML2=no) + AC_CHECK_LIB(xml2, htmlReadMemory, HAVE_LIBXML2=yes, HAVE_LIBXML2=no + [$LIBXML2_LIBS]) else LIBXML2_LIBS="" fi @@ -3413,19 +3397,17 @@ if test $emacs_cv_netdb_declares_h_errno = yes; then AC_DEFINE(HAVE_H_ERRNO, 1, [Define to 1 if netdb.h declares h_errno.]) fi -# sqrt and other floating-point functions such as fmod and frexp -# are found in -lm on most systems, but mingw32 doesn't use -lm. -if test "${opsys}" != "mingw32"; then - AC_CHECK_LIB(m, sqrt) -fi - # Check for mail-locking functions in a "mail" library. Probably this should # have the same check as for liblockfile below. AC_CHECK_LIB(mail, maillock, have_mail=yes, have_mail=no) if test $have_mail = yes; then LIBS_MAIL=-lmail - LIBS="$LIBS_MAIL $LIBS" AC_DEFINE(HAVE_LIBMAIL, 1, [Define to 1 if you have the `mail' library (-lmail).]) + + OLD_LIBS=$LIBS + LIBS="$LIBS_MAIL $LIBS" + AC_CHECK_FUNCS(touchlock) + LIBS=$OLD_LIBS else LIBS_MAIL= fi @@ -3433,7 +3415,6 @@ dnl Debian, at least: AC_CHECK_LIB(lockfile, maillock, have_lockfile=yes, have_lockfile=no) if test $have_lockfile = yes; then LIBS_MAIL=-llockfile - LIBS="$LIBS_MAIL $LIBS" AC_DEFINE(HAVE_LIBLOCKFILE, 1, [Define to 1 if you have the `lockfile' library (-llockfile).]) else # If we have the shared liblockfile, assume we must use it for mail @@ -3498,18 +3479,19 @@ case "$mail_lock" in esac AC_SUBST(BLESSMAIL_TARGET) - +OLD_LIBS=$LIBS +LIBS="$LIB_PTHREAD $LIB_MATH $LIBS" AC_CHECK_FUNCS(accept4 gethostname \ getrusage get_current_dir_name \ -lrand48 \ +lrand48 random rint \ select getpagesize setlocale \ getrlimit setrlimit shutdown getaddrinfo \ -strsignal setitimer \ +pthread_sigmask strsignal setitimer \ sendto recvfrom getsockname getpeername getifaddrs freeifaddrs \ -gai_strerror getline getdelim sync \ +gai_strerror sync \ getpwent endpwent getgrent endgrent \ -touchlock \ cfmakeraw cfsetspeed copysign __executable_start log2) +LIBS=$OLD_LIBS dnl No need to check for aligned_alloc and posix_memalign if using dnl gmalloc.o, as it supplies them. Don't use these functions on @@ -3518,17 +3500,6 @@ if test -z "$GMALLOC_OBJ" && test "$opsys" != darwin; then AC_CHECK_FUNCS([aligned_alloc posix_memalign], [break]) fi -## Eric Backus says, HP-UX 9.x on HP 700 machines -## has a broken `rint' in some library versions including math library -## version number A.09.05. -## You can fix the math library by installing patch number PHSS_4630. -## But we can fix it more reliably for Emacs by just not using rint. -## We also skip HAVE_RANDOM - see comments in src/conf_post.h. -case $opsys in - hpux*) : ;; - *) AC_CHECK_FUNCS(random rint) ;; -esac - dnl Cannot use AC_CHECK_FUNCS AC_CACHE_CHECK([for __builtin_unwind_init], emacs_cv_func___builtin_unwind_init, @@ -3745,6 +3716,7 @@ DESLIB= KRB4LIB= if test "${with_kerberos}" != no; then + OLD_LIBS=$LIBS AC_CHECK_LIB(com_err, com_err, have_com_err=yes, have_com_err=no) if test $have_com_err = yes; then COM_ERRLIB=-lcom_err @@ -3801,6 +3773,7 @@ if test "${with_kerberos}" != no; then [AC_CHECK_HEADERS(kerberos/krb.h)])]) fi AC_CHECK_HEADERS(com_err.h) + LIBS=$OLD_LIBS fi AC_SUBST(COM_ERRLIB) @@ -3863,23 +3836,23 @@ dnl Fixme: Not used. Should this be HAVE_SOCKETS? [Define to 1 if you have inet sockets.]) fi -dnl Check for a Solaris 2.4 vfork bug that Autoconf misses (through 2.69). -dnl This can be removed once we assume Autoconf 2.70. -case $canonical in - *-solaris2.4 | *-solaris2.4.*) - dnl Disable the Autoconf-generated vfork test. - : ${ac_cv_func_vfork_works=no};; -esac - AC_FUNC_FORK AC_CHECK_FUNCS(snprintf) -dnl Check this late. It depends on what other libraries (lrsvg, Gtk+ etc) -dnl Emacs uses. +dnl Check for glib. This differs from other library checks in that +dnl Emacs need not link to glib unless some other library is already +dnl linking to glib. Although glib provides no facilities that Emacs +dnl needs for its own purposes, when glib is present Emacs needs to +dnl use primitives like g_main_context_query to avoid clashing with +dnl glib at a low level. +dnl +dnl Check this late, since it depends on $GTK_CFLAGS etc. XGSELOBJ= OLDCFLAGS="$CFLAGS" OLDLIBS="$LIBS" +CFLAGS="$CFLAGS $GTK_CFLAGS $RSVG_CFLAGS $DBUS_CFLAGS $SETTINGS_CFLAGS" +LIBS="$LIBS $GTK_LIBS $RSVG_LIBS $DBUS_LIBS $SETTINGS_LIBS" CFLAGS="$CFLAGS $GFILENOTIFY_CFLAGS" LIBS="$LIBS $GFILENOTIFY_LIBS" AC_MSG_CHECKING([whether GLib is linked in]) @@ -3941,14 +3914,6 @@ if test "${opsys}" != "mingw32"; then in the full name stands for the login id.]) fi -dnl Every platform that uses configure supports this. -dnl There is a create-lockfiles option you can -dnl customize if you do not want the lock files to be written. -dnl So it is not clear that this #define still needs to exist. -AC_DEFINE(CLASH_DETECTION, 1, [Define if you want lock files to be written, - so that Emacs can tell instantly when you try to modify a file that - someone else has modified in his/her Emacs.]) - dnl Everybody supports this, except MS. dnl Seems like the kind of thing we should be testing for, though. ## Note: PTYs are broken on darwin <6. Use at your own risk. @@ -4023,7 +3988,7 @@ AH_TEMPLATE(NO_EDITRES, [Define if XEditRes should not be used.]) case $opsys in aix4-2) dnl Unfortunately without libXmu we cannot support EditRes. - if test x$ac_cv_lib_Xmu_XmuConvertStandardSelection != xyes; then + if test "x$ac_cv_search_XmuConvertStandardSelection" = xno; then AC_DEFINE(NO_EDITRES, 1) fi ;; @@ -4318,28 +4283,6 @@ case $opsys in esac -dnl Used in lisp.h, emacs.c, vm-limit.c -dnl NEWS.18 describes this as "a number which contains -dnl the high bits to be inclusive or'ed with pointers that are unpacked." -AH_TEMPLATE(DATA_SEG_BITS, [Extra bits to be or'd in with any pointers -stored in a Lisp_Object.]) -dnl if Emacs uses fewer than 32 bits for the value field of a LISP_OBJECT. - -case $opsys in - aix*) - dnl This works with 32-bit executables; Emacs doesn't support 64-bit. - AC_DEFINE(DATA_SEG_BITS, [0x20000000]) - ;; - hpux*) - dnl The data segment on this machine always starts at address 0x40000000. - AC_DEFINE(DATA_SEG_BITS, [0x40000000]) - ;; - irix6-5) - AC_DEFINE(DATA_SEG_BITS, [0x10000000]) - ;; -esac - - AH_TEMPLATE(TAB3, [Undocumented.]) case $opsys in @@ -4603,6 +4546,7 @@ esac # Set up the CFLAGS for real compilation, so we can substitute it. CFLAGS="$REAL_CFLAGS" CPPFLAGS="$REAL_CPPFLAGS" +LIBS="$REAL_LIBS" ## Hack to detect a buggy GCC version. if test "x$GCC" = xyes \ @@ -4817,6 +4761,12 @@ AH_VERBATIM([FORTIFY_SOUR], #endif ]) +# If user asks to omit features, disable optional features that gnulib +# might otherwise enable. +if test "$with_features" = no && test "$enable_acl" != yes; then + enable_acl=no +fi + # Configure gnulib. Although this does not affect CFLAGS or LIBS permanently. # it temporarily reverts them to their pre-pkg-config values, # because gnulib needs to work with both src (which uses the @@ -4878,11 +4828,9 @@ case "$opsys" in gnu*) LD_SWITCH_SYSTEM_TEMACS="\$(LD_SWITCH_X_SITE_RPATH)" ;; mingw32) - ## MinGW64 does not prepend an underscore to symbols, so we must - ## pass a different -entry switch to linker. FIXME: It is better - ## to make the entry points the same by changing unexw32.c. + ## Is it any better under MinGW64 to relocate emacs into higher addresses? case "$canonical" in - x86_64-*-*) LD_SWITCH_SYSTEM_TEMACS="-Wl,-stack,0x00800000 -Wl,-heap,0x00100000 -Wl,-image-base,0x01000000 -Wl,-entry,__start -Wl,-Map,./temacs.map" ;; + x86_64-*-*) LD_SWITCH_SYSTEM_TEMACS="-Wl,-stack,0x00800000 -Wl,-heap,0x00100000 -Wl,-image-base,0x400000000 -Wl,-entry,__start -Wl,-Map,./temacs.map" ;; *) LD_SWITCH_SYSTEM_TEMACS="-Wl,-stack,0x00800000 -Wl,-heap,0x00100000 -Wl,-image-base,0x01000000 -Wl,-entry,__start -Wl,-Map,./temacs.map" ;; esac ;; @@ -4903,27 +4851,10 @@ LD_SWITCH_SYSTEM_TEMACS="$LDFLAGS_NOCOMBRELOC $LD_SWITCH_SYSTEM_TEMACS" AC_SUBST(LD_SWITCH_SYSTEM_TEMACS) -## MinGW-specific post-link processing of temacs. -TEMACS_POST_LINK=":" -ADDSECTION= -EMACS_HEAPSIZE= -if test "${opsys}" = "mingw32"; then - TEMACS_POST_LINK="\$(MINGW_TEMACS_POST_LINK)" - ADDSECTION="../nt/addsection\$(EXEEXT)" - ## Preload heap size of temacs.exe in MB. - case "$canonical" in - x86_64-*-*) EMACS_HEAPSIZE=42 ;; - *) EMACS_HEAPSIZE=27 ;; - esac -fi - -AC_SUBST(ADDSECTION) -AC_SUBST(TEMACS_POST_LINK) -AC_SUBST(EMACS_HEAPSIZE) - ## Common for all window systems if test "$window_system" != "none"; then AC_DEFINE(HAVE_WINDOW_SYSTEM, 1, [Define if you have a window system.]) + AC_DEFINE(POLL_FOR_INPUT, 1, [Define if you poll periodically to detect C-g.]) WINDOW_SYSTEM_OBJ="fontset.o fringe.o image.o" fi @@ -4977,9 +4908,9 @@ if test "${HAVE_GTK}" = "yes"; then fi if test $USE_ACL -ne 0; then - acl_summary="yes $LIB_ACL" + ACL_SUMMARY="yes $LIB_ACL" else - acl_summary=no + ACL_SUMMARY=no fi echo " @@ -5004,6 +4935,23 @@ else echo " Where do we find X Windows libraries? Standard dirs" fi +optsep= +emacs_config_features= +for opt in XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS \ + GCONF GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT \ + LIBOTF XFT ZLIB; do + + case $opt in + NOTIFY|ACL) eval val=\${${opt}_SUMMARY} ;; + *) eval val=\${HAVE_$opt} ;; + esac + test x"$val" = xno && continue + AS_VAR_APPEND([emacs_config_features], ["$optsep$opt"]) + optsep=' ' +done +AC_DEFINE_UNQUOTED(EMACS_CONFIG_FEATURES, "${emacs_config_features}", + [Summary of some of the main features enabled by configure.]) + echo " Does Emacs use -lXaw3d? ${HAVE_XAW3D}" echo " Does Emacs use -lXpm? ${HAVE_XPM}" echo " Does Emacs use -ljpeg? ${HAVE_JPEG}" @@ -5020,7 +4968,7 @@ echo " Does Emacs use -ldbus? ${HAVE_DBUS}" echo " Does Emacs use -lgconf? ${HAVE_GCONF}" echo " Does Emacs use GSettings? ${HAVE_GSETTINGS}" echo " Does Emacs use a file notification library? ${NOTIFY_SUMMARY}" -echo " Does Emacs use access control lists? ${acl_summary}" +echo " Does Emacs use access control lists? ${ACL_SUMMARY}" echo " Does Emacs use -lselinux? ${HAVE_LIBSELINUX}" echo " Does Emacs use -lgnutls? ${HAVE_GNUTLS}" echo " Does Emacs use -lxml2? ${HAVE_LIBXML2}" @@ -5136,7 +5084,7 @@ if test "${opsys}" = "mingw32"; then ${MAKE-make} MAKEFILE_NAME=do-not-make-Makefile epaths-force-w32 else ${MAKE-make} MAKEFILE_NAME=do-not-make-Makefile epaths-force -fi +fi || AC_MSG_ERROR(['src/epaths.h' could not be made.]) ], [GCC="$GCC" CPPFLAGS="$CPPFLAGS" opsys="$opsys"]) dnl NB we have to cheat and use the ac_... version because abs_top_srcdir @@ -5149,3 +5097,5 @@ fi ]) AC_OUTPUT + +test "$MAKE" = make || AC_MSG_NOTICE([Now you can run '$MAKE'.])