dnl in the directory containing this script.
dnl If you changed any AC_DEFINES, also run autoheader.
dnl
-dnl Copyright (C) 1994-1996, 1999-2014 Free Software Foundation, Inc.
+dnl Copyright (C) 1994-1996, 1999-2015 Free Software Foundation, Inc.
dnl
dnl This file is part of GNU Emacs.
dnl
dnl Canonicalize the configuration name.
AC_CANONICAL_HOST
-canonical=$host
-configuration=${host_alias-${build_alias-$host}}
-dnl We get MINGW64 with MSYS2, MINGW32 with MSYS.
-case $canonical in
+case $host in
*-mingw*)
+
+ if test -z "$host_alias"; then
+
+ # No --host argument was given to 'configure'; therefore $host
+ # was set to a default value based on the build platform. But
+ # this default value may be wrong if we are building from a
+ # 64-bit MSYS[2] pre-configured to build 32-bit MinGW programs.
+ # Therefore, we'll try to get the right host platform from the
+ # compiler's target.
+
+ AC_MSG_CHECKING([the compiler's target])
+ if test -z "$CC"; then
+ cc=gcc
+ else
+ cc=$CC
+ fi
+ cc_target=`$cc -v 2>&1 | sed -n 's/Target: //p'`
+ case "$cc_target" in
+ *-*) host=$cc_target
+ ;;
+ "") AC_MSG_ERROR([Impossible to obtain $cc compiler target.
+Please explicitly provide --host.])
+ ;;
+ *) AC_MSG_WARN([Compiler reported non-standard target.
+Defaulting to $host.])
+ ;;
+ esac
+ AC_MSG_RESULT([$host])
+ fi
+
. $srcdir/nt/mingw-cfg.site
case $srcdir in
esac;;
esac
+canonical=$host
+configuration=${host_alias-${build_alias-$host}}
+
dnl Support for --program-prefix, --program-suffix and
dnl --program-transform-name options
AC_ARG_PROGRAM
fi
AC_DEFINE([lint], [1], [Define to 1 if the compiler is checking for lint.])
- AH_VERBATIM([FORTIFY_SOURCE],
+ AC_DEFINE([GNULIB_PORTCHECK], [1], [enable some gnulib portability checks])
+ AH_VERBATIM([GNULIB_PORTCHECK_FORTIFY_SOURCE],
[/* Enable compile-time and run-time bounds-checking, and some warnings,
without upsetting glibc 2.15+. */
- #if !defined _FORTIFY_SOURCE && defined __OPTIMIZE__ && __OPTIMIZE__
+ #if (defined GNULIB_PORTCHECK && !defined _FORTIFY_SOURCE \
+ && defined __OPTIMIZE__ && __OPTIMIZE__)
# define _FORTIFY_SOURCE 2
#endif
])
- AC_DEFINE([GNULIB_PORTCHECK], [1], [enable some gnulib portability checks])
# We use a slightly smaller set of warning options for lib/.
# Remove the following and save the result in GNULIB_WARN_CFLAGS.
x86_64-*-*) EMACS_MANIFEST="emacs-x64.manifest" ;;
*) EMACS_MANIFEST="emacs-x86.manifest" ;;
esac
+ dnl Construct something of the form "24,4,0,0" with 4 components.
+ comma_version=`echo "${PACKAGE_VERSION}.0.0" | sed -e 's/\./,/g' -e 's/^\([[^,]]*,[[^,]]*,[[^,]]*,[[^,]]*\).*/\1/'`
+
+ comma_space_version=`echo "$comma_version" | sed 's/,/, /g'`
+ AC_SUBST(comma_version)
+ AC_SUBST(comma_space_version)
+ AC_CONFIG_FILES([nt/emacs.rc nt/emacsclient.rc])
if test "${opsys}" = "cygwin"; then
W32_LIBS="$W32_LIBS -lkernel32 -luser32 -lgdi32 -lole32 -lcomdlg32"
W32_LIBS="$W32_LIBS -lusp10 -lcomctl32 -lwinspool"
AC_SUBST(LIBSELINUX_LIBS)
HAVE_GNUTLS=no
-HAVE_GNUTLS3=no
if test "${with_gnutls}" = "yes" ; then
- 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
- EMACS_CHECK_MODULES([LIBGNUTLS], [gnutls >= 2.6.6],
- [HAVE_GNUTLS=yes], [HAVE_GNUTLS=no])
- fi
+ EMACS_CHECK_MODULES([LIBGNUTLS], [gnutls >= 2.6.6],
+ [HAVE_GNUTLS=yes], [HAVE_GNUTLS=no])
if test "${HAVE_GNUTLS}" = "yes"; then
AC_DEFINE(HAVE_GNUTLS, 1, [Define if using GnuTLS.])
+ EMACS_CHECK_MODULES([LIBGNUTLS3], [gnutls >= 3.0.0],
+ [AC_DEFINE(HAVE_GNUTLS3, 1, [Define if using GnuTLS v3.])], [])
fi
# Windows loads GnuTLS dynamically
AC_SUBST(ns_check_file)
fi
+dnl config.status treats $srcdir specially, so I think this is ok...
+AC_CONFIG_FILES([$srcdir/doc/man/emacs.1])
+
dnl Obviously there is duplication here wrt $SUBDIR_MAKEFILES.
dnl You _can_ use that variable in AC_CONFIG_FILES, so long as any directory
dnl using automake (ie lib/) is explicitly listed and not "hidden" in a variable
fi
])
+dnl Perhaps this would be better named doc-emacs-emacsver.texi?
+dnl See comments for etc-refcards-emacsver.tex.
+dnl Since we get a doc/emacs directory generated anyway, for the Makefile,
+dnl it is not quite the same. But we are generating in $srcdir.
AC_CONFIG_COMMANDS([doc/emacs/emacsver.texi], [
${MAKE-make} -s --no-print-directory -C doc/emacs doc-emacsver || \
AC_MSG_ERROR(['doc/emacs/emacsver.texi' could not be made.])
])
+dnl If we give this the more natural name, etc/refcards/emacsver.texi,
+dnl then a directory etc/refcards is created in the build directory,
+dnl which is probably harmless, but confusing (in out-of-tree builds).
+dnl (If we were to generate etc/refcards/Makefile, this might change.)
+dnl It is really $srcdir/etc/refcards/emacsver.tex that we generate.
+AC_CONFIG_COMMANDS([etc-refcards-emacsver.tex], [
+${MAKE-make} -s MAKEFILE_NAME=do-not-make-Makefile etc-emacsver || \
+AC_MSG_ERROR(['etc/refcards/emacsver.tex' could not be made.])
+])
+
AC_OUTPUT
test "$MAKE" = make || AC_MSG_NOTICE([Now you can run '$MAKE'.])