]> code.delx.au - gnu-emacs/blobdiff - configure1.in
(BROKEN_TIOCGETC, BROKEN_TIOCGWINSZ): Add #undefs.
[gnu-emacs] / configure1.in
index feb108a6cd1ad116a67a65a6be48c48be71a1ee6..368317ed498ab234a9725451bb2d71ce72a293da 100755 (executable)
@@ -203,7 +203,7 @@ Set it to either \`yes' or \`no'."
             val=`eval echo '$'$index`
          fi
          x_includes="${val}"
-         C_SWITCH_X_SITE="-I${x_includes}"
+         C_SWITCH_X_SITE="-I\"${x_includes}\""
         ;;
        "x_libraries" )
          ## If the value was omitted, get it from the next argument.
@@ -219,7 +219,7 @@ Set it to either \`yes' or \`no'."
             val=`eval echo '$'$index`
          fi
          x_libraries="${val}"
-         LD_SWITCH_X_SITE="-L${x_libraries}"
+         LD_SWITCH_X_SITE="-L\"${x_libraries}\""
         ;;
 
        ## Should this use the "development configuration"?
@@ -262,6 +262,11 @@ Set it to either \`yes' or \`no'."
          exec_prefix="${val}"
         ;;
 
+       ## Verbose flag, tested by autoconf macros.
+       "verbose" )
+         verbose=yes
+       ;;
+
        ## Has the user asked for some help?
        "usage" | "help" )
          echo "${short_usage}" | more
@@ -365,28 +370,18 @@ if [ `pwd` != `(cd ${srcdir} && pwd)` ] \
 fi
 
 ### Make the necessary directories, if they don't exist.
-if [ ! -d ./src ]; then
-  mkdir ./src
-fi
-if [ ! -d ./lib-src ]; then
-  mkdir ./lib-src
-fi
-if [ ! -d ./cpp ]; then
-  mkdir ./cpp
-fi
-if [ ! -d ./oldXMenu ]; then
-  mkdir ./oldXMenu
-fi
-if [ ! -d ./etc ]; then
-  mkdir ./etc
-fi
+for dir in ./src ./lib-src ./cpp ./oldXMenu ./etc ; do
+  if [ ! -d ${dir} ]; then
+    mkdir ${dir}
+  fi
+done
 
 #### Given the configuration name, set machfile and opsysfile to the
 #### names of the m/*.h and s/*.h files we should use.
 
 ### Canonicalize the configuration name.
 echo "Checking the configuration name."
-if configuration=`${srcdir}/config.sub "${configuration}"` ; then : ; else
+if canonical=`${srcdir}/config.sub "${configuration}"` ; then : ; else
   exit $?
 fi
 
@@ -414,7 +409,7 @@ fi
 ### confusion between `system' and `release' levels'."
 
 machine='' opsys='' unported='false'
-case "${configuration}" in
+case "${canonical}" in
 
   ## Alliant machines
   ## Strictly speaking, we need the version of the alliant operating
@@ -454,8 +449,13 @@ case "${configuration}" in
     machine=7300 opsys=usg5-2-2
   ;;
 
+  ## Bull dpx2
+  m68*-bull-sysv3* )
+    machine=dpx2 opsys=usg5-3
+  ;;
+
   ## Bull sps7
-  m68*-bull-sysv* )
+  m68*-bull-sysv2* )
     machine=sps7 opsys=usg5-2
   ;;
 
@@ -493,6 +493,11 @@ case "${configuration}" in
     machine=cydra5 opsys=usg5-3
   ;;
 
+  ## Data General AViiON Machines
+  m88k-dg-dgux* )
+    machine=aviion opsys=dgux
+  ;;
+
   ## DECstations
   mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0 | mips-dec-bsd4.2 )
     machine=pmax opsys=bsd4-2
@@ -508,6 +513,9 @@ case "${configuration}" in
   m68*-motorola-sysv* )
     machine=delta opsys=usg5-3
   ;;
+  m88k-motorola-sysv4* )
+    machine=delta88k opsys=usg5-4
+  ;;
   m88k-motorola-sysv* | m88k-motorola-m88kbcs* )
     machine=delta88k opsys=usg5-3
   ;;
@@ -552,9 +560,13 @@ case "${configuration}" in
   m68*-hp-bsd* )
     machine=hp9000s300 opsys=bsd4-3
   ;;
-  ## HP/UX 8 doesn't run on these machines, so use HP/UX 7.
+  ## HP/UX 7, 8 and 9 are supported on these machines.
   m68*-hp-hpux* )
-    machine=hp9000s300 opsys=hpux
+    case "`uname -r`" in
+      *.08.* ) machine=hp9000s300 opsys=hpux8 ;;
+      *.09.* ) machine=hp9000s300 opsys=hpux9 ;;
+      *) machine=hp9000s300 opsys=hpux ;;
+    esac
   ;;
 
   ## HP 9000 series 700 and 800, running HP/UX
@@ -633,22 +645,15 @@ case "${configuration}" in
   i[34]86-intsys-sysv* )
     machine=is386 opsys=usg5-2-2
   ;;
-  ## Intel 386 machines where we don't care about the manufacturer
-  i[34]86-*-* )
-    machine=intel386
-    case "${configuration}" in
-      *-isc1.* | *-isc2.[01]* )        opsys=386-ix ;;
-      *-isc2.2 )               opsys=isc2-2 ;;
-      *-isc* )                 opsys=isc3-0 ;;
-      *-esix5* )               opsys=esix5r4 ;;
-      *-esix* )                        opsys=esix ;;
-      *-xenix* )               opsys=xenix ;;
-      *-linux* )               opsys=linux ;;
-      *-sco3.2v4* )            opsys=sco4 ;;
-      *-bsd386* )              opsys=bsd386 ;;
-      *-386bsd )               opsys=386bsd ;;
-      ## Otherwise, we'll fall through to the generic opsys code at the bottom.
-    esac
+
+  ## Prime EXL
+  i386-prime-sysv* )
+    machine=i386 opsys=usg5-3
+  ;;
+
+  ## Sequent Symmetry
+  i386-sequent-bsd* )
+    machine=symmetry opsys=bsd4-3
   ;;
 
   ## Intel 860
@@ -740,11 +745,6 @@ case "${configuration}" in
     machine=plexus opsys=usg5-2
   ;;
 
-  ## Prime EXL
-  i386-prime-sysv* )
-    machine=i386 opsys=usg5-3
-  ;;
-
   ## 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.
@@ -759,10 +759,6 @@ case "${configuration}" in
   ns32k-sequent-bsd4.3 )
     machine=sequent opsys=bsd4-3
   ;;
-  ## Sequent Symmetry
-  i386-sequent-bsd* )
-    machine=symmetry opsys=bsd4-3
-  ;;
 
   ## SONY machines
   m68*-sony-bsd4.2 )
@@ -782,7 +778,7 @@ case "${configuration}" in
 
   ## Suns
   *-sun-sunos* | *-sun-bsd* | *-sun-solaris* )
-    case "${configuration}" in
+    case "${canonical}" in
       m68*-sunos1* )   machine=sun1 ;;
       m68*-sunos2* )   machine=sun2 ;;
       m68* )           machine=sun3 ;;
@@ -790,7 +786,7 @@ case "${configuration}" in
       sparc* )         machine=sparc ;;
       * )              unported=true ;;
     esac
-    case "${configuration}" in
+    case "${canonical}" in
       *-sunos4.0*        ) opsys=sunos4-0 ;;
       *-sunos4.1.3*      ) opsys=sunos4-1-3 ;;
       *-sunos4* | *-sunos ) opsys=sunos4-1 ;;
@@ -846,7 +842,7 @@ case "${configuration}" in
   ## Vaxen.
   vax-dec-* )
     machine=vax
-    case "${configuration}" in
+    case "${canonical}" in
       *-bsd4.1 )                                       opsys=bsd4-1 ;;
       *-bsd4.2 | *-ultrix[0-3].* | *-ultrix4.0 )       opsys=bsd4-2 ;;
       *-bsd4.3 | *-ultrix* )                           opsys=bsd4-3 ;;
@@ -870,6 +866,24 @@ case "${configuration}" in
     machine=wicat opsys=usg5-2
   ;;
 
+  ## Intel 386 machines where we don't care about the manufacturer
+  i[34]86-*-* )
+    machine=intel386
+    case "${canonical}" in
+      *-isc1.* | *-isc2.[01]* )        opsys=386-ix ;;
+      *-isc2.2 )               opsys=isc2-2 ;;
+      *-isc* )                 opsys=isc3-0 ;;
+      *-esix5* )               opsys=esix5r4 ;;
+      *-esix* )                        opsys=esix ;;
+      *-xenix* )               opsys=xenix ;;
+      *-linux* )               opsys=linux ;;
+      *-sco3.2v4* )            opsys=sco4 ;;
+      *-bsd386* )              opsys=bsd386 ;;
+      *-386bsd )               opsys=386bsd ;;
+      ## Otherwise, we'll fall through to the generic opsys code at the bottom.
+    esac
+  ;;
+
   * )
     unported=true
   ;;
@@ -882,7 +896,7 @@ esac
 ### runs, it's cleaner to make it explicit in the case statement
 ### above.
 if [ x"${opsys}" = x ]; then
-  case "${configuration}" in
+  case "${canonical}" in
     *-bsd4.[01] )      opsys=bsd4-1 ;;
     *-bsd4.2 )         opsys=bsd4-2 ;;
     *-bsd4.3 )         opsys=bsd4-3 ;;
@@ -899,7 +913,7 @@ if [ x"${opsys}" = x ]; then
 fi
 
 if $unported ; then
-  (echo "${progname}: Emacs hasn't been ported to \`${configuration}' systems."
+  (echo "${progname}: Emacs hasn't been ported to \`${canonical}' systems."
    echo "${progname}: Check \`etc/MACHINES' for recognized configuration names."
   ) >&2
   exit 1
@@ -946,7 +960,7 @@ AC_RETSIGTYPE
 
 dnl checks for functions
 AC_ALLOCA
-AC_HAVE_FUNCS(gettimeofday gethostname dup2 rename)
+AC_HAVE_FUNCS(gettimeofday gethostname dup2 rename closedir)
 
 dnl checks for structure members
 AC_STRUCT_TM
@@ -956,6 +970,7 @@ dnl checks for compiler characteristics
 AC_CONST
 
 dnl checks for operating system services
+AC_LONG_FILE_NAMES
 
 dnl other checks for UNIX variants
 [
@@ -983,6 +998,20 @@ case "${with_x10}" in
   ;;
 esac
 
+### If the user hasn't specified where we should find X, try
+### letting autoconf figure that out.
+if [ "0${x_includes}" = 0 ] && [ "0${x_libraries}" = 0 ]; then
+  ]
+    AC_FIND_X
+  [
+  if [ "0${x_includes}" != 0 ]; then
+    C_SWITCH_X_SITE="-I\"${x_includes}\""
+  fi
+  if [ "0${x_libraries}" != 0 ]; then
+    LD_SWITCH_X_SITE="-L\"${x_libraries}\""
+  fi
+fi
+
 case "${window_system}" in
   "none" | "x11" | "x10" ) ;;
   "" )
@@ -1027,26 +1056,6 @@ case ${HAVE_X11} in
   ;;
 esac
 
-### Check for XFree386.  It needs special hacks.
-lib_havexbsd=no
-]
-AC_HAVE_LIBRARY( Xbsd , have_libxbsd=yes , have_libxbsd=no )
-[
-if [ -n "${x_libraries}" ] && [ -f ${x_libraries}/libXbsd.a ]; then
-  have_libxbsd=yes
-fi
-
-case ${window_system} in
-  x11 )
-    if [ -d /usr/X386/include ] && [ "${have_libxbsd}" = "yes" ]; then
-      HAVE_XFREE386=yes
-      if [ "${C_SWITCH_X_SITE}" = "" ]; then
-       C_SWITCH_X_SITE="-I/usr/X386/include"
-      fi
-    fi
-  ;;
-esac
-
 #### Extract some information from the operating system and machine files.
 
 echo "Examining the machine- and system-dependent files to find out"
@@ -1101,8 +1110,8 @@ echo '
 ' > ${tempcname}
 # The value of CPP is a quoted variable reference, so we need to do this
 # to get its actual value...
-foo=`eval "echo $CPP"`
-eval `${foo} ${tempcname} \
+CPP=`eval "echo $CPP"`
+eval `${CPP} -Isrc ${tempcname} \
        | grep '@configure@' \
        | sed -e 's/^@configure@ \([^=]*=\)\(.*\)$/\1"\2"/'`
 rm ${tempcname}
@@ -1126,6 +1135,33 @@ fi
 LISP_FLOAT_TYPE=yes
 
 
+#### Add the X libraries to the list, and check for some functions found there.
+CFLAGS_save="$CFLAGS"
+CFLAGS="${CFLAGS} ${LD_SWITCH_X_SITE}"
+]
+AC_HAVE_LIBRARY(-lXbsd)
+[
+LIBS_save="$LIBS"
+if [ "${HAVE_X11}" = "yes" ] ; then
+  LIBS="-lX11 ${LIBS}"
+fi
+]
+AC_HAVE_FUNCS(XrmSetDatabase random)
+[
+CFLAGS="$CFLAGS_save"
+LIBS="$LIBS_save"
+
+case "${window_system}:${LIBS}" in
+  x11:*-lXbsd* )
+    if [ -d /usr/X386/include ]; then
+      HAVE_XFREE386=yes
+      if [ "${C_SWITCH_X_SITE}" = "" ]; then
+       C_SWITCH_X_SITE="-I/usr/X386/include"
+      fi
+    fi
+  ;;
+esac
+
 #### Find out which version of Emacs this is.
 version=`grep 'defconst[        ]*emacs-version' ${srcdir}/lisp/version.el \
         | sed -e 's/^.*"\([0-9][0-9]*\.[0-9][0-9]*\)\..*$/\1/'`
@@ -1137,6 +1173,7 @@ fi
 
 
 #### Specify what sort of things we'll be editing into Makefile and config.h.
+### Use configuration here uncanonicalized to avoid exceeding size limits.
 ]
 AC_SUBST(configuration)
 AC_SUBST(version)
@@ -1184,7 +1221,7 @@ fi
 #### Report on what we decided to do.
 echo "
 
-Configured for \`${configuration}'.
+Configured for \`${canonical}'.
 
   Where should the build process find the source code?    ${srcdir}
   What operating system and machine description files should Emacs use?