X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/1073bdc3f72a37a54cbd274c7ff489d7ec977347..b8b47c1966c36a9bfa25ccc2c5b9ff5c7dd762d1:/configure.in diff --git a/configure.in b/configure.in index 81393e1145..9ab76e187b 100644 --- a/configure.in +++ b/configure.in @@ -3,7 +3,8 @@ dnl To rebuild the `configure' script from this, execute the command dnl autoconf dnl in the directory containing this script. dnl -dnl Copyright (C) 1994, 1995, 1996, 1999 Free Software Foundation, Inc. +dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 +dnl Free Software Foundation, Inc. dnl dnl This file is part of GNU Emacs. dnl @@ -22,10 +23,14 @@ dnl along with GNU Emacs; see the file COPYING. If not, write to the dnl Free Software Foundation, Inc., 59 Temple Place - Suite 330, dnl Boston, MA 02111-1307, USA. -AC_PREREQ(2.8)dnl +AC_PREREQ(2.51)dnl AC_INIT(src/lisp.h) AC_CONFIG_HEADER(src/config.h:src/config.in) +dnl Support for --program-prefix, --program-suffix and +dnl --program-transform-name options +AC_ARG_PROGRAM + lispdir='${datadir}/emacs/${version}/lisp' locallisppath='${datadir}/emacs/${version}/site-lisp:'\ '${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim' @@ -47,7 +52,7 @@ AC_ARG_WITH(kerberos, [ --with-kerberos support Kerberos-authenticated POP], [AC_DEFINE(KERBEROS)]) AC_ARG_WITH(kerberos5, -[ --with-kerberos5 support Kerberos version 5 authenticated POP], +[ --with-kerberos5 support Kerberos version 5 authenticated POP], [if test "${with_kerberos5+set}" = set; then if test "${with_kerberos+set}" != set; then with_kerberos=yes @@ -93,20 +98,26 @@ AC_ARG_WITH(gif, AC_ARG_WITH(png, [ --with-png use -lpng for displaying PNG images]) AC_ARG_WITH(toolkit-scroll-bars, -[ --without-toolkit-scroll-bars don't use Motif or Xaw3d scroll bars]) +[ --without-toolkit-scroll-bars + don't use Motif or Xaw3d scroll bars]) +AC_ARG_WITH(xim, +[ --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`" ; + ## Note: we used to use ${PWD} at the end instead of `pwd`, + ## but that tested only for a well-formed and valid PWD, + ## it did not object when PWD was well-formed and valid but just wrong. + if test ".${PWD}" != "." && test ".`(cd ${PWD} ; sh -c pwd)`" = ".`pwd`" ; then srcdir="$PWD" else @@ -145,7 +156,7 @@ fi AC_CANONICAL_HOST canonical=$host -configuration=$host_alias +configuration=${host_alias-$host} changequote(, )dnl @@ -175,6 +186,15 @@ changequote(, )dnl machine='' opsys='' unported=no case "${canonical}" in + ## FreeBSD ports + *-*-freebsd* ) + opsys=freebsd + case "${canonical}" in + alpha*-*-freebsd*) machine=alpha ;; + i[3456]86-*-freebsd*) machine=intel386 ;; + esac + ;; + ## NetBSD ports *-*-netbsd* ) opsys=netbsd @@ -186,9 +206,12 @@ case "${canonical}" in machine=hp9000s300 ;; powerpc-apple-netbsd*) machine=macppc ;; mips-*-netbsd*) machine=pmax ;; + mipsel-*-netbsd*) machine=pmax ;; ns32k-*-netbsd*) machine=ns32000 ;; - sparc-*-netbsd*) machine=sparc ;; + powerpc-*-netbsd*) machine=macppc ;; + sparc*-*-netbsd*) machine=sparc ;; vax-*-netbsd*) machine=vax ;; + arm-*-netbsd*) machine=arm ;; esac ;; @@ -222,14 +245,14 @@ case "${canonical}" in 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 ;; *-*-bsdi2.0* ) opsys=bsdos2 ;; *-*-bsdi2* ) opsys=bsdos2-1 ;; *-*-bsdi3* ) opsys=bsdos3 ;; - *-*-bsdi4* ) opsys=bsdos4 ;; + *-*-bsdi[45]* ) opsys=bsdos4 ;; esac ;; @@ -252,6 +275,15 @@ case "${canonical}" in # 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 + alpha*-dec-osf[5-9]*) + opsys=osf5-0 ;; + esac ;; alpha*-*-linux-gnu* ) @@ -264,7 +296,7 @@ case "${canonical}" in ppc-*-linux | \ powerpc-*-linux* ) - machine=powerpc opsys=gnu-linux + machine=macppc opsys=gnu-linux ;; ## Altos 3068 @@ -326,6 +358,11 @@ case "${canonical}" in ## operating system. ;; + ## Compaq Nonstop + mips-compaq-nonstopux* ) + machine=nonstopux opsys=nonstopux + ;; + ## Convex *-convex-bsd* | *-convex-convexos* ) machine=convex opsys=bsd4-3 @@ -433,7 +470,8 @@ case "${canonical}" in 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* ) @@ -469,6 +507,9 @@ case "${canonical}" in 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 @@ -504,9 +545,16 @@ case "${canonical}" in hppa*-hp-hpux9* ) machine=hp800 opsys=hpux9 ;; - hppa*-hp-hpux1[0-9]* ) + hppa*-hp-hpux10* ) machine=hp800 opsys=hpux10 ;; + hppa*-hp-hpux1[1-9]* ) + machine=hp800 opsys=hpux11 + ;; + + hppa*-*-linux-gnu* ) + machine=hp800 opsys=gnu-linux + ;; ## HP 9000 series 700 and 800, running HP/UX hppa*-hp-hpux* ) @@ -542,6 +590,9 @@ case "${canonical}" in i370-ibm-aix*) machine=ibm370aix opsys=usg5-3 ;; + s390-*-linux-gnu) + machine=ibms390 opsys=gnu-linux + ;; rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1* ) machine=ibmrs6000 opsys=aix3-1 ;; @@ -554,6 +605,9 @@ case "${canonical}" in rs6000-ibm-aix4.2* | powerpc-ibm-aix4.2* ) machine=ibmrs6000 opsys=aix4-2 ;; + rs6000-ibm-aix5.1* | powerpc-ibm-aix5.1* ) + machine=ibmrs6000 opsys=aix4-2 + ;; rs6000-ibm-aix4.0* | powerpc-ibm-aix4.0* ) machine=ibmrs6000 opsys=aix4 ;; @@ -644,6 +698,11 @@ case "${canonical}" in NON_GNU_CPP="/usr/ccs/lib/cpp" # cc -E tokenizes macro expansion. ;; + ## Macintosh PowerPC + powerpc*-*-linux-gnu* ) + machine=macppc opsys=gnu-linux + ;; + ## Masscomp machines m68*-masscomp-rtu* ) machine=masscomp opsys=rtu @@ -773,13 +832,14 @@ case "${canonical}" in # so that, for instance, grepping for `free' in stdlib.h fails and # AC_HEADER_STD_C fails. (MIPSPro 7.2.1.2m compilers, Irix 6.5.3m). NON_GNU_CPP="/lib/cpp -D_LANGUAGE_C" - NON_GCC_TEST_OPTIONS="-n32 -D_LANGUAGE_C" + NON_GCC_TEST_OPTIONS="-D_LANGUAGE_C" ;; mips-sgi-irix6* ) machine=iris4d opsys=irix6-0 # It's not clear whether -D_LANGUAGE_C is necessary as it is for 6.5, # but presumably it does no harm. NON_GNU_CPP="/lib/cpp -D_LANGUAGE_C" + # -32 probably isn't necessary in later v.6s -- anyone know which? NON_GCC_TEST_OPTIONS=-32 ;; mips-sgi-irix5.[01]* ) @@ -819,7 +879,7 @@ case "${canonical}" in machine=sparc opsys=gnu-linux ;; - *-sun-sunos* | *-sun-bsd* | *-sun-solaris* \ + *-auspex-sunos* | *-sun-sunos* | *-sun-bsd* | *-sun-solaris* \ | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \ | rs6000-*-solaris2*) case "${canonical}" in @@ -960,10 +1020,16 @@ case "${canonical}" in 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 case "${canonical}" in + *-lynxos* ) opsys=lynxos ;; *-isc1.* | *-isc2.[01]* ) opsys=386-ix ;; *-isc2.2* ) opsys=isc2-2 ;; *-isc4.0* ) opsys=isc4-0 ;; @@ -985,7 +1051,6 @@ case "${canonical}" in ;; *-sysv4.2uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; *-386bsd* ) opsys=386bsd ;; - *-freebsd* ) opsys=freebsd ;; *-nextstep* ) opsys=nextstep ;; ## Otherwise, we'll fall through to the generic opsys code at the bottom. esac @@ -1054,10 +1119,6 @@ if test x"${opsys}" = x; then esac fi -if test "x$RANLIB" = x; then - RANLIB=ranlib -fi - changequote([, ])dnl if test $unported = yes; then @@ -1078,8 +1139,9 @@ SPECIFIED_CFLAGS="$CFLAGS" case ${with_gcc} in "yes" ) CC="gcc" GCC=yes ;; "no" ) : ${CC=cc} ;; - * ) AC_PROG_CC + * ) esac +AC_PROG_CC # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then @@ -1132,20 +1194,174 @@ AC_PROG_LN_S AC_PROG_CPP AC_PROG_INSTALL AC_PROG_YACC +if test "x$RANLIB" = x; then + AC_PROG_RANLIB +fi 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) + termcap.h stdio_ext.h fcntl.h term.h strings.h coff.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, @@ -1170,6 +1386,14 @@ fi dnl checks for typedefs AC_TYPE_SIGNAL +dnl Check for speed_t typedef. +AC_CACHE_CHECK(for speed_t, emacs_cv_speed_t, +AC_TRY_COMPILE([#include ], [speed_t x = 1;], + emacs_cv_speed_t=yes, emacs_cv_speed_t=no)) +if test $emacs_cv_speed_t = yes; then + AC_DEFINE(HAVE_SPEED_T) +fi + AC_CACHE_CHECK(for struct timeval, emacs_cv_struct_timeval, AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME #include @@ -1187,6 +1411,15 @@ if test $emacs_cv_struct_timeval = yes; then AC_DEFINE(HAVE_TIMEVAL) fi +AC_CACHE_CHECK(for struct exception, emacs_cv_struct_exception, +AC_TRY_COMPILE([#include ], +[static struct exception x; x.arg1 = x.arg2 = x.retval; x.name = ""; x.type = 1;], + emacs_cv_struct_exception=yes, emacs_cv_struct_exception=no)) +HAVE_EXCEPTION=$emacs_cv_struct_exception +if test $emacs_cv_struct_exception != yes; then + AC_DEFINE(NO_MATHERR) +fi + dnl checks for structure members AC_STRUCT_TM AC_STRUCT_TIMEZONE @@ -1199,7 +1432,25 @@ if test $emacs_cv_tm_gmtoff = yes; then fi dnl checks for compiler characteristics + +dnl Testing __STDC__ to determine prototype support isn't good enough. +dnl DEC C, for instance, doesn't define it with default options, and +dnl is used on 64-bit systems (OSF Alphas). Similarly for volatile +dnl and void *. +AC_C_PROTOTYPES +AC_C_VOLATILE AC_C_CONST +dnl This isn't useful because we can't turn on use of `inline' unless +dnl the compiler groks `extern inline'. +dnl AC_C_INLINE +AC_CACHE_CHECK([for void * support], emacs_cv_void_star, + [AC_TRY_COMPILE(, [void * foo;], + emacs_cv_void_star=yes, emacs_cv_void_star=no)]) +if test $emacs_cv_void_star = yes; then + AC_DEFINE(POINTER_TYPE, void) +else + AC_DEFINE(POINTER_TYPE, char) +fi dnl check for Make feature AC_PROG_MAKE_SET @@ -1221,10 +1472,13 @@ if test "${x_libraries}" != NONE && test -n "${x_libraries}"; then 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 @@ -1297,132 +1551,6 @@ if test "${opsys}" = "hpux9shr"; then 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 -#define C_OPTIMIZE_SWITCH -O -#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/'`" @@ -1434,9 +1562,9 @@ AC_CHECK_FUNC(malloc_get_state, ,doug_lea_malloc=no) AC_CHECK_FUNC(malloc_set_state, ,doug_lea_malloc=no) AC_CACHE_CHECK(whether __after_morecore_hook exists, emacs_cv_var___after_morecore_hook, -AC_TRY_LINK([extern void (* __after_morecore_hook)();],[__after_morecore_hook = 0], +[AC_TRY_LINK([extern void (* __after_morecore_hook)();],[__after_morecore_hook = 0], emacs_cv_var___after_morecore_hook=yes, - emacs_cv_var___after_morecore_hook=no)) + emacs_cv_var___after_morecore_hook=no)]) if test $emacs_cv_var___after_morecore_hook = no; then doug_lea_malloc=no fi @@ -1457,12 +1585,13 @@ if test x"${REL_ALLOC}" = x; then 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" @@ -1491,11 +1620,14 @@ AC_MSG_RESULT($HAVE_XFREE386) # 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, @@ -1541,6 +1673,18 @@ if test "${HAVE_X11}" = "yes"; then 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 +#include ], + [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 @@ -1548,11 +1692,11 @@ fi if test "${window_system}" = "x11"; then AC_MSG_CHECKING(X11 version 6) AC_CACHE_VAL(emacs_cv_x11_version_6, - AC_TRY_LINK([#include ], + [AC_TRY_LINK([#include ], [#if XlibSpecificationRelease < 6 fail; #endif -], emacs_cv_x11_version_6=yes, emacs_cv_x11_version_6=no)) +], emacs_cv_x11_version_6=yes, emacs_cv_x11_version_6=no)]) if test $emacs_cv_x11_version_6 = yes; then AC_MSG_RESULT(6 or newer) AC_DEFINE(HAVE_X11R6) @@ -1564,11 +1708,11 @@ fi if test "${window_system}" = "x11"; then AC_MSG_CHECKING(X11 version 5) AC_CACHE_VAL(emacs_cv_x11_version_5, - AC_TRY_LINK([#include ], + [AC_TRY_LINK([#include ], [#if XlibSpecificationRelease < 5 fail; #endif -], emacs_cv_x11_version_5=yes, emacs_cv_x11_version_5=no)) +], emacs_cv_x11_version_5=yes, emacs_cv_x11_version_5=no)]) if test $emacs_cv_x11_version_5 = yes; then AC_MSG_RESULT(5 or newer) HAVE_X11R5=yes @@ -1585,12 +1729,12 @@ if test x"${USE_X_TOOLKIT}" = xmaybe; then if test x"${HAVE_X11R5}" = xyes; then AC_MSG_CHECKING(X11 version 5 with Xaw) AC_CACHE_VAL(emacs_cv_x11_version_5_with_xaw, - AC_TRY_LINK([ + [AC_TRY_LINK([ #include #include ], [], emacs_cv_x11_version_5_with_xaw=yes, - emacs_cv_x11_version_5_with_xaw=no)) + emacs_cv_x11_version_5_with_xaw=no)]) if test $emacs_cv_x11_version_5_with_xaw = yes; then AC_MSG_RESULT([5 or newer, with Xaw; use toolkit by default]) USE_X_TOOLKIT=LUCID @@ -1608,11 +1752,11 @@ X_TOOLKIT_TYPE=$USE_X_TOOLKIT if test "${USE_X_TOOLKIT}" != "none"; then AC_MSG_CHECKING(X11 toolkit version) AC_CACHE_VAL(emacs_cv_x11_toolkit_version_6, - AC_TRY_LINK([#include ], + [AC_TRY_LINK([#include ], [#if XtSpecificationRelease < 6 fail; #endif -], emacs_cv_x11_toolkit_version_6=yes, emacs_cv_x11_toolkit_version_6=no)) +], emacs_cv_x11_toolkit_version_6=yes, emacs_cv_x11_toolkit_version_6=no)]) HAVE_X11XTR6=$emacs_cv_x11_toolkit_version_6 if test $emacs_cv_x11_toolkit_version_6 = yes; then AC_MSG_RESULT(6 or newer) @@ -1630,22 +1774,33 @@ dnl tranle@intellicorp.com says libXmu.a can need XtMalloc in libXt.a to link. 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 AC_CACHE_CHECK(for Motif version 2.1, emacs_cv_motif_version_2_1, - AC_TRY_COMPILE([#include ], + [AC_TRY_COMPILE([#include ], [#if XmVERSION > 2 || (XmVERSION == 2 && XmREVISION >= 1) int x = 5; #else Motif version prior to 2.1. #endif], - emacs_cv_motif_version_2_1=yes, emacs_cv_motif_version_2_1=no)) + 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) + AC_CHECK_LIB(Xp, XpCreateContext, HAVE_LIBXP=yes) + if test ${HAVE_LIBXP} = yes; then + AC_DEFINE(HAVE_LIBXP) + fi fi fi @@ -1653,12 +1808,8 @@ 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 @@ -1683,15 +1834,34 @@ if test "${with_toolkit_scroll_bars}" != "no"; then fi fi +dnl Don't use X11 input methods if user specifies he doesn't want it +dnl with `--with-xim=no'. + +if test "${with_xim}" != "no"; then + AC_DEFINE(USE_XIM) +fi + ### Use -lXpm if available, unless `--with-xpm=no'. 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 @@ -1703,17 +1873,24 @@ fi 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 AC_DEFINE(HAVE_JPEG) + AC_EGREP_CPP( +changequote({, })dnl avoid leadingspace on the next line +{version= *(6[2-9]|[7-9][0-9])}, +changequote([, ])dnl + [#include + version=JPEG_LIB_VERSION +], + AC_DEFINE(HAVE_JPEG), + [AC_MSG_WARN([libjpeg found, but not version 6b or later]) + HAVE_JPEG=no]) fi fi @@ -1721,11 +1898,8 @@ fi 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 @@ -1737,11 +1911,11 @@ fi 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, - AC_CHECK_LIB(tiff, TIFFGetVersion, HAVE_TIFF=yes, , -lX11 -lm)) - CFLAGS="${old_c_flags}" + 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)) fi if test "${HAVE_TIFF}" = "yes"; then @@ -1753,11 +1927,10 @@ fi 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}" +# EGifPutExtensionLast only exists from version libungif-4.1.0b1. +# Earlier versions can crash Emacs. + AC_CHECK_LIB(ungif, EGifPutExtensionLast, HAVE_GIF=yes)) fi if test "${HAVE_GIF}" = "yes"; then @@ -1765,12 +1938,27 @@ if test "${HAVE_X11}" = "yes"; then fi fi +### Use session management (-lSM -lICE) if available +HAVE_X_SM=no +if test "${HAVE_X11}" = "yes"; then + AC_CHECK_HEADER(X11/SM/SMlib.h, + AC_CHECK_LIB(SM, SmcOpenConnection, HAVE_X_SM=yes, -lICE)) + + if test "${HAVE_X_SM}" = "yes"; then + AC_DEFINE(HAVE_X_SM) + case "$LIBS" in + *-lSM*) ;; + *) LIBS="-lSM -lICE $LIBS" ;; + esac + fi +fi + # If netdb.h doesn't declare h_errno, we must declare it by hand. AC_CACHE_CHECK(whether netdb declares h_errno, emacs_cv_netdb_declares_h_errno, -AC_TRY_LINK([#include ], +[AC_TRY_LINK([#include ], [return h_errno;], - emacs_cv_netdb_declares_h_errno=yes, emacs_cv_netdb_declares_h_errno=no)) + emacs_cv_netdb_declares_h_errno=yes, emacs_cv_netdb_declares_h_errno=no)]) if test $emacs_cv_netdb_declares_h_errno = yes; then AC_DEFINE(HAVE_H_ERRNO) fi @@ -1805,12 +1993,31 @@ fi AC_CHECK_FUNCS(touchlock) AC_CHECK_HEADERS(maillock.h) -AC_CHECK_FUNCS(gettimeofday gethostname getdomainname dup2 \ +AC_CHECK_FUNCS(gethostname getdomainname dup2 \ rename closedir mkdir rmdir sysinfo \ 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 shutdown strftime getaddrinfo \ -__fpending ftello getloadavg mblen mbrlen strsignal setitimer ualarm) +utimes setrlimit setpgid getcwd getwd shutdown strftime getaddrinfo \ +__fpending mblen mbrlen mbsinit strsignal setitimer ualarm index rindex \ +sendto recvfrom getsockopt setsockopt getsockname getpeername \ +gai_strerror mkstemp) + +AC_CHECK_HEADERS(sys/un.h) + +AC_FUNC_MKTIME +if test "$ac_cv_func_working_mktime" = no; then + AC_DEFINE(BROKEN_MKTIME) +fi + +AC_FUNC_GETLOADAVG + +AC_FUNC_FSEEKO + +# UNIX98 PTYs. +AC_CHECK_FUNCS(grantpt) + +# PTY-related GNU extensions. +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. @@ -1818,6 +2025,23 @@ __fpending ftello getloadavg mblen mbrlen strsignal setitimer ualarm) # than to expect to find it in ncurses. AC_CHECK_LIB(ncurses, tparm) +# Do we need the Hesiod library to provide the support routines? +if test "$with_hesiod" = yes ; then + # Don't set $LIBS here -- see comments above. + resolv=no + AC_CHECK_FUNC(res_send, , [AC_CHECK_FUNC(__res_send, , + [AC_CHECK_LIB(resolv, res_send, resolv=yes, + [AC_CHECK_LIB(resolv, __res_send, resolv=yes)])])]) + if test "$resolv" = yes ; then + RESOLVLIB=-lresolv + AC_DEFINE(HAVE_LIBRESOLV) + else + RESOLVLIB= + fi + AC_CHECK_FUNC(hes_getmailhost, , [AC_CHECK_LIB(hesiod, hes_getmailhost, + AC_DEFINE(HAVE_LIBHESIOD), :, $RESOLVLIB)]) +fi + # These tell us which Kerberos-related libraries to use. if test "${with_kerberos+set}" = set; then AC_CHECK_LIB(com_err, com_err) @@ -1835,11 +2059,11 @@ if test "${with_kerberos+set}" = set; then AC_CHECK_HEADERS(krb5.h) else AC_CHECK_HEADERS(des.h,, - AC_CHECK_HEADERS(kerberosIV/des.h,, - AC_CHECK_HEADERS(kerberos/des.h))) + [AC_CHECK_HEADERS(kerberosIV/des.h,, + [AC_CHECK_HEADERS(kerberos/des.h)])]) AC_CHECK_HEADERS(krb.h,, - AC_CHECK_HEADERS(kerberosIV/krb.h,, - AC_CHECK_HEADERS(kerberos/krb.h))) + [AC_CHECK_HEADERS(kerberosIV/krb.h,, + [AC_CHECK_HEADERS(kerberos/krb.h)])]) fi AC_CHECK_HEADERS(com_err.h) fi @@ -1893,9 +2117,10 @@ if test $emacs_cv_localtime_cache = yes; then fi if test "x$HAVE_TIMEVAL" = xyes; then -AC_CACHE_CHECK(whether gettimeofday can accept two arguments, - emacs_cv_gettimeofday_two_arguments, -AC_TRY_LINK([ + AC_CHECK_FUNCS(gettimeofday) + AC_CACHE_CHECK(whether gettimeofday can accept two arguments, + emacs_cv_gettimeofday_two_arguments, + [AC_TRY_COMPILE([ #ifdef TIME_WITH_SYS_TIME #include #include @@ -1905,20 +2130,45 @@ AC_TRY_LINK([ #else #include #endif -#endif - ], - [ - struct timeval time; - struct timezone dummy; - gettimeofday (&time, &dummy); -], - emacs_cv_gettimeofday_two_arguments=yes, - emacs_cv_gettimeofday_two_arguments=no)) +#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) fi fi +dnl Note that AC_STRUCT_TIMEZONE doesn't do what you might expect. +if test "$ac_cv_func_gettimeofday" = yes; then + AC_CACHE_CHECK([for struct timezone], emacs_cv_struct_timezone, + [AC_TRY_COMPILE([#include ], + [struct timezone tz;], + dnl It may be that we can't call gettimeofday with a non-null pointer, + dnl even though we have struct timezone (e.g. HPUX). In that case + dnl we'll lie about struct timezone. + [AC_TRY_RUN([ +#ifdef TIME_WITH_SYS_TIME +#include +#include +#else +#ifdef HAVE_SYS_TIME_H +#include +#else +#include +#endif +#endif +main () { + struct timeval time; + struct timezone dummy; + exit (gettimeofday (&time, &dummy)); +}], + emacs_cv_struct_timezone=yes, + emacs_cv_struct_timezone=no, emacs_cv_struct_timezone=yes)], + emacs_cv_struct_timezone=no)]) +fi + ok_so_far=yes AC_CHECK_FUNC(socket, , ok_so_far=no) if test $ok_so_far = yes; then @@ -1943,10 +2193,14 @@ else AC_MSG_RESULT(no) fi -AC_FUNC_VFORK +AC_FUNC_FORK + +# 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. @@ -1988,7 +2242,7 @@ AC_SUBST(CFLAGS) AC_SUBST(X_TOOLKIT_TYPE) AC_SUBST(machfile) AC_SUBST(opsysfile) -AC_SUBST(RANLIB) +AC_SUBST(GETLOADAVG_LIBS) AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "${canonical}") AC_DEFINE_UNQUOTED(EMACS_CONFIG_OPTIONS, "${ac_configure_args}") @@ -2021,6 +2275,9 @@ if test "${REL_ALLOC}" = "yes" ; then AC_DEFINE(REL_ALLOC) fi +AC_CHECK_HEADERS(nlist.h, [AC_DEFINE(NLIST_STRUCT, 1, + [Define if you have .])]) + #### Report on what we decided to do. echo " Configured for \`${canonical}'. @@ -2030,7 +2287,8 @@ Configured for \`${canonical}'. \`${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}" @@ -2062,9 +2320,19 @@ test "${exec_prefix}" != NONE && 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 \ - leim/Makefile, [ + lisp/Makefile lispref/Makefile lispintro/Makefile leim/Makefile, [ ### Make the necessary directories, if they don't exist. for dir in etc lisp ; do @@ -2089,7 +2357,14 @@ sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/ *$//' \ changequote([, ])dnl echo creating src/epaths.h -make epaths-force +${MAKE-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 @@ -2097,9 +2372,9 @@ echo creating lib-src/Makefile 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 | \ + $CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \ sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c cat junk1.c junk2.c > Makefile.new rm -f junk.c junk1.c junk2.c @@ -2113,9 +2388,9 @@ echo creating src/Makefile 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 | \ + $CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \ sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c cat junk1.c junk2.c > Makefile.new rm -f junk.c junk1.c junk2.c @@ -2123,12 +2398,13 @@ echo creating src/Makefile mv -f Makefile.new Makefile ) -if test ! -f src/.gdbinit && test -f $top_srcdir/src/.gdbinit; then +if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then echo creating src/.gdbinit - echo source $top_srcdir/src/.gdbinit > src/.gdbinit + echo source $srcdir/src/.gdbinit > src/.gdbinit fi # 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"]) +