date and time created 93/05/18 15:23:40 by elan
authorElan Amir <elan@ucbvax.Berkeley.EDU>
Wed, 19 May 1993 06:23:40 +0000 (22:23 -0800)
committerElan Amir <elan@ucbvax.Berkeley.EDU>
Wed, 19 May 1993 06:23:40 +0000 (22:23 -0800)
SCCS-vsn: contrib/perl-4.036/Configure 1.1

usr/src/contrib/perl-4.036/Configure [new file with mode: 0644]

diff --git a/usr/src/contrib/perl-4.036/Configure b/usr/src/contrib/perl-4.036/Configure
new file mode 100644 (file)
index 0000000..ddfd7e2
--- /dev/null
@@ -0,0 +1,4055 @@
+#! /bin/sh
+#
+# If these # comments don't work, trim them.  Don't worry about any other
+# shell scripts, Configure will trim # comments from them for you.
+#
+# (If you are trying to port this package to a machine without sh, I would
+# suggest you cut out the prototypical config.h from the end of Configure
+# and edit it to reflect your system.  Some packages may include samples
+# of config.h for certain machines, so you might look for one of those.)
+#
+# $RCSfile: Configure,v $$Revision: 4.0.1.9 $$Date: 92/06/23 12:28:33 $
+#
+# Yes, you may rip this off to use in other distribution packages.
+# (Note: this Configure script was generated automatically.  Rather than
+# working with this copy of Configure, you may wish to get metaconfig.)
+
+cat >/tmp/c1$$ <<EOF
+ARGGGHHHH!!!!!
+
+Your csh still thinks true is false.  Write to your vendor today and tell
+them that next year Configure ought to "rm /bin/csh" unless they fix their
+blasted shell. :-)
+
+[End of diatribe.  We now return you to your regularly scheduled
+programming...]
+
+EOF
+cat >/tmp/c2$$ <<EOF
+OOPS!  You naughty creature!  You didn't run Configure with sh!
+I will attempt to remedy the situation by running sh for you...
+
+EOF
+
+true || cat /tmp/c1$$ /tmp/c2$$
+true || exec sh $0
+
+export PATH || cat /tmp/c2$$
+export PATH || exec sh $0
+rm -f /tmp/c1$$ /tmp/c2$$
+
+PATH=".:$PATH:/bin:/usr/bin:/usr/local/bin:/usr/ucb:/usr/local:/usr/lbin:/etc:/usr/new:/usr/new/bin:/usr/nbin"
+
+if test ! -t 0; then
+    echo "Say 'sh Configure', not 'sh <Configure'"
+    exit 1
+fi
+
+(alias) >/dev/null 2>&1 && \
+    echo "(I see you are using the Korn shell.  Some ksh's blow up on Configure," && \
+    echo "especially on exotic machines.  If yours does, try the Bourne shell instead.)"
+
+unset CDPATH
+if test ! -d ../UU; then
+    if test ! -d UU; then
+       mkdir UU
+    fi
+    cd UU
+fi
+
+case "$1" in
+-d) shift; fastread='yes';;
+esac
+
+d_eunice=''
+define=''
+eunicefix=''
+loclist=''
+expr=''
+sed=''
+echo=''
+cat=''
+rm=''
+mv=''
+cp=''
+tail=''
+tr=''
+mkdir=''
+sort=''
+uniq=''
+grep=''
+trylist=''
+test=''
+inews=''
+egrep=''
+more=''
+pg=''
+Mcc=''
+vi=''
+mailx=''
+mail=''
+cpp=''
+perl=''
+emacs=''
+ls=''
+rmail=''
+sendmail=''
+shar=''
+smail=''
+tbl=''
+troff=''
+nroff=''
+uname=''
+uuname=''
+line=''
+chgrp=''
+chmod=''
+lint=''
+sleep=''
+pr=''
+tar=''
+ln=''
+lpr=''
+lp=''
+touch=''
+make=''
+date=''
+csh=''
+bash=''
+ksh=''
+lex=''
+flex=''
+bison=''
+Log=''
+Header=''
+Id=''
+lastuname=''
+alignbytes=''
+bin=''
+installbin=''
+byteorder=''
+contains=''
+cppstdin=''
+cppminus=''
+d_bcmp=''
+d_bcopy=''
+d_safebcpy=''
+d_bzero=''
+d_castneg=''
+castflags=''
+d_charsprf=''
+d_chsize=''
+d_crypt=''
+cryptlib=''
+d_csh=''
+d_dosuid=''
+d_dup2=''
+d_fchmod=''
+d_fchown=''
+d_fcntl=''
+d_flexfnam=''
+d_flock=''
+d_getgrps=''
+d_gethent=''
+d_getpgrp=''
+d_getpgrp2=''
+d_getprior=''
+d_htonl=''
+d_index=''
+d_isascii=''
+d_killpg=''
+d_lstat=''
+d_memcmp=''
+d_memcpy=''
+d_safemcpy=''
+d_memmove=''
+d_memset=''
+d_mkdir=''
+d_msg=''
+d_msgctl=''
+d_msgget=''
+d_msgrcv=''
+d_msgsnd=''
+d_ndbm=''
+d_odbm=''
+d_open3=''
+d_readdir=''
+d_rename=''
+d_rewindir=''
+d_rmdir=''
+d_seekdir=''
+d_select=''
+d_sem=''
+d_semctl=''
+d_semget=''
+d_semop=''
+d_setegid=''
+d_seteuid=''
+d_setpgrp=''
+d_setpgrp2=''
+d_setprior=''
+d_setregid=''
+d_setresgid=''
+d_setreuid=''
+d_setresuid=''
+d_setrgid=''
+d_setruid=''
+d_shm=''
+d_shmat=''
+d_voidshmat=''
+d_shmctl=''
+d_shmdt=''
+d_shmget=''
+d_socket=''
+d_sockpair=''
+d_oldsock=''
+socketlib=''
+d_statblks=''
+d_stdstdio=''
+d_strctcpy=''
+d_strerror=''
+d_symlink=''
+d_syscall=''
+d_telldir=''
+d_truncate=''
+d_vfork=''
+d_voidsig=''
+d_tosignal=''
+d_volatile=''
+d_vprintf=''
+d_charvspr=''
+d_wait4=''
+d_waitpid=''
+gidtype=''
+groupstype=''
+i_fcntl=''
+i_gdbm=''
+i_grp=''
+i_niin=''
+i_sysin=''
+i_pwd=''
+d_pwquota=''
+d_pwage=''
+d_pwchange=''
+d_pwclass=''
+d_pwexpire=''
+d_pwcomment=''
+i_sys_file=''
+i_sysioctl=''
+i_time=''
+i_sys_time=''
+i_sys_select=''
+d_systimekernel=''
+i_utime=''
+i_varargs=''
+i_vfork=''
+intsize=''
+libc=''
+nm_opts=''
+libndir=''
+i_my_dir=''
+i_ndir=''
+i_sys_ndir=''
+i_dirent=''
+i_sys_dir=''
+d_dirnamlen=''
+ndirc=''
+ndiro=''
+mallocsrc=''
+mallocobj=''
+d_mymalloc=''
+mallocptrtype=''
+mansrc=''
+manext=''
+models=''
+split=''
+small=''
+medium=''
+large=''
+huge=''
+optimize=''
+ccflags=''
+cppflags=''
+ldflags=''
+cc=''
+nativegcc=''
+libs=''
+n=''
+c=''
+package=''
+randbits=''
+scriptdir=''
+installscr=''
+sig_name=''
+spitshell=''
+shsharp=''
+sharpbang=''
+startsh=''
+stdchar=''
+uidtype=''
+usrinclude=''
+inclPath=''
+void=''
+voidhave=''
+voidwant=''
+w_localtim=''
+w_s_timevl=''
+w_s_tm=''
+yacc=''
+lib=''
+privlib=''
+installprivlib=''
+CONFIG=''
+: get the name of the package
+package=perl
+: Here we go...
+echo " "
+echo "Beginning of configuration questions for $package kit."
+: Eunice requires " " instead of "", can you believe it
+echo " "
+
+define='define'
+undef='undef'
+: change the next line if compiling for Xenix/286 on Xenix/386
+xlibpth='/usr/lib/386 /lib/386'
+
+: the hints files may add more components to libpth
+test -d /usr/cs/lib            && libpth="$libpth /usr/cs/lib"
+test -d /usr/ccs/lib           && libpth="$libpth /usr/ccs/lib"
+test -d /usr/lib               && libpth="$libpth /usr/lib"
+test -d /usr/ucblib            && libpth="$libpth /usr/ucblib"
+test -d /usr/local/lib         && libpth="$libpth /usr/local/lib"
+test -d /usr/lib/large         && libpth="$libpth /usr/lib/large"
+test -d /lib                   && libpth="$libpth /lib"
+                                  libpth="$libpth $xlibpth"
+test -d /lib/large             && libpth="$libpth /lib/large"
+test -d /usr/lib/small         && libpth="$libpth /usr/lib/small"
+test -d /lib/small             && libpth="$libpth /lib/small"
+test -d /usr/lib/cmplrs/cc     && libpth="$libpth /usr/lib/cmplrs/cc"
+
+smallmach='pdp11 i8086 z8000 i80286 iAPX286'
+trap 'echo " "; exit 1' 1 2 3
+
+: We must find out about Eunice early
+eunicefix=':'
+if test -f /etc/unixtovms; then
+    eunicefix=/etc/unixtovms
+fi
+if test -f /etc/unixtovms.exe; then
+    eunicefix=/etc/unixtovms.exe
+fi
+
+attrlist="DGUX M_I186 M_I286 M_I386 M_I8086 M_XENIX UTS __DGUX__"
+attrlist="$attrlist __STDC__ __m88k__ ansi bsd4_2 gcos gimpel"
+attrlist="$attrlist hp9000s300 hp9000s500 hp9000s800 hpux"
+attrlist="$attrlist i186 i386 i8086 iAPX286 ibm interdata"
+attrlist="$attrlist m68k m88k mc300 mc500 mc68000 mc68k mc700 mert"
+attrlist="$attrlist ns16000 ns32000 nsc32000 os pdp11 posix pyr sinix"
+attrlist="$attrlist sparc sun tower tower32 tower32_600 tower32_800 tss"
+attrlist="$attrlist u3b2 u3b20 u3b200 u3b5 ultrix unix vax venix xenix"
+attrlist="$attrlist z8000"
+boPATH=""
+eoPATH="/usr/ucb /bin /usr/bin /usr/local /usr/local/bin /usr/lbin /usr/plx /usr/5bin /vol/local/bin /etc /usr/lib /lib /usr/local/lib /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/bin /bsd4.3/usr/ucb /bsd43/usr/bin /usr/ccs/lib /opt/SUNWste/bin /usr/opt/SUNWste/bin"
+d_newshome="/usr/NeWS"
+errnolist=errnolist
+h_fcntl=false
+h_sys_file=false
+serve_shm=""
+serve_msg="$undef"
+serve_inet_udp=""
+serve_inet_tcp=""
+serve_unix_udp=""
+serve_unix_tcp=""
+d_ndir=ndir
+voidwant=1
+voidwant=7
+libswanted="c_s net_s net socket nsl_s nsl nm ndir dir ndbm dbm PW malloc sun m bsd BSD x posix ucb"
+inclwanted='/usr/include /usr/netinclude /usr/include/sun /usr/include/bsd /usr/include/lan /usr/ucbinclude'
+
+: Now test for existence of everything in MANIFEST
+
+echo "First let's make sure your kit is complete.  Checking..."
+awk '$1 !~ /PACKINGLIST/ {print $1}' ../MANIFEST | split -100
+rm -f missing
+for filelist in x??; do
+    (cd ..; ls `cat UU/$filelist` >/dev/null 2>>UU/missing)
+done
+if test -s missing; then
+    echo "WARNING: the following files are missing:"
+    cat missing
+    echo "INTERRUPT NOW, OR HIT RETURN TO PROCEED AT YOUR OWN RISK"
+    read junk
+else
+    echo "Looks good..."
+fi
+
+: some greps do not return status, grrr.
+echo "grimblepritz" >contains.txt
+if grep blurfldyick contains.txt >/dev/null 2>&1 ; then
+    contains=contains
+elif grep grimblepritz contains.txt >/dev/null 2>&1 ; then
+    contains=grep
+else
+    contains=contains
+fi
+: the following should work in any shell
+case "$contains" in
+contains*)
+    echo " "
+    echo "AGH!  Grep doesn't return a status.  Attempting remedial action."
+    cat >contains <<'EOSS'
+grep "$1" "$2" >.greptmp && cat .greptmp && test -s .greptmp
+EOSS
+chmod +x contains
+esac
+
+: see if sh knows # comments
+echo " "
+echo "Checking your sh to see if it knows about # comments..."
+if sh -c '#' >/dev/null 2>&1 ; then
+    echo "Your sh handles # comments correctly."
+    shsharp=true
+    spitshell=cat
+    echo " "
+    echo "Okay, let's see if #! works on this system..."
+    if test -f /bsd43/bin/echo; then
+       echo "#!/bsd43/bin/echo hi" > spit.sh
+    else
+       echo "#!/bin/echo hi" > spit.sh
+    fi
+    $eunicefix spit.sh
+    chmod +x spit.sh
+    ./spit.sh > today
+    if $contains hi today >/dev/null 2>&1; then
+       echo "It does."
+       sharpbang='#!'
+    else
+       echo "#! /bin/echo hi" > spit.sh
+       $eunicefix spit.sh
+       chmod +x spit.sh
+       ./spit.sh > today
+       if test -s today; then
+           echo "It does."
+           sharpbang='#! '
+       else
+           echo "It doesn't."
+           sharpbang=': use '
+       fi
+    fi
+else
+    echo "Your sh doesn't grok # comments--I will strip them later on."
+    shsharp=false
+    echo "exec grep -v '^#'" >spitshell
+    chmod +x spitshell
+    $eunicefix spitshell
+    spitshell=`pwd`/spitshell
+    echo "I presume that if # doesn't work, #! won't work either!"
+    sharpbang=': use '
+fi
+
+: figure out how to guarantee sh startup
+echo " "
+echo "Checking out how to guarantee sh startup..."
+startsh=$sharpbang'/bin/sh'
+echo "Let's see if '$startsh' works..."
+cat >start.sh <<EOSS
+$startsh
+set abc
+test "$?abc" != 1
+EOSS
+
+chmod +x start.sh
+$eunicefix start.sh
+if ./start.sh; then
+    echo "Yup, it does."
+else
+    echo "Nope.  You may have to fix up the shell scripts to make sure sh runs them."
+fi
+
+: first determine how to suppress newline on echo command
+echo "Checking echo to see how to suppress newlines..."
+(echo "hi there\c" ; echo " ") >echotmp
+if $contains c echotmp >/dev/null 2>&1 ; then
+    echo "...using -n."
+    n='-n'
+    c=''
+else
+    cat <<'EOM'
+...using \c
+EOM
+    n=''
+    c='\c'
+fi
+echo $n "Type carriage return to continue.  Your cursor should be here-->$c"
+read ans
+
+: now set up to do reads with possible shell escape and default assignment
+cat <<EOSC >myread
+case "\$fastread" in
+yes) ans=''; echo " " ;;
+*) ans='!';;
+esac
+while expr "X\$ans" : "X!" >/dev/null; do
+    read ans
+    case "\$ans" in
+    !)
+       sh
+       echo " "
+       echo $n "\$rp $c"
+       ;;
+    !*)
+       set \`expr "X\$ans" : "X!\(.*\)\$"\`
+       sh -c "\$*"
+       echo " "
+       echo $n "\$rp $c"
+       ;;
+    esac
+done
+rp='Your answer:'
+case "\$ans" in
+'') ans="\$dflt";;
+esac
+EOSC
+
+: general instructions
+cat <<EOH
+This installation shell script will examine your system and ask you questions
+to determine how the $package package should be installed.  If you get stuck
+on a question, you may use a ! shell escape to start a subshell or execute
+a command.  Many of the questions will have default answers in square
+brackets--typing carriage return will give you the default.
+
+On some of the questions which ask for file or directory names you are
+allowed to use the ~name construct to specify the login directory belonging
+to "name", even if you don't have a shell which knows about that.  Questions
+where this is allowed will be marked "(~name ok)".
+
+EOH
+rp="[Type carriage return to continue]"
+echo $n "$rp $c"
+. myread
+cat <<EOH
+
+Much effort has been expended to ensure that this shell script will run on any
+Unix system.  If despite that it blows up on you, your best bet is to edit
+Configure and run it again. Also, let me (lwall@netlabs.com)
+know how I blew it.  If you can't run Configure for some reason, you'll have
+to generate a config.sh file by hand.
+
+This installation script affects things in two ways: 1) it may do direct
+variable substitutions on some of the files included in this kit, and
+2) it builds a config.h file for inclusion in C programs.  You may edit
+any of these files as the need arises after running this script.
+
+If you make a mistake on a question, there is no easy way to back up to it
+currently.  The easiest thing to do is to edit config.sh and rerun all the
+SH files.  Configure will offer to let you do this before it runs the SH files.
+
+EOH
+rp="[Type carriage return to continue]"
+echo $n "$rp $c"
+. myread
+
+: find out where common programs are
+echo " "
+echo "Locating common programs..."
+cat <<EOSC >loc
+$startsh
+case \$# in
+0) exit 1;;
+esac
+thing=\$1
+shift
+dflt=\$1
+shift
+for dir in \$*; do
+    case "\$thing" in
+    .)
+       if test -d \$dir/\$thing; then
+           echo \$dir
+           exit 0
+       fi
+       ;;
+    *)
+       if test -f \$dir/\$thing; then
+           echo \$dir/\$thing
+           exit 0
+       elif test -f \$dir/\$thing.exe; then
+           : on Eunice apparently
+           echo \$dir/\$thing
+           exit 0
+       fi
+       ;;
+    esac
+done
+echo \$dflt
+exit 1
+EOSC
+chmod +x loc
+$eunicefix loc
+loclist="
+cat
+cp
+echo
+expr
+grep
+mkdir
+mv
+rm
+sed
+sort
+tr
+uniq
+"
+trylist="
+Mcc
+bison
+cpp
+csh
+egrep
+line
+nroff
+perl
+test
+uname
+yacc
+"
+pth=`echo :$boPATH:$PATH:$eoPATH: | sed -e 's/:/ /g'`
+for file in $loclist; do
+    xxx=`./loc $file $file $pth`
+    eval $file=$xxx
+    eval _$file=$xxx
+    case "$xxx" in
+    /*)
+       echo $file is in $xxx.
+       ;;
+    *)
+       echo "I don't know where $file is.  I hope it's in everyone's PATH."
+       ;;
+    esac
+done
+echo " "
+echo "Don't worry if any of the following aren't found..."
+ans=offhand
+for file in $trylist; do
+    xxx=`./loc $file $file $pth`
+    eval $file=$xxx
+    eval _$file=$xxx
+    case "$xxx" in
+    /*)
+       echo $file is in $xxx.
+       ;;
+    *)
+       echo "I don't see $file out there, $ans."
+       ans=either
+       ;;
+    esac
+done
+case "$egrep" in
+egrep)
+    echo "Substituting grep for egrep."
+    egrep=$grep
+    ;;
+esac
+case "$test" in
+test)
+    echo "Hopefully test is built into your sh."
+    ;;
+/bin/test)
+    if sh -c "PATH= test true" >/dev/null 2>&1; then
+       echo "Using the test built into your sh."
+       test=test
+    fi
+    ;;
+*)
+    test=test
+    ;;
+esac
+case "$echo" in
+echo)
+    echo "Hopefully echo is built into your sh."
+    ;;
+/bin/echo)
+    echo " "
+    echo "Checking compatibility between /bin/echo and builtin echo (if any)..."
+    $echo $n "hi there$c" >Loc1.txt
+    echo $n "hi there$c" >Loc2.txt
+    if cmp Loc1.txt Loc2.txt >/dev/null 2>&1; then
+       echo "They are compatible.  In fact, they may be identical."
+    else
+       case "$n" in
+       '-n') n='' c='\c' ans='\c' ;;
+       *) n='-n' c='' ans='-n' ;;
+       esac
+       cat <<FOO
+They are not compatible!  You are probably running ksh on a non-USG system.
+I'll have to use /bin/echo instead of the builtin, since Bourne shell doesn't
+have echo built in and we may have to run some Bourne shell scripts.  That
+means I'll have to use $ans to suppress newlines now.  Life is ridiculous.
+
+FOO
+       rp="Your cursor should be here-->"
+       $echo $n "$rp$c"
+       . myread
+    fi
+    ;;
+*)
+    : cross your fingers
+    echo=echo
+    ;;
+esac
+
+: set up shell script to do ~ expansion
+cat >filexp <<EOSS
+$startsh
+: expand filename
+case "\$1" in
+ ~/*|~)
+    echo \$1 | $sed "s|~|\${HOME-\$LOGDIR}|"
+    ;;
+ ~*)
+    if $test -f /bin/csh; then
+       /bin/csh -f -c "glob \$1"
+       echo ""
+    else
+       name=\`$expr x\$1 : '..\([^/]*\)'\`
+       dir=\`$sed -n -e "/^\${name}:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\).*"'\$'"/\1/" -e p -e q -e '}' </etc/passwd\`
+       if $test ! -d "\$dir"; then
+           me=\`basename \$0\`
+           echo "\$me: can't locate home directory for: \$name" >&2
+           exit 1
+       fi
+       case "\$1" in
+       */*)
+           echo \$dir/\`$expr x\$1 : '..[^/]*/\(.*\)'\`
+           ;;
+       *)
+           echo \$dir
+           ;;
+       esac
+    fi
+    ;;
+*)
+    echo \$1
+    ;;
+esac
+EOSS
+chmod +x filexp
+$eunicefix filexp
+
+: get old answers, if there is a config file out there
+hint=default
+if test -f ../config.sh; then
+    echo " "
+    eval "`grep lastuname ../config.sh`"
+    tmp=`(uname -a) 2>&1`
+    if test "X$tmp" = "X$lastuname"; then
+       dflt=y
+    else
+       dflt=n
+    fi
+    lastuname="$tmp"
+    rp="I see a config.sh file.  Did Configure make it on THIS system? [$dflt]"
+    echo $n "$rp $c"
+    . myread
+    case "$ans" in
+    n*) echo "OK, I'll ignore it."; mv ../config.sh ../config.sh.old;;
+    *)  echo "Fetching default answers from your old config.sh file..."
+       tmp="$n"
+       ans="$c"
+        . ../config.sh
+       n="$tmp"
+       c="$ans"
+       hint=previous
+       ;;
+    esac
+else
+    lastuname=`(uname -a) 2>&1`
+fi
+if test -d ../hints && test ! -f ../config.sh; then
+    echo ' '
+    echo "First time through, eh?  I have some defaults handy for the following systems:"
+    (cd ../hints; ls -C *.sh | sed 's/\.sh/   /g')
+    dflt=''
+    : Half the following guesses are probably wrong...
+    test -f /irix && dflt="$dflt sgi"
+    test -f /xenix && dflt="$dflt sco_xenix"
+    test -f /dynix && dflt="$dflt dynix"
+    test -f /dnix && dflt="$dflt dnix"
+    test -f /bin/mips && /bin/mips && dflt="$dflt mips"
+    test -d /NextApps && test -f /usr/adm/software_version && dflt="$dflt next"
+    if test -f /bin/uname || test -f /usr/bin/uname; then
+       set `uname -a | tr '[A-Z]' '[a-z]'`
+
+       test -f "../hints/$5.sh" && dflt="$dflt $5"
+
+       case "$5" in
+       3b2) dflt="$dflt 3b2";;
+       fps*) dflt="$dflt fps";;
+       mips*) dflt="$dflt mips";;
+       [23]100) dflt="$dflt mips";;
+       next*) dflt="$dflt next" ;;
+       6000) dflt="$dflt mc6000";;
+       esac
+
+       test -f "../hints/$1.sh" && dflt="$dflt $1"
+
+       case "$1" in
+       aix) dflt="$dflt aix_rs" ;;
+       sunos) case "$3" in
+           3.4) dflt="$dflt sunos_3_4" ;;
+           3.5) dflt="$dflt sunos_3_5" ;;
+           4.0.1) dflt="$dflt sunos_4_0_1" ;;
+           4.0.2) dflt="$dflt sunos_4_0_2" ;;
+           esac
+           ;;
+       hp*ux) dflt="$dflt hpux"
+           extra_hints="hp"`echo $5 | sed -e s#/#_#g -e s/..$/00/`
+           if test -f ../hints/$extra_hints.sh; then
+               dflt="$dflt $extra_hints"
+           fi;;
+       irix) dflt="$dflt sgi" ;;
+       ultrix) case "$3" in
+           1*) dflt="$dflt ultrix_1" ;;
+           3*) dflt="$dflt ultrix_3" ;;
+           4*) dflt="$dflt ultrix_4" ;;
+           esac
+           ;;
+       uts) dflt="$dflt uts" ;;
+       $2) if test -f /etc/systemid; then
+               set `echo $3 | sed 's/\./ /'` $4
+               if test -f ../hints/sco_$1_$2_$3.sh; then
+                   dflt="$dflt sco_$1_$2_$3"
+               elif test -f ../hints/sco_$1_$2.sh; then
+                   dflt="$dflt sco_$1_$2"
+               elif test -f ../hints/sco_$1.sh; then
+                   dflt="$dflt sco_$1"
+               fi
+           fi
+           ;;
+       esac
+    fi
+    set X `echo $dflt | tr ' ' '\012' | sort | uniq`
+    shift
+    dflt=${1+"$@"}
+    case "$dflt" in
+    '') dflt=none;;
+    esac
+    echo '(You may give one or more space-separated answers, or "none" if appropriate.'
+    echo 'If your OS version has no hints, do not give a wrong version--say "none".)'
+    rp="Which of these apply, if any? [$dflt]"
+    echo $n "$rp $c"
+    . myread
+    for file in $ans; do
+       if test -f ../hints/$file.sh; then
+           . ../hints/$file.sh
+           cat ../hints/$file.sh >>../config.sh
+           hint=recommended
+       fi
+    done
+fi
+
+cat >whoa <<'EOF'
+eval "was=\$$2"
+dflt=y
+echo ' '
+echo "*** WHOA THERE!!! ***"
+echo "    The $hint value for \$$2 on this machine was \"$was\"!"
+rp="    Keep the $hint value? [y]"
+echo $n "$rp $c"
+. myread
+case "$ans" in
+y) td=$was; tu=$was;;
+esac
+EOF
+
+setvar='td=$define; tu=$undef; set X $1; eval "was=\$$2";
+case "$val$was" in
+defineundef) . whoa; eval "$2=\$td";;
+undefdefine) . whoa; eval "$2=\$tu";;
+*) eval "$2=$val";;
+esac'
+
+: determine where manual pages go
+$cat <<EOM
+  
+$package has manual pages available in source form.
+EOM
+case "$nroff" in
+'nroff')
+    echo "However, you don't have nroff, so they're probably useless to you."
+    case "$mansrc" in
+    '')
+       mansrc="none"
+       ;;
+    esac
+esac
+echo "If you don't want the manual sources installed, answer 'none'."
+case "$mansrc" in
+'')
+    dflt=`./loc . none /usr/man/local/man1 /usr/man/man.L /usr/man/manl /usr/man/mann /usr/man/u_man/man1 /usr/man/man1 /usr/local/man/man1`
+    ;;
+*)  dflt="$mansrc"
+    ;;
+esac
+cont=true
+while $test "$cont" ; do
+    echo " "
+    rp="Where do the manual pages (source) go (~name ok)? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    case "$ans" in
+    'none')
+       mansrc=''
+       cont=''
+       ;;
+    *)
+        mansrc=`./filexp "$ans"`
+        if $test -d "$mansrc"; then
+           cont=''
+        else
+           if $test "$fastread" = yes; then
+               dflt=y
+           else
+               dflt=n
+           fi
+           rp="Directory $mansrc doesn't exist.  Use that name anyway? [$dflt]"
+           $echo $n "$rp $c"
+           . myread
+           dflt=''
+           case "$ans" in
+           y*) cont='';;
+           esac
+        fi
+       ;;
+    esac
+done
+case "$mansrc" in
+'')
+    manext=''
+    ;;
+*l)
+    manext=l
+    ;;
+*n)
+    manext=n
+    ;;
+*o)
+    manext=l
+    ;;
+*p)
+    manext=n
+    ;;
+*C)
+    manext=C
+    ;;
+*L)
+    manext=L
+    ;;
+*)
+    manext=1
+    ;;
+esac
+
+: Sigh.  Well, at least the box is fast...
+echo " "
+$echo $n "Hmm...  $c"
+case "$usrinclude" in
+'') dflt='/usr/include';;
+*) dflt=$usrinclude;;
+esac
+inclPath=''
+if $test -f /bin/mips && /bin/mips; then
+    echo "Looks like a MIPS system..."
+    $cat >usrinclude.c <<'EOCP'
+#ifdef SYSTYPE_BSD43
+/bsd43
+#endif
+EOCP
+    if cc -E usrinclude.c > usrinclude.out && $contains / usrinclude.out >/dev/null 2>&1 ; then
+       echo "and you're compiling with the BSD43 compiler and libraries."
+       dflt='/bsd43/usr/include'
+       inclPath='/bsd43'
+    else
+       echo "and you're compiling with the SysV compiler and libraries."
+    fi
+else
+    echo "Doesn't look like a MIPS system."
+    echo "exit 1" >mips
+    chmod +x mips
+    $eunicefix mips
+fi
+
+cont=true
+while $test "$cont" ; do
+    echo " "
+    rp="Where are the include files you want to use? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    usrinclude="$ans"
+    if $test -d $ans; then
+       cont=''
+    else
+       if $test "$fastread" = yes; then
+           dflt=y
+       else
+           dflt=n
+       fi
+       rp="Directory $ans doesn't exist.  Use that name anyway? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       dflt=''
+       case "$ans" in
+       y*) cont='';;
+       esac
+    fi
+done
+
+: make some quick guesses about what we are up against
+echo " "
+echo exit 1 >bsd
+echo exit 1 >usg
+echo exit 1 >v7
+echo exit 1 >osf1
+echo exit 1 >eunice
+echo exit 1 >xenix
+echo exit 1 >venix
+cat $usrinclude/signal.h $usrinclude/sys/signal.h >guess.txt 2>/dev/null
+if test "$usrinclude" = "/bsd43/usr/include" ; then
+    echo "Looks kind of like a SysV MIPS running BSD, but we'll see..."
+    echo exit 0 >bsd
+elif test -f /osf_boot || $contains "OSF/1" /usr/include/ctype.h; then
+    echo "Looks like an OSF/1 system, but we'll see..."
+    echo exit 0 >osf1
+elif test `echo abc | tr a-z A-Z` = Abc ; then
+    echo "Looks kind of like a USG system, but we'll see..."
+    echo exit 0 >usg
+elif $contains SIGTSTP guess.txt >/dev/null 2>&1 ; then
+    echo "Looks kind of like a BSD system, but we'll see..."
+    echo exit 0 >bsd
+else
+    echo "Looks kind of like a version 7 system, but we'll see..."
+    echo exit 0 >v7
+fi
+case "$eunicefix" in
+*unixtovms*)
+    cat <<'EOI'
+There is, however, a strange, musty smell in the air that reminds me of
+something...hmm...yes...I've got it...there's a VMS nearby, or I'm a Blit.
+EOI
+    echo "exit 0" >eunice
+    d_eunice="$define"
+    ;;
+*)
+    echo " "
+    echo "Congratulations.  You aren't running Eunice."
+    d_eunice="$undef"
+    ;;
+esac
+if test -f /xenix; then
+    echo "Actually, this looks more like a XENIX system..."
+    echo "exit 0" >xenix
+else
+    echo " "
+    echo "It's not Xenix..."
+fi
+chmod +x xenix
+$eunicefix xenix
+if test -f /venix; then
+    echo "Actually, this looks more like a VENIX system..."
+    echo "exit 0" >venix
+else
+    echo " "
+    if xenix; then
+       : null
+    else
+       echo "Nor is it Venix..."
+    fi
+fi
+chmod +x bsd usg v7 osf1 eunice venix
+$eunicefix bsd usg v7 eunice venix
+
+: see what memory models we can support
+case "$models" in
+'')
+    : We may not use Cppsym or we get a circular dependency through cc.
+    : But this should work regardless of which cc we eventually use.
+    cat >pdp11.c <<'EOP'
+main() {
+#ifdef pdp11
+    exit(0);
+#else
+    exit(1);
+#endif
+}
+EOP
+    cc -o pdp11 pdp11.c >/dev/null 2>&1
+    if pdp11 2>/dev/null; then
+       dflt='unsplit split'
+    else
+       ans=`./loc . X /lib/small /lib/large /usr/lib/small /usr/lib/large /lib/medium /usr/lib/medium /lib/huge`
+       case "$ans" in
+       X) dflt='none';;
+       *)  if $test -d /lib/small || $test -d /usr/lib/small; then
+               dflt='small'
+           else
+               dflt=''
+           fi
+           if $test -d /lib/medium || $test -d /usr/lib/medium; then
+               dflt="$dflt medium"
+           fi
+           if $test -d /lib/large || $test -d /usr/lib/large; then
+               dflt="$dflt large"
+           fi
+           if $test -d /lib/huge || $test -d /usr/lib/huge; then
+               dflt="$dflt huge"
+           fi
+       esac
+    fi
+    ;;
+*)  dflt="$models" ;;
+esac
+$cat <<EOM
+Some systems have different model sizes.  On most systems they are called
+small, medium, large, and huge.  On the PDP11 they are called unsplit and
+split.  If your system doesn't support different memory models, say "none".
+If you wish to force everything to one memory model, say "none" here and
+put the appropriate flags later when it asks you for other cc and ld flags.
+Venix systems may wish to put "none" and let the compiler figure things out.
+(In the following question multiple model names should be space separated.)
+
+EOM
+rp="Which models are supported? [$dflt]"
+$echo $n "$rp $c"
+. myread
+models="$ans"
+
+case "$models" in
+none)
+    small=''
+    medium=''
+    large=''
+    huge=''
+    unsplit=''
+    split=''
+    ;;
+*split)
+    case "$split" in
+    '') 
+       if $contains '\-i' $mansrc/man1/ld.1 >/dev/null 2>&1 || \
+          $contains '\-i' $mansrc/man1/cc.1 >/dev/null 2>&1; then
+           dflt='-i'
+       else
+           dflt='none'
+       fi
+       ;;
+    *) dflt="$split";;
+    esac
+    rp="What flag indicates separate I and D space? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    case "$ans" in
+    none) ans='';;
+    esac
+    split="$ans"
+    unsplit=''
+    ;;
+*large*|*small*|*medium*|*huge*)
+    case "$models" in
+    *large*)
+       case "$large" in
+       '') dflt='-Ml';;
+       *) dflt="$large";;
+       esac
+       rp="What flag indicates large model? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       case "$ans" in
+       none) ans='';
+       esac
+       large="$ans"
+       ;;
+    *) large='';;
+    esac
+    case "$models" in
+    *huge*)
+       case "$huge" in
+       '') dflt='-Mh';;
+       *) dflt="$huge";;
+       esac
+       rp="What flag indicates huge model? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       case "$ans" in
+       none) ans='';
+       esac
+       huge="$ans"
+       ;;
+    *) huge="$large";;
+    esac
+    case "$models" in
+    *medium*)
+       case "$medium" in
+       '') dflt='-Mm';;
+       *) dflt="$medium";;
+       esac
+       rp="What flag indicates medium model? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       case "$ans" in
+       none) ans='';
+       esac
+       medium="$ans"
+       ;;
+    *) medium="$large";;
+    esac
+    case "$models" in
+    *small*)
+       case "$small" in
+       '') dflt='none';;
+       *) dflt="$small";;
+       esac
+       rp="What flag indicates small model? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       case "$ans" in
+       none) ans='';
+       esac
+       small="$ans"
+       ;;
+    *) small='';;
+    esac
+    ;;
+*)
+    echo "Unrecognized memory models--you may have to edit Makefile.SH"
+    ;;
+esac
+
+: see if we need a special compiler
+echo " "
+if usg; then
+    case "$cc" in
+    '')
+       case "$Mcc" in
+       /*) dflt='Mcc'
+           ;;
+       *)
+           case "$large" in
+           -M*)
+               dflt='cc'
+               ;;
+           *)
+               if $contains '\-M' $mansrc/cc.1 >/dev/null 2>&1 ; then
+                   dflt='cc -M'
+               else
+                   dflt='cc'
+               fi
+               ;;
+           esac
+           ;;
+       esac
+       ;;
+    *)  dflt="$cc";;
+    esac
+    $cat <<'EOM'
+  
+On some systems the default C compiler will not resolve multiple global
+references that happen to have the same name.  On some such systems the
+"Mcc" command may be used to force these to be resolved.  On other systems
+a "cc -M" command is required.  (Note that the -M flag on other systems
+indicates a memory model to use!)  If you have the Gnu C compiler, you
+might wish to use that instead.  What command will force resolution on
+EOM
+    $echo $n "this system? [$dflt] $c"
+    rp="Command to resolve multiple refs? [$dflt]"
+    . myread
+    cc="$ans"
+else
+    case "$cc" in
+    '') dflt=cc;;
+    *) dflt="$cc";;
+    esac
+    rp="Use which C compiler? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    cc="$ans"
+fi
+case "$cc" in
+*gcc*) cpp=`./loc gcc-cpp $cpp $pth`
+    case "$nativegcc" in
+    '') case "$ccflags" in
+       *-fpcc-struct-return*) dflt=n;;
+       *) dflt=y;;
+       esac
+       ;;
+    undef) dflt=n;;
+    *) dflt=y;;
+    esac
+    echo " "
+    rp="Are your system (especially dbm) libraries compiled with gcc? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    case "$ans" in
+    n*) nativegcc="$undef"; gccflags='-fpcc-struct-return';;
+    *) nativegcc="$define"; gccflags='';;
+    esac
+    case "$gccflags" in
+    *-ansi*) ;;
+    *-traditional*) ;;
+    *) gccflags="$gccflags -traditional -Dvolatile=__volatile__" ;;
+    esac
+    ;;
+esac
+
+: determine optimize, if desired, or use for debug flag also
+case "$optimize" in
+' ') dflt="none"
+     ;;
+'') dflt="-O";
+    ;;
+*)  dflt="$optimize"
+    ;;
+esac
+cat <<EOH
+
+Some C compilers have problems with their optimizers, by default, $package
+compiles with the -O flag to use the optimizer.  Alternately, you might
+want to use the symbolic debugger, which uses the -g flag (on traditional
+Unix systems).  Either flag can be specified here.  To use neither flag,
+specify the word "none".
+  
+EOH
+rp="What optimizer/debugger flag should be used? [$dflt]"
+$echo $n "$rp $c"
+. myread
+optimize="$ans"
+case "$optimize" in
+'none') optimize=" "
+     ;;
+esac
+
+case "$ccflags" in
+'') case "$cc" in
+    *gcc*) dflt="$gccflags";;
+    *) dflt='';;
+    esac
+    ;;
+*-fpcc-struct-return*) dflt="$ccflags";;
+*) case "$cc" in
+    *gcc*) dflt="$ccflags $gccflags";;
+    *) dflt="$ccflags";;
+    esac
+    ;;
+esac
+for thisincl in $inclwanted; do
+    if test -d $thisincl; then
+       if test "x$thisincl" != "x$usrinclude"; then
+           case "$dflt" in
+           *$thisincl*);;
+           *) dflt="$dflt -I$thisincl";;
+           esac
+       fi
+    fi
+done
+case "$optimize" in
+-g*)
+    case "$dflt" in
+    *DEBUGGING*);;
+    *) dflt="$dflt -DDEBUGGING";;
+    esac
+    ;;
+esac
+if $contains 'LANGUAGE_C' $usrinclude/signal.h >/dev/null 2>&1; then
+    case "$dflt" in
+    *LANGUAGE_C*);;
+    *) dflt="$dflt -DLANGUAGE_C";;
+    *) if osf1; then
+          dflt="$dflt -D__LANGUAGE_C__"
+       else
+          dflt="$dflt -DLANGUAGE_C"
+       fi
+       ;;
+    esac
+fi
+if $contains '_NO_PROTO' $usrinclude/signal.h >/dev/null 2>&1; then
+    case "$dflt" in
+    *_NO_PROTO*);;
+    *) osf1 || dflt="$dflt -D_NO_PROTO";;
+    esac
+fi
+case "$dflt" in
+'') dflt=none;;
+esac
+cat <<EOH
+
+Your C compiler may want other flags.  For this question you should
+include -I/whatever and -DWHATEVER flags and any other flags used by
+the C compiler, but you should NOT include libraries or ld flags like
+-lwhatever.  For instance, this would be a good place to specify
+-DDEBUGGING.  To use no flags, specify the word "none".
+  
+EOH
+rp="Any additional cc flags? [$dflt]"
+$echo $n "$rp $c"
+. myread
+case "$ans" in
+none) ans='';
+esac
+ccflags="$ans"
+
+: the following weeds options from ccflags that are of no interest to cpp
+cppflags="$ccflags"
+case "$cc" in
+*gcc*) cppflags="$cppflags -D__GNUC__";;
+esac
+case "$cppflags" in
+'');;
+*)  set X $cppflags
+    cppflags=''
+    for flag do
+       case $flag in
+       -D*|-U*|-I*|-traditional|-ansi|-nostdinc) cppflags="$cppflags $flag";;
+       esac
+    done
+    case "$cppflags" in
+    *-*)  echo "(C preprocessor flags: $cppflags)";;
+    esac
+    ;;
+esac
+
+case "$ldflags" in
+'') if venix; then
+       dflt='-i -z'
+    else
+       dflt='none'
+    fi
+    ;;
+*) dflt="$ldflags";;
+esac
+echo " "
+rp="Any additional ld flags (NOT including libraries)? [$dflt]"
+$echo $n "$rp $c"
+. myread
+case "$ans" in
+none) ans='';
+esac
+ldflags="$ans"
+
+echo " "
+echo "Checking for optional libraries..."
+case "$libs" in
+'') dflt=' ';;
+*) dflt="$libs ";;
+esac
+case "$libswanted" in
+'') libswanted='c_s';;
+esac
+for thislib in $libswanted; do
+    case "$thislib" in
+    dbm) thatlib=ndbm;;
+    *_s) thatlib=NONE;;
+    *) thatlib="${thislib}_s";;
+    *) thatlib=NONE;;
+    esac
+    xxx=`./loc lib$thislib.a X /usr/ccs/lib /usr/lib /usr/ucblib /usr/local/lib /lib`
+    if test -f $xxx; then
+       echo "Found -l$thislib."
+       case "$dflt" in
+       *-l$thislib\ *|*-l$thatlib\ *);;
+       *) dflt="$dflt -l$thislib ";;
+       esac
+    else
+       xxx=`./loc lib$thislib.a X $libpth`
+       if test -f $xxx; then
+           echo "Found $xxx."
+           case "$dflt" in
+           *"$xxx "*);;
+           *) dflt="$dflt $xxx ";;
+           esac
+       else
+           xxx=`./loc Slib$thislib.a X $xlibpth`
+           if test -f $xxx; then
+               echo "Found -l$thislib."
+               case "$dflt" in
+               *-l$thislib\ *|*-l$thatlib\ *);;
+               *) dflt="$dflt -l$thislib ";;
+               esac
+           else
+               xxx=`./loc lib$thislib.so X /usr/ccs/lib /usr/lib /usr/ucblib /usr/local/lib /lib`
+               if test -f $xxx; then
+                   echo "Found -l$thislib as a shared object only."
+                   case "$dflt" in
+                   *-l$thislib\ *|*-l$thatlib\ *);;
+                   *) dflt="$dflt -l$thislib ";;
+                   esac
+               else
+                   echo "No -l$thislib."
+               fi
+           fi
+       fi
+    fi
+done
+set X $dflt
+shift
+dflt="$*"
+case "$dflt" in
+'') dflt='none';;
+esac
+
+$cat <<EOM
+Some versions of Unix support shared libraries, which make
+executables smaller but make load time slightly longer.
+
+On some systems, mostly newer Unix System V's, the shared library
+is included by putting the option "-lc_s" as the last thing on the
+cc command line when linking.  Other systems use shared libraries
+by default.  There may be other libraries needed to compile $package
+on your machine as well.  If your system needs the "-lc_s" option,
+include it here.  Include any other special libraries here as well.
+Say "none" for none.
+EOM
+
+echo " "
+rp="Any additional libraries? [$dflt]"
+$echo $n "$rp $c"
+. myread
+case "$ans" in
+none) ans='';
+esac
+libs="$ans"
+
+: check for size of random number generator
+echo " "
+case "$alignbytes" in
+'')
+    echo "Checking alignment constraints..."
+    $cat >try.c <<'EOCP'
+struct foobar {
+    char foo;
+    double bar;
+} try;
+main()
+{
+    printf("%d\n", (char*)&try.bar - (char*)&try.foo);
+}
+EOCP
+    if $cc $ccflags try.c -o try >/dev/null 2>&1 ; then
+       dflt=`./try`
+    else
+       dflt='?'
+       echo "(I can't seem to compile the test program...)"
+    fi
+    ;;
+*)
+    dflt="$alignbytes"
+    ;;
+esac
+rp="Doubles must be aligned on a how-many-byte boundary? [$dflt]"
+$echo $n "$rp $c"
+. myread
+alignbytes="$ans"
+$rm -f try.c try
+
+: determine where public executables go
+cat <<EOF
+The following questions distinguish the directory in which executables
+reside from the directory in which they are installed (and from which they
+are presumably copied to the former directory by occult means).  This
+distinction is often necessary under afs.  On most other systems, however,
+the two directories are the same.
+EOF
+case "$bin" in
+'')
+    dflt=`./loc . /usr/local/bin /usr/local/bin /usr/lbin /usr/local /usr/bin /bin`
+    ;;
+*)  dflt="$bin"
+    ;;
+esac
+cont=true
+while $test "$cont" ; do
+    rp="In which directory will public executables reside (~name ok)? [$dflt]"
+    $echo "In which directory will public executables reside (~name ok)?"
+    $echo $n "[$dflt] $c"
+    . myread
+    bin="$ans"
+    bin=`./filexp $bin`
+    if test -d $bin; then
+       cont=''
+    else
+       case "$fastread" in
+       yes) dflt=y;;
+       *) dflt=n;;
+       esac
+       rp="Directory $bin doesn't exist.  Use that name anyway? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       dflt=''
+       case "$ans" in
+       y*) cont='';;
+       esac
+    fi
+done
+
+case "$bin" in
+  ?????????????????????????)
+    cat <<EOF
+
+NOTE: you have a fairly long path name there.  Some systems have trouble
+executing a script if the #! line ends up longer than 32 characters.  If
+you have this trouble you may have to reinstall somewhere else, or make
+a symbolic link from someplace with a shorter name.
+
+EOF
+    ;;
+esac
+
+case "$installbin" in
+'')
+    dflt=`echo $bin | sed 's#^/afs/#/afs/.#'`
+    test -d $dflt || dflt="$bin"
+    ;;
+*)  dflt="$installbin"
+    ;;
+esac
+cont=true
+while $test "$cont" ; do
+    rp="In which directory will public executables be installed (~name ok)? [$dflt]"
+    $echo "In which directory will public executables be installed (~name ok)?"
+    $echo $n "[$dflt] $c"
+    . myread
+    installbin="$ans"
+    installbin=`./filexp $installbin`
+    if test -d $installbin; then
+       cont=''
+    else
+       case "$fastread" in
+       yes) dflt=y;;
+       *) dflt=n;;
+       esac
+       rp="Directory $installbin doesn't exist.  Use that name anyway? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       dflt=''
+       case "$ans" in
+       y*) cont='';;
+       esac
+    fi
+done
+
+: check for ordering of bytes in a long
+case "$byteorder" in
+'')
+cat <<'EOM'
+  
+In the following, larger digits indicate more significance.  A big-endian
+machine like a Pyramid or a Motorola 680?0 chip will come out to 4321.  A
+little-endian machine like a Vax or an Intel 80?86 chip would be 1234.  Other
+machines may have weird orders like 3412.  A Cray will report 87654321.  If
+the test program works the default is probably right.
+I'm now running the test program...
+EOM
+    $cat >byteorder.c <<'EOCP'
+#include <stdio.h>
+main()
+{
+    int i;
+    union {
+       unsigned long l;
+       char c[sizeof(long)];
+    } u;
+
+    if (sizeof(long) > 4)
+       u.l = (0x08070605L << 32) | 0x04030201L;
+    else
+       u.l = 0x04030201L;
+    for (i=0; i < sizeof(long); i++)
+       printf("%c",u.c[i]+'0');
+    printf("\n");
+}
+EOCP
+    if $cc byteorder.c -o byteorder >/dev/null 2>&1 ; then
+       dflt=`./byteorder`
+       case "$dflt" in
+       ????|????????) echo "(The test program ran ok.)";;
+       *) echo "(The test program didn't run right for some reason.)";;
+       esac
+    else
+       dflt='4321'
+       echo "(I can't seem to compile the test program.  Guessing big-endian...)"
+    fi
+    ;;
+*)
+    echo " "
+    dflt="$byteorder"
+    ;;
+esac
+rp="What is the order of bytes in a long? [$dflt]"
+$echo $n "$rp $c"
+. myread
+byteorder="$ans"
+
+: check for ability to cast negative floats to unsigned
+echo " "
+echo 'Checking to see if your C compiler can cast weird floats to unsigned'
+$cat >try.c <<'EOCP'
+#include <signal.h>
+
+blech() { exit(3); }
+
+main()
+{
+       double f = -123;
+       unsigned long along;
+       unsigned int aint;
+       unsigned short ashort;
+       int result = 0;
+
+       signal(SIGFPE, blech);
+       along = (unsigned long)f;
+       aint = (unsigned int)f;
+       ashort = (unsigned short)f;
+       if (along != (unsigned long)-123)
+           result |= 1;
+       if (aint != (unsigned int)-123)
+           result |= 1;
+       if (ashort != (unsigned short)-123)
+           result |= 1;
+       f = (double)0x40000000;
+       f = f + f;
+       along = 0;
+       along = (unsigned long)f;
+       if (along != 0x80000000)
+           result |= 2;
+       f -= 1;
+       along = 0;
+       along = (unsigned long)f;
+       if (along != 0x7fffffff)
+           result |= 1;
+       f += 2;
+       along = 0;
+       along = (unsigned long)f;
+       if (along != 0x80000001)
+           result |= 2;
+       exit(result);
+}
+EOCP
+if $cc -o try $ccflags try.c >/dev/null 2>&1; then
+    ./try
+    castflags=$?
+else
+    castflags=3
+fi
+case "$castflags" in
+0)  val="$define"
+    echo "Yup, it does."
+    ;;
+*)  val="$undef"
+    echo "Nope, it doesn't."
+    ;;
+esac
+set d_castneg
+eval $setvar
+$rm -f try.*
+
+: see how we invoke the C preprocessor
+echo " "
+echo "Now, how can we feed standard input to your C preprocessor..."
+cat <<'EOT' >testcpp.c
+#define ABC abc
+#define XYZ xyz
+ABC.XYZ
+EOT
+
+cd ..
+echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >cppstdin
+chmod 755 cppstdin
+wrapper=cppstdin
+
+case "$cppstdin" in
+/*cppstdin) cppstdin=cppstdin;;
+esac
+cp cppstdin UU
+cd UU
+
+if test "X$cppstdin" != "X" && \
+  $cppstdin $cppminus <testcpp.c >testcpp.out 2>&1 && \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "You used to use $cppstdin $cppminus so we'll use that again."
+elif test "$cc" = gcc && \
+  (echo "Using gcc, eh?  We'll try to force gcc -E using a wrapper..."; \
+  $wrapper <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1) ; then
+    echo "Yup, we can."
+    cppstdin="$wrapper"
+    cppminus='';
+elif echo 'Maybe "'"$cc"' -E" will work...'; \
+  $cc -E <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "Yup, it does."
+    cppstdin="$cc -E"
+    cppminus='';
+elif echo 'Nope...maybe "'"$cc"' -E -" will work...'; \
+  $cc -E - <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "Yup, it does."
+    cppstdin="$cc -E"
+    cppminus='-';
+elif echo 'No such luck, maybe "'$cpp'" will work...'; \
+  $cpp <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "It works!"
+    cppstdin="$cpp"
+    cppminus='';
+elif echo 'Nixed again...maybe "'$cpp' -" will work...'; \
+  $cpp - <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "Hooray, it works!  I was beginning to wonder."
+    cppstdin="$cpp"
+    cppminus='-';
+elif echo 'Uh-uh.  Time to get fancy.  Trying a wrapper...'; \
+  $wrapper <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    cppstdin="$wrapper"
+    cppminus=''
+    echo "Eureka!."
+elif echo 'Nope...maybe "'"$cc"' -P" will work...'; \
+  $cc -P <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "Yipee, that works!"
+    cppstdin="$cc -P"
+    cppminus='';
+elif echo 'Nope...maybe "'"$cc"' -P -" will work...'; \
+  $cc -P - <testcpp.c >testcpp.out 2>&1; \
+  $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+    echo "At long last!"
+    cppstdin="$cc -P"
+    cppminus='-';
+else
+    dflt=blurfl
+    $echo $n "No dice.  I can't find a C preprocessor.  Name one: $c"
+    rp='Name a C preprocessor:'
+    . myread
+    cppstdin="$ans"
+    $cppstdin <testcpp.c >testcpp.out 2>&1
+    if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
+       echo "OK, that will do."
+    else
+       echo "Sorry, I can't get that to work.  Go find one and rerun Configure."
+       exit 1
+    fi
+fi
+
+: get list of predefined functions in a handy place
+echo " "
+case "$libc" in
+'') libc=unknown;;
+esac
+case "$nm_opts" in
+'') if test -f /mach_boot; then
+       nm_opts=''
+    elif test -d /usr/ccs/lib; then
+       nm_opts='-p'
+    else
+       nm_opts=''
+    fi
+    ;;
+esac
+: on mips, we DO NOT want /lib, and we want inclPath/usr/lib
+case "$libpth" in
+'') if mips; then
+       libpth='$inclPath/usr/lib /usr/local/lib'
+       nm_opts="-B"
+    else
+       libpth='/usr/ccs/lib /lib /usr/lib /usr/ucblib /usr/local/lib'
+    fi
+    ;;
+esac
+case "$libs" in
+*-lc_s*) libc=`./loc libc_s.a $libc $libpth`
+esac
+libnames='';
+case "$libs" in
+'') ;;
+*)  for thislib in $libs; do
+       case "$thislib" in
+       -l*) thislib=`expr X$thislib : 'X-l\(.*\)'`
+           try=`./loc lib$thislib.a blurfl/dyick $libpth`
+           if test ! -f $try; then
+               try=`./loc lib$thislib blurfl/dyick $libpth`
+               if test ! -f $try; then
+                   try=`./loc $thislib blurfl/dyick $libpth`
+                   if test ! -f $try; then
+                       try=`./loc Slib$thislib.a blurfl/dyick $xlibpth`
+                       if test ! -f $try; then
+                           try=''
+                       fi
+                   fi
+               fi
+           fi
+           libnames="$libnames $try"
+           ;;
+       *) libnames="$libnames $thislib" ;;
+       esac
+    done
+    ;;
+esac
+set /usr/ccs/lib/libc.so
+test -f $1 || set /usr/lib/libc.so
+test -f $1 || set /usr/shlib/libc.so
+test -f $1 || set /usr/lib/libc.so.[0-9]*
+test -f $1 || set /lib/libsys_s.a
+eval set \$$#
+if test -f "$1"; then
+    echo "Your (shared) C library seems to be in $1."
+    libc="$1"
+elif test -f "$libc"; then
+    echo "Your C library seems to be in $libc."
+elif test -f /lib/libc.a; then
+    echo "Your C library seems to be in /lib/libc.a.  You're normal."
+    libc=/lib/libc.a
+else
+    if   ans=`./loc libc.a  blurfl/dyick $libpth`; test -f "$ans"; then
+       :
+    elif ans=`./loc libc    blurfl/dyick $libpth`; test -f "$ans"; then
+           libnames="$libnames "`./loc clib blurfl/dyick $libpth`
+    elif ans=`./loc clib    blurfl/dyick $libpth`; test -f "$ans"; then
+       :
+    elif ans=`./loc Slibc.a blurfl/dyick $xlibpth`; test -f "$ans"; then
+       :
+    elif ans=`./loc Mlibc.a blurfl/dyick $xlibpth`; test -f "$ans"; then
+       :
+    elif ans=`./loc Llibc.a blurfl/dyick $xlibpth`; test -f "$ans"; then
+       :
+    fi
+    if test -f "$ans"; then
+       echo "Your C library seems to be in $ans, of all places."
+       libc=$ans
+    else
+       cat <<EOM
+I can't seem to find your C library.  I've looked in the following places:
+
+       $libpth
+
+None of these seems to contain your C library.  What is the full name
+EOM
+       dflt=None
+       $echo $n "of your C library? $c"
+       rp='C library full name?'
+       . myread
+       libc="$ans"
+    fi
+fi
+echo " "
+if test $libc = "/lib/libc"; then
+    libc="$libc /lib/clib"
+fi
+cat <<END
+If the guess above is wrong (which it might be if you're using a strange
+compiler, or your machine supports multiple models), you can override it here.
+END
+dflt="$libc";
+rp="Your C library is where? [$dflt]"
+$echo $n "$rp $c"
+. myread
+libc="$ans"
+echo " "
+echo $libc $libnames | tr ' ' '\012' | sort | uniq >libnames
+$echo "Extracting names from the following files for later perusal:"
+sed 's/^/      /' libnames
+echo $n "This may take a while...$c"
+set X `cat libnames`
+shift
+nm $nm_opts $* 2>/dev/null >libc.tmp
+$sed -n -e 's/^.* [ATDS]  *[_.]*//p' -e 's/^.* [ATDS] //p' <libc.tmp >libc.list
+if $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $sed -n -e 's/^__*//' -e 's/^\([a-zA-Z_0-9$]*\).*xtern.*/\1/p' \
+       <libc.tmp >libc.list; \
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $sed -n -e '/|UNDEF/d' -e '/FUNC..GL/s/^.*|__*//p' <libc.tmp >libc.list; \
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $sed -n -e 's/^.* D __*//p' -e 's/^.* D //p' <libc.tmp >libc.list; \
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $sed -n -e 's/^_//' -e 's/^\([a-zA-Z_0-9]*\).*xtern.*text.*/\1/p' \
+               <libc.tmp >libc.list; \
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $grep '|' <libc.tmp | $sed -n -e '/|COMMON/d' -e '/|DATA/d' -e '/ file/d' \
+                                   -e 's/^\([^     ]*\).*/\1/p' >libc.list
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $sed -n -e 's/^.*|FUNC |GLOB .*|//p' -e 's/^.*|FUNC |WEAK .*|//p' \
+          <libc.tmp >libc.list; \
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+    echo done
+elif $sed -n -e 's/^[         ]*[0-9][0-9a-f]*[       ]*Def. Text[    ]*//p' \
+          < libc.tmp | $sed -e 's/\[.*\]//' > libc.list; \
+  $contains '^printf$' libc.list >/dev/null 2>&1; then
+      echo done
+else
+    nm -p $* 2>/dev/null >libc.tmp
+    $sed -n -e 's/^.* [AT]  *_[_.]*//p' -e 's/^.* [AT] //p' <libc.tmp >libc.list
+    if $contains '^printf$' libc.list >/dev/null 2>&1; then
+       nm_opts='-p'
+       echo "done"
+    else
+       echo " "
+       echo "nm didn't seem to work right."
+       echo "Trying ar instead..."
+       if ar t $libc > libc.tmp; then
+           for thisname in $libnames; do
+               ar t $thisname >>libc.tmp
+           done
+           $sed -e 's/\.o$//' < libc.tmp > libc.list
+           echo "Ok."
+       else
+           echo "ar didn't seem to work right."
+           echo "Maybe this is a Cray...trying bld instead..."
+           if bld t $libc | $sed -e 's/.*\///' -e 's/\.o:.*$//' > libc.list; then
+               for thisname in $libnames; do
+                   bld t $libnames | \
+                       $sed -e 's/.*\///' -e 's/\.o:.*$//' >>libc.list
+                   ar t $thisname >>libc.tmp
+               done
+               echo "Ok."
+           else
+               echo "That didn't work either.  Giving up."
+               exit 1
+           fi
+       fi
+    fi
+fi
+if test -f /lib/syscalls.exp; then
+    echo "Also extracting names from /lib/syscalls.exp for good ole AIX..."
+    sed -n 's/^\([^    ]*\)[   ]*syscall$/\1/p' /lib/syscalls.exp >>libc.list
+fi
+
+inlibc='echo " "; td=$define; tu=$undef;
+if $contains "^$1\$" libc.list >/dev/null 2>&1;
+then echo "$1() found";
+  eval "case \"\$$2\" in undef) . whoa; esac"; eval "$2=\$td";
+else echo "$1() NOT found";
+  eval "case \"\$$2\" in define) . whoa; esac"; eval "$2=\$tu"; fi'
+
+: see if bcmp exists
+set bcmp d_bcmp
+eval $inlibc
+
+: see if bcopy exists
+set bcopy d_bcopy
+eval $inlibc
+
+case "$d_safebcpy" in
+'')
+    : assume the worst
+    d_safebcpy=undef
+    case "$d_bcopy" in
+    define)
+       echo "Checking to see if your bcopy() can do overlapping copies..."
+       $cat >safebcpy.c <<'EOCP'
+main()
+{
+    char buf[128];
+    register char *b;
+    register int len;
+    register int off;
+    register int align;
+
+    for (align = 7; align >= 0; align--) {
+       for (len = 36; len; len--) {
+           b = buf+align;
+           bcopy("abcdefghijklmnopqrstuvwxyz0123456789", b, len);
+           for (off = 1; off <= len; off++) {
+               bcopy(b, b+off, len);
+               bcopy(b+off, b, len);
+               if (bcmp(b, "abcdefghijklmnopqrstuvwxyz0123456789", len))
+                   exit(1);
+           }
+       }
+    }
+    exit(0);
+}
+EOCP
+       if $cc safebcpy.c -o safebcpy $ccflags $libs >/dev/null 2>&1 ; then
+           if ./safebcpy; then
+               echo "It can."
+               d_safebcpy=define
+           else
+               echo "It can't."
+           fi
+       else
+           echo "(I can't compile the test program, so we'll assume not...)"
+       fi
+       ;;
+    esac
+    ;;
+esac
+
+: see if bzero exists
+set bzero d_bzero
+eval $inlibc
+
+: see if sprintf is declared as int or pointer to char
+echo " "
+cat >ucbsprf.c <<'EOF'
+#include <stdio.h>
+main()
+{
+    int sprintf();
+    char buf[10];
+    exit((unsigned long)sprintf(buf,"%s","foo") > 10L);
+}
+EOF
+if $cc $ccflags ucbsprf.c -o ucbsprf >/dev/null 2>&1 && ./ucbsprf; then
+    echo "Your sprintf() returns (int)."
+    val="$undef"
+else
+    echo "Your sprintf() returns (char*)."
+    val="$define"
+fi
+set d_charsprf
+eval $setvar
+
+: see if vprintf exists
+echo " "
+if $contains '^vprintf$' libc.list >/dev/null 2>&1; then
+    echo 'vprintf() found.'
+    val="$define"
+    cat >vprintf.c <<'EOF'
+#include <varargs.h>
+
+main() { xxx("foo"); }
+
+xxx(va_alist)
+va_dcl
+{
+    va_list args;
+    char buf[10];
+
+    va_start(args);
+    exit((unsigned long)vsprintf(buf,"%s",args) > 10L);
+}
+EOF
+    if $cc $ccflags vprintf.c -o vprintf >/dev/null 2>&1 && ./vprintf; then
+       echo "Your vsprintf() returns (int)."
+       val2="$undef"
+    else
+       echo "Your vsprintf() returns (char*)."
+       val2="$define"
+    fi
+else
+    echo 'vprintf() NOT found.'
+    val="$undef"
+    val2="$undef"
+fi
+set d_vprintf
+eval $setvar
+val=$val2
+set d_charvspr
+eval $setvar
+
+: see if chsize exists
+set chsize d_chsize
+eval $inlibc
+
+: see if crypt exists
+echo " "
+if $contains '^crypt$' libc.list >/dev/null 2>&1; then
+    echo 'crypt() found.'
+    val="$define"
+    cryptlib=''
+else
+    cryptlib=`./loc Slibcrypt.a "" $xlibpth`
+    if $test -z "$cryptlib"; then
+       cryptlib=`./loc Mlibcrypt.a "" $xlibpth`
+    else
+       cryptlib=-lcrypt
+    fi
+    if $test -z "$cryptlib"; then
+       cryptlib=`./loc Llibcrypt.a "" $xlibpth`
+    else
+       cryptlib=-lcrypt
+    fi
+    if $test -z "$cryptlib"; then
+       cryptlib=`./loc libcrypt.a "" $libpth`
+    else
+       cryptlib=-lcrypt
+    fi
+    if $test -z "$cryptlib"; then
+       echo 'crypt() NOT found.'
+       val="$undef"
+    else
+       val="$define"
+    fi
+fi
+set d_crypt
+eval $setvar
+
+: get csh whereabouts
+case "$csh" in
+'csh') val="$undef" ;;
+*)     val="$define" ;;
+esac
+set d_csh
+eval $setvar
+
+: see if readdir exists
+set readdir d_readdir
+eval $inlibc
+
+: see if there are directory access routines out there
+echo " "
+xxx=`./loc ndir.h x $usrinclude /usr/local/include $inclwanted`
+case "$xxx" in
+x)
+    xxx=`./loc sys/ndir.h x $usrinclude /usr/local/include $inclwanted`
+    ;;
+esac
+D_dirnamlen="$undef"
+I_dirent="$undef"
+I_sys_dir="$undef"
+I_my_dir="$undef"
+I_ndir="$undef"
+I_sys_ndir="$undef"
+libndir=''
+ndirc=''
+ndiro=''
+if $test -r $usrinclude/dirent.h; then
+    echo "dirent.h found."
+    if $contains 'd_namlen' $usrinclude/dirent.h >/dev/null 2>&1; then
+       D_dirnamlen="$define"
+    fi
+    I_dirent="$define"
+elif $test -r $xxx; then
+    echo "You seem to use <$xxx>,"
+    if $test "$d_readdir" = "$define"; then
+       echo "and I can get readdir() from your C library."
+    elif $test -r /usr/lib/libndir.a || $test -r /usr/local/lib/libndir.a; then
+       echo "and I'll get the routines using -lndir ."
+       libndir='-lndir'
+    else
+       ans=`./loc libndir.a x $libpth`
+       case "$ans" in
+       x)
+           echo "but I can't find the ndir library!"
+           ;;
+       *)
+           echo "and I found the directory library in $ans."
+           libndir="$ans"
+           ;;
+       esac
+    fi
+    if $contains 'd_namlen' $xxx >/dev/null 2>&1; then
+       D_dirnamlen="$define"
+    fi
+    case "$xxx" in
+    sys/)
+       I_sys_ndir="$define"
+       ;;
+    *)
+       I_ndir="$define"
+       ;;
+    esac
+else
+    : The next line used to require this to be a bsd system.
+    if $contains '^readdir$' libc.list >/dev/null 2>&1 ; then
+       echo "No ndir library found, but you have readdir() so we'll use that."
+       if $contains 'd_namlen' $usrinclude/sys/dir.h >/dev/null 2>&1; then
+           D_dirnamlen="$define"
+       fi
+       I_sys_dir="$define"
+    else
+       echo "No ndir library found--using ./$d_ndir.c."
+: This will lose since $d_ndir.h is in another directory.
+: I doubt we can rely on it being in ../$d_ndir.h . 
+: At least it will fail in a conservative manner.
+       if $contains 'd_namlen' $d_ndir.h >/dev/null 2>&1; then
+           D_dirnamlen="$define"
+       fi
+       I_my_dir="$define"
+       ndirc="$d_ndir.c"
+       ndiro="$d_ndir.o"
+    fi
+fi
+val=$D_dirnamlen;      set d_dirnamlen;        eval $setvar
+val=$I_dirent;         set i_dirent;           eval $setvar
+val=$I_sys_dir;                set i_sys_dir;          eval $setvar
+val=$I_my_dir;         set i_my_dir;           eval $setvar
+val=$I_ndir;           set i_ndir;             eval $setvar
+val=$I_sys_ndir;       set i_sys_ndir;         eval $setvar
+
+: now see if they want to do setuid emulation
+case "$d_dosuid" in
+'') dflt=n;;
+*undef*) dflt=n;;
+*) dflt=y;;
+esac
+cat <<EOM
+Some sites have disabled setuid #! scripts because of a bug in the kernel
+that prevents them from being secure.  If you are on such a system, the
+setuid/setgid bits on scripts are currently useless.  It is possible for
+$package to detect those bits and emulate setuid/setgid in a secure fashion
+until a better solution is devised for the kernel problem.
+
+EOM
+rp="Do you want to do setuid/setgid emulation? [$dflt]"
+$echo $n "$rp $c"
+. myread
+case "$ans" in
+'') $ans="$dflt";;
+esac
+case "$ans" in
+y*)  d_dosuid="$define";;
+*) d_dosuid="$undef";;
+esac
+
+: see if dup2 exists
+set dup2 d_dup2
+eval $inlibc
+
+: see if fchmod exists
+set fchmod d_fchmod
+eval $inlibc
+
+: see if fchown exists
+set fchown d_fchown
+eval $inlibc
+
+: see if this is an fcntl system
+set fcntl d_fcntl
+eval $inlibc
+
+: see if we can have long filenames
+echo " "
+rm -f 123456789abcde
+if (echo hi >123456789abcdef) 2>/dev/null; then
+    : not version 8
+    if test -f 123456789abcde; then
+       echo 'You cannot have filenames longer than 14 characters.  Sigh.'
+       val="$undef"
+    else
+       echo 'You can have filenames longer than 14 characters.'
+       val="$define"
+    fi
+else
+    : version 8 probably
+    echo "You can't have filenames longer than 14 chars.  You can't even think about them!"
+    val="$undef"
+fi 
+set d_flexfnam
+eval $setvar
+
+: see if flock exists
+set flock d_flock
+eval $inlibc
+
+: see if getgroups exists
+set getgroups d_getgrps
+eval $inlibc
+
+: see if gethostent exists
+set gethostent d_gethent
+eval $inlibc
+
+: see if getpgrp exists
+set getpgrp d_getpgrp
+eval $inlibc
+
+: see if getpgrp2 exists
+set getpgrp2 d_getpgrp2
+eval $inlibc
+
+: see if getpriority exists
+set getpriority d_getprior
+eval $inlibc
+
+: see if htonl exists
+set htonl d_htonl
+eval $inlibc
+
+: index or strcpy
+echo " "
+case "$d_index" in
+undef) dflt=y;;
+define) dflt=n;;
+*)  if $test -f /unix; then
+       dflt=n
+    else
+       dflt=y
+    fi
+    ;;
+esac
+if $contains '^index$' libc.list >/dev/null 2>&1 ; then
+    if $contains '^strchr$' libc.list >/dev/null 2>&1 ; then
+       echo "Your system has both index() and strchr().  Shall I use"
+       rp="index() rather than strchr()? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       case "$ans" in
+           n*) d_index="$define" ;;
+           *)  d_index="$undef" ;;
+       esac
+    else
+       d_index="$undef"
+       echo "index() found."
+    fi
+else
+    if $contains '^strchr$' libc.list >/dev/null 2>&1 ; then
+       d_index="$define"
+       echo "strchr() found."
+    else
+       echo "No index() or strchr() found!"
+       d_index="$undef"
+    fi
+fi
+
+: see if isascii exists
+set isascii d_isascii
+eval $inlibc
+
+: see if killpg exists
+set killpg d_killpg
+eval $inlibc
+
+: see if lstat exists
+set lstat d_lstat
+eval $inlibc
+
+: see if memcmp exists
+set memcmp d_memcmp
+eval $inlibc
+
+: see if memcpy exists
+set memcpy d_memcpy
+eval $inlibc
+
+case "$d_safemcpy" in
+'')
+    : assume the worst
+    d_safemcpy=undef
+    case "$d_memcpy" in
+    define)
+       echo "Checking to see if your memcpy() can do overlapping copies..."
+       $cat >safemcpy.c <<'EOCP'
+main()
+{
+    char buf[128];
+    register char *b;
+    register int len;
+    register int off;
+    register int align;
+
+    for (align = 7; align >= 0; align--) {
+       for (len = 36; len; len--) {
+           b = buf+align;
+           memcpy(b,"abcdefghijklmnopqrstuvwxyz0123456789", len);
+           for (off = 1; off <= len; off++) {
+               memcpy(b+off, b, len);
+               memcpy(b, b+off, len);
+               if (memcmp(b, "abcdefghijklmnopqrstuvwxyz0123456789", len))
+                   exit(1);
+           }
+       }
+    }
+    exit(0);
+}
+EOCP
+       if $cc safemcpy.c -o safemcpy $ccflags $libs >/dev/null 2>&1 ; then
+           if ./safemcpy; then
+               echo "It can."
+               d_safemcpy=define
+           else
+               echo "It can't."
+           fi
+       else
+           echo "(I can't compile the test program, so we'll assume not...)"
+       fi
+       ;;
+    esac
+    ;;
+esac
+
+: see if memmove exists
+set memmove d_memmove
+eval $inlibc
+
+: see if memset exists
+set memset d_memset
+eval $inlibc
+
+: see if mkdir exists
+set mkdir d_mkdir
+eval $inlibc
+
+: see if msgctl exists
+set msgctl d_msgctl
+eval $inlibc
+
+: see if msgget exists
+set msgget d_msgget
+eval $inlibc
+
+: see if msgsnd exists
+set msgsnd d_msgsnd
+eval $inlibc
+
+: see if msgrcv exists
+set msgrcv d_msgrcv
+eval $inlibc
+
+: see how much of the 'msg*(2)' library is present.
+h_msg=true
+echo " "
+case "$d_msgctl$d_msgget$d_msgsnd$d_msgrcv" in
+*undef*) h_msg=false;;
+esac
+: we could also check for sys/ipc.h ...
+if $h_msg && $test -r $usrinclude/sys/msg.h; then
+    echo "You have the full msg*(2) library."
+    val="$define"
+else
+    echo "You don't have the full msg*(2) library."
+    val="$undef"
+fi
+set d_msg
+eval $setvar
+
+: determine which malloc to compile in
+echo " "
+case "$d_mymalloc" in
+'')
+    case "$usemymalloc" in
+    '')
+       if bsd || v7; then
+           dflt='y'
+       else
+           dflt='n'
+       fi
+       ;;
+    n*) dflt=n;;
+    *)  dflt=y;;
+    esac
+    ;;
+define)  dflt="y"
+    ;;
+*)  dflt="n"
+    ;;
+esac
+rp="Do you wish to attempt to use the malloc that comes with $package? [$dflt]"
+$echo $n "$rp $c"
+. myread
+case "$ans" in
+'') ans=$dflt;;
+esac
+case "$ans" in
+y*) mallocsrc='malloc.c'; mallocobj='malloc.o'
+    libs=`echo $libs | sed 's/-lmalloc//'`
+    val="$define"
+    case "$mallocptrtype" in
+    '')
+       cat >usemymalloc.c <<'END'
+#ifdef __STDC__
+#include <stdlib.h>
+#else
+#include <malloc.h>
+#endif
+void *malloc();
+END
+       if $cc $ccflags -c usemymalloc.c >/dev/null 2>&1; then
+           mallocptrtype=void
+       else
+           mallocptrtype=char
+       fi
+       ;;
+    esac
+    echo " "
+    echo "Your system wants malloc to return $mallocptrtype*, it would seem."
+    ;;
+*)  mallocsrc='';
+    mallocobj='';
+    mallocptrtype=void
+    val="$undef"
+    ;;
+esac
+set d_mymalloc
+eval $setvar
+
+: see if ndbm is available
+echo " "
+xxx=`./loc ndbm.h x $usrinclude /usr/local/include $inclwanted`
+if test -f $xxx; then
+    val="$define"
+    echo "ndbm.h found."
+else
+    val="$undef"
+    echo "ndbm.h NOT found."
+fi
+set d_ndbm
+eval $setvar
+
+: see if we have the old dbm
+echo " "
+xxx=`./loc dbm.h x $usrinclude /usr/local/include $inclwanted`
+if test -f $xxx; then
+    val="$define"
+    echo "dbm.h found."
+else
+    val="$undef"
+    echo "dbm.h NOT found."
+fi
+set d_odbm
+eval $setvar
+
+: see whether socket exists
+echo " "
+socketlib=''
+if $contains socket libc.list >/dev/null 2>&1; then
+    echo "Looks like you have Berkeley networking support."
+    val="$define"
+    : now check for advanced features
+    if $contains setsockopt libc.list >/dev/null 2>&1; then
+       val2="$undef"
+    else
+       echo "...but it uses the old 4.1c interface, rather than 4.2"
+       val2="$define"
+    fi
+else
+    : hpux, for one, puts all the socket stuff in socklib.o
+    if $contains socklib libc.list >/dev/null 2>&1; then
+       echo "Looks like you have Berkeley networking support."
+       val="$define"
+       : we will have to assume that it supports the 4.2 BSD interface
+       val2="$undef"
+    else
+       echo "Hmmm...you don't have Berkeley networking in libc.a..."
+       : look for an optional networking library
+       if test -f /usr/lib/libnet.a; then
+           (ar t /usr/lib/libnet.a ||
+               nm -g /usr/lib/libnet.a) 2>/dev/null >> libc.list
+           if $contains socket libc.list >/dev/null 2>&1; then
+               echo "but the Wollongong group seems to have hacked it in."
+               socketlib="-lnet -lnsl_s"
+               val="$define"
+               : now check for advanced features
+               if $contains setsockopt libc.list >/dev/null 2>&1; then
+                   val2="$undef"
+               else
+                   echo "...using the old 4.1c interface, rather than 4.2"
+                   val2="$define"
+               fi
+           else
+               echo "or even in libnet.a, which is peculiar."
+               val="$undef"
+               val2="$undef"
+           fi
+       else
+           echo "or anywhere else I see."
+           val="$undef"
+           val2="$undef"
+       fi
+    fi
+fi
+set d_socket
+eval $setvar
+
+if $contains socketpair libc.list >/dev/null 2>&1; then
+    val="$define"
+else
+    val="$undef"
+fi
+set d_sockpair
+eval $setvar
+val=$val2
+set d_oldsock
+eval $setvar
+
+: Locate the flags for 'open()'
+echo " "
+$cat >open3.c <<'EOCP'
+#include <sys/types.h>
+#ifdef I_FCNTL
+#include <fcntl.h>
+#endif
+#ifdef I_SYS_FILE
+#include <sys/file.h>
+#endif
+main() {
+
+       if(O_RDONLY);
+
+#ifdef O_TRUNC
+       exit(0);
+#else
+       exit(1);
+#endif
+}
+EOCP
+: check sys/file.h first to get FREAD on Sun
+if $test -r $usrinclude/sys/file.h && \
+   $cc $cppflags "-DI_SYS_FILE" open3.c -o open3 >/dev/null 2>&1 ; then
+    h_sys_file=true;
+    echo "sys/file.h defines the O_* constants..."
+    if ./open3; then
+       echo "and you have the 3 argument form of open()."
+       val="$define"
+    else
+       echo "but not the 3 argument form of open().  Oh, well."
+       val="$undef"
+    fi
+elif $test -r $usrinclude/fcntl.h && \
+   $cc "-DI_FCNTL" open3.c -o open3 >/dev/null 2>&1 ; then
+    h_fcntl=true;
+    echo "fcntl.h defines the O_* constants..."
+    if ./open3; then
+       echo "and you have the 3 argument form of open()."
+       val="$define"
+    else
+       echo "but not the 3 argument form of open().  Oh, well."
+       val="$undef"
+    fi
+else
+    val="$undef"
+    echo "I can't find the O_* constant definitions!  You got problems."
+fi
+set d_open3
+eval $setvar
+
+: see if how pwd stuff is defined
+echo " "
+if $test -r $usrinclude/pwd.h ; then
+    i_pwd="$define"
+    echo "pwd.h found."
+    $cppstdin $cppflags $cppminus <$usrinclude/pwd.h | \
+       sed -n '/struct[        ][      ]*passwd/,/^};/p' >pwd.txt
+    if $contains 'pw_quota' pwd.txt >/dev/null 2>&1; then
+       d_pwquota="$define"
+    else
+       d_pwquota="$undef"
+    fi
+    if $contains 'pw_age' pwd.txt >/dev/null 2>&1; then
+       d_pwage="$define"
+    else
+       d_pwage="$undef"
+    fi
+    if $contains 'pw_change' pwd.txt >/dev/null 2>&1; then
+       d_pwchange="$define"
+    else
+       d_pwchange="$undef"
+    fi
+    if $contains 'pw_class' pwd.txt >/dev/null 2>&1; then
+       d_pwclass="$define"
+    else
+       d_pwclass="$undef"
+    fi
+    if $contains 'pw_expire' pwd.txt >/dev/null 2>&1; then
+       d_pwexpire="$define"
+    else
+       d_pwexpire="$undef"
+    fi
+    if $contains 'pw_comment' pwd.txt >/dev/null 2>&1; then
+       d_pwcomment="$define"
+    else
+       d_pwcomment="$undef"
+    fi
+else
+    i_pwd="$undef"
+    d_pwquota="$undef"
+    d_pwage="$undef"
+    d_pwchange="$undef"
+    d_pwclass="$undef"
+    d_pwexpire="$undef"
+    d_pwcomment="$undef"
+    echo "No pwd.h found."
+fi
+
+: see if rename exists
+set rename d_rename
+eval $inlibc
+
+: see if rewindir exists
+set rewinddir d_rewindir
+eval $inlibc
+
+: see if rmdir exists
+set rmdir d_rmdir
+eval $inlibc
+
+: see if seekdir exists
+set seekdir d_seekdir
+eval $inlibc
+
+: see if select exists
+set select d_select
+eval $inlibc
+
+: see if semctl exists
+set semctl d_semctl
+eval $inlibc
+
+: see if semget exists
+set semget d_semget
+eval $inlibc
+
+: see if semop exists
+set semop d_semop
+eval $inlibc
+
+: see how much of the 'sem*(2)' library is present.
+h_sem=true
+echo " "
+case "$d_semctl$d_semget$d_semop" in
+*undef*) h_sem=false;;
+esac
+: we could also check for sys/ipc.h ...
+if $h_sem && $test -r $usrinclude/sys/sem.h; then
+    echo "You have the full sem*(2) library."
+    val="$define"
+else
+    echo "You don't have the full sem*(2) library."
+    val="$undef"
+fi
+set d_sem
+eval $setvar
+
+: see if setegid exists
+set setegid d_setegid
+eval $inlibc
+
+: see if seteuid exists
+set seteuid d_seteuid
+eval $inlibc
+
+: see if setpgrp exists
+set setpgrp d_setpgrp
+eval $inlibc
+
+: see if setpgrp2 exists
+set setpgrp2 d_setpgrp2
+eval $inlibc
+
+: see if setpriority exists
+set setpriority d_setprior
+eval $inlibc
+
+: see if setregid exists
+set setregid d_setregid
+eval $inlibc
+set setresgid d_setresgid
+eval $inlibc
+
+: see if setreuid exists
+set setreuid d_setreuid
+eval $inlibc
+set setresuid d_setresuid
+eval $inlibc
+
+: see if setrgid exists
+set setrgid d_setrgid
+eval $inlibc
+
+: see if setruid exists
+set setruid d_setruid
+eval $inlibc
+
+: see if shmctl exists
+set shmctl d_shmctl
+eval $inlibc
+
+: see if shmget exists
+set shmget d_shmget
+eval $inlibc
+
+: see if shmat exists
+set shmat d_shmat
+eval $inlibc
+
+d_voidshmat="$undef"
+case "$d_shmat" in
+define)
+    $cppstdin $cppflags $cppminus < $usrinclude/sys/shm.h >voidshmat.txt 2>/dev/null
+    if $contains "void.*shmat" voidshmat.txt >/dev/null 2>&1; then
+       echo "and shmat returns (void*)"
+       d_voidshmat="$define"
+    else
+       echo "and shmat returns (char*)"
+    fi
+    ;;
+esac
+
+: see if shmdt exists
+set shmdt d_shmdt
+eval $inlibc
+
+: see how much of the 'shm*(2)' library is present.
+h_shm=true
+echo " "
+case "$d_shmctl$d_shmget$d_shmat$d_shmdt" in
+*undef*) h_shm=false;;
+esac
+: we could also check for sys/ipc.h ...
+if $h_shm && $test -r $usrinclude/sys/shm.h; then
+    echo "You have the full shm*(2) library."
+    val="$define"
+else
+    echo "You don't have the full shm*(2) library."
+    val="$undef"
+fi
+set d_shm
+eval $setvar
+
+: see if stat knows about block sizes
+echo " "
+if $contains 'st_blocks;' $usrinclude/sys/stat.h >/dev/null 2>&1 ; then
+    if $contains 'st_blksize;' $usrinclude/sys/stat.h >/dev/null 2>&1 ; then
+       echo "Your stat knows about block sizes."
+       val="$define"
+    else
+       echo "Your stat doesn't know about block sizes."
+       val="$undef"
+    fi
+else
+    echo "Your stat doesn't know about block sizes."
+    val="$undef"
+fi
+set d_statblks
+eval $setvar
+
+: see if stdio is really std
+echo " "
+if $contains 'char.*_ptr.*;' $usrinclude/stdio.h >/dev/null 2>&1 ; then
+    if $contains '_cnt;' $usrinclude/stdio.h >/dev/null 2>&1 ; then
+       echo "Your stdio is pretty std."
+       val="$define"
+    else
+       echo "Your stdio isn't very std."
+       val="$undef"
+    fi
+else
+    echo "Your stdio isn't very std."
+    val="$undef"
+fi
+set d_stdstdio
+eval $setvar
+
+: check for structure copying
+echo " "
+echo "Checking to see if your C compiler can copy structs..."
+$cat >strctcpy.c <<'EOCP'
+main()
+{
+       struct blurfl {
+           int dyick;
+       } foo, bar;
+
+       foo = bar;
+}
+EOCP
+if $cc -c strctcpy.c >/dev/null 2>&1 ; then
+    val="$define"
+    echo "Yup, it can."
+else
+    val="$undef"
+    echo "Nope, it can't."
+fi
+set d_strctcpy
+eval $setvar
+
+: see if strerror exists
+set strerror d_strerror
+eval $inlibc
+
+: see if symlink exists
+set symlink d_symlink
+eval $inlibc
+
+: see if syscall exists
+set syscall d_syscall
+eval $inlibc
+
+: set if package uses struct tm
+w_s_tm=1
+
+: set if package uses struct timeval
+case "$d_select" in
+define) w_s_timevl=1 ;;
+esac
+
+: set if package uses localtime function
+w_localtim=1
+
+: see which of time.h, sys/time.h, and sys/select should be included.
+idefs=''
+cat <<'EOM'
+  
+Testing to see which of <time.h>, <sys/time.h>, and <sys/select.h>
+should be included, because this application wants:
+
+EOM
+case "$w_s_itimer" in
+1)
+    echo "     struct itimerval"
+    idefs="-DS_ITIMERVAL $idefs"
+    ;;
+esac
+case "$w_s_timevl" in
+1)
+    echo "     struct timeval"
+    idefs="-DS_TIMEVAL $idefs"
+    ;;
+esac
+case "$w_s_tm" in
+1)
+    echo "     struct tm"
+    idefs="-DS_TM $idefs"
+    ;;
+esac
+case "$w_localtim" in
+1)
+    echo "     ctime(3) declarations"
+    idefs="-DD_CTIME $idefs"
+    ;;
+esac
+case "$idefs" in
+'')
+    echo "     (something I don't know about)"
+    ;;
+esac
+echo " "
+echo "I'm now running the test program..."
+$cat >i_time.c <<'EOCP'
+#include <sys/types.h>
+#ifdef I_TIME
+#include <time.h>
+#endif
+#ifdef I_SYS_TIME
+#ifdef SYSTIMEKERNEL
+#define KERNEL
+#endif
+#include <sys/time.h>
+#endif
+#ifdef I_SYS_SELECT
+#include <sys/select.h>
+#endif
+main()
+{
+    struct tm foo;
+    struct tm *tmp;
+#ifdef S_TIMEVAL
+    struct timeval bar;
+#endif
+#ifdef S_ITIMERVAL
+    struct itimerval baz;
+#endif
+
+    if (foo.tm_sec == foo.tm_sec)
+       exit(0);
+#ifdef S_TIMEVAL
+    if (bar.tv_sec == bar.tv_sec)
+       exit(0);
+#endif
+#ifdef S_ITIMERVAL
+    if (baz.it_interval == baz.it_interval)
+       exit(0);
+#endif
+#ifdef S_TIMEVAL
+    if (bar.tv_sec == bar.tv_sec)
+       exit(0);
+#endif
+#ifdef D_CTIME
+    /* this might not do anything for us... */
+    tmp = localtime((time_t *)0);
+#endif
+    exit(1);
+}
+EOCP
+flags=''
+for i_sys_select in '' '-DI_SYS_SELECT'; do
+    for d_systimekernel in '' '-DSYSTIMEKERNEL'; do
+       for i_time in '' '-DI_TIME'; do
+           for i_systime in '-DI_SYS_TIME' ''; do
+               case "$flags" in
+               '') echo Trying $i_time $i_systime $d_systimekernel $i_sys_select
+                   if $cc $ccflags $idefs \
+                           $i_time $i_systime $d_systimekernel $i_sys_select \
+                           i_time.c -o i_time >/dev/null 2>&1 ; then
+                       set X $i_time $i_systime $d_systimekernel $i_sys_select
+                       shift
+                       flags="$*"
+                       echo Succeeded with $flags
+                   fi
+                   ;;
+               esac
+           done
+       done
+    done
+done
+case "$flags" in
+*SYSTIMEKERNEL*) val="$define";;
+*) val="$undef";;
+esac
+set d_systimekernel
+eval $setvar
+case "$flags" in
+*I_TIME*) val="$define";;
+*) val="$undef";;
+esac
+set i_time
+eval $setvar
+case "$flags" in
+*I_SYS_SELECT*) val="$define";;
+*) val="$undef";;
+esac
+set i_sys_select
+eval $setvar
+case "$flags" in
+*I_SYS_TIME*) val="$define";;
+*) val="$undef";;
+esac
+set i_sys_time
+eval $setvar
+case "$flags$i_sys_time$i_time" in
+undefundef) i_sys_time="$define"; i_time="$define";
+    echo "ICK, NOTHING WORKED!!!  You may have to diddle the includes.";;
+esac
+
+: see if telldir exists
+set telldir d_telldir
+eval $inlibc
+
+: see if signal is declared as pointer to function returning int or void
+echo " "
+$cppstdin $cppflags $cppminus < $usrinclude/signal.h >d_voidsig.txt
+if $contains 'int[^A-Za-z]*signal' d_voidsig.txt >/dev/null 2>&1 ; then
+    echo "You have int (*signal())() instead of void."
+    val="$undef"
+else
+    echo "You have void (*signal())() instead of int."
+    val="$define"
+fi
+set d_voidsig
+eval $setvar
+case $voidsig in
+define) d_tosignal=void;;
+*) d_tosignal=int;;
+esac
+
+: see if truncate exists
+set truncate d_truncate
+eval $inlibc
+
+: see if there is a vfork
+set vfork d_vfork
+eval $inlibc
+
+: check for volatile keyword
+echo " "
+echo 'Checking to see if your C compiler knows about "volatile"...'
+$cat >try.c <<'EOCP'
+main()
+{
+       typedef unsigned short foo_t;
+       char *volatile foo;
+       volatile int bar;
+       volatile foo_t blech;
+       foo = foo;
+}
+EOCP
+if $cc -c $ccflags try.c >/dev/null 2>&1 ; then
+    val="$define"
+    echo "Yup, it does."
+else
+    val="$undef"
+    echo "Nope, it doesn't."
+fi
+set d_volatile
+eval $setvar
+$rm -f try.*
+
+: see if there is a wait4
+set wait4 d_wait4
+eval $inlibc
+
+: see if there is a waitpid
+set waitpid d_waitpid
+eval $inlibc
+
+: see what type gids are declared as in the kernel
+case "$gidtype" in
+'')
+    if $contains 'gid_t;' $usrinclude/sys/types.h >/dev/null 2>&1 ; then
+       dflt='gid_t';
+    else
+       set `grep '_rgid;' $usrinclude/sys/user.h 2>/dev/null` unsigned short
+       case $1 in
+       unsigned) dflt="$1 $2" ;;
+       *) dflt="$1" ;;
+       esac
+    fi
+    ;;
+*)  dflt="$gidtype"
+    ;;
+esac
+cont=true
+echo " "
+rp="What type are groups ids returned by getgid(), etc.? [$dflt]"
+$echo $n "$rp $c"
+. myread
+gidtype="$ans"
+
+: see what type gids are returned by getgroups
+echo " "
+case "$groupstype" in
+'')
+    if $contains 'getgroups.*short' /usr/lib/lint/llib-lc >/dev/null 2>&1; then
+       dflt='short'
+    elif $contains 'getgroups.*int' /usr/lib/lint/llib-lc >/dev/null 2>&1; then
+       dflt='int'
+    elif $contains 'getgroups.*short' /usr/include/libc.h >/dev/null 2>&1; then
+       dflt='short'
+    elif $contains 'getgroups.*int' /usr/include/libc.h >/dev/null 2>&1; then
+       dflt='int'
+    elif $contains 'getgroups.*short' /usr/lib/lint/llib-lbsd >/dev/null 2>&1; then
+       dflt='short'
+    elif $contains 'getgroups.*int' /usr/lib/lint/llib-lbsd >/dev/null 2>&1; then
+       dflt='int'
+    elif $contains 'int.*gidset' /usr/man/man2/getgroups.2 >/dev/null 2>&1; then
+       dflt='int'
+    elif $contains 'gid_t;' $usrinclude/sys/types.h >/dev/null 2>&1 ; then
+       dflt='gid_t'
+    else
+       set `grep 'groups\[NGROUPS\];' $usrinclude/sys/user.h 2>/dev/null` unsigned short
+       case $1 in
+       unsigned) dflt="$1 $2" ;;
+       *) dflt="$1" ;;
+       esac
+    fi
+    ;;
+*)  dflt="$groupstype"
+    ;;
+esac
+cont=true
+echo "(The following only matters if you have getgroups().)"
+rp="What type are the group ids returned by getgroups()? [$dflt]"
+$echo $n "$rp $c"
+. myread
+groupstype="$ans"
+
+: check for length of integer
+echo " "
+case "$intsize" in
+'')
+    echo "Checking to see how big your integers are..."
+    $cat >intsize.c <<'EOCP'
+#include <stdio.h>
+main()
+{
+    printf("%d\n", sizeof(int));
+}
+EOCP
+    if $cc intsize.c -o intsize >/dev/null 2>&1 ; then
+       dflt=`./intsize`
+    else
+       dflt='4'
+       echo "(I can't seem to compile the test program.  Guessing...)"
+    fi
+    ;;
+*)
+    dflt="$intsize"
+    ;;
+esac
+rp="What is the size of an integer (in bytes)? [$dflt]"
+$echo $n "$rp $c"
+. myread
+intsize="$ans"
+
+: determine where private executables go
+case "$privlib" in
+'')
+    dflt=/usr/lib/$package
+    test -d /usr/local/lib && dflt=/usr/local/lib/$package
+    ;;
+*)  dflt="$privlib"
+    ;;
+esac
+$cat <<EOM
+
+The $package package has some auxiliary files that should be reside in a library
+that is accessible by everyone.  Where should these "private" but accessible
+EOM
+$echo $n "files reside? (~name ok) [$dflt] $c"
+rp="Private files will reside where? [$dflt]"
+. myread
+privlib=`./filexp "$ans"`
+
+case "$installprivlib" in
+'')
+    dflt=`echo $privlib | sed 's#^/afs/#/afs/.#'`
+    test -d $dflt || dflt="$privlib"
+    ;;
+*)  dflt="$installprivlib"
+    ;;
+esac
+$cat <<EOM
+
+On some systems (such as afs) you have to install the library files in a
+different directory to get them to go to the right place.  Where should the
+EOM
+$echo $n "library files be installed? (~name ok) [$dflt] $c"
+rp="Install private files where? [$dflt]"
+. myread
+installprivlib=`./filexp "$ans"`
+
+: check for size of random number generator
+echo " "
+case "$randbits" in
+'')
+    echo "Checking to see how many bits your rand function produces..."
+    $cat >randbits.c <<'EOCP'
+#include <stdio.h>
+main()
+{
+    register int i;
+    register unsigned long tmp;
+    register unsigned long max = 0L;
+
+    for (i=1000; i; i--) {
+       tmp = (unsigned long)rand();
+       if (tmp > max) max = tmp;
+    }
+    for (i=0; max; i++)
+       max /= 2;
+    printf("%d\n",i);
+}
+EOCP
+    if $cc randbits.c -o randbits >/dev/null 2>&1 ; then
+       dflt=`./randbits`
+    else
+       dflt='?'
+       echo "(I can't seem to compile the test program...)"
+    fi
+    ;;
+*)
+    dflt="$randbits"
+    ;;
+esac
+rp="How many bits does your rand() function produce? [$dflt]"
+$echo $n "$rp $c"
+. myread
+randbits="$ans"
+
+: determine where publicly executable scripts go
+case "$scriptdir" in
+'')
+    dflt="$bin"
+    : guess some guesses
+    test -d /usr/share/scripts && dflt=/usr/share/scripts
+    test -d /usr/share/bin && dflt=/usr/share/bin
+    ;;
+*)  dflt="$scriptdir"
+    ;;
+esac
+cont=true
+$cat <<EOM
+Some installations have a separate directory just for executable scripts so
+that they can mount it across multiple architectures but keep the scripts in
+one spot.  You might, for example, have a subdirectory of /usr/share for this.
+Or you might just lump your scripts in with all your other executables.
+EOM
+while $test "$cont" ; do
+    rp="Where will publicly executable scripts reside (~name ok)? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    scriptdir="$ans"
+    scriptdir=`./filexp "$scriptdir"`
+    if test -d $scriptdir; then
+       cont=''
+    else
+       case "$fastread" in
+       yes) dflt=y;;
+       *) dflt=n;;
+       esac
+       rp="Directory $scriptdir doesn't exist.  Use that name anyway? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       dflt=''
+       case "$ans" in
+       y*) cont='';;
+       esac
+    fi
+done
+
+case "$installscr" in
+'')
+    dflt=`echo $scriptdir | sed 's#^/afs/#/afs/.#'`
+    test -d $dflt || dflt="$scriptdir"
+    ;;
+*)  dflt="$scriptdir"
+    ;;
+esac
+cont=true
+$cat <<EOM
+Some installations must install scripts in a different directory than where
+they will eventually reside.  On most systems they're the same directory.
+EOM
+while $test "$cont" ; do
+    rp="Where do you install publicly executable scripts (~name ok)? [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    installscr="$ans"
+    installscr=`./filexp "$installscr"`
+    if test -d $installscr; then
+       cont=''
+    else
+       case "$fastread" in
+       yes) dflt=y;;
+       *) dflt=n;;
+       esac
+       rp="Directory $installscr doesn't exist.  Use that name anyway? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       dflt=''
+       case "$ans" in
+       y*) cont='';;
+       esac
+    fi
+done
+
+: generate list of signal names
+echo " "
+case "$sig_name" in
+'')
+    echo "Generating a list of signal names..."
+    set X `cat $usrinclude/signal.h $usrinclude/sys/signal.h 2>&1 | awk '
+$1 ~ /^#define$/ && $2 ~ /^SIG[A-Z0-9]*$/ && $3 ~ /^[1-9][0-9]*$/ {
+    sig[$3] = substr($2,4,20)
+    if (max < $3 && $3 < 60) {
+       max = $3
+    }
+}
+
+END {
+    for (i=1; i<=max; i++) {
+       if (sig[i] == "")
+           printf "%d", i
+       else
+           printf "%s", sig[i]
+       if (i < max)
+           printf " "
+    }
+    printf "\n"
+}
+'`
+    shift
+    case $# in
+    0)  echo 'kill -l' >/tmp/foo$$
+       set X `$csh -f </tmp/foo$$`
+       shift
+       case $# in
+       0)set HUP INT QUIT ILL TRAP IOT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM
+           ;;
+       esac
+       ;;
+    esac
+    sig_name="ZERO $*"
+    ;;
+esac
+echo "Signals are: $sig_name"
+
+: see what type of char stdio uses.
+echo " "
+if $contains 'unsigned.*char.*\*.*_ptr.*;' $usrinclude/stdio.h >/dev/null 2>&1 ; then
+    echo "Your stdio uses unsigned chars."
+    stdchar="unsigned char"
+else
+    echo "Your stdio uses signed chars."
+    stdchar="char"
+fi
+
+: see what type uids are declared as in the kernel
+case "$uidtype" in
+'')
+    if $contains 'uid_t;' $usrinclude/sys/types.h >/dev/null 2>&1 ; then
+       dflt='uid_t';
+    else
+       set `grep '_ruid;' $usrinclude/sys/user.h 2>/dev/null` unsigned short
+       case $1 in
+       unsigned) dflt="$1 $2" ;;
+       *) dflt="$1" ;;
+       esac
+    fi
+    ;;
+*)  dflt="$uidtype"
+    ;;
+esac
+cont=true
+echo " "
+rp="What type are user ids returned by getuid(), etc.? [$dflt]"
+$echo $n "$rp $c"
+. myread
+uidtype="$ans"
+
+: check for void type
+echo " "
+$cat <<EOM
+Checking to see how well your C compiler groks the void type...
+
+  Support flag bits are:
+    1: basic void declarations.
+    2: arrays of pointers to functions returning void.
+    4: operations between pointers to and addresses of void functions.
+
+EOM
+case "$voidhave" in
+'')
+    $cat >void.c <<'EOCP'
+#if TRY & 1
+void main() {
+#else
+main() {
+#endif
+       extern void moo();      /* function returning void */
+       void (*goo)();          /* ptr to func returning void */
+#if TRY & 2
+       void (*foo[10])();
+#endif
+
+#if TRY & 4
+       if(goo == moo) {
+               exit(0);
+       }
+#endif
+       exit(0);
+}
+EOCP
+    if $cc -c -DTRY=$voidwant void.c >void.out 2>&1 ; then
+       voidhave=$voidwant
+       echo "It appears to support void to the level $package wants ($voidwant)."
+       if $contains warning void.out >/dev/null 2>&1; then
+           echo "However, you might get some warnings that look like this:"
+           $cat void.out
+       fi
+    else
+       echo "Hmm, your compiler has some difficulty with void.  Checking further..."
+       if $cc -c -DTRY=1 void.c >/dev/null 2>&1 ; then
+           echo "It supports 1..."
+           if $cc -c -DTRY=3 void.c >/dev/null 2>&1 ; then
+               voidhave=3
+               echo "And it supports 2 but not 4."
+           else
+               echo "It doesn't support 2..."
+               if $cc -c -DTRY=5 void.c >/dev/null 2>&1 ; then
+                   voidhave=5
+                   echo "But it supports 4."
+               else
+                   voidhave=1
+                   echo "And it doesn't support 4."
+               fi
+           fi
+       else
+           echo "There is no support at all for void."
+           voidhave=0
+       fi
+    fi
+esac
+dflt="$voidhave";
+rp="Your void support flags add up to what? [$dflt]"
+$echo $n "$rp $c"
+. myread
+voidhave="$ans"
+
+: preserve RCS keywords in files with variable substitution, grrr
+Log='$Log'
+Header='$Header'
+Id='$Id'
+Author='$Author'
+Date='$Date'
+Locker='$Locker'
+RCSfile='$RCSfile'
+Revision='$Revision'
+Source='$Source'
+State='$State'
+
+
+: determine compiler compiler
+case "$yacc" in
+'') if xenix; then
+       dflt=yacc
+    else
+       dflt='yacc -Sm25000'
+    fi
+    ;;
+*)  dflt="$yacc";;
+esac
+cont=true
+    echo " "
+rp="Which compiler compiler (yacc or bison -y) will you use? [$dflt]"
+$echo $n "$rp $c"
+. myread
+case "$ans" in
+'') ans="$dflt";;
+esac
+yacc="$ans"
+
+: see if we can include fcntl.h
+echo " "
+if $h_fcntl; then
+    val="$define"
+    echo "We'll be including <fcntl.h>."
+else
+    val="$undef"
+    if $h_sys_file; then
+       echo "We don't need to <fcntl.h> if we include <sys/file.h>."
+    else
+       echo "We won't be including <fcntl.h>."
+    fi
+fi
+set i_fcntl
+eval $setvar
+
+: see if gdbm is available
+echo " "
+xxx=`./loc gdbm.h x $usrinclude /usr/local/include $inclwanted`
+if test -f $xxx; then
+    val="$define"
+    echo "gdbm.h found."
+else
+    val="$undef"
+    echo "gdbm.h NOT found."
+fi
+set i_gdbm
+eval $setvar
+
+: see if this is an grp system
+echo " "
+if $test -r $usrinclude/grp.h ; then
+    val="$define"
+    echo "grp.h found."
+else
+    val="$undef"
+    echo "No grp.h found."
+fi
+set i_grp
+eval $setvar
+
+: see if this is a netinet/in.h or sys/in.h system
+echo " "
+xxx=`./loc netinet/in.h x $usrinclude /usr/local/include $inclwanted`
+if test -f $xxx; then
+    val="$define"
+    val2="$undef"
+    echo "netinet/in.h found."
+else
+    val="$undef"
+    echo "No netinet/in.h found, ..."
+    xxx=`./loc sys/in.h x $usrinclude /usr/local/include $inclwanted`
+    if test -f $xxx; then
+       val2="$define"
+       echo "but I found sys/in.h instead."
+    else
+       val2="$undef"
+       echo "and I didn't find sys/in.h either."
+    fi
+fi
+set i_niin
+eval $setvar
+val=$val2
+set i_sysin
+eval $setvar
+
+: Do we need to #include <sys/file.h> ?
+echo " "
+if $h_sys_file; then
+    val="$define"
+    echo "We'll be including <sys/file.h>."
+else
+    val="$undef"
+    echo "We won't be including <sys/file.h>."
+fi
+set i_sys_file
+eval $setvar
+
+: see if ioctl defs are in sgtty/termio or sys/ioctl
+echo " "
+if $test -r $usrinclude/sys/ioctl.h ; then
+    val="$define"
+    echo "sys/ioctl.h found."
+else
+    val="$undef"
+    echo "sys/ioctl.h NOT found, assuming ioctl args are defined in sgtty.h."
+fi
+set i_sysioctl
+eval $setvar
+
+: see if we should include utime.h
+echo " "
+if $test -r $usrinclude/utime.h ; then
+    val="$define"
+    echo "utime.h found."
+else
+    val="$undef"
+    echo "No utime.h found, but that's ok."
+fi
+set i_utime
+eval $setvar
+
+: see if this is a varargs system
+echo " "
+if $test -r $usrinclude/varargs.h ; then
+    val="$define"
+    echo "varargs.h found."
+else
+    val="$undef"
+    echo "No varargs.h found, but that's ok (I hope)."
+fi
+set i_varargs
+eval $setvar
+
+: see if this is a vfork system
+echo " "
+if $test -r $usrinclude/vfork.h ; then
+    val="$define"
+    echo "vfork.h found."
+else
+    val="$undef"
+    echo "No vfork.h found."
+fi
+set i_vfork
+eval $setvar
+
+: end of configuration questions
+echo " "
+echo "End of configuration questions."
+echo " "
+
+: create config.sh file
+echo " "
+if test -d ../UU; then
+    cd ..
+fi
+echo "Creating config.sh..."
+test -f config.sh && cp config.sh UU/oldconfig.sh
+$spitshell <<EOT >config.sh
+$startsh
+# config.sh
+# This file was produced by running the Configure script.
+d_eunice='$d_eunice'
+define='$define'
+eunicefix='$eunicefix'
+loclist='$loclist'
+expr='$expr'
+sed='$sed'
+echo='$echo'
+cat='$cat'
+rm='$rm'
+mv='$mv'
+cp='$cp'
+tail='$tail'
+tr='$tr'
+mkdir='$mkdir'
+sort='$sort'
+uniq='$uniq'
+grep='$grep'
+trylist='$trylist'
+test='$test'
+inews='$inews'
+egrep='$egrep'
+more='$more'
+pg='$pg'
+Mcc='$Mcc'
+vi='$vi'
+mailx='$mailx'
+mail='$mail'
+cpp='$cpp'
+perl='$perl'
+emacs='$emacs'
+ls='$ls'
+rmail='$rmail'
+sendmail='$sendmail'
+shar='$shar'
+smail='$smail'
+tbl='$tbl'
+troff='$troff'
+nroff='$nroff'
+uname='$uname'
+uuname='$uuname'
+line='$line'
+chgrp='$chgrp'
+chmod='$chmod'
+lint='$lint'
+sleep='$sleep'
+pr='$pr'
+tar='$tar'
+ln='$ln'
+lpr='$lpr'
+lp='$lp'
+touch='$touch'
+make='$make'
+date='$date'
+csh='$csh'
+bash='$bash'
+ksh='$ksh'
+lex='$lex'
+flex='$flex'
+bison='$bison'
+Log='$Log'
+Header='$Header'
+Id='$Id'
+lastuname='$lastuname'
+alignbytes='$alignbytes'
+bin='$bin'
+installbin='$installbin'
+byteorder='$byteorder'
+contains='$contains'
+cppstdin='$cppstdin'
+cppminus='$cppminus'
+d_bcmp='$d_bcmp'
+d_bcopy='$d_bcopy'
+d_safebcpy='$d_safebcpy'
+d_bzero='$d_bzero'
+d_castneg='$d_castneg'
+castflags='$castflags'
+d_charsprf='$d_charsprf'
+d_chsize='$d_chsize'
+d_crypt='$d_crypt'
+cryptlib='$cryptlib'
+d_csh='$d_csh'
+d_dosuid='$d_dosuid'
+d_dup2='$d_dup2'
+d_fchmod='$d_fchmod'
+d_fchown='$d_fchown'
+d_fcntl='$d_fcntl'
+d_flexfnam='$d_flexfnam'
+d_flock='$d_flock'
+d_getgrps='$d_getgrps'
+d_gethent='$d_gethent'
+d_getpgrp='$d_getpgrp'
+d_getpgrp2='$d_getpgrp2'
+d_getprior='$d_getprior'
+d_htonl='$d_htonl'
+d_index='$d_index'
+d_isascii='$d_isascii'
+d_killpg='$d_killpg'
+d_lstat='$d_lstat'
+d_memcmp='$d_memcmp'
+d_memcpy='$d_memcpy'
+d_safemcpy='$d_safemcpy'
+d_memmove='$d_memmove'
+d_memset='$d_memset'
+d_mkdir='$d_mkdir'
+d_msg='$d_msg'
+d_msgctl='$d_msgctl'
+d_msgget='$d_msgget'
+d_msgrcv='$d_msgrcv'
+d_msgsnd='$d_msgsnd'
+d_ndbm='$d_ndbm'
+d_odbm='$d_odbm'
+d_open3='$d_open3'
+d_readdir='$d_readdir'
+d_rename='$d_rename'
+d_rewindir='$d_rewindir'
+d_rmdir='$d_rmdir'
+d_seekdir='$d_seekdir'
+d_select='$d_select'
+d_sem='$d_sem'
+d_semctl='$d_semctl'
+d_semget='$d_semget'
+d_semop='$d_semop'
+d_setegid='$d_setegid'
+d_seteuid='$d_seteuid'
+d_setpgrp='$d_setpgrp'
+d_setpgrp2='$d_setpgrp2'
+d_setprior='$d_setprior'
+d_setregid='$d_setregid'
+d_setresgid='$d_setresgid'
+d_setreuid='$d_setreuid'
+d_setresuid='$d_setresuid'
+d_setrgid='$d_setrgid'
+d_setruid='$d_setruid'
+d_shm='$d_shm'
+d_shmat='$d_shmat'
+d_voidshmat='$d_voidshmat'
+d_shmctl='$d_shmctl'
+d_shmdt='$d_shmdt'
+d_shmget='$d_shmget'
+d_socket='$d_socket'
+d_sockpair='$d_sockpair'
+d_oldsock='$d_oldsock'
+socketlib='$socketlib'
+d_statblks='$d_statblks'
+d_stdstdio='$d_stdstdio'
+d_strctcpy='$d_strctcpy'
+d_strerror='$d_strerror'
+d_symlink='$d_symlink'
+d_syscall='$d_syscall'
+d_telldir='$d_telldir'
+d_truncate='$d_truncate'
+d_vfork='$d_vfork'
+d_voidsig='$d_voidsig'
+d_tosignal='$d_tosignal'
+d_volatile='$d_volatile'
+d_vprintf='$d_vprintf'
+d_charvspr='$d_charvspr'
+d_wait4='$d_wait4'
+d_waitpid='$d_waitpid'
+gidtype='$gidtype'
+groupstype='$groupstype'
+i_fcntl='$i_fcntl'
+i_gdbm='$i_gdbm'
+i_grp='$i_grp'
+i_niin='$i_niin'
+i_sysin='$i_sysin'
+i_pwd='$i_pwd'
+d_pwquota='$d_pwquota'
+d_pwage='$d_pwage'
+d_pwchange='$d_pwchange'
+d_pwclass='$d_pwclass'
+d_pwexpire='$d_pwexpire'
+d_pwcomment='$d_pwcomment'
+i_sys_file='$i_sys_file'
+i_sysioctl='$i_sysioctl'
+i_time='$i_time'
+i_sys_time='$i_sys_time'
+i_sys_select='$i_sys_select'
+d_systimekernel='$d_systimekernel'
+i_utime='$i_utime'
+i_varargs='$i_varargs'
+i_vfork='$i_vfork'
+intsize='$intsize'
+libc='$libc'
+nm_opts='$nm_opts'
+libndir='$libndir'
+i_my_dir='$i_my_dir'
+i_ndir='$i_ndir'
+i_sys_ndir='$i_sys_ndir'
+i_dirent='$i_dirent'
+i_sys_dir='$i_sys_dir'
+d_dirnamlen='$d_dirnamlen'
+ndirc='$ndirc'
+ndiro='$ndiro'
+mallocsrc='$mallocsrc'
+mallocobj='$mallocobj'
+d_mymalloc='$d_mymalloc'
+mallocptrtype='$mallocptrtype'
+mansrc='$mansrc'
+manext='$manext'
+models='$models'
+split='$split'
+small='$small'
+medium='$medium'
+large='$large'
+huge='$huge'
+optimize='$optimize'
+ccflags='$ccflags'
+cppflags='$cppflags'
+ldflags='$ldflags'
+cc='$cc'
+nativegcc='$nativegcc'
+libs='$libs'
+n='$n'
+c='$c'
+package='$package'
+randbits='$randbits'
+scriptdir='$scriptdir'
+installscr='$installscr'
+sig_name='$sig_name'
+spitshell='$spitshell'
+shsharp='$shsharp'
+sharpbang='$sharpbang'
+startsh='$startsh'
+stdchar='$stdchar'
+uidtype='$uidtype'
+usrinclude='$usrinclude'
+inclPath='$inclPath'
+void='$void'
+voidhave='$voidhave'
+voidwant='$voidwant'
+w_localtim='$w_localtim'
+w_s_timevl='$w_s_timevl'
+w_s_tm='$w_s_tm'
+yacc='$yacc'
+lib='$lib'
+privlib='$privlib'
+installprivlib='$installprivlib'
+EOT
+
+test -f patchlevel.h && awk '{printf "%s=%s\n",$2,$3}' patchlevel.h >>config.sh
+echo "CONFIG=true" >>config.sh
+
+if test -f UU/oldconfig.sh; then
+    sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\
+      sort | uniq -u >UU/oldsyms
+    set X `cat UU/oldsyms`
+    shift
+    case $# in
+    0) ;;
+    *)  echo "Hmm...You had some extra variables I don't know about...I'll try to keep 'em..."
+       for sym in `cat UU/oldsyms`; do
+           echo "    Propagating $hint variable "'$'"$sym..."
+           eval 'tmp="$'"${sym}"'"'
+           echo "$tmp" | \
+             sed -e "s/'/'\"'\"'/g" -e "s/^/$sym='/" -e "s/$/'/" >>config.sh
+       done
+       ;;
+    esac
+fi
+
+: Finish up
+CONFIG=true
+
+echo " "
+dflt=''
+fastread=''
+echo "If you didn't make any mistakes, then just type a carriage return here."
+rp="If you need to edit config.sh, do it as a shell escape here:"
+$echo $n "$rp $c"
+. UU/myread
+case "$ans" in
+'') ;;
+*) : in case they cannot read
+    eval $ans;;
+esac
+chmod +x doSH
+./doSH
+
+if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then
+    dflt=n
+    $cat <<EOM
+
+Now you need to generate make dependencies by running "make depend".
+You might prefer to run it in background: "make depend > makedepend.out &"
+It can take a while, so you might not want to run it right now.
+
+EOM
+    rp="Run make depend now? [$dflt]"
+    $echo $n "$rp $c"
+    . UU/myread
+    case "$ans" in
+    y*) make depend && echo "Now you must run a make."
+       ;;
+    *)  echo "You must run 'make depend' then 'make'."
+       ;;
+    esac
+elif test -f [Mm]akefile; then
+    echo " "
+    echo "Now you must run a make."
+else
+    echo "Done."
+fi
+
+$rm -f kit*isdone
+$rm -rf UU
+: end of Configure