X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/26f186c23651c89a60f5939a8606daaafccca5dc..825e4ec2b9313901ac2a4580a4dcf67848aa7360:/configure1.in diff --git a/configure1.in b/configure1.in index 4251cac07d..d87414a848 100755 --- a/configure1.in +++ b/configure1.in @@ -203,7 +203,6 @@ Set it to either \`yes' or \`no'." val=`eval echo '$'$index` fi x_includes="${val}" - C_SWITCH_X_SITE="-I${x_includes}" ;; "x_libraries" ) ## If the value was omitted, get it from the next argument. @@ -219,7 +218,6 @@ Set it to either \`yes' or \`no'." val=`eval echo '$'$index` fi x_libraries="${val}" - LD_SWITCH_X_SITE="-L${x_libraries}" ;; ## Should this use the "development configuration"? @@ -228,7 +226,7 @@ Set it to either \`yes' or \`no'." inst_paths='#disabled# ' ;; - ## Has the user specifiec an installation prefix? + ## Has the user specified an installation prefix? "prefix" ) ## If the value was omitted, get it from the next argument. if [ "${valomitted}" = "yes" ]; then @@ -245,7 +243,7 @@ Set it to either \`yes' or \`no'." prefix="${val}" ;; - ## Has the user specifiec an installation prefix? + ## Has the user specified an installation prefix? "exec_prefix" ) ## If the value was omitted, get it from the next argument. if [ "${valomitted}" = "yes" ]; then @@ -262,6 +260,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 @@ -304,10 +307,10 @@ case "${srcdir}" in srcdir="${confdir}" else if [ -f "./src/lisp.h" -a -f "./lisp/version.el" ]; then - srcdir=`.` + srcdir='.' else if [ -f "../src/lisp.h" -a -f "../lisp/version.el" ]; then - srcdir=`..` + srcdir='..' else (echo "\ ${progname}: Neither the current directory nor its parent seem to @@ -354,30 +357,29 @@ case "${srcdir}" in * ) srcdir="`(cd ${srcdir}; pwd)`" ;; esac +#### Make sure that the source directory doesn't already have a +#### configured system in it. +if [ `pwd` != `(cd ${srcdir} && pwd)` ] \ + && [ -f "${srcdir}/src/config.h" ] ; then + (echo "${progname}: the directory tree \`${srcdir}' is being used" + echo " as a build directory right now; it has been configured in its own" + echo " right. You can't use srcdir in this situation.") >&2 + exit 1 +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 @@ -405,7 +407,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 @@ -445,8 +447,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 ;; @@ -484,6 +491,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 @@ -499,6 +511,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 ;; @@ -543,23 +558,32 @@ 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 - hppa1.0-hp-hpux* ) + hppa*-hp-hpux7* ) machine=hp9000s800 opsys=hpux ;; - hppa1.1-hp-hpux* ) + hppa*-hp-hpux8* ) machine=hp9000s800 opsys=hpux8 ;; + hppa*-hp-hpux9* ) + machine=hp9000s800 opsys=hpux9 + ;; + + ## HP 9000 series 700 and 800, running HP/UX hppa*-hp-hpux* ) ## Cross-compilation? Nah! case "`uname -r`" in - *.08.* ) machine=hp9000s800 opsys=hpux ;; - *.09.* ) machine=hp9000s800 opsys=hpux8 ;; + *.08.* ) machine=hp9000s800 opsys=hpux8 ;; + *.09.* ) machine=hp9000s800 opsys=hpux9 ;; *) machine=hp9000s800 opsys=hpux ;; esac ;; @@ -576,7 +600,7 @@ case "${configuration}" in i386-ibm-aix1.1 ) machine=ibmps2-aix opsys=usg5-2-2 ;; - i386-ibm-aix1.2 ) + i386-ibm-aix1.[23] | i386-ibm-aix* ) machine=ibmps2-aix opsys=usg5-3 ;; rs6000-ibm-aix3.1 ) @@ -619,20 +643,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-unknown-* ) - 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 ;; - ## 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 @@ -677,8 +696,12 @@ case "${configuration}" in ## the BSD world." I'll assume that these are instructions for ## handling two odd situations, and that every other situation ## should use mips.h and usg5-2-2, they being listed first. + mips-mips-usg* ) + machine=mips4 + ## Fall through to the general code at the bottom to decide on the OS. + ;; mips-mips-riscos4* ) - machine=mips4 opsys=usg5-2-2 + machine=mips4 opsys=bsd4-3 ;; mips-mips-bsd* ) machine=mips opsys=bsd4-3 @@ -720,11 +743,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. @@ -739,10 +757,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 ) @@ -762,7 +776,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 ;; @@ -770,7 +784,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 ;; @@ -826,10 +840,11 @@ 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 ;; + *-bsd386 ) opsys=bsd386 ;; *-sysv[01]* | *-sysvr[01]* ) opsys=usg5-0 ;; *-sysv2* | *-sysvr2* ) opsys=usg5-2 ;; *-vms* ) opsys=vms ;; @@ -849,6 +864,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 ;; @@ -860,8 +893,8 @@ esac ### operating system is; if you know what operating systems a machine ### runs, it's cleaner to make it explicit in the case statement ### above. -if [ ! "${opsys}" ]; then - case "${configuration}" in +if [ x"${opsys}" = x ]; then + case "${canonical}" in *-bsd4.[01] ) opsys=bsd4-1 ;; *-bsd4.2 ) opsys=bsd4-2 ;; *-bsd4.3 ) opsys=bsd4-3 ;; @@ -878,7 +911,7 @@ if [ ! "${opsys}" ]; 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 @@ -900,11 +933,6 @@ case ${with_gcc} in ] AC_PROG_CC [ esac -CFLAGS='-g' -if test -n "${GCC}"; then - CFLAGS='-g -O' -fi - #### Some other nice autoconf tests. If you add a test here which #### should make an entry in src/config.h, don't forget to add an #### #undef clause to src/config.h.in for autoconf to modify. @@ -913,6 +941,7 @@ dnl checks for programs AC_LN_S AC_PROG_CPP AC_PROG_INSTALL +AC_PROG_YACC dnl checks for UNIX variants that set `DEFS' @@ -924,10 +953,6 @@ AC_TIME_WITH_SYS_TIME dnl checks for typedefs AC_RETSIGTYPE -dnl checks for functions -AC_ALLOCA -AC_HAVE_FUNCS(gettimeofday gethostname dup2 rename) - dnl checks for structure members AC_STRUCT_TM AC_TIMEZONE @@ -936,6 +961,7 @@ dnl checks for compiler characteristics AC_CONST dnl checks for operating system services +AC_LONG_FILE_NAMES dnl other checks for UNIX variants [ @@ -966,21 +992,46 @@ esac case "${window_system}" in "none" | "x11" | "x10" ) ;; "" ) - echo " No window system specifed. Looking for X11." - window_system=none - if [ -r /usr/lib/libX11.a \ + # --x-includes or --x-libraries implies --with-x11. + if [ -n "${x_includes}" ] || [ -n "${x_libraries}" ]; then + window_system=x11 + else + echo " No window system specified. Looking for X11." + # If the user didn't specify a window system and we found X11, use it. + if [ -r /usr/lib/libX11.a \ -o -d /usr/include/X11 \ -o -d /usr/X386/include \ -o -d ${x_includes}/X11 ]; then - window_system=x11 + window_system=x11 + fi fi ;; * ) - echo "Don't specify the window system more than once." >&2 + echo "Don't specify a window system more than once." >&2 exit 1 ;; esac +case "${window_system}" in + "" | "x11" ) + ### If the user hasn't specified where we should find X, try + ### letting autoconf figure that out. + if [ -z "${x_includes}" ] && [ -z "${x_libraries}" ]; then + ] + AC_FIND_X + [ + fi + if [ -n "${x_includes}" ] || [ -n "${x_libraries}" ]; then + window_system=x11 + fi + ;; +esac + +[ -z "${window_system}" ] && window_system=none + +[ -n "${x_libraries}" ] && LD_SWITCH_X_SITE="-L${x_libraries}" +[ -n "${x_includes}" ] && C_SWITCH_X_SITE="-I${x_includes}" + case "${window_system}" in x11 ) HAVE_X_WINDOWS=yes @@ -1007,26 +1058,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" @@ -1053,6 +1084,19 @@ echo ' @configure@ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM @configure@ c_switch_system=C_SWITCH_SYSTEM +#ifndef LIB_X11_LIB +#define LIB_X11_LIB +#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 @@ -1064,11 +1108,25 @@ echo ' #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 + +#ifdef __GNUC__ +@configure@ CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH +#else +@configure@ CFLAGS=C_DEBUG_SWITCH +#endif ' > ${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} @@ -1085,17 +1143,54 @@ if [ "${system_malloc}" = "yes" ]; then (The GNU allocators don't work with this system configuration.)" fi -if [ ! "${REL_ALLOC}" ]; then +if [ x"${REL_ALLOC}" = x ]; then REL_ALLOC=${GNU_MALLOC} fi LISP_FLOAT_TYPE=yes +#### Add the libraries to LIBS and check for some functions. + +] +DEFS="$c_switch_system $DEFS" +LIBS="$libsrc_libs" + +dnl If found, this defines HAVE_LIBDNET, which m/pmax.h checks, +dnl and also adds -ldnet to LIBS, which Autoconf uses for checks. +AC_HAVE_LIBRARY(-ldnet) + +AC_HAVE_LIBRARY(-lXbsd, LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -lXbsd" + if test -d /usr/X386/include; then + HAVE_XFREE386=yes + test -z "${C_SWITCH_X_SITE}" && C_SWITCH_X_SITE="-I/usr/X386/include" + fi) + +if test "${HAVE_X11}" = "yes"; then + DEFS="$C_SWITCH_X_SITE $DEFS" + LIBS="$LD_SWITCH_X_SITE $LIBX $LIBS" + AC_HAVE_FUNCS(XrmSetDatabase random) +fi + +AC_ALLOCA +AC_HAVE_FUNCS(gettimeofday gethostname dup2 rename closedir) + +ok_so_far=true +AC_FUNC_CHECK(socket, , ok_so_far=) +if test -n "$ok_so_far"; then + AC_HEADER_CHECK(netinet/in.h, , ok_so_far=) +fi +if test -n "$ok_so_far"; then + AC_HEADER_CHECK(arpa/inet.h, , ok_so_far=) +fi +if test -n "$ok_so_far"; then + AC_DEFINE(HAVE_INET_SOCKETS) +fi +[ #### 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/'` -if [ ! "${version}" ]; then +if [ x"${version}" = x ]; then echo "${progname}: can't find current emacs version in \`${srcdir}/lisp/version.el'." >&2 exit 1 @@ -1103,6 +1198,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) @@ -1150,7 +1246,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? @@ -1163,5 +1259,11 @@ Configured for \`${configuration}'. Where do we find X Windows libraries? }${x_libraries} " + +# Remove any trailing slashes in these variables. +test -n "${prefix}" && + prefix=`echo "${prefix}" | sed 's,\([^/]\)/*$,\1,'` +test -n "${exec_prefix}" && + exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'` ] AC_OUTPUT(Makefile)