dnl autoconf
dnl in the directory containing this script.
dnl
-dnl Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
+dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001
+dnl Free Software Foundation, Inc.
dnl
dnl This file is part of GNU Emacs.
dnl
[ --without-xim don't use X11 XIM])
#### Make srcdir absolute, if it isn't already. It's important to
-#### avoid running the path through pwd unnecessary, since pwd can
+#### avoid running the path through pwd unnecessarily, since pwd can
#### give you automounter prefixes, which can go away. We do all this
#### so Emacs can find its files when run uninstalled.
+## Make sure CDPATH doesn't affect cd (in case PWD is relative).
+unset CDPATH
case "${srcdir}" in
/* ) ;;
. )
## We may be able to use the $PWD environment variable to make this
## absolute. But sometimes PWD is inaccurate.
- ## Make sure CDPATH doesn't affect cd (in case PWD is relative).
- unset CDPATH
- if test "${PWD}" != "" && test "`(cd ${PWD} ; sh -c pwd)`" = "`pwd`" ;
+ if test ".${PWD}" != "." && test ".`(cd ${PWD} ; sh -c pwd)`" = ".${PWD}" ;
then
srcdir="$PWD"
else
mipsel-*-netbsd*) machine=pmax ;;
ns32k-*-netbsd*) machine=ns32000 ;;
powerpc-*-netbsd*) machine=macppc ;;
- sparc-*-netbsd*) machine=sparc ;;
+ sparc*-*-netbsd*) machine=sparc ;;
vax-*-netbsd*) machine=vax ;;
arm-*-netbsd*) machine=arm ;;
esac
case "${canonical}" in
i[345]86-*-bsdi*) machine=intel386 ;;
sparc-*-bsdi*) machine=sparc ;;
- powerpc-*-bsdi*) machine=powerpc ;;
+ powerpc-*-bsdi*) machine=macppc ;;
esac
case "${canonical}" in
*-*-bsd386* | *-*-bsdi1* ) opsys=bsd386 ;;
# This is needed to find X11R6.1 libraries for certain tests.
NON_GCC_LINK_TEST_OPTIONS=-Wl,-rpath,/usr/X11R6/lib
GCC_LINK_TEST_OPTIONS=-Wl,-rpath,/usr/X11R6/lib
+ # NON_GNU_CPP is necessary on 5.0 to avoid mangling src/Makefile
+ # due to non-traditional preprocessing with the current compiler
+ # defaults. OSF 4 can also have that compiler version, and there
+ # seems always to have been a usable /usr/bin/cpp.
+ NON_GNU_CPP=/usr/bin/cpp
case "${canonical}" in
- # This is necessary on 5.0 to avoid mangling src/Makefile.
- # Separated out in case it causes problems on earlier versions.
alpha*-dec-osf[5-9]*)
- opsys=osf5-0
- NON_GNU_CPP='cpp' ;;
+ opsys=osf5-0 ;;
esac
;;
ppc-*-linux | \
powerpc-*-linux* )
- machine=powerpc opsys=gnu-linux
+ machine=macppc opsys=gnu-linux
;;
## Altos 3068
machine=ns16000 opsys=umax
;;
- ## The GEC 93 - apparently, this port isn't really finished yet.
+ ## The GEC 63 - apparently, this port isn't really finished yet.
+ # I'm sure we finished off the last of the machines, though. -- fx
## Gould Power Node and NP1
pn-gould-bsd4.2* )
hppa1.1-hitachi-hiuxmpp* )
machine=sr2k opsys=hiuxmpp
;;
+ hppa1.1-hitachi-hiuxwe2* )
+ machine=sr2k opsys=hiuxwe2
+ ;;
## Honeywell XPS100
xps*-honeywell-sysv* )
machine=xps100 opsys=usg5-2
machine=wicat opsys=usg5-2
;;
+ ## IA-64
+ ia64*-*-linux* )
+ machine=ia64 opsys=gnu-linux
+ ;;
+
## Intel 386 machines where we don't care about the manufacturer
i[3456]86-*-* )
machine=intel386
dnl checks for Unix variants
AC_AIX
+#### Extract some information from the operating system and machine files.
+
+AC_CHECKING([the machine- and system-dependent files to find out
+ - which libraries the lib-src programs will want, and
+ - whether the GNU malloc routines are usable])
+
+### 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 on a few systems, where they are made
+### different to work around various lossages. For example,
+### GCC 2.5 on GNU/Linux needs them to be different because it treats -g
+### as implying static linking.
+
+### If the CFLAGS env var is specified, we use that value
+### instead of the default.
+
+### It's not important that this name contain the PID; you can't run
+### two configures in the same directory and have anything work
+### anyway.
+tempcname="conftest.c"
+
+echo '
+#include "'${srcdir}'/src/'${opsysfile}'"
+#include "'${srcdir}'/src/'${machfile}'"
+#ifndef LIBS_MACHINE
+#define LIBS_MACHINE
+#endif
+#ifndef LIBS_SYSTEM
+#define LIBS_SYSTEM
+#endif
+#ifndef C_SWITCH_SYSTEM
+#define C_SWITCH_SYSTEM
+#endif
+#ifndef C_SWITCH_MACHINE
+#define C_SWITCH_MACHINE
+#endif
+configure___ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM
+configure___ c_switch_system=C_SWITCH_SYSTEM
+configure___ c_switch_machine=C_SWITCH_MACHINE
+
+#ifndef LIB_X11_LIB
+#define LIB_X11_LIB -lX11
+#endif
+
+#ifndef LIBX11_MACHINE
+#define LIBX11_MACHINE
+#endif
+
+#ifndef LIBX11_SYSTEM
+#define LIBX11_SYSTEM
+#endif
+configure___ LIBX=LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM
+
+#ifdef UNEXEC
+configure___ unexec=UNEXEC
+#else
+configure___ unexec=unexec.o
+#endif
+
+#ifdef SYSTEM_MALLOC
+configure___ system_malloc=yes
+#else
+configure___ system_malloc=no
+#endif
+
+#ifdef USE_MMAP_FOR_BUFFERS
+configure___ use_mmap_for_buffers=yes
+#else
+configure___ use_mmap_for_buffers=no
+#endif
+
+#ifndef C_DEBUG_SWITCH
+#define C_DEBUG_SWITCH -g
+#endif
+
+#ifndef C_OPTIMIZE_SWITCH
+#ifdef __GNUC__
+#define C_OPTIMIZE_SWITCH -O2
+#else
+#define C_OPTIMIZE_SWITCH -O
+#endif
+#endif
+
+#ifndef LD_SWITCH_MACHINE
+#define LD_SWITCH_MACHINE
+#endif
+
+#ifndef LD_SWITCH_SYSTEM
+#define LD_SWITCH_SYSTEM
+#endif
+
+#ifndef LD_SWITCH_X_SITE_AUX
+#define LD_SWITCH_X_SITE_AUX
+#endif
+
+configure___ ld_switch_system=LD_SWITCH_SYSTEM
+configure___ ld_switch_machine=LD_SWITCH_MACHINE
+
+#ifdef THIS_IS_CONFIGURE
+
+/* Get the CFLAGS for tests in configure. */
+#ifdef __GNUC__
+configure___ CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
+#else
+configure___ CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
+#endif
+
+#else /* not THIS_IS_CONFIGURE */
+
+/* Get the CFLAGS for real compilation. */
+#ifdef __GNUC__
+configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
+#else
+configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
+#endif
+
+#endif /* not THIS_IS_CONFIGURE */
+' > ${tempcname}
+
+# The value of CPP is a quoted variable reference, so we need to do this
+# to get its actual value...
+CPP=`eval "echo $CPP"`
+changequote(, )dnl
+eval `${CPP} -Isrc ${tempcname} \
+ | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
+if test "x$SPECIFIED_CFLAGS" = x; then
+ eval `${CPP} -Isrc -DTHIS_IS_CONFIGURE ${tempcname} \
+ | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
+else
+ REAL_CFLAGS="$CFLAGS"
+fi
+changequote([, ])dnl
+rm ${tempcname}
+
+ac_link="$ac_link $ld_switch_machine $ld_switch_system"
+
+### Make sure subsequent tests use flags consistent with the build flags.
+
+if test x"${OVERRIDE_CPPFLAGS}" != x; then
+ CPPFLAGS="${OVERRIDE_CPPFLAGS}"
+else
+ CPPFLAGS="$c_switch_system $c_switch_machine $CPPFLAGS"
+fi
+
+dnl Do this early because it can frob feature test macros for Unix-98 &c.
+AC_SYS_LARGEFILE
+
# Sound support for GNU/Linux and the free BSDs.
-AC_CHECK_HEADERS(machine/soundcard.h sys/soundcard.h)
+AC_CHECK_HEADERS(machine/soundcard.h sys/soundcard.h soundcard.h)
+# Emulation library used on NetBSD.
+AC_CHECK_LIB(ossaudio, _oss_ioctl, LIBSOUND=-lossaudio, LIBSOUND=)
+AC_SUBST(LIBSOUND)
dnl checks for header files
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 \
- termcap.h stdio_ext.h fcntl.h term.h)
+ termcap.h stdio_ext.h fcntl.h term.h strings.h)
AC_HEADER_STDC
AC_HEADER_TIME
AC_DECL_SYS_SIGLIST
+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,
LD_SWITCH_X_SITE_AUX=-R`echo ${x_libraries} | sed -e "s/:/ -R/g"`
x_default_search_path=""
for x_library in `echo ${x_libraries} | sed -e "s/:/ /g"`; do
- x_search_path="${x_library}/X11/%L/%T/%N%C%S:\
-${x_library}/X11/%L/%T/%N%C%S:${x_libary}/X11/%l/%T/%N%C%S:\
-${x_library}/X11/%T/%N%C%S:${x_library}/X11/%L/%T/%N%S:\
-${x_library}/X11/%l/%T/%N%S:${x_library}/X11/%T/%N%S"
+ x_search_path="\
+${x_library}/X11/%L/%T/%N%C%S:\
+${x_library}/X11/%l/%T/%N%C%S:\
+${x_library}/X11/%T/%N%C%S:\
+${x_library}/X11/%L/%T/%N%S:\
+${x_library}/X11/%l/%T/%N%S:\
+${x_library}/X11/%T/%N%S"
if test x"${x_default_search_path}" = x; then
x_default_search_path=${x_search_path}
else
esac
fi
-#### Extract some information from the operating system and machine files.
-
-AC_CHECKING([the machine- and system-dependent files to find out
- - which libraries the lib-src programs will want, and
- - whether the GNU malloc routines are usable])
-
-### 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 on a few systems, where they are made
-### different to work around various lossages. For example,
-### GCC 2.5 on GNU/Linux needs them to be different because it treats -g
-### as implying static linking.
-
-### If the CFLAGS env var is specified, we use that value
-### instead of the default.
-
-### It's not important that this name contain the PID; you can't run
-### two configures in the same directory and have anything work
-### anyway.
-tempcname="conftest.c"
-
-echo '
-#include "'${srcdir}'/src/'${opsysfile}'"
-#include "'${srcdir}'/src/'${machfile}'"
-#ifndef LIBS_MACHINE
-#define LIBS_MACHINE
-#endif
-#ifndef LIBS_SYSTEM
-#define LIBS_SYSTEM
-#endif
-#ifndef C_SWITCH_SYSTEM
-#define C_SWITCH_SYSTEM
-#endif
-#ifndef C_SWITCH_MACHINE
-#define C_SWITCH_MACHINE
-#endif
-configure___ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM
-configure___ c_switch_system=C_SWITCH_SYSTEM
-configure___ c_switch_machine=C_SWITCH_MACHINE
-
-#ifndef LIB_X11_LIB
-#define LIB_X11_LIB -lX11
-#endif
-
-#ifndef LIBX11_MACHINE
-#define LIBX11_MACHINE
-#endif
-
-#ifndef LIBX11_SYSTEM
-#define LIBX11_SYSTEM
-#endif
-configure___ LIBX=LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM
-
-#ifdef UNEXEC
-configure___ unexec=UNEXEC
-#else
-configure___ unexec=unexec.o
-#endif
-
-#ifdef SYSTEM_MALLOC
-configure___ system_malloc=yes
-#else
-configure___ system_malloc=no
-#endif
-
-#ifndef C_DEBUG_SWITCH
-#define C_DEBUG_SWITCH -g
-#endif
-
-#ifndef C_OPTIMIZE_SWITCH
-#ifdef __GNUC__
-#define C_OPTIMIZE_SWITCH -O2
-#else
-#define C_OPTIMIZE_SWITCH -O
-#endif
-#endif
-
-#ifndef LD_SWITCH_MACHINE
-#define LD_SWITCH_MACHINE
-#endif
-
-#ifndef LD_SWITCH_SYSTEM
-#define LD_SWITCH_SYSTEM
-#endif
-
-#ifndef LD_SWITCH_X_SITE_AUX
-#define LD_SWITCH_X_SITE_AUX
-#endif
-
-configure___ ld_switch_system=LD_SWITCH_SYSTEM
-configure___ ld_switch_machine=LD_SWITCH_MACHINE
-
-#ifdef THIS_IS_CONFIGURE
-
-/* Get the CFLAGS for tests in configure. */
-#ifdef __GNUC__
-configure___ CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
-#else
-configure___ CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
-#endif
-
-#else /* not THIS_IS_CONFIGURE */
-
-/* Get the CFLAGS for real compilation. */
-#ifdef __GNUC__
-configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
-#else
-configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
-#endif
-
-#endif /* not THIS_IS_CONFIGURE */
-' > ${tempcname}
-
-# The value of CPP is a quoted variable reference, so we need to do this
-# to get its actual value...
-CPP=`eval "echo $CPP"`
-changequote(, )dnl
-eval `${CPP} -Isrc ${tempcname} \
- | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
-if test "x$SPECIFIED_CFLAGS" = x; then
- eval `${CPP} -Isrc -DTHIS_IS_CONFIGURE ${tempcname} \
- | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
-else
- REAL_CFLAGS="$CFLAGS"
-fi
-changequote([, ])dnl
-rm ${tempcname}
-
-ac_link="$ac_link $ld_switch_machine $ld_switch_system"
-
### Compute the unexec source name from the object name.
UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
REL_ALLOC=${GNU_MALLOC}
fi
-#### Add the libraries to LIBS and check for some functions.
+dnl For now, need to use an explicit `#define USE_MMAP_FOR_BUFFERS 1'
+dnl the system configuration file (s/*.h) to turn the use of mmap
+dnl in the relocating allocator on.
-if test x"${OVERRIDE_CPPFLAGS}" != x; then
- CPPFLAGS="${OVERRIDE_CPPFLAGS}"
-else
- CPPFLAGS="$c_switch_system $c_switch_machine $CPPFLAGS"
+AC_FUNC_MMAP
+if test $use_mmap_for_buffers = yes; then
+ REL_ALLOC=no
fi
LIBS="$libsrc_libs $LIBS"
# Change CFLAGS temporarily so that C_SWITCH_X_SITE gets used
# for the tests that follow. We set it back to REAL_CFLAGS later on.
+REAL_CPPFLAGS="$CPPFLAGS"
+
if test "${HAVE_X11}" = "yes"; then
DEFS="$C_SWITCH_X_SITE $DEFS"
LDFLAGS="$LDFLAGS $LD_SWITCH_X_SITE"
LIBS="$LIBX $LIBS"
CFLAGS="$C_SWITCH_X_SITE $CFLAGS"
+ CPPFLAGS="$C_SWITCH_X_SITE $CPPFLAGS"
# On Solaris, arrange for LD_RUN_PATH to point to the X libraries for tests.
# This is handled by LD_SWITCH_X_SITE_AUX during the real build,
fi
fi
+ # Reportedly, some broken Solaris systems have XKBlib.h but are missing
+ # header files included from there.
+ AC_MSG_CHECKING(for Xkb)
+ AC_TRY_LINK([#include <X11/Xlib.h>
+#include <X11/XKBlib.h>],
+ [XkbDescPtr kb = XkbGetKeyboard (0, XkbAllComponentsMask, XkbUseCoreKbd);],
+ emacs_xkb=yes, emacs_xkb=no)
+ AC_MSG_RESULT($emacs_xkb)
+ if test $emacs_xkb = yes; then
+ AC_DEFINE(HAVE_XKBGETKEYBOARD)
+ fi
+
AC_CHECK_FUNCS(XrmSetDatabase XScreenResourceString \
XScreenNumberOfScreen XSetWMProtocols)
fi
LIBS="-lXt $LIBS"
fi
AC_CHECK_LIB(Xmu, XmuConvertStandardSelection)
- LIBS="$OLDLIBS"
+ test $ac_cv_lib_Xmu_XmuConvertStandardSelection = no && LIBS="$OLDLIBS"
+fi
+
+# 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
if test "${USE_X_TOOLKIT}" = "MOTIF"; then
emacs_cv_motif_version_2_1=yes, emacs_cv_motif_version_2_1=no))
HAVE_MOTIF_2_1=$emacs_cv_motif_version_2_1
if test $emacs_cv_motif_version_2_1 = yes; then
+ HAVE_LIBXP=no
AC_DEFINE(HAVE_MOTIF_2_1)
- AC_CHECK_LIB(Xp, XpCreateContext, HAVE_LIBXP=yes, , -lXext)
+ AC_CHECK_LIB(Xp, XpCreateContext, HAVE_LIBXP=yes)
if test ${HAVE_LIBXP} = yes; then
AC_DEFINE(HAVE_LIBXP)
fi
HAVE_XAW3D=no
if test "${HAVE_X11}" = "yes"; then
if test "${USE_X_TOOLKIT}" != "none"; then
- old_c_flags="${CFLAGS}"
- CFLAGS="${LD_SWITCH_X_SITE}"
AC_CHECK_HEADER(X11/Xaw3d/Scrollbar.h,
- AC_CHECK_LIB(Xaw3d, XawScrollbarSetThumb, HAVE_XAW3D=yes, , -lX11))
- CFLAGS="${old_c_flags}"
-
+ AC_CHECK_LIB(Xaw3d, XawScrollbarSetThumb, HAVE_XAW3D=yes))
if test "${HAVE_XAW3D}" = "yes"; then
AC_DEFINE(HAVE_XAW3D)
fi
HAVE_XPM=no
if test "${HAVE_X11}" = "yes"; then
if test "${with_xpm}" != "no"; then
- old_c_flags="${CFLAGS}"
- CFLAGS="${LD_SWITCH_X_SITE}"
AC_CHECK_HEADER(X11/xpm.h,
AC_CHECK_LIB(Xpm, XpmReadFileToPixmap, HAVE_XPM=yes, , -lX11))
- CFLAGS="${old_c_flags}"
+ if test "${HAVE_XPM}" = "yes"; then
+ AC_MSG_CHECKING(for XpmReturnAllocPixels preprocessor define)
+ AC_EGREP_CPP(no_return_alloc_pixels,
+ [#include "X11/xpm.h"
+#ifndef XpmReturnAllocPixels
+no_return_alloc_pixels
+#endif
+ ], HAVE_XPM=no, HAVE_XPM=yes)
+
+ if test "${HAVE_XPM}" = "yes"; then
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ fi
+ fi
fi
if test "${HAVE_XPM}" = "yes"; then
HAVE_JPEG=no
if test "${HAVE_X11}" = "yes"; then
if test "${with_jpeg}" != "no"; then
- old_c_flags="${CFLAGS}"
- CFLAGS="${LD_SWITCH_X_SITE} ${CFLAGS}"
dnl Checking for jpeglib.h can lose becsue of a redefinition of
dnl HAVE_STDLIB_H.
AC_CHECK_HEADER(jerror.h,
- AC_CHECK_LIB(jpeg, jpeg_destroy_compress, HAVE_JPEG=yes, , -lX11))
- CFLAGS="${old_c_flags}"
+ AC_CHECK_LIB(jpeg, jpeg_destroy_compress, HAVE_JPEG=yes))
fi
if test "${HAVE_JPEG}" = "yes"; then
HAVE_PNG=no
if test "${HAVE_X11}" = "yes"; then
if test "${with_png}" != "no"; then
- old_c_flags="${CFLAGS}"
- CFLAGS="${LD_SWITCH_X_SITE} ${CFLAGS}"
AC_CHECK_HEADER(png.h,
- AC_CHECK_LIB(png, png_set_expand, HAVE_PNG=yes, , -lX11 -lz -lm))
- CFLAGS="${old_c_flags}"
+ AC_CHECK_LIB(png, png_get_channels, HAVE_PNG=yes, , -lz -lm))
fi
if test "${HAVE_PNG}" = "yes"; then
HAVE_TIFF=no
if test "${HAVE_X11}" = "yes"; then
if test "${with_tiff}" != "no"; then
- old_c_flags="${CFLAGS}"
- CFLAGS="${LD_SWITCH_X_SITE} ${CFLAGS}"
AC_CHECK_HEADER(tiffio.h,
- tifflibs="-lX11 -lz -lm"
+ tifflibs="-lz -lm"
# At least one tiff package requires the jpeg library.
if test "${HAVE_JPEG}" = yes; then tifflibs="-ljpeg $tifflibs"; fi
AC_CHECK_LIB(tiff, TIFFGetVersion, HAVE_TIFF=yes, , $tifflibs))
- CFLAGS="${old_c_flags}"
fi
if test "${HAVE_TIFF}" = "yes"; then
HAVE_GIF=no
if test "${HAVE_X11}" = "yes"; then
if test "${with_gif}" != "no"; then
- old_c_flags="${CFLAGS}"
- CFLAGS="${LD_SWITCH_X_SITE} ${CFLAGS}"
AC_CHECK_HEADER(gif_lib.h,
- AC_CHECK_LIB(ungif, DGifOpen, HAVE_GIF=yes, , -lX11))
- CFLAGS="${old_c_flags}"
+ AC_CHECK_LIB(ungif, DGifOpen, HAVE_GIF=yes))
fi
if test "${HAVE_GIF}" = "yes"; then
random lrand48 bcopy bcmp logb frexp fmod rint cbrt ftime res_init setsid \
strerror fpathconf select mktime euidaccess getpagesize tzset setlocale \
utimes setrlimit setpgid getcwd getwd shutdown strftime getaddrinfo \
-__fpending mblen mbrlen strsignal setitimer ualarm)
+__fpending mblen mbrlen strsignal setitimer ualarm index rindex \
+gai_strerror mkstemp)
AC_FUNC_MKTIME
if test "$ac_cv_func_working_mktime" = no; then
AC_FUNC_GETLOADAVG
-AC_SYS_LARGEFILE
-AC_CHECK_FUNCS(ftello)
+AC_FUNC_FSEEKO
-# UNIX98 PTYs. AC_SYS_LARGEFILE should have defined _XOPEN_SOURCE
-# if we need it.
+# UNIX98 PTYs.
AC_CHECK_FUNCS(grantpt)
# PTY-related GNU extensions.
AC_FUNC_VFORK
+# Fixme: This should be replaced when we have autoconf 2.14.
+AC_SIZE_T
+
# Set up the CFLAGS for real compilation, so we can substitute it.
CFLAGS="$REAL_CFLAGS"
+CPPFLAGS="$REAL_CPPFLAGS"
changequote(, )dnl
#### Find out which version of Emacs this is.
\`${opsysfile}' and \`${machfile}'
What compiler should emacs be built with? ${CC} ${CFLAGS}
Should Emacs use the GNU version of malloc? ${GNU_MALLOC}${GNU_MALLOC_reason}
- Should Emacs use the relocating allocator for buffers? ${REL_ALLOC}
+ Should Emacs use a relocating allocator for buffers? ${REL_ALLOC}
+ Should Emacs use mmap(2) for buffer allocation? $use_mmap_for_buffers
What window system should Emacs use? ${window_system}
What toolkit should Emacs use? ${USE_X_TOOLKIT}"
exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`
changequote([, ])dnl
+## Check if the C preprocessor will convert `..' to `. .'. If so, set
+## CPP_NEED_TRADITIONAL to `yes' so that the code to generate Makefile
+## from Makefile.c can correctly provide the arg `-traditional' to the
+## C preprocessor.
+
+AC_EGREP_CPP(yes..yes,
+ [yes..yes],
+ CPP_NEED_TRADITIONAL=no,
+ CPP_NEED_TRADITIONAL=yes)
+
AC_OUTPUT(Makefile lib-src/Makefile.c:lib-src/Makefile.in oldXMenu/Makefile \
man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in \
lisp/Makefile leim/Makefile, [
echo creating src/epaths.h
make epaths-force
+# As of 2000-11-19, newest development versions of GNU cpp preprocess
+# `..' to `. .' unless invoked with -traditional
+
+if test "x$GCC" = xyes && test "x$CPP_NEED_TRADITIONAL" = xyes; then
+ CPPFLAGS="$CPPFLAGS -traditional"
+fi
+
echo creating lib-src/Makefile
( cd lib-src
rm -f junk.c junk1.c junk2.c
sed -e '/start of cpp stuff/q' \
< Makefile.c > junk1.c
sed -e '1,/start of cpp stuff/d'\
- -e 's@/\*\*/#\(.*\)$@/* \1 */@' \
+ -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
< Makefile.c > junk.c
$CPP $undefs -I. -I$top_srcdir/src $CPPFLAGS junk.c | \
sed -e 's/^ / /' -e '/^#/d' -e '/^[ \f]*$/d' > junk2.c
sed -e '/start of cpp stuff/q' \
< Makefile.c > junk1.c
sed -e '1,/start of cpp stuff/d'\
- -e 's@/\*\*/#\(.*\)$@/* \1 */@' \
+ -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
< Makefile.c > junk.c
$CPP $undefs -I. -I$top_srcdir/src $CPPFLAGS junk.c | \
sed -e 's/^ / /' -e '/^#/d' -e '/^[ \f]*$/d' > junk2.c
# This is how we know whether to re-run configure in certain cases.
touch src/config.stamp
-], [CPP="$CPP" CPPFLAGS="$CPPFLAGS"])
+], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS"])
+