.
[bpt/emacs.git] / configure.in
index 5c313a6..48006e8 100644 (file)
@@ -3,7 +3,7 @@ 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 Free Software Foundation, Inc.
+dnl  Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
 dnl
 dnl  This file is part of GNU Emacs.
 dnl
@@ -35,10 +35,26 @@ archlibdir='${libexecdir}/emacs/${version}/${configuration}'
 docdir='${datadir}/emacs/${version}/etc'
 
 AC_ARG_WITH(gcc,
-[  --with-gcc              use GCC to compile Emacs])
+[  --without-gcc           don't use GCC to compile Emacs if GCC is found])
 AC_ARG_WITH(pop,
-[  --with-pop              support POP for mail retrieval],
-[AC_DEFINE(MAIL_USE_POP)])
+[  --without-pop           don't support POP mail retrieval with movemail],
+[if test "$withval" = yes; then
+   AC_DEFINE(MAIL_USE_POP)
+else :
+fi],
+AC_DEFINE(MAIL_USE_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)])
@@ -76,10 +92,9 @@ AC_ARG_WITH(gif,
 [  --with-gif              use -lungif for displaying GIF images])
 AC_ARG_WITH(png,
 [  --with-png              use -lpng for displaying PNG images])
-AC_ARG_WITH(sound,
-[  --with-sound            native sound support for GNU/Linux and free BSDs])
 AC_ARG_WITH(toolkit-scroll-bars,
-[  --with-toolkit-scroll-bars  use Motif or Xaw3d scroll bars])
+[  --without-toolkit-scroll-bars
+                          don't use Motif or Xaw3d scroll bars])
 
 #### Make srcdir absolute, if it isn't already.  It's important to
 #### avoid running the path through pwd unnecessary, since pwd can
@@ -172,9 +187,12 @@ case "${canonical}" in
                        machine=hp9000s300 ;;
       powerpc-apple-netbsd*) machine=macppc ;;
       mips-*-netbsd*)  machine=pmax ;;
+      mipsel-*-netbsd*)        machine=pmax ;;
       ns32k-*-netbsd*) machine=ns32000 ;;
+      powerpc-*-netbsd*) machine=macppc ;;
       sparc-*-netbsd*) machine=sparc ;;
       vax-*-netbsd*)   machine=vax ;;
+      arm-*-netbsd*)   machine=arm ;;
     esac
   ;;
 
@@ -238,12 +256,27 @@ 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
+    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]*)
+      NON_GNU_CPP='cc -E -std0' ;;
+    esac
   ;;
 
   alpha*-*-linux-gnu* )
     machine=alpha opsys=gnu-linux
   ;;
 
+  arm*-*-linux-gnu* )
+    machine=arm opsys=gnu-linux
+  ;;
+
+  ppc-*-linux | \
+  powerpc-*-linux* )
+    machine=powerpc opsys=gnu-linux
+  ;;
+
   ## Altos 3068
   m68*-altos-sysv* )
     machine=altos opsys=usg5-2
@@ -621,6 +654,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
@@ -746,12 +784,18 @@ case "${canonical}" in
   ;;
   mips-sgi-irix6.5 )
     machine=iris4d opsys=irix6-5
-    NON_GNU_CPP=/lib/cpp
-    NON_GCC_TEST_OPTIONS="-n32 -G0"
+    # Without defining _LANGUAGE_C, things get masked out in the headers
+    # 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="-D_LANGUAGE_C"
   ;;
   mips-sgi-irix6* )
     machine=iris4d opsys=irix6-0
-    NON_GNU_CPP=/lib/cpp
+    # 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]* )
@@ -791,7 +835,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
@@ -1026,10 +1070,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
@@ -1104,20 +1144,20 @@ 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
 
 # Sound support for GNU/Linux and the free BSDs.
-if test "${with_sound}" = ""; then
-  with_sound=no
-fi
-if test "${with_sound}" != "no"; then
-  AC_CHECK_HEADERS(machine/soundcard.h sys/soundcard.h)
-fi
+AC_CHECK_HEADERS(machine/soundcard.h sys/soundcard.h)
 
 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)
+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)
 AC_HEADER_STDC
 AC_HEADER_TIME
 AC_DECL_SYS_SIGLIST
@@ -1145,6 +1185,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 <termios.h>], [speed_t x = 1;],
+  emacs_cv_speed_t=yes))
+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 <sys/time.h>
@@ -1162,12 +1210,46 @@ 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 <math.h>], 
+[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
+AC_CACHE_CHECK(for tm_gmtoff in struct tm, emacs_cv_tm_gmtoff,
+AC_TRY_LINK([#include <time.h>], [struct tm t; t.tm_gmtoff = 0],
+  emacs_cv_tm_gmtoff=yes,
+  emacs_cv_tm_gmtoff=no))
+if test $emacs_cv_tm_gmtoff = yes; then
+  AC_DEFINE(HAVE_TM_GMTOFF)
+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
@@ -1212,7 +1294,8 @@ else
   for bmd in `echo ${x_includes} | sed -e "s/:/ /g"`; do
     if test -d "${bmd}/X11/bitmaps"; then
       bmd_acc="${bmd_acc}:${bmd}/X11/bitmaps"
-    elif test -d "${bmd}/bitmaps"; then
+    fi
+    if test -d "${bmd}/bitmaps"; then
       bmd_acc="${bmd_acc}:${bmd}/bitmaps"
     fi
   done
@@ -1247,102 +1330,6 @@ HAVE_MENUS=no
 case ${HAVE_X11} in
   yes ) HAVE_MENUS=yes ;;
 esac
-
-### Is -lXaw3d available?
-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}"
-
-    if test "${HAVE_XAW3D}" = "yes"; then
-       AC_DEFINE(HAVE_XAW3D)
-    fi
-  fi
-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}"
-  fi
-
-  if test "${HAVE_XPM}" = "yes"; then
-    AC_DEFINE(HAVE_XPM)
-  fi
-fi
-  
-### Use -ljpeg if available, unless `--with-jpeg=no'.
-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}"
-    AC_CHECK_HEADER(jpeglib.h,
-      AC_CHECK_LIB(jpeg, jpeg_destroy_compress, HAVE_JPEG=yes, , -lX11))
-    CFLAGS="${old_c_flags}"
-  fi
-
-  if test "${HAVE_JPEG}" = "yes"; then
-    AC_DEFINE(HAVE_JPEG)
-  fi
-fi
-  
-### Use -lpng if available, unless `--with-png=no'.
-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}"
-  fi
-
-  if test "${HAVE_PNG}" = "yes"; then
-    AC_DEFINE(HAVE_PNG)
-  fi
-fi
-  
-### Use -ltiff if available, unless `--with-tiff=no'.
-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))
-    CFLAGS="${old_c_flags}"
-  fi
-
-  if test "${HAVE_TIFF}" = "yes"; then
-    AC_DEFINE(HAVE_TIFF)
-  fi
-fi
-  
-### Use -lgif if available, unless `--with-gif=no'.
-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, DGifOpenFileName, HAVE_GIF=yes, , -lX11))
-    CFLAGS="${old_c_flags}"
-  fi
-
-  if test "${HAVE_GIF}" = "yes"; then
-    AC_DEFINE(HAVE_GIF)
-  fi
-fi
   
 if test "${opsys}" = "hpux9"; then
   case "${x_libraries}" in
@@ -1430,8 +1417,12 @@ configure___ system_malloc=no
 #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
@@ -1520,9 +1511,6 @@ if test x"${REL_ALLOC}" = x; then
   REL_ALLOC=${GNU_MALLOC}
 fi
 
-LISP_FLOAT_TYPE=yes
-
-
 #### Add the libraries to LIBS and check for some functions.
 
 if test x"${OVERRIDE_CPPFLAGS}" != x; then
@@ -1671,24 +1659,6 @@ fi
 
 X_TOOLKIT_TYPE=$USE_X_TOOLKIT
 
-dnl Use toolkit scroll bars if configured for X toolkit and either
-dnl using Motif or Xaw3d is available, and unless
-dnl --with-toolkit-scroll-bars=no was specified.
-
-USE_TOOLKIT_SCROLL_BARS=no
-if test "${with_toolkit_scroll_bars}" != "no"; then
-  if test "${USE_X_TOOLKIT}" != "none"; then
-    if test "${USE_X_TOOLKIT}" = "MOTIF"; then
-      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
-      HAVE_XAW3D=no
-      USE_TOOLKIT_SCROLL_BARS=yes
-    elif test "${HAVE_XAW3D}" = "yes"; then
-      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
-      USE_TOOLKIT_SCROLL_BARS=yes
-    fi
-  fi
-fi
-
 if test "${USE_X_TOOLKIT}" != "none"; then
   AC_MSG_CHECKING(X11 toolkit version)
   AC_CACHE_VAL(emacs_cv_x11_toolkit_version_6,
@@ -1733,6 +1703,125 @@ Motif version prior to 2.1.
   fi
 fi
 
+### Is -lXaw3d available?
+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}"
+
+    if test "${HAVE_XAW3D}" = "yes"; then
+       AC_DEFINE(HAVE_XAW3D)
+    fi
+  fi
+fi
+  
+dnl Use toolkit scroll bars if configured for X toolkit and either
+dnl using Motif or Xaw3d is available, and unless
+dnl --with-toolkit-scroll-bars=no was specified.
+
+USE_TOOLKIT_SCROLL_BARS=no
+if test "${with_toolkit_scroll_bars}" != "no"; then
+  if test "${USE_X_TOOLKIT}" != "none"; then
+    if test "${USE_X_TOOLKIT}" = "MOTIF"; then
+      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
+      HAVE_XAW3D=no
+      USE_TOOLKIT_SCROLL_BARS=yes
+    elif test "${HAVE_XAW3D}" = "yes"; then
+      AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
+      USE_TOOLKIT_SCROLL_BARS=yes
+    fi
+  fi
+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}"
+  fi
+
+  if test "${HAVE_XPM}" = "yes"; then
+    AC_DEFINE(HAVE_XPM)
+  fi
+fi
+  
+### Use -ljpeg if available, unless `--with-jpeg=no'.
+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}"
+  fi
+
+  if test "${HAVE_JPEG}" = "yes"; then
+    AC_DEFINE(HAVE_JPEG)
+  fi
+fi
+  
+### Use -lpng if available, unless `--with-png=no'.
+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}"
+  fi
+
+  if test "${HAVE_PNG}" = "yes"; then
+    AC_DEFINE(HAVE_PNG)
+  fi
+fi
+  
+### Use -ltiff if available, unless `--with-tiff=no'.
+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"
+      # 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
+    AC_DEFINE(HAVE_TIFF)
+  fi
+fi
+  
+### Use -lgif if available, unless `--with-gif=no'.
+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}"
+  fi
+
+  if test "${HAVE_GIF}" = "yes"; then
+    AC_DEFINE(HAVE_GIF)
+  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,
@@ -1750,16 +1839,50 @@ AC_FUNC_ALLOCA
 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_LIB(mail, maillock)
+dnl Debian, at least:
+dnl AC_CHECK_LIB(lockfile, maillock, [AC_DEFINE(HAVE_LIBMAIL)])
+AC_CHECK_LIB(lockfile, maillock)
+# If we have the shared liblockfile, assume we must use it for mail
+# locking (e.g. Debian).  If we couldn't link against liblockfile
+# (no liblockfile.a installed), ensure that we don't need to.
+if test "$ac_cv_lib_lockfile_maillock" = no; then
+  dnl This works for files generally, not just executables.
+  dnl Should we look elsewhere for it?  Maybe examine /etc/ld.so.conf?
+  AC_CHECK_PROG(liblockfile, liblockfile.so, yes, no,
+                /usr/lib:/lib:/usr/local/lib:$LD_LIBRARY_PATH)
+  if test $ac_cv_prog_liblockfile = yes; then
+    AC_MSG_ERROR([Shared liblockfile found but can't link against it.
+This probably means that movemail could lose mail.
+There may be a \`development' package to install containing liblockfile.])
+  else AC_DEFINE(LIBMAIL, -llockfile)
+  fi
+  else :
+fi
+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 rint cbrt ftime res_init setsid \
 strerror fpathconf select mktime euidaccess getpagesize tzset setlocale \
-utimes setrlimit setpgid getcwd shutdown strftime getaddrinfo)
+utimes setrlimit setpgid getcwd shutdown strftime getaddrinfo \
+__fpending getloadavg mblen mbrlen strsignal setitimer ualarm)
+
+AC_FUNC_MKTIME
+if test "$ac_cv_func_working_mktime" = no; then
+  AC_DEFINE(BROKEN_MKTIME)
+fi
+
+AC_SYS_LARGEFILE
+AC_CHECK_FUNCS(ftello)
+
+# UNIX98 PTYs.  AC_SYS_LARGEFILE should have defined _XOPEN_SOURCE
+# if we need it.
+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.
@@ -1767,6 +1890,32 @@ utimes setrlimit setpgid getcwd shutdown strftime getaddrinfo)
 # than to expect to find it in ncurses.
 AC_CHECK_LIB(ncurses, tparm)
 
+# These tell us which Kerberos-related libraries to use.
+if test "${with_kerberos+set}" = set; then
+  AC_CHECK_LIB(com_err, com_err)
+  AC_CHECK_LIB(k5crypto, mit_des_cbc_encrypt)
+  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(des425, des_cbc_encrypt,,
+                AC_CHECK_LIB(des, des_cbc_encrypt))
+    AC_CHECK_LIB(krb4, krb_get_cred,,
+                AC_CHECK_LIB(krb, 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)
@@ -1775,9 +1924,6 @@ AC_MSG_CHECKING(whether localtime caches TZ)
 AC_CACHE_VAL(emacs_cv_localtime_cache,
 [if test x$ac_cv_func_tzset = xyes; then
 AC_TRY_RUN([#include <time.h>
-#if STDC_HEADERS
-# include <stdlib.h>
-#endif
 extern char **environ;
 unset_TZ ()
 {
@@ -1861,6 +2007,16 @@ if test -f /usr/lpp/X11/bin/smt.exp; then
   AC_DEFINE(HAVE_AIX_SMT_EXP)
 fi
 
+AC_MSG_CHECKING(whether system supports dynamic ptys)
+if test -d /dev/pts && ls -d /dev/ptmx > /dev/null 2>&1 ; then
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(HAVE_DEV_PTMX)
+else
+  AC_MSG_RESULT(no)
+fi
+
+AC_FUNC_VFORK
+
 # Set up the CFLAGS for real compilation, so we can substitute it.
 CFLAGS="$REAL_CFLAGS"
 
@@ -1904,7 +2060,6 @@ AC_SUBST(CFLAGS)
 AC_SUBST(X_TOOLKIT_TYPE)
 AC_SUBST(machfile)
 AC_SUBST(opsysfile)
-AC_SUBST(RANLIB)
 
 AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION,  "${canonical}")
 AC_DEFINE_UNQUOTED(EMACS_CONFIG_OPTIONS, "${ac_configure_args}")
@@ -1936,9 +2091,6 @@ fi
 if test "${REL_ALLOC}" = "yes" ; then
   AC_DEFINE(REL_ALLOC)
 fi
-if test "${LISP_FLOAT_TYPE}" = "yes" ; then
-  AC_DEFINE(LISP_FLOAT_TYPE)
-fi
 
 #### Report on what we decided to do.
 echo "