]> code.delx.au - gnu-emacs/blobdiff - configure.in
(unlock_buffer): Declare it as void.
[gnu-emacs] / configure.in
index 404ef4e3925b4e0be8d4478ef91c8348bb3b05c1..4bc8d980534c0d11b0c601da279ec120b7c2c4f7 100644 (file)
@@ -31,7 +31,6 @@ locallisppath='${datadir}/emacs/${version}/site-lisp:'\
 '${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim'
 lisppath='${locallisppath}:${lispdir}'
 etcdir='${datadir}/emacs/${version}/etc'
-lockdir='${sharedstatedir}/emacs/lock'
 archlibdir='${libexecdir}/emacs/${version}/${configuration}'
 docdir='${datadir}/emacs/${version}/etc'
 
@@ -43,6 +42,15 @@ AC_ARG_WITH(pop,
 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],
+[if test "${with_kerberos5+set}" = set; then
+  if test "${with_kerberos+set}" != set; then
+    with_kerberos=yes
+    AC_DEFINE(KERBEROS)
+  fi
+fi
+AC_DEFINE(KERBEROS5)])
 AC_ARG_WITH(hesiod,
 [  --with-hesiod           support Hesiod to get the POP server host],
 [AC_DEFINE(HESIOD)])
@@ -155,6 +163,7 @@ case "${canonical}" in
   *-*-netbsd* )
     opsys=netbsd
     case "${canonical}" in
+      alpha*-*-netbsd*)        machine=alpha ;;
       i[3456]86-*-netbsd*) machine=intel386 ;;
       m68k-*-netbsd*)
                        # This is somewhat bogus.
@@ -162,6 +171,21 @@ case "${canonical}" in
       mips-*-netbsd*)  machine=pmax ;;
       ns32k-*-netbsd*) machine=ns32000 ;;
       sparc-*-netbsd*) machine=sparc ;;
+      vax-*-netbsd*)   machine=vax ;;
+    esac
+  ;;
+
+  ## OpenBSD ports
+  *-*-openbsd* )
+    opsys=openbsd
+    case "${canonical}" in
+      alpha*-*-openbsd*)       machine=alpha ;;
+      i386-*-openbsd*) machine=intel386 ;;
+      m68k-*-openbsd*)  machine=hp9000s300 ;;
+      mipsel-*-openbsd*) machine=pmax ;;
+      ns32k-*-openbsd*)        machine=ns32000 ;;
+      sparc-*-openbsd*)        machine=sparc ;;
+      vax-*-netbsd*)   machine=vax ;;
     esac
   ;;
 
@@ -175,6 +199,22 @@ case "${canonical}" in
     machine=acorn opsys=riscix12
   ;;
 
+  ## BSDI ports
+  *-*-bsdi* )
+    opsys=bsdi
+    case "${canonical}" in
+      i[345]86-*-bsdi*) machine=intel386 ;;
+      sparc-*-bsdi*)  machine=sparc ;;
+      powerpc-*-bsdi*)  machine=powerpc ;;
+    esac
+    case "${canonical}" in
+      *-*-bsd386* | *-*-bsdi1* )       opsys=bsd386 ;;
+      *-*-bsdi2.0* )           opsys=bsdos2 ;;
+      *-*-bsdi2* )             opsys=bsdos2-1 ;;
+      *-*-bsdi3* )             opsys=bsdos3 ;;
+    esac
+  ;;
+
   ## Alliant machines
   ## Strictly speaking, we need the version of the alliant operating
   ## system to choose the right machine file, but currently the
@@ -189,14 +229,14 @@ case "${canonical}" in
   ;;
 
   ## Alpha (DEC) machines.
-  alpha-dec-osf* )
+  alpha*-dec-osf* )
     machine=alpha opsys=osf1
     # 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
   ;;
 
-  alpha-*-linux-gnu* )
+  alpha*-*-linux-gnu* )
     machine=alpha opsys=gnu-linux
   ;;
 
@@ -277,6 +317,14 @@ case "${canonical}" in
   ;;
 
   ## Data General AViiON Machines
+  ## DG changed naming conventions with the release of 5.4.4.10, they
+  ## dropped the initial 5.4 but left the intervening R.  Because of the
+  ## R this shouldn't conflict with older versions of the OS (which I
+  ## think were named like dgux4.*). In addition, DG new AViiONs series
+  ## uses either Motorola M88k or Intel Pentium CPUs.
+  i586-dg-dguxR4.* | m88k-dg-dguxR4.* | m88k-dg-dgux4* )
+    machine=aviion opsys=dgux4
+  ;;
   m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* )
     ## This name is dgux5-4-3 instead of dgux5-4r3
     ## to avoid a file name conflict on MSDOS.
@@ -383,7 +431,10 @@ case "${canonical}" in
     machine=nh6000 opsys=powerunix
     NON_GNU_CPP="cc -Xo -E -P"
   ;;
-
+  ## SR2001/SR2201 running HI-UX/MPP
+  hppa1.1-hitachi-hiuxmpp* )
+    machine=sr2k opsys=hiuxmpp
+  ;;
   ## Honeywell XPS100
   xps*-honeywell-sysv* )
     machine=xps100 opsys=usg5-2
@@ -466,9 +517,15 @@ case "${canonical}" in
   rs6000-ibm-aix4.1* | powerpc-ibm-aix4.1*  )
     machine=ibmrs6000 opsys=aix4-1
   ;;
-  rs6000-ibm-aix4* | powerpc-ibm-aix4*  )
+  rs6000-ibm-aix4.2* | powerpc-ibm-aix4.2*  )
+    machine=ibmrs6000 opsys=aix4-2
+  ;;
+  rs6000-ibm-aix4.0* | powerpc-ibm-aix4.0*  )
     machine=ibmrs6000 opsys=aix4
   ;;
+  rs6000-ibm-aix4* | powerpc-ibm-aix4*  )
+    machine=ibmrs6000 opsys=aix4-1
+  ;;
   rs6000-ibm-aix* | powerpc-ibm-aix* )
     machine=ibmrs6000 opsys=aix3-2
   ;;
@@ -628,6 +685,12 @@ case "${canonical}" in
     machine=plexus opsys=usg5-2
   ;;
 
+  ## PowerPC reference platform
+  powerpcle-*-solaris2* )
+    machine=prep
+    opsys=sol2-5
+  ;;
+
   ## Pyramid machines
   ## I don't really have any idea what sort of processor the Pyramid has,
   ## so I'm assuming it is its own architecture.
@@ -690,6 +753,9 @@ case "${canonical}" in
   mips-sony-bsd* | mips-sony-newsos4* | mips-sony-news4*)
     machine=news-risc opsys=bsd4-3
   ;;
+  mips-sony-newsos6* )
+    machine=news-r6 opsys=newsos6
+  ;;
   mips-sony-news* )
     machine=news-risc opsys=newsos5
   ;;
@@ -713,6 +779,7 @@ case "${canonical}" in
       m68* )           machine=sun3 ;;
       i[3456]86-sun-sunos[34]* )       machine=sun386 ;;
       i[3456]86-*-* )     machine=intel386 ;;
+      powerpcle* )      machine=powerpcle ;;
       powerpc* | rs6000* )  machine=ibmrs6000 ;;
       sparc* )         machine=sparc ;;
       * )              unported=yes ;;
@@ -867,9 +934,7 @@ case "${canonical}" in
                                # /lib/cpp does not accept it.
                                OVERRIDE_CPPFLAGS=" "
                                ;;
-      *-bsd386* | *-bsdi1* )   opsys=bsd386 ;;
-      *-bsdi2.0* )             opsys=bsdos2 ;;
-      *-bsdi2* )               opsys=bsdos2-1 ;;
+      *-sysv4.2uw* )           opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
       *-386bsd* )              opsys=386bsd ;;
       *-freebsd* )             opsys=freebsd ;;
       *-nextstep* )             opsys=nextstep ;;
@@ -877,11 +942,16 @@ case "${canonical}" in
     esac
   ;;
 
-  ## Linux/68k-based GNU system
+  ## m68k Linux-based GNU system
   m68k-*-linux-gnu* )
     machine=m68k opsys=gnu-linux
   ;;
 
+  ## Mips Linux-based GNU system
+  mips-*-linux-gnu* )
+    machine=mips opsys=gnu-linux
+  ;;
+
   * )
     unported=yes
   ;;
@@ -903,6 +973,7 @@ if test x"${opsys}" = x; then
     *-sysv2 | *-sysvr2 )               opsys=usg5-2 ;;
     *-sysv2.2 | *-sysvr2.2 )           opsys=usg5-2-2 ;;
     *-sysv3* | *-sysvr3* )             opsys=usg5-3 ;;
+    *-sysv4.2uw* )                     opsys=unixware ;;
     *-sysv4.1* | *-sysvr4.1* )
        NON_GNU_CPP=/usr/lib/cpp
        opsys=usg5-4 ;;
@@ -1005,7 +1076,7 @@ dnl checks for Unix variants
 AC_AIX
 
 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)
+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)
 AC_HEADER_STDC
 AC_HEADER_TIME
 AC_DECL_SYS_SIGLIST
@@ -1074,6 +1145,18 @@ fi
 if test "${x_libraries}" != NONE && test -n "${x_libraries}"; then
   LD_SWITCH_X_SITE=-L`echo ${x_libraries} | sed -e "s/:/ -L/g"`
   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"
+    if test x"${x_default_search_path}" = x; then
+      x_default_search_path=${x_search_path}
+    else
+      x_default_search_path="${x_search_path}:${x_default_search_path}"
+    fi
+  done
 fi
 if test "${x_includes}" != NONE && test -n "${x_includes}"; then
   C_SWITCH_X_SITE=-I`echo ${x_includes} | sed -e "s/:/ -I/g"`
@@ -1271,10 +1354,25 @@ UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
 # Do the opsystem or machine files prohibit the use of the GNU malloc?
 # Assume not, until told otherwise.
 GNU_MALLOC=yes
+doug_lea_malloc=yes
+AC_CHECK_FUNC(malloc_get_state, ,doug_lea_malloc=no)
+AC_CHECK_FUNC(malloc_set_state, ,doug_lea_malloc=no)
+AC_MSG_CHECKING(whether __after_morecore_hook exists)
+AC_TRY_LINK([extern void (* __after_morecore_hook)();],[__after_morecore_hook = 0],
+  [AC_MSG_RESULT(yes)],
+  [AC_MSG_RESULT(no)
+   doug_lea_malloc=no])
 if test "${system_malloc}" = "yes"; then
   GNU_MALLOC=no
   GNU_MALLOC_reason="
-  (The GNU allocators don't work with this system configuration.)"
+    (The GNU allocators don't work with this system configuration.)"
+fi
+if test "$doug_lea_malloc" = "yes" ; then
+  if test "$GNU_MALLOC" = yes ; then
+    GNU_MALLOC_reason="
+      (Using Doug Lea's new malloc from the GNU C Library.)"
+  fi
+  AC_DEFINE(DOUG_LEA_MALLOC)
 fi
 
 if test x"${REL_ALLOC}" = x; then
@@ -1441,6 +1539,21 @@ dnl tranle@intellicorp.com says libXmu.a can need XtMalloc in libXt.a to link.
   LIBS="$OLDLIBS"
 fi
 
+if test "${USE_X_TOOLKIT}" = "MOTIF"; then
+  AC_MSG_CHECKING(for Motif version 2.1)
+  AC_TRY_COMPILE([#include <Xm/Xm.h>],
+    [#if XmVERSION > 2 || (XmVERSION == 2 && XmREVISION >= 1)
+int x = 5;
+#else
+Motif version prior to 2.1.
+#endif],
+    [AC_MSG_RESULT(yes)
+     HAVE_MOTIF_2_1=yes
+     AC_DEFINE(HAVE_MOTIF_2_1)],
+    [AC_MSG_RESULT(no)
+     HAVE_MOTIF_2_1=no])
+fi
+
 # If netdb.h doesn't declare h_errno, we must declare it by hand.
 AC_MSG_CHECKING(whether netdb declares h_errno)
 AC_TRY_LINK([#include <netdb.h>],
@@ -1455,11 +1568,17 @@ AC_FUNC_ALLOCA
 # On HPUX 9.01, -lm does not contain logb, so check for sqrt.
 AC_CHECK_LIB(m, sqrt)
 
+# Check for mail-locking functions in a "mail" library
+AC_CHECK_LIB(mail, maillock,
+            AC_DEFINE(HAVE_LIBMAIL)
+            AC_CHECK_FUNCS(touchlock)
+            AC_CHECK_HEADERS(maillock.h))
+
 AC_CHECK_FUNCS(gettimeofday gethostname getdomainname dup2 \
 rename closedir mkdir rmdir sysinfo \
-random lrand48 bcopy bcmp logb frexp fmod ftime res_init setsid \
+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)
+utimes setrlimit setpgid getcwd shutdown strftime)
 
 # 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.
@@ -1469,11 +1588,33 @@ AC_CHECK_LIB(ncurses, tparm)
 
 # These tell us which Kerberos-related libraries to use.
 if test "${with_kerberos+set}" = set; then
-  AC_CHECK_LIB(krb, krb_get_cred)
-  AC_CHECK_LIB(des, des_cbc_encrypt)
   AC_CHECK_LIB(com_err, com_err)
+  AC_CHECK_LIB(crypto, mit_des_cbc_encrypt)
+  AC_CHECK_LIB(krb5, krb5_init_context)
+  if test "${with_kerberos5+set}" != set; then
+    AC_CHECK_LIB(des, des_cbc_encrypt,,
+                AC_CHECK_LIB(des425, des_cbc_encrypt))
+    AC_CHECK_LIB(krb, krb_get_cred,,
+                AC_CHECK_LIB(krb4, krb_get_cred))
+  fi
+
+  if test "${with_kerberos5+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(krb.h,,
+                    AC_CHECK_HEADERS(kerberosIV/krb.h,,
+                                     AC_CHECK_HEADERS(kerberos/krb.h)))
+  fi
+  AC_CHECK_HEADERS(com_err.h)
 fi
 
+# Solaris requires -lintl if you want strerror (which calls dgettext)
+# to return localized messages.
+AC_CHECK_LIB(intl, dgettext)
+
 AC_MSG_CHECKING(whether localtime caches TZ)
 AC_CACHE_VAL(emacs_cv_localtime_cache,
 [if test x$ac_cv_func_tzset = xyes; then
@@ -1522,7 +1663,7 @@ if test $emacs_cv_localtime_cache = yes; then
 fi
 
 if test "x$HAVE_TIMEVAL" = xyes; then
-AC_MSG_CHECKING(whether gettimeofday can't accept two arguments)
+AC_MSG_CHECKING(whether gettimeofday can accept two arguments)
 AC_TRY_LINK([
 #ifdef TIME_WITH_SYS_TIME
 #include <sys/time.h>
@@ -1540,8 +1681,8 @@ AC_TRY_LINK([
   struct timezone dummy;
   gettimeofday (&time, &dummy);
 ],
-  [AC_MSG_RESULT(no)],
-  [AC_MSG_RESULT(yes)
+  [AC_MSG_RESULT(yes)],
+  [AC_MSG_RESULT(no)
    AC_DEFINE(GETTIMEOFDAY_ONE_ARGUMENT)])
 fi
 
@@ -1590,8 +1731,8 @@ AC_SUBST(infodir)
 AC_SUBST(lispdir)
 AC_SUBST(locallisppath)
 AC_SUBST(lisppath)
+AC_SUBST(x_default_search_path)
 AC_SUBST(etcdir)
-AC_SUBST(lockdir)
 AC_SUBST(archlibdir)
 AC_SUBST(docdir)
 AC_SUBST(bitmapdir)
@@ -1675,7 +1816,8 @@ test "${exec_prefix}" != NONE &&
 changequote([, ])dnl
 
 AC_OUTPUT(Makefile lib-src/Makefile.c:lib-src/Makefile.in oldXMenu/Makefile \
-       man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in, [
+       man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in \
+       leim/Makefile, [
 
 ### Make the necessary directories, if they don't exist.
 for dir in cpp etc lisp ; do
@@ -1739,4 +1881,7 @@ if test ! -f src/.gdbinit && test -f $top_srcdir/src/.gdbinit; then
   echo source $top_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"])