--- /dev/null
+: This file was created by running packinit on Fri Mar 2 09:50:32 EST 2007.
+: Do not hand edit -- run packinit again if changes are to be made.
+packver='3.036'
+: Basic variables
+package=CobraMUSH
+baserev=1.1
+patchbranch=1
+copyright=' '
+mydiff=''
+maintname='CobraMUSH Development Team'
+maintloc='devteam@cobramush.org'
+ftpsite='cobramush.org'
+orgname=''
+newsgroups=''
+recipients=''
+ftpdir=''
+mailagent='false'
+changelog=' '
+changercs=0
+: File lookup extensions
+cext=''
+shext=''
+: Mailing list variables
+list_users='false'
+list_name=''
+list_addr=''
+list_request=''
+list_manager=''
+list_sub=''
+list_unsub=''
+: Derivative variables -- do not change
+revbranch="$baserev.$patchbranch"
+++ /dev/null
-#! /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 have a look at the prototypical config_h.SH file
-# 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.)
-#
-# Yes, you may rip this off to use in other distribution packages. This
-# script belongs to the public domain and cannot be copyrighted.
-#
-# (Note: this Configure script was generated automatically. Rather than
-# working with this copy of Configure, you may wish to get metaconfig.
-# The dist-3.0 package (which contains metaconfig) was posted in
-# comp.sources.misc and is available on CPAN under authors/id/RAM so
-# you may fetch it yourself from your nearest archive site.)
-#
-
-# $Id: Head.U 1.3 Mon, 10 Nov 2003 14:51:32 -0600 dunemush $
-#
-# Generated on Mon Sep 11 02:11:00 EDT 2006 [metaconfig 3.0 PL70]
-
-cat >/tmp/c1$$ <<EOF
-ARGGGHHHH!!!!!
-
-SCO csh still thinks true is false. Write to SCO today and tell them that next
-year Configure ought to "rm /bin/csh" unless they fix their blasted shell. :-)
-
-(Actually, Configure ought to just patch csh in place. Hmm. Hmmmmm. All
-we'd have to do is go in and swap the && and || tokens, wherever they are.)
-
-[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 $argv:q
-
-(exit $?0) || cat /tmp/c2$$
-(exit $?0) || exec sh $0 $argv:q
-rm -f /tmp/c1$$ /tmp/c2$$
-
-: compute my invocation name
-me=$0
-case "$0" in
-*/*)
- me=`echo $0 | sed -e 's!.*/\(.*\)!\1!' 2>/dev/null`
- test "$me" || me=$0
- ;;
-esac
-
-: Proper PATH separator
-p_=:
-: On OS/2 this directory should exist if this is not floppy only system :-]
-if test -d c:/.; then
- : Check for cygwin32 emulation
- case "x$OSTYPE$OS" in
- x*msys*Windows*)
- echo 'Running on Windows? Using the MinGW MSys tools...'
- ;;
- x*win32*)
- echo 'Running on Windows? Assuming cygwin32 emulation tools...'
- ;;
- x*windows*)
- echo 'Running on Windows? Assuming cygwin32 emulation tools...'
- ;;
- x*cygwin*)
- echo 'Looks like cygwin32...'
- ;;
- x*)
- p_=\;
- PATH=`cmd /c "echo %PATH%" | tr '\\\\' / `
- OS2_SHELL=`cmd /c "echo %OS2_SHELL%" | tr '\\\\' / | tr '[A-Z]' '[a-z]'`
- ;;
- esac
-fi
-
-: Proper PATH setting
-paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
-paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
-paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
-paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
-paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
-paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin"
-paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
-paths="$paths /sbin /usr/sbin /usr/libexec /gnuwin32/b18/H-i386-cygwin32/bin"
-
-case "x$OSTYPE$OS" in
- x*msys*Windows*)
- PATH='/usr/local/bin:/mingw/bin:/bin:/perl/bin'
- ;;
- x*)
- for p in $paths
- do
- case "$p_$PATH$p_" in
- *$p_$p$p_*) ;;
- *) test -d $p && PATH=$PATH$p_$p ;;
- esac
- done
-
- PATH=.$p_$PATH
- export PATH
- ;;
-esac
-
-: shall we be using ksh?
-inksh=''
-needksh=''
-avoidksh=''
-newsh=/bin/ksh
-changesh=''
-if (PATH=.; alias -x) >/dev/null 2>&1; then
- inksh=true
-fi
-if test -f /hp-ux -a -f /bin/ksh; then
- needksh='to avoid sh bug in "here document" expansion'
-fi
-if test -d /usr/lpp -a -f /usr/bin/bsh -a -f /usr/bin/uname; then
- if test X`/usr/bin/uname -v` = X4; then
- avoidksh="to avoid AIX 4's /bin/sh"
- newsh=/usr/bin/bsh
- fi
-fi
-case "$inksh/$needksh" in
-/[a-z]*)
- unset ENV
- changesh=true
- reason="$needksh"
- ;;
-esac
-case "$inksh/$avoidksh" in
-true/[a-z]*)
- changesh=true
- reason="$avoidksh"
- ;;
-esac
-case "$inksh/$needksh-$avoidksh-" in
-true/--)
- cat <<EOM
-(I see you are using the Korn shell. Some ksh's blow up on $me,
-mainly on older exotic systems. If yours does, try the Bourne shell instead.)
-EOM
- ;;
-esac
-case "$changesh" in
-true)
- echo "(Feeding myself to $newsh $reason.)"
- case "$0" in
- Configure|*/Configure) exec $newsh $0 "$@";;
- *) exec $newsh Configure "$@";;
- esac
- ;;
-esac
-
-: Configure runs within the UU subdirectory
-test -d UU || mkdir UU
-unset CDPATH
-cd UU && rm -f ./*
-
-d_bsd=''
-d_eunice=''
-d_xenix=''
-eunicefix=''
-Mcc=''
-ar=''
-awk=''
-bash=''
-bison=''
-byacc=''
-cat=''
-chgrp=''
-chmod=''
-chown=''
-comm=''
-compress=''
-cp=''
-cpio=''
-cpp=''
-csh=''
-date=''
-echo=''
-egrep=''
-emacs=''
-expr=''
-find=''
-flex=''
-gcc=''
-grep=''
-gzip=''
-inews=''
-ksh=''
-less=''
-line=''
-lint=''
-ln=''
-lp=''
-lpr=''
-ls=''
-mail=''
-mailx=''
-make=''
-mkdir=''
-more=''
-mv=''
-nroff=''
-perl=''
-pg=''
-pmake=''
-pr=''
-rm=''
-rmail=''
-sed=''
-sendmail=''
-shar=''
-sleep=''
-smail=''
-sort=''
-submit=''
-tail=''
-tar=''
-tbl=''
-test=''
-touch=''
-tr=''
-troff=''
-uname=''
-uniq=''
-uptime=''
-uuname=''
-vi=''
-zcat=''
-zip=''
-hint=''
-myuname=''
-osname=''
-osvers=''
-Author=''
-Date=''
-Header=''
-Id=''
-Locker=''
-Log=''
-RCSfile=''
-Revision=''
-Source=''
-State=''
-archobjs=''
-firstmakefile=''
-cc=''
-gccversion=''
-ccflags=''
-cppflags=''
-ldflags=''
-lkflags=''
-locincpth=''
-optimize=''
-warnings=''
-cdecl=''
-cf_email=''
-cf_name=''
-cf_by=''
-cf_time=''
-contains=''
-cpplast=''
-cppminus=''
-cpprun=''
-cppstdin=''
-d_gettblsz=''
-nofile=''
-tablesize=''
-d_access=''
-d_argsinfp=''
-d_assert=''
-d_attribut=''
-d_bcopy=''
-d_bindtextdomain=''
-d_bzero=''
-d_const=''
-cryptlib=''
-d_crypt=''
-i_crypt=''
-d_force_ipv4=''
-d_fpsetmask=''
-d_fpsetround=''
-i_floatingpoint=''
-d_gaistr=''
-d_getadinf=''
-d_getdate=''
-d_gethbynm2=''
-d_getnminf=''
-d_getpagsz=''
-pagesize=''
-d_getprior=''
-d_gettext=''
-d_gnulibc=''
-d_huge=''
-d_huge_val=''
-d_int_max=''
-d_maxdouble=''
-d_maxint=''
-d_ieee=''
-d_in2p=''
-d_internet=''
-d_ipv6=''
-d_itimer=''
-d_keepsig=''
-d_memcpy=''
-d_memmove=''
-d_memset=''
-d_newstyle=''
-d_open3=''
-d_portable=''
-d_lrand48=''
-d_rand=''
-d_random=''
-d_rename=''
-d_rlimit=''
-d_rusage=''
-d_select=''
-d_sendmail=''
-d_setlocale=''
-d_setpgid=''
-d_bsdsetpgrp=''
-d_setpgrp=''
-d_setprior=''
-d_sigaction=''
-d_sigchld=''
-d_sigcld=''
-d_signalproto=''
-d_sigprocmask=''
-d_snprintf=''
-d_oldsock=''
-d_socket=''
-d_sockpair=''
-sockethdr=''
-socketlib=''
-d_socklen=''
-d_strccmp=''
-d_index=''
-d_strchr=''
-d_strcoll=''
-d_strdup=''
-d_strxfrm=''
-d_sysconf=''
-d_sysctl=''
-d_sysctlbyname=''
-d_tcl=''
-i_tcl=''
-d_textdomain=''
-d_timelocal=''
-d_toupper=''
-d_uint32_t=''
-d_uptime=''
-d_urandom=''
-d_uwait3=''
-d_uwait=''
-d_voidsig=''
-signal_t=''
-d_volatile=''
-d_vsnprintf=''
-d_waitpid=''
-h_fcntl=''
-h_sysfile=''
-i_arpainet=''
-i_arpanameser=''
-i_errno=''
-i_syserrno=''
-i_fcntl=''
-i_libintl=''
-i_limits=''
-i_locale=''
-i_malloc=''
-i_memory=''
-i_netdb=''
-i_niin=''
-i_sysin=''
-i_nitcp=''
-i_setjmp=''
-i_stddef=''
-i_stdint=''
-i_stdlib=''
-i_string=''
-strings=''
-i_sysfile=''
-d_voidtty=''
-i_bsdioctl=''
-i_sysfilio=''
-i_sysioctl=''
-i_syssockio=''
-i_sysmman=''
-i_syspage=''
-i_sysparam=''
-i_sysresrc=''
-i_sysselct=''
-i_syssock=''
-i_sysstat=''
-i_systypes=''
-i_sysvlimit=''
-i_syswait=''
-i_sgtty=''
-i_termio=''
-i_termios=''
-i_systime=''
-i_systimek=''
-i_time=''
-timeincl=''
-i_unistd=''
-i_values=''
-i_stdarg=''
-i_varargs=''
-i_varhdr=''
-install=''
-installdir=''
-libc=''
-d_mysql=''
-libmysqlclient=''
-glibpth=''
-libpth=''
-loclibpth=''
-plibpth=''
-xlibpth=''
-libs=''
-d_openssl=''
-libssl=''
-lns=''
-mailer=''
-make_set_make=''
-d_mymalloc=''
-freetype=''
-mallocobj=''
-mallocsrc=''
-malloctype=''
-usemymalloc=''
-mydomain=''
-myhostname=''
-phostname=''
-c=''
-n=''
-d_berknames=''
-d_passnames=''
-d_usgnames=''
-nametype=''
-groupcat=''
-hostcat=''
-passcat=''
-package=''
-spackage=''
-pidtype=''
-prototype=''
-sh=''
-sizetype=''
-so=''
-d_keepalive=''
-d_keepidle=''
-sharpbang=''
-shsharp=''
-spitshell=''
-src=''
-startsh=''
-sysman=''
-nm_opt=''
-nm_so_opt=''
-runnm=''
-usenm=''
-incpath=''
-mips=''
-mips_type=''
-usrinc=''
-defvoidused=''
-voidflags=''
-CONFIG=''
-
-define='define'
-undef='undef'
-smallmach='pdp11 i8086 z8000 i80286 iAPX286'
-rmlist=''
-
-: 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
-
-: list of known cpp symbols, sorted alphabetically
-al="AMIX BIT_MSF BSD BSD4_3 BSD_NET2 CMU CRAY DGUX DOLPHIN DPX2"
-al="$al GO32 GOULD_PN HP700 I386 I80960 I960 Lynx M68000 M68K MACH"
-al="$al MIPSEB MIPSEL MSDOS MTXINU MULTIMAX MVS"
-al="$al M_COFF M_I186 M_I286 M_I386 M_I8086 M_I86 M_I86SM"
-al="$al M_SYS3 M_SYS5 M_SYSIII M_SYSV M_UNIX M_XENIX"
-al="$al NeXT OCS88 OSF1 PARISC PC532 PORTAR POSIX"
-al="$al PWB R3000 RES RISC6000 RT Sun386i SVR3 SVR4"
-al="$al SYSTYPE_BSD SYSTYPE_SVR4 SYSTYPE_SYSV Tek4132 Tek4300"
-al="$al UMAXV USGr4 USGr4_2 UTEK UTS UTek UnicomPBB UnicomPBD Utek"
-al="$al VMS Xenix286"
-al="$al _AIX _AIX32 _AIX370 _AM29000 _COFF _CRAY _CX_UX _EPI"
-al="$al _IBMESA _IBMR2 _M88K _M88KBCS_TARGET"
-al="$al _MIPSEB _MIPSEL _M_COFF _M_I86 _M_I86SM _M_SYS3"
-al="$al _M_SYS5 _M_SYSIII _M_SYSV _M_UNIX _M_XENIX _NLS _PGC_ _R3000"
-al="$al _SYSTYPE_BSD _SYSTYPE_BSD43 _SYSTYPE_SVR4"
-al="$al _SYSTYPE_SYSV _SYSV3 _U370 _UNICOS"
-al="$al __386BSD__ __BIG_ENDIAN __BIG_ENDIAN__ __BSD_4_4__"
-al="$al __DGUX__ __DPX2__ __H3050R __H3050RX"
-al="$al __LITTLE_ENDIAN __LITTLE_ENDIAN__ __MACH__"
-al="$al __MIPSEB __MIPSEB__ __MIPSEL __MIPSEL__"
-al="$al __Next__ __OSF1__ __PARAGON__ __PGC__ __PWB __STDC__"
-al="$al __SVR4_2__ __UMAXV__"
-al="$al ____386BSD____ __alpha __alpha__ __amiga"
-al="$al __bsd4_2 __bsd4_2__ __bsdi__ __convex__"
-al="$al __host_mips__"
-al="$al __hp9000s200 __hp9000s300 __hp9000s400 __hp9000s500"
-al="$al __hp9000s500 __hp9000s700 __hp9000s800"
-al="$al __hppa __hpux __hp_osf __i286 __i286__ __i386 __i386__"
-al="$al __i486 __i486__ __i860 __i860__ __ibmesa __ksr1__ __linux__"
-al="$al __m68k __m68k__ __m88100__ __m88k __m88k__"
-al="$al __mc68000 __mc68000__ __mc68020 __mc68020__"
-al="$al __mc68030 __mc68030__ __mc68040 __mc68040__"
-al="$al __mc88100 __mc88100__ __mips __mips__"
-al="$al __motorola__ __osf__ __pa_risc __sparc__ __stdc__"
-al="$al __sun __sun__ __svr3__ __svr4__ __ultrix __ultrix__"
-al="$al __unix __unix__ __uxpm__ __uxps__ __vax __vax__"
-al="$al _host_mips _mips _unix"
-al="$al a29k aegis aix aixpc alliant alpha am29000 amiga ansi ardent"
-al="$al apollo ardent att386 att3b"
-al="$al bsd bsd43 bsd4_2 bsd4_3 bsd4_4 bsdi bull"
-al="$al cadmus clipper concurrent convex cray ctix"
-al="$al dmert encore gcos gcx gimpel gould"
-al="$al hbullx20 hcx host_mips hp200 hp300 hp700 hp800"
-al="$al hp9000 hp9000s300 hp9000s400 hp9000s500"
-al="$al hp9000s700 hp9000s800 hp9k8 hppa hpux"
-al="$al i186 i286 i386 i486 i8086"
-al="$al i80960 i860 iAPX286 ibm ibm032 ibmrt interdata is68k"
-al="$al ksr1 linux luna luna88k m68k m88100 m88k"
-al="$al mc300 mc500 mc68000 mc68010 mc68020 mc68030"
-al="$al mc68040 mc68060 mc68k mc68k32 mc700"
-al="$al mc88000 mc88100 merlin mert mips mvs n16"
-al="$al ncl_el ncl_mr"
-al="$al news1500 news1700 news1800 news1900 news3700"
-al="$al news700 news800 news900 ns16000 ns32000"
-al="$al ns32016 ns32332 ns32k nsc32000 os osf"
-al="$al parisc pc532 pdp11 plexus posix pyr"
-al="$al riscix riscos scs sequent sgi sinix sony sony_news"
-al="$al sonyrisc sparc sparclite spectrum stardent stratos"
-al="$al sun sun3 sun386 svr4 sysV68 sysV88"
-al="$al titan tower tower32 tower32_200 tower32_600 tower32_700"
-al="$al tower32_800 tower32_850 tss u370 u3b u3b2 u3b20 u3b200"
-al="$al u3b20d u3b5 ultrix unix unixpc unos vax venix vms"
-al="$al xenix z8000"
-
-: No trailing extension on UNIX executables
-_exe=''
-: Extra object files, if any, needed on this platform.
-archobjs=''
-gccversion=''
-: change the next line if compiling for Xenix/286 on Xenix/386
-xlibpth='/usr/lib/386 /lib/386'
-
-: Possible local library directories to search.
-loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
-loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
-
-: general looking path for locating libraries
-glibpth="/shlib /usr/shlib /lib/pa1.1 /usr/lib/large"
-glibpth="$glibpth /lib /usr/lib $xlibpth"
-glibpth="$glibpth /lib/large /usr/lib/small /lib/small"
-glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
-
-: Private path used by Configure to find libraries. Its value
-: is prepended to libpth. This variable takes care of special
-: machines, like the mips. Usually, it should be empty.
-plibpth=''
-
-large=''
-: full support for void wanted by default
-defvoidused=15
-
-: Possible local include directories to search.
-: Set locincpth to "" in a hint file to defeat local include searches.
-locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
-locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
-locincpth="$locincpth /usr/kerberos/include"
-:
-: no include file wanted by default
-inclwanted=''
-
-: default library list
-libswanted=''
-defvoidused=15
-libswanted='nsl socket m c crypt bind resolv ld dl tcl intl'
-
-: Find the basic shell for Bourne shell scripts
-case "$sh" in
-'')
- case "$SYSTYPE" in
- *bsd*|sys5*) xxx="/$SYSTYPE/bin/sh";;
- *) xxx='/bin/sh';;
- esac
- if test -f "$xxx"; then
- sh="$xxx"
- else
- : Build up a list and do a single loop so we can 'break' out.
- pth=`echo $PATH | sed -e "s/$p_/ /g"`
- for xxx in sh bash ksh pdksh ash; do
- for p in $pth; do
- try="$try ${p}/${xxx}"
- done
- done
- for xxx in $try; do
- if test -f "$xxx"; then
- sh="$xxx";
- break
- elif test -f "$xxx.exe"; then
- sh="$xxx";
- break
- fi
- done
- fi
- ;;
-esac
-
-case "$sh" in
-'') cat <<EOM >&2
-$me: Fatal Error: I can't find a Bourne Shell anywhere.
-
-Usually it's in /bin/sh. How did you even get this far?
-Please contact me (Nveid) at devteam@cobramush.org and
-we'll try to straighten this all out.
-EOM
- exit 1
- ;;
-esac
-
-: see if sh knows # comments
-if `$sh -c '#' >/dev/null 2>&1`; then
- shsharp=true
- spitshell=cat
- xcat=/bin/cat
- test -f $xcat || xcat=/usr/bin/cat
- echo "#!$xcat" >try
- $eunicefix try
- chmod +x try
- ./try > today
- if test -s today; then
- sharpbang='#!'
- else
- echo "#! $xcat" > try
- $eunicefix try
- chmod +x try
- ./try > today
- if test -s today; then
- sharpbang='#! '
- else
- sharpbang=': use '
- fi
- fi
-else
- echo " "
- echo "Your $sh doesn't grok # comments--I will strip them later on."
- shsharp=false
- cd ..
- echo "exec grep -v '^[ ]*#'" >spitshell
- chmod +x spitshell
- $eunicefix spitshell
- spitshell=`pwd`/spitshell
- cd UU
- echo "I presume that if # doesn't work, #! won't work either!"
- sharpbang=': use '
-fi
-rm -f try today
-
-: figure out how to guarantee sh startup
-case "$startsh" in
-'') startsh=${sharpbang}${sh} ;;
-*)
-esac
-cat >try <<EOSS
-$startsh
-set abc
-test "$?abc" != 1
-EOSS
-
-chmod +x try
-$eunicefix try
-if ./try; then
- : echo "Yup, it does."
-else
- echo "Hmm... '$startsh' does not guarantee sh startup..."
- echo "You may have to fix up the shell scripts to make sure $sh runs them."
-fi
-rm -f try
-
-: produce awk script to parse command line options
-cat >options.awk <<'EOF'
-BEGIN {
- optstr = "dD:eEf:hKOrsSU:V"; # getopt-style specification
-
- len = length(optstr);
- for (i = 1; i <= len; i++) {
- c = substr(optstr, i, 1);
- if (i < len) a = substr(optstr, i + 1, 1); else a = "";
- if (a == ":") {
- arg[c] = 1;
- i++;
- }
- opt[c] = 1;
- }
-}
-{
- expect = 0;
- str = $0;
- if (substr(str, 1, 1) != "-") {
- printf("'%s'\n", str);
- next;
- }
- len = length($0);
- for (i = 2; i <= len; i++) {
- c = substr(str, i, 1);
- if (!opt[c]) {
- printf("-%s\n", substr(str, i));
- next;
- }
- printf("-%s\n", c);
- if (arg[c]) {
- if (i < len)
- printf("'%s'\n", substr(str, i + 1));
- else
- expect = 1;
- next;
- }
- }
-}
-END {
- if (expect)
- print "?";
-}
-EOF
-
-: process the command line options
-set X `for arg in "$@"; do echo "X$arg"; done |
- sed -e s/X// | awk -f options.awk`
-eval "set $*"
-shift
-rm -f options.awk
-
-: set up default values
-fastread=''
-reuseval=false
-config_sh=''
-alldone=''
-error=''
-silent=''
-extractsh=''
-override=''
-knowitall=''
-rm -f optdef.sh
-cat >optdef.sh <<EOS
-$startsh
-EOS
-
-
-: option parsing
-while test $# -gt 0; do
- case "$1" in
- -d) shift; fastread=yes;;
- -e) shift; alldone=cont;;
- -f)
- shift
- cd ..
- if test -r "$1"; then
- config_sh="$1"
- else
- echo "$me: cannot read config file $1." >&2
- error=true
- fi
- cd UU
- shift;;
- -h) shift; error=true;;
- -r) shift; reuseval=true;;
- -s) shift; silent=true; realsilent=true;;
- -E) shift; alldone=exit;;
- -K) shift; knowitall=true;;
- -O) shift; override=true;;
- -S) shift; silent=true; extractsh=true;;
- -D)
- shift
- case "$1" in
- *=)
- echo "$me: use '-U symbol=', not '-D symbol='." >&2
- echo "$me: ignoring -D $1" >&2
- ;;
- *=*) echo "$1" | \
- sed -e "s/'/'\"'\"'/g" -e "s/=\(.*\)/='\1'/" >> optdef.sh;;
- *) echo "$1='define'" >> optdef.sh;;
- esac
- shift
- ;;
- -U)
- shift
- case "$1" in
- *=) echo "$1" >> optdef.sh;;
- *=*)
- echo "$me: use '-D symbol=val', not '-U symbol=val'." >&2
- echo "$me: ignoring -U $1" >&2
- ;;
- *) echo "$1='undef'" >> optdef.sh;;
- esac
- shift
- ;;
- -V) echo "$me generated by metaconfig 3.0 PL70." >&2
- exit 0;;
- --) break;;
- -*) echo "$me: unknown option $1" >&2; shift; error=true;;
- *) break;;
- esac
-done
-
-case "$error" in
-true)
- cat >&2 <<EOM
-Usage: $me [-dehrsEKOSV] [-f config.sh] [-D symbol] [-D symbol=value]
- [-U symbol] [-U symbol=]
- -d : use defaults for all answers.
- -e : go on without questioning past the production of config.sh.
- -f : specify an alternate default configuration file.
- -h : print this help message and exit (with an error status).
- -r : reuse C symbols value if possible (skips costly nm extraction).
- -s : silent mode, only echoes questions and essential information.
- -D : define symbol to have some value:
- -D symbol symbol gets the value 'define'
- -D symbol=value symbol gets the value 'value'
- -E : stop at the end of questions, after having produced config.sh.
- -K : do not use unless you know what you are doing.
- -O : let -D and -U override definitions from loaded configuration file.
- -S : perform variable substitutions on all .SH files (can mix with -f)
- -U : undefine symbol:
- -U symbol symbol gets the value 'undef'
- -U symbol= symbol gets completely empty
- -V : print version number and exit (with a zero status).
-EOM
- exit 1
- ;;
-esac
-
-: Sanity checks
-case "$fastread$alldone" in
-yescont|yesexit) ;;
-*)
- if test ! -t 0; then
- echo "Say 'sh Configure', not 'sh <Configure'"
- exit 1
- fi
- ;;
-esac
-
-exec 4>&1
-case "$silent" in
-true) exec 1>/dev/null;;
-esac
-
-: run the defines and the undefines, if any, but leave the file out there...
-touch optdef.sh
-. ./optdef.sh
-
-: set package name
-package=cobramush
-
-: Some greps do not return status, grrr.
-echo "grimblepritz" >grimble
-if grep blurfldyick grimble >/dev/null 2>&1 ; then
- contains=contains
-elif grep grimblepritz grimble >/dev/null 2>&1 ; then
- contains=grep
-else
- contains=contains
-fi
-rm -f grimble
-: 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
-
-: first determine how to suppress newline on echo command
-echo " "
-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 "The star should be here-->$c"
-echo '*'
-rm -f .echotmp
-
-: compute the number of columns on the terminal for proper question formatting
-case "$COLUMNS" in
-'') COLUMNS='80';;
-esac
-
-: set up the echo used in my read
-myecho="case \"\$xxxm\" in
-'') echo $n \"\$rp $c\" >&4;;
-*) case \"\$rp\" in
- '') echo $n \"[\$xxxm] $c\";;
- *)
- if test \`echo \"\$rp [\$xxxm] \" | wc -c\` -ge $COLUMNS; then
- echo \"\$rp\" >&4
- echo $n \"[\$xxxm] $c\" >&4
- else
- echo $n \"\$rp [\$xxxm] $c\" >&4
- fi
- ;;
- esac;;
-esac"
-
-: now set up to do reads with possible shell escape and default assignment
-cat <<EOSC >myread
-$startsh
-xxxm=\$dflt
-$myecho
-ans='!'
-case "\$fastread" in
-yes) case "\$dflt" in
- '') ;;
- *) ans='';
- case "\$silent-\$rp" in
- true-) ;;
- *) echo " " >&4;;
- esac;;
- esac;;
-*) case "\$silent" in
- true) case "\$rp" in
- '') ans='';;
- esac;;
- esac;;
-esac
-while expr "X\$ans" : "X!" >/dev/null; do
- read answ
- set x \$xxxm
- shift
- aok=''; eval "ans=\\"\$answ\\"" && aok=y
- case "\$answ" in
- "!")
- sh 1>&4
- echo " "
- $myecho
- ;;
- !*)
- set x \`expr "X\$ans" : "X!\(.*\)\$"\`
- shift
- sh 1>&4 -c "\$*"
- echo " "
- $myecho
- ;;
- "\$ans")
- case "\$ans" in
- \\&*)
- set x \`expr "X\$ans" : "X&\(.*\)\$"\`
- shift
- case "\$1" in
- -d)
- fastread=yes
- echo "(OK, I'll run with -d after this question.)" >&4
- ;;
- -*)
- echo "*** Sorry, \$1 not supported yet." >&4
- ;;
- esac
- $myecho
- ans=!
- ;;
- esac;;
- *)
- case "\$aok" in
- y)
- echo "*** Substitution done -- please confirm."
- xxxm="\$ans"
- ans=\`echo $n "\$ans$c" | tr '\012' ' '\`
- xxxm="\$ans"
- ans=!
- ;;
- *)
- echo "*** Error -- try again."
- ans=!
- ;;
- esac
- $myecho
- ;;
- esac
- case "\$ans\$xxxm\$nostick" in
- '')
- ans=!
- $myecho
- ;;
- esac
-done
-case "\$ans" in
-'') ans="\$xxxm";;
-esac
-EOSC
-
-: Find the path to the source tree
-case "$src" in
-'') src=`echo $0 | sed -e 's%/[^/][^/]*$%%'`;;
-esac
-case "$src" in
-'')
- src=.
- rsrc=..
- ;;
-/*) rsrc="$src/..";;
-*) rsrc="../$src";;
-esac
-if test -f $rsrc/Configure && \
- $contains "^package=$package" $rsrc/Configure >/dev/null 2>&1
-then
- : found it, so we are ok.
-else
- rsrc=''
- for src in . .. ../.. ../../.. ../../../..; do
- if test -f ../$src/Configure && \
- $contains "^package=$package" ../$src/Configure >/dev/null 2>&1
- then
- rsrc=../$src
- break
- fi
- done
-fi
-case "$rsrc" in
-'')
- echo " "
- dflt=
- rp="Directory where sources for $package are located?"
- . ./myread
- src="$ans"
- rsrc="$src"
- if test -f $rsrc/Configure && \
- $contains "^package=$package" $rsrc/Configure >/dev/null 2>&1
- then
- echo "Ok, I've found them under $src"
- else
- echo "Sorry, I can't seem to be able to locate $package sources." >&4
- exit 1
- fi
- ;;
-../.) ;;
-*)
- echo " "
- echo "Sources for $package found in $src" >&4
- ;;
-esac
-
-: script used to extract .SH files with variable substitutions
-cat >extract <<'EOS'
-CONFIG=true
-echo "Doing variable substitutions on .SH files..."
-if test -f $src/MANIFEST; then
- set x `awk '{print $1}' <$src/MANIFEST | grep '\.SH'`
-else
- echo "(Looking for .SH files under the source directory.)"
- set x `(cd $src; find . -name "*.SH" -print)`
-fi
-shift
-case $# in
-0) set x `(cd $src; echo *.SH)`; shift;;
-esac
-if test ! -f $src/$1; then
- shift
-fi
-mkdir_p='
-name=$1;
-create="";
-while test $name; do
- if test ! -d "$name"; then
- create="$name $create";
- name=`echo $name | sed -e "s|^[^/]*$||"`;
- name=`echo $name | sed -e "s|\(.*\)/.*|\1|"`;
- else
- name="";
- fi;
-done;
-for file in $create; do
- mkdir $file;
-done
-'
-for file in $*; do
- case "$src" in
- ".")
- case "$file" in
- */*)
- dir=`expr X$file : 'X\(.*\)/'`
- file=`expr X$file : 'X.*/\(.*\)'`
- (cd $dir && . ./$file)
- ;;
- *)
- . ./$file
- ;;
- esac
- ;;
- *)
- case "$file" in
- */*)
- dir=`expr X$file : 'X\(.*\)/'`
- file=`expr X$file : 'X.*/\(.*\)'`
- (set x $dir; shift; eval $mkdir_p)
- sh <$src/$dir/$file
- ;;
- *)
- sh <$src/$file
- ;;
- esac
- ;;
- esac
-done
-if test -f $src/config_h.SH; then
- if test ! -f config.h; then
- : oops, they left it out of MANIFEST, probably, so do it anyway.
- . $src/config_h.SH
- fi
-fi
-EOS
-
-: extract files and exit if asked to do so
-case "$extractsh" in
-true)
- case "$realsilent" in
- true) ;;
- *) exec 1>&4;;
- esac
- case "$config_sh" in
- '') config_sh='config.sh'; config="$rsrc/config.sh";;
- /*) config="$config_sh";;
- *) config="$rsrc/$config_sh";;
- esac
- echo " "
- echo "Fetching answers from $config_sh..."
- . $config
- test "$override" && . ./optdef.sh
- echo " "
- cd ..
- . UU/extract
- rm -rf UU
- echo "Done."
- exit 0
- ;;
-esac
-
-: Eunice requires " " instead of "", can you believe it
-echo " "
-: Here we go...
-echo "Beginning of configuration questions for $package."
-
-trap 'echo " "; test -d ../UU && rm -rf X $rmlist; exit 1' 1 2 3 15
-
-: Now test for existence of everything in MANIFEST
-echo " "
-if test -f $rsrc/MANIFEST; then
- echo "First let's make sure your kit is complete. Checking..." >&4
- awk '$1 !~ /PACK[A-Z]+/ {print $1}' $rsrc/MANIFEST | split -50
- rm -f missing
- tmppwd=`pwd`
- for filelist in x??; do
- (cd $rsrc; ls `cat $tmppwd/$filelist` >/dev/null 2>>$tmppwd/missing)
- done
- if test -s missing; then
- cat missing >&4
- cat >&4 <<'EOM'
-
-THIS PACKAGE SEEMS TO BE INCOMPLETE.
-
-You have the option of continuing the configuration process, despite the
-distinct possibility that your kit is damaged, by typing 'y'es. If you
-do, don't blame me if something goes wrong. I advise you to type 'n'o
-and contact the author (devteam@cobramush.org).
-
-EOM
- echo $n "Continue? [n] $c" >&4
- read ans
- case "$ans" in
- y*)
- echo "Continuing..." >&4
- rm -f missing
- ;;
- *)
- echo "ABORTING..." >&4
- kill $$
- ;;
- esac
- else
- echo "Looks good..."
- fi
-else
- echo "There is no MANIFEST file. I hope your kit is complete !"
-fi
-rm -f missing x??
-
-: create .config dir to save info across Configure sessions
-test -d ../.config || mkdir ../.config
-cat >../.config/README <<EOF
-This directory created by Configure to save information that should
-persist across sessions for $package.
-
-You may safely delete it if you wish.
-EOF
-
-: general instructions
-needman=true
-firsttime=true
-user=`(logname) 2>/dev/null`
-case "$user" in
-'') user=`whoami 2>&1`;;
-esac
-if $contains "^$user\$" ../.config/instruct >/dev/null 2>&1; then
- firsttime=false
- echo " "
- rp='Would you like to see the instructions?'
- dflt=n
- . ./myread
- case "$ans" in
- [yY]*) ;;
- *) needman=false;;
- esac
-fi
-if $needman; then
- cat <<EOH
-
-This installation shell script will examine your system and ask you questions
-to determine how the cobramush 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=''
- dflt='Type carriage return to continue'
- . ./myread
- cat <<'EOH'
-
-The prompter used in this script allows you to use shell variables and
-backticks in your answers. You may use $1, $2, etc... to refer to the words
-in the default answer, as if the default line was a set of arguments given to a
-script shell. This means you may also use $* to repeat the whole default line,
-so you do not have to re-type everything to add something to the default.
-
-Everytime there is a substitution, you will have to confirm. If there is an
-error (e.g. an unmatched backtick), the default answer will remain unchanged
-and you will be prompted again.
-
-If you are in a hurry, you may run 'Configure -d'. This will bypass nearly all
-the questions and use the computed defaults (or the previous answers if there
-was already a config.sh file). Type 'Configure -h' for a list of options.
-You may also start interactively and then answer '& -d' at any prompt to turn
-on the non-interactive behaviour for the remaining of the execution.
-
-EOH
- . ./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 yours, your best bet is to edit
-Configure and run it again. If you can't run Configure for some reason,
-you'll have to generate a config.sh file by hand. Whatever problems you
-have, let me (devteam@cobramush.org) know how I blew it.
-
-This installation script affects things in two ways:
-
-1) it may do direct variable substitutions on some of the files included
- in this kit.
-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
- dflt='Type carriage return to continue'
- . ./myread
- case "$firsttime" in
- true) echo $user >>../.config/instruct;;
- esac
-fi
-
-: find out where common programs are
-echo " "
-echo "Locating common programs..." >&4
-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
- ;;
- *)
- for thisthing in \$dir/\$thing; do
- : just loop through to pick last item
- done
- if test -f \$thisthing; then
- echo \$thisthing
- 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="
-awk
-cat
-chmod
-comm
-cp
-echo
-expr
-grep
-make
-mkdir
-rm
-sed
-sort
-touch
-tr
-uniq
-"
-trylist="
-Mcc
-cpp
-date
-line
-ln
-mail
-perl
-rmail
-sendmail
-smail
-test
-uname
-uptime
-"
-pth=`echo $PATH | sed -e "s/$p_/ /g"`
-pth="$pth /lib /usr/lib"
-for file in $loclist; do
- eval xxx=\$$file
- case "$xxx" in
- /*|?:[\\/]*)
- if test -f "$xxx"; then
- : ok
- else
- echo "WARNING: no $xxx -- ignoring your setting for $file." >&4
- xxx=`./loc $file $file $pth`
- fi
- ;;
- '') xxx=`./loc $file $file $pth`;;
- *) xxx=`./loc $xxx $xxx $pth`;;
- esac
- eval $file=$xxx
- eval _$file=$xxx
- case "$xxx" in
- /*)
- echo $file is in $xxx.
- ;;
- ?:[\\/]*)
- echo $file is in $xxx.
- ;;
- *)
- echo "I don't know where '$file' is, and my life depends on it." >&4
- echo "Go find a public domain implementation or fix your PATH setting!" >&4
- exit 1
- ;;
- esac
-done
-echo " "
-echo "Don't worry if any of the following aren't found..."
-say=offhand
-for file in $trylist; do
- eval xxx=\$$file
- case "$xxx" in
- /*|?:[\\/]*)
- if test -f "$xxx"; then
- : ok
- else
- echo "WARNING: no $xxx -- ignoring your setting for $file." >&4
- xxx=`./loc $file $file $pth`
- fi
- ;;
- '') xxx=`./loc $file $file $pth`;;
- *) xxx=`./loc $xxx $xxx $pth`;;
- esac
- eval $file=$xxx
- eval _$file=$xxx
- case "$xxx" in
- /*)
- echo $file is in $xxx.
- ;;
- ?:[\\/]*)
- echo $file is in $xxx.
- ;;
- *)
- echo "I don't see $file out there, $say."
- say=either
- ;;
- esac
-done
-case "$egrep" in
-egrep)
- echo "Substituting grep for egrep."
- egrep=$grep
- ;;
-esac
-case "$ln" in
-ln)
- echo "Substituting cp for ln."
- ln=$cp
- ;;
-esac
-case "$test" in
-test)
- echo "Hopefully test is built into your sh."
- ;;
-*)
- if `sh -c "PATH= test true" >/dev/null 2>&1`; then
- echo "Using the test built into your sh."
- test=test
- _test=test
- fi
- ;;
-esac
-case "$echo" in
-echo)
- echo "Hopefully echo is built into your sh."
- ;;
-'') ;;
-*)
- echo " "
-echo "Checking compatibility between $echo and builtin echo (if any)..." >&4
- $echo $n "hi there$c" >foo1
- echo $n "hi there$c" >foo2
- if cmp foo1 foo2 >/dev/null 2>&1; then
- echo "They are compatible. In fact, they may be identical."
- else
- case "$n" in
- '-n') n='' c='\c';;
- *) n='-n' c='';;
- esac
- cat <<FOO
-They are not compatible! You are probably running ksh on a non-USG system.
-I'll have to use $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 '$n$c' to suppress newlines now. Life is ridiculous.
-
-FOO
- $echo $n "The star should be here-->$c"
- $echo "*"
- fi
- $rm -f foo1 foo2
- ;;
-esac
-
-: determine whether symbolic links are supported
-echo " "
-$touch blurfl
-if $ln -s blurfl sym > /dev/null 2>&1 ; then
- echo "Symbolic links are supported." >&4
- lns="$ln -s"
-else
- echo "Symbolic links are NOT supported." >&4
- lns="$ln"
-fi
-$rm -f blurfl sym
-
-: see whether [:lower:] and [:upper:] are supported character classes
-echo " "
-up='[A-Z]'
-low='[a-z]'
-case "`echo AbyZ | $tr '[:lower:]' '[:upper:]' 2>/dev/null`" in
-ABYZ)
- echo "Good, your tr supports [:lower:] and [:upper:] to convert case." >&4
- up='[:upper:]'
- low='[:lower:]'
- ;;
-*)
- echo "Your tr only supports [a-z] and [A-Z] to convert case." >&4
- ;;
-esac
-: set up the translation script tr, must be called with ./tr of course
-cat >tr <<EOSC
-$startsh
-case "\$1\$2" in
-'[A-Z][a-z]') exec $tr '$up' '$low';;
-'[a-z][A-Z]') exec $tr '$low' '$up';;
-esac
-exec $tr "\$@"
-EOSC
-chmod +x tr
-$eunicefix tr
-
-: Try to determine whether config.sh was made on this system
-case "$config_sh" in
-'')
-myuname=`( ($uname -a) 2>/dev/null || hostname) 2>&1`
-myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \
- ./tr '[A-Z]' '[a-z]' | tr '\012' ' '`
-newmyuname="$myuname"
-dflt=n
-case "$knowitall" in
-'')
- if test -f ../config.sh; then
- if $contains myuname= ../config.sh >/dev/null 2>&1; then
- eval "`grep myuname= ../config.sh`"
- fi
- if test "X$myuname" = "X$newmyuname"; then
- dflt=y
- fi
- fi
- ;;
-*) dflt=y;;
-esac
-
-: Get old answers from old config file if Configure was run on the
-: same system, otherwise use the hints.
-hint=default
-cd ..
-if test -f config.sh; then
- echo " "
- rp="I see a config.sh file. Shall I use it to set the defaults?"
- . UU/myread
- case "$ans" in
- n*|N*) echo "OK, I'll ignore it."; mv config.sh config.sh.old;;
- *) echo "Fetching default answers from your old config.sh file..." >&4
- tmp_n="$n"
- tmp_c="$c"
- tmp_sh="$sh"
- . ./config.sh
- cp config.sh UU
- n="$tmp_n"
- c="$tmp_c"
- : Older versions did not always set $sh. Catch re-use of such
- : an old config.sh.
- case "$sh" in
- '') sh="$tmp_sh" ;;
- esac
- hint=previous
- ;;
- esac
-fi
-if test ! -f config.sh; then
- $cat <<EOM
-
-First time through, eh? I have some defaults handy for the following systems:
-
-EOM
- (cd $src/hints; ls -C *.sh) | $sed 's/\.sh/ /g' >&4
- dflt=''
- : Half the following guesses are probably wrong... If you have better
- : tests or hints, please send them to devteam@cobramush.org
- : The metaconfig authors would also appreciate a copy...
- $test -f /irix && osname=irix
- $test -f /xenix && osname=sco_xenix
- $test -f /dynix && osname=dynix
- $test -f /dnix && osname=dnix
- $test -f /lynx.os && osname=lynxos
- $test -f /unicos && osname=unicos && osvers=`$uname -r`
- $test -f /unicosmk.ar && osname=unicosmk && osvers=`$uname -r`
- $test -f /bin/mips && /bin/mips && osname=mips
- $test -d /NextApps && set X `hostinfo | grep 'NeXT Mach.*:' | \
- $sed -e 's/://' -e 's/\./_/'` && osname=next && osvers=$4
- $test -d /usr/apollo/bin && osname=apollo
- $test -f /etc/saf/_sactab && osname=svr4
- $test -d /usr/include/minix && osname=minix
- if $test -d /MachTen; then
- osname=machten
- if $test -x /sbin/version; then
- osvers=`/sbin/version | $awk '{print $2}' |
- $sed -e 's/[A-Za-z]$//'`
- elif $test -x /usr/etc/version; then
- osvers=`/usr/etc/version | $awk '{print $2}' |
- $sed -e 's/[A-Za-z]$//'`
- else
- osvers="$2.$3"
- fi
- fi
- if $test -f $uname; then
- set X $myuname
- shift
-
- case "$5" in
- fps*) osname=fps ;;
- mips*)
- case "$4" in
- umips) osname=umips ;;
- *) osname=mips ;;
- esac;;
- [23]100) osname=mips ;;
- next*) osname=next ;;
- news*) osname=news ;;
- i386*)
- if $test -f /etc/kconfig; then
- osname=isc
- if test "$lns" = "ln -s"; then
- osvers=4
- elif $contains _SYSV3 /usr/include/stdio.h > /dev/null 2>&1 ; then
- osvers=3
- elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 ; then
- osvers=2
- fi
- fi
- ;;
- esac
-
- case "$1" in
- aix) osname=aix
- tmp=`( (oslevel) 2>/dev/null || echo "not found") 2>&1`
- case "$tmp" in
- 'not found') osvers="$4"."$3" ;;
- '<3240'|'<>3240') osvers=3.2.0 ;;
- '=3240'|'>3240'|'<3250'|'<>3250') osvers=3.2.4 ;;
- '=3250'|'>3250') osvers=3.2.5 ;;
- *) osvers=$tmp;;
- esac
- ;;
- *dc.osx) osname=dcosx
- osvers="$3"
- ;;
- dnix) osname=dnix
- osvers="$3"
- ;;
- domainos) osname=apollo
- osvers="$3"
- ;;
- dgux) osname=dgux
- osvers="$3"
- ;;
- dynixptx*) osname=dynixptx
- osvers="$3"
- ;;
- freebsd) osname=freebsd
- osvers="$3" ;;
- genix) osname=genix ;;
- hp*) osname=hpux
- case "$3" in
- *.08.*) osvers=9 ;;
- *.09.*) osvers=9 ;;
- *.10.*) osvers=10 ;;
- *) osvers="$3" ;;
- esac
- ;;
- irix*) osname=irix
- case "$3" in
- 4*) osvers=4 ;;
- 5*) osvers=5 ;;
- 6*) osvers=6 ;;
- *) osvers="$3" ;;
- esac
- ;;
- linux) osname=linux
- case "$3" in
- 1*) osvers=1 ;;
- *) osvers="$3" ;;
- esac
- ;;
- netbsd*) osname=netbsd
- osvers="$3"
- ;;
- bsd386) osname=bsd386
- osvers=`$uname -r`
- ;;
- next*) osname=next ;;
- solaris) osname=solaris
- case "$3" in
- 5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;;
- *) osvers="$3" ;;
- esac
- ;;
- sunos) osname=sunos
- case "$3" in
- 5*) osname=solaris
- osvers=`echo $3 | $sed 's/^5/2/g'` ;;
- *) osvers="$3" ;;
- esac
- ;;
- titanos) osname=titanos
- case "$3" in
- 1*) osvers=1 ;;
- 2*) osvers=2 ;;
- 3*) osvers=3 ;;
- 4*) osvers=4 ;;
- *) osvers="$3" ;;
- esac
- ;;
- ultrix) osname=ultrix
- osvers="$3"
- ;;
- osf1|mls+) case "$5" in
- alpha)
- osname=dec_osf
- osvers=`echo "$3" | sed 's/^[vt]//'`
- ;;
- hp*) osname=hp_osf1 ;;
- mips) osname=mips_osf1 ;;
- esac
- ;;
- uts) osname=uts
- osvers="$3"
- ;;
- qnx) osname=qnx
- osvers="$4"
- ;;
- mingw32*) osname=mingw32
- osvers="$3"
- ;;
- $2) case "$osname" in
- *isc*) ;;
- *freebsd*) ;;
- svr*)
- : svr4.x or possibly later
- case "svr$3" in
- ${osname}*)
- osname=svr$3
- osvers=$4
- ;;
- esac
- case "$osname" in
- svr4.0)
- : Check for ESIX
- if test -f /stand/boot ; then
- eval `grep '^INITPROG=[a-z/0-9]*$' /stand/boot`
- if test -n "$INITPROG" -a -f "$INITPROG"; then
- isesix=`strings -a $INITPROG|grep 'ESIX SYSTEM V/386 Release 4.0'`
- if test -n "$isesix"; then
- osname=esix4
- fi
- fi
- fi
- ;;
- esac
- ;;
- *) if test -f /etc/systemid; then
- osname=sco
- set `echo $3 | $sed 's/\./ /g'` $4
- if $test -f sco_$1_$2_$3.sh; then
- osvers=$1.$2.$3
- elif $test -f sco_$1_$2.sh; then
- osvers=$1.$2
- elif $test -f sco_$1.sh; then
- osvers=$1
- fi
- else
- case "$osname" in
- '') : Still unknown. Probably a generic Sys V.
- osname="sysv"
- osvers="$3"
- ;;
- esac
- fi
- ;;
- esac
- ;;
- *) case "$osname" in
- '') : Still unknown. Probably a generic BSD.
- osname="$1"
- osvers="$3"
- ;;
- esac
- ;;
- esac
- else
- if test -f /vmunix -a -f $src/hints/news_os.sh; then
- (what /vmunix | UU/tr '[A-Z]' '[a-z]') > UU/kernel.what 2>&1
- if $contains news-os UU/kernel.what >/dev/null 2>&1; then
- osname=news_os
- fi
- $rm -f UU/kernel.what
- elif test -d c:/.; then
- : Check for cygwin32 emulation
- case "x$OS" in
- xWindows_*)
- set X $myuname
- osname=win32
- osvers="$3"
- ;;
- x*)
- set X $myuname
- osname=os2
- osvers="$5"
- ;;
- esac
- fi
- fi
- case "x$osname" in
- xcygwin32*)
- osname=win32
- ;;
- esac
-
- : Now look for a hint file osname_osvers, unless one has been
- : specified already.
- case "$hintfile" in
- ''|' ')
- file=`echo "${osname}_${osvers}" | $sed -e 's@\.@_@g' -e 's@_$@@'`
- : Also try without trailing minor version numbers.
- xfile=`echo $file | $sed -e 's@_[^_]*$@@'`
- xxfile=`echo $xfile | $sed -e 's@_[^_]*$@@'`
- xxxfile=`echo $xxfile | $sed -e 's@_[^_]*$@@'`
- xxxxfile=`echo $xxxfile | $sed -e 's@_[^_]*$@@'`
- case "$file" in
- '') dflt=none ;;
- *) case "$osvers" in
- '') dflt=$file
- ;;
- *) if $test -f $src/hints/$file.sh ; then
- dflt=$file
- elif $test -f $src/hints/$xfile.sh ; then
- dflt=$xfile
- elif $test -f $src/hints/$xxfile.sh ; then
- dflt=$xxfile
- elif $test -f $src/hints/$xxxfile.sh ; then
- dflt=$xxxfile
- elif $test -f $src/hints/$xxxxfile.sh ; then
- dflt=$xxxxfile
- elif $test -f "$src/hints/${osname}.sh" ; then
- dflt="${osname}"
- else
- dflt=none
- fi
- ;;
- esac
- ;;
- esac
- ;;
- *)
- dflt=`echo $hintfile | $sed 's/\.sh$//'`
- ;;
- esac
-
- $cat <<EOM
-
-You may give one or more space-separated answers, or "none" if appropriate.
-If your OS version has no hints, DO NOT give a wrong version -- say "none".
-
-EOM
- rp="Which of these apply, if any?"
- . UU/myread
- tans=$ans
- for file in $tans; do
- if $test -f $src/hints/$file.sh; then
- . $src/hints/$file.sh
- $cat $src/hints/$file.sh >> UU/config.sh
- elif $test X$tans = X -o X$tans = Xnone ; then
- : nothing
- else
- : Give one chance to correct a possible typo.
- echo "$file.sh does not exist"
- dflt=$file
- rp="hint to use instead?"
- . UU/myread
- for file in $ans; do
- if $test -f "$src/hints/$file.sh"; then
- . $src/hints/$file.sh
- $cat $src/hints/$file.sh >> UU/config.sh
- elif $test X$ans = X -o X$ans = Xnone ; then
- : nothing
- else
- echo "$file.sh does not exist -- ignored."
- fi
- done
- fi
- done
-
- hint=recommended
- : Remember our hint file for later.
- if $test -f "$src/hints/$file.sh" ; then
- hintfile="$file"
- else
- hintfile=''
- fi
-fi
-cd UU
-;;
-*)
- echo " "
- echo "Fetching default answers from $config_sh..." >&4
- tmp_n="$n"
- tmp_c="$c"
- cd ..
- cp $config_sh config.sh 2>/dev/null
- chmod +w config.sh
- . ./config.sh
- cd UU
- cp ../config.sh .
- n="$tmp_n"
- c="$tmp_c"
- hint=previous
- ;;
-esac
-test "$override" && . ./optdef.sh
-myuname="$newmyuname"
-
-: Restore computed paths
-for file in $loclist $trylist; do
- eval $file="\$_$file"
-done
-
-cat << EOM
-
-Configure uses the operating system name and version to set some defaults.
-The default value is probably right if the name rings a bell. Otherwise,
-since spelling matters for me, either accept the default or answer "none"
-to leave it blank.
-
-EOM
-case "$osname" in
- ''|' ')
- case "$hintfile" in
- ''|' '|none) dflt=none ;;
- *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/_.*$//'` ;;
- esac
- ;;
- *) dflt="$osname" ;;
-esac
-rp="Operating system name?"
-. ./myread
-case "$ans" in
-none) osname='' ;;
-*) osname=`echo "$ans" | $sed -e 's/[ ][ ]*/_/g' | ./tr '[A-Z]' '[a-z]'`;;
-esac
-: who configured the system
-cf_time=`$date 2>&1`
-cf_by=`(logname) 2>/dev/null`
-case "$cf_by" in
-"")
- cf_by=`(whoami) 2>/dev/null`
- case "$cf_by" in
- "") cf_by=unknown ;;
- esac ;;
-esac
-
-: determine where manual pages are on this system
-echo " "
-case "$sysman" in
-'')
- syspath='/usr/man/man1 /usr/man/mann /usr/man/manl /usr/man/local/man1'
- syspath="$syspath /usr/man/u_man/man1 /usr/share/man/man1"
- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
- sysman=`./loc . /usr/man/man1 $syspath`
- ;;
-esac
-if $test -d "$sysman"; then
- echo "System manual is in $sysman." >&4
-else
- echo "Could not find manual pages in source form." >&4
-fi
-
-: make some quick guesses about what we are up against
-echo " "
-$echo $n "Hmm... $c"
-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
-d_bsd="$undef"
-$cat /usr/include/signal.h /usr/include/sys/signal.h >foo 2>/dev/null
-if test -f /osf_boot || $contains 'OSF/1' /usr/include/ctype.h >/dev/null 2>&1
-then
- echo "Looks kind of like an OSF/1 system, but we'll see..."
- echo exit 0 >osf1
-elif test `echo abc | tr a-z A-Z` = Abc ; then
- xxx=`./loc addbib blurfl $pth`
- if $test -f $xxx; then
- echo "Looks kind of like a USG system with BSD features, but we'll see..."
- echo exit 0 >bsd
- echo exit 0 >usg
- else
- if $contains SIGTSTP foo >/dev/null 2>&1 ; then
- echo "Looks kind of like an extended USG system, but we'll see..."
- else
- echo "Looks kind of like a USG system, but we'll see..."
- fi
- echo exit 0 >usg
- fi
-elif $contains SIGTSTP foo >/dev/null 2>&1 ; then
- echo "Looks kind of like a BSD system, but we'll see..."
- d_bsd="$define"
- 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"
-: it so happens the Eunice I know will not run shell scripts in Unix format
- ;;
-*)
- 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
- d_xenix="$define"
-else
- echo " "
- echo "It's not Xenix..."
- d_xenix="$undef"
-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 xenix venix
-$eunicefix bsd usg v7 osf1 eunice xenix venix
-$rm -f foo
-
-: 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' $sysman/cc.1 >/dev/null 2>&1 ; then
- if $contains '\-M' $sysman/cpp.1 >/dev/null 2>&1; then
- dflt='cc'
- else
- dflt='cc -M'
- fi
- 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.
-
-EOM
- rp="What command will force resolution on this system?"
- . ./myread
- cc="$ans"
-else
- case "$cc" in
- '') dflt=cc;;
- *) dflt="$cc";;
- esac
- rp="Use which C compiler?"
- . ./myread
- cc="$ans"
-fi
-echo " "
-echo "Checking for GNU cc in disguise and/or its version number..." >&4
-$cat >gccvers.c <<EOM
-#include <stdio.h>
-int main() {
-#ifdef __GNUC__
-#ifdef __VERSION__
- printf("%s\n", __VERSION__);
-#else
- printf("%s\n", "1");
-#endif
-#endif
- exit(0);
-}
-EOM
-if $cc -o gccvers gccvers.c >/dev/null 2>&1; then
- gccversion=`./gccvers`
- case "$gccversion" in
- '') echo "You are not using GNU cc." ;;
- *) echo "You are using GNU cc $gccversion." ;;
- esac
-else
- echo " "
- echo "*** WHOA THERE!!! ***" >&4
- echo " Your C compiler \"$cc\" doesn't seem to be working!" >&4
- case "$knowitall" in
- '')
- echo " You'd better start hunting for one and let me know about it." >&4
- exit 1
- ;;
- esac
-fi
-$rm -f gccvers*
-case "$gccversion" in
-1*) cpp=`./loc gcc-cpp $cpp $pth` ;;
-esac
-
-: decide how portable to be
-case "$d_portable" in
-"$define") dflt=y;;
-*) dflt=n;;
-esac
-$cat <<'EOH'
-
-I can set things up so that your shell scripts and binaries are more portable,
-at what may be a noticable cost in performance. In particular, if you
-ask to be portable, the following happens:
-
- 1) Shell scripts will rely on the PATH variable rather than using
- the paths derived above.
- 2) ~username interpretations will be done at run time rather than
- by Configure.
-
-EOH
-rp="Do you expect to run these scripts and binaries on multiple machines?"
-. ./myread
-case "$ans" in
- y*) d_portable="$define"
- ;;
- *) d_portable="$undef" ;;
-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"
- failed=\$?
- echo ""
- exit \$failed
- 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
-
-: now set up to get a file name
-cat <<EOS >getfile
-$startsh
-EOS
-cat <<'EOSC' >>getfile
-tilde=''
-fullpath=''
-already=''
-skip=''
-none_ok=''
-exp_file=''
-nopath_ok=''
-orig_rp="$rp"
-orig_dflt="$dflt"
-
-case "$fn" in
-*\(*)
- expr $fn : '.*(\(.*\)).*' | tr ',' '\012' >getfile.ok
- fn=`echo $fn | sed 's/(.*)//'`
- ;;
-esac
-
-case "$fn" in
-*:*)
- loc_file=`expr $fn : '.*:\(.*\)'`
- fn=`expr $fn : '\(.*\):.*'`
- ;;
-esac
-
-case "$fn" in
-*~*) tilde=true;;
-esac
-case "$fn" in
-*/*) fullpath=true;;
-esac
-case "$fn" in
-*+*) skip=true;;
-esac
-case "$fn" in
-*n*) none_ok=true;;
-esac
-case "$fn" in
-*e*) exp_file=true;;
-esac
-case "$fn" in
-*p*) nopath_ok=true;;
-esac
-
-case "$fn" in
-*f*) type='File';;
-*d*) type='Directory';;
-*l*) type='Locate';;
-esac
-
-what="$type"
-case "$what" in
-Locate) what='File';;
-esac
-
-case "$exp_file" in
-'')
- case "$d_portable" in
- "$define") ;;
- *) exp_file=true;;
- esac
- ;;
-esac
-
-cd ..
-while test "$type"; do
- redo=''
- rp="$orig_rp"
- dflt="$orig_dflt"
- case "$tilde" in
- true) rp="$rp (~name ok)";;
- esac
- . UU/myread
- if test -f UU/getfile.ok && \
- $contains "^$ans\$" UU/getfile.ok >/dev/null 2>&1
- then
- value="$ans"
- ansexp="$ans"
- break
- fi
- case "$ans" in
- none)
- value=''
- ansexp=''
- case "$none_ok" in
- true) type='';;
- esac
- ;;
- *)
- case "$tilde" in
- '') value="$ans"
- ansexp="$ans";;
- *)
- value=`UU/filexp $ans`
- case $? in
- 0)
- if test "$ans" != "$value"; then
- echo "(That expands to $value on this system.)"
- fi
- ;;
- *) value="$ans";;
- esac
- ansexp="$value"
- case "$exp_file" in
- '') value="$ans";;
- esac
- ;;
- esac
- case "$fullpath" in
- true)
- case "$ansexp" in
- /*) value="$ansexp" ;;
- *)
- redo=true
- case "$already" in
- true)
- echo "I shall only accept a full path name, as in /bin/ls." >&4
- echo "Use a ! shell escape if you wish to check pathnames." >&4
- ;;
- *)
- echo "Please give a full path name, starting with slash." >&4
- case "$tilde" in
- true)
- echo "Note that using ~name is ok provided it expands well." >&4
- already=true
- ;;
- esac
- esac
- ;;
- esac
- ;;
- esac
- case "$redo" in
- '')
- case "$type" in
- File)
- if test -f "$ansexp"; then
- type=''
- elif test -r "$ansexp" || (test -h "$ansexp") >/dev/null 2>&1
- then
- echo "($value is not a plain file, but that's ok.)"
- type=''
- fi
- ;;
- Directory)
- if test -d "$ansexp"; then
- type=''
- fi
- ;;
- Locate)
- if test -d "$ansexp"; then
- echo "(Looking for $loc_file in directory $value.)"
- value="$value/$loc_file"
- ansexp="$ansexp/$loc_file"
- fi
- if test -f "$ansexp"; then
- type=''
- fi
- case "$nopath_ok" in
- true) case "$value" in
- */*) ;;
- *) echo "Assuming $value will be in people's path."
- type=''
- ;;
- esac
- ;;
- esac
- ;;
- esac
-
- case "$skip" in
- true) type='';
- esac
-
- case "$type" in
- '') ;;
- *)
- if test "$fastread" = yes; then
- dflt=y
- else
- dflt=n
- fi
- rp="$what $value doesn't exist. Use that name anyway?"
- . UU/myread
- dflt=''
- case "$ans" in
- y*) type='';;
- *) echo " ";;
- esac
- ;;
- esac
- ;;
- esac
- ;;
- esac
-done
-cd UU
-ans="$value"
-rp="$orig_rp"
-dflt="$orig_dflt"
-rm -f getfile.ok
-EOSC
-
-: What should the include directory be ?
-echo " "
-$echo $n "Hmm... $c"
-dflt='/usr/include'
-incpath=''
-mips_type=''
-if $test -f /bin/mips && /bin/mips; then
- echo "Looks like a MIPS system..."
- $cat >usr.c <<'EOCP'
-#ifdef SYSTYPE_BSD43
-/bsd43
-#endif
-EOCP
- if $cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then
- dflt='/bsd43/usr/include'
- incpath='/bsd43'
- mips_type='BSD 4.3'
- else
- mips_type='System V'
- fi
- $rm -f usr.c usr.out
- echo "and you're compiling with the $mips_type compiler and libraries."
- xxx_prompt=y
- echo "exit 0" >mips
-else
- echo "Doesn't look like a MIPS system."
- xxx_prompt=n
- echo "exit 1" >mips
-fi
-chmod +x mips
-$eunicefix mips
-case "$usrinc" in
-'') ;;
-*) dflt="$usrinc";;
-esac
-case "$xxx_prompt" in
-y) fn=d/
- echo " "
- rp='Where are the include files you want to use?'
- . ./getfile
- usrinc="$ans"
- ;;
-*) usrinc="$dflt"
- ;;
-esac
-
-: see how we invoke the C preprocessor
-echo " "
-echo "Now, how can we feed standard input to your C preprocessor..." >&4
-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=`pwd`/cppstdin
-ok='false'
-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."
- case "$cpprun" in
- '') echo "But let's see if we can live without a wrapper..." ;;
- *)
- if $cpprun $cpplast <testcpp.c >testcpp.out 2>&1 && \
- $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1
- then
- echo "(And we'll use $cpprun $cpplast to preprocess directly.)"
- ok='true'
- else
- echo "(However, $cpprun $cpplast does not work, let's see...)"
- fi
- ;;
- esac
-else
- case "$cppstdin" in
- '') ;;
- *)
- echo "Good old $cppstdin $cppminus does not seem to be of any help..."
- ;;
- esac
-fi
-
-if $ok; then
- : nothing
-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."
- x_cpp="$cc -E"
- x_minus='';
-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."
- x_cpp="$cc -E"
- x_minus='-';
-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!"
- x_cpp="$cc -P"
- x_minus='';
-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!"
- x_cpp="$cc -P"
- x_minus='-';
-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!"
- x_cpp="$cpp"
- x_minus='';
-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."
- x_cpp="$cpp"
- x_minus='-';
-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
- x_cpp="$wrapper"
- x_minus=''
- echo "Eureka!"
-else
- dflt=''
- rp="No dice. I can't find a C preprocessor. Name one:"
- . ./myread
- x_cpp="$ans"
- x_minus=''
- $x_cpp <testcpp.c >testcpp.out 2>&1
- if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then
- echo "OK, that will do." >&4
- else
-echo "Sorry, I can't get that to work. Go find one and rerun Configure." >&4
- exit 1
- fi
-fi
-
-case "$ok" in
-false)
- cppstdin="$x_cpp"
- cppminus="$x_minus"
- cpprun="$x_cpp"
- cpplast="$x_minus"
- set X $x_cpp
- shift
- case "$1" in
- "$cpp")
- echo "Perhaps can we force $cc -E using a wrapper..."
- if $wrapper <testcpp.c >testcpp.out 2>&1; \
- $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1
- then
- echo "Yup, we can."
- cppstdin="$wrapper"
- cppminus='';
- else
- echo "Nope, we'll have to live without it..."
- fi
- ;;
- esac
- case "$cpprun" in
- "$wrapper")
- cpprun=''
- cpplast=''
- ;;
- esac
- ;;
-esac
-
-case "$cppstdin" in
-"$wrapper") ;;
-*) $rm -f $wrapper;;
-esac
-$rm -f testcpp.c testcpp.out
-
-: Set private lib path
-case "$plibpth" in
-'') if ./mips; then
- plibpth="$incpath/usr/lib /usr/local/lib /usr/ccs/lib"
- fi;;
-esac
-case "$libpth" in
-' ') dlist='';;
-'') dlist="$loclibpth $plibpth $glibpth";;
-*) dlist="$libpth";;
-esac
-
-: Now check and see which directories actually exist, avoiding duplicates
-libpth=''
-for xxx in $dlist
-do
- if $test -d $xxx; then
- case " $libpth " in
- *" $xxx "*) ;;
- *) libpth="$libpth $xxx";;
- esac
- fi
-done
-$cat <<'EOM'
-
-Some systems have incompatible or broken versions of libraries. Among
-the directories listed in the question below, please remove any you
-know not to be holding relevant libraries, and add any that are needed.
-Say "none" for none.
-
-EOM
-case "$libpth" in
-'') dflt='none';;
-*)
- set X $libpth
- shift
- dflt=${1+"$@"}
- ;;
-esac
-rp="Directories to use for library searches?"
-. ./myread
-case "$ans" in
-none) libpth=' ';;
-*) libpth="$ans";;
-esac
-
-: determine optimize, if desired, or use for debug flag also
-case "$optimize" in
-' ') dflt='none';;
-'') case $gccversion in
- 2*) dflt='-g -O' ;;
- *egcs*) dflt='-g -O' ;;
- *) dflt='-g' ;;
- esac ;;
-*) 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?"
-. ./myread
-optimize="$ans"
-case "$optimize" in
-'none') optimize=" ";;
-esac
-
-case "$warnings" in
-' ') dflt='none';;
-'') case $gccversion in
- 2*|egcs*) dflt='-W -Wall -Wno-comment' ;;
- *) dflt='none' ;;
- esac ;;
-*) dflt="$warnings";;
-esac
-$cat <<EOH
-
-EOH
-rp="What compiler warning flags should be used?"
-. ./myread
-warnings="$ans"
-case "$warnings" in
-'none') warnings=" ";;
-esac
-
-dflt=''
-: We will not override a previous value, but we might want to
-: augment a hint file
-case "$hint" in
-none|recommended)
- case "$gccversion" in
- 1*) dflt='-fpcc-struct-return' ;;
- esac
- case "$gccversion" in
- 2*) if test -d /etc/conf/kconfig.d &&
- $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1
- then
- dflt="$dflt -posix"
- fi
- ;;
- esac
- ;;
-esac
-
-case "$mips_type" in
-*BSD*|'') inclwanted="$locincpth $usrinc";;
-*) inclwanted="$locincpth $inclwanted $usrinc/bsd";;
-esac
-for thisincl in $inclwanted; do
- if $test -d $thisincl; then
- if $test x$thisincl != x$usrinc; then
- case "$dflt" in
- *$thisincl*);;
- *) dflt="$dflt -I$thisincl";;
- esac
- fi
- fi
-done
-
-inctest='if $contains $2 $usrinc/$1 >/dev/null 2>&1; then
- xxx=true;
-elif $contains $2 $usrinc/sys/$1 >/dev/null 2>&1; then
- xxx=true;
-else
- xxx=false;
-fi;
-if $xxx; then
- case "$dflt" in
- *$2*);;
- *) dflt="$dflt -D$2";;
- esac;
-fi'
-
-if ./osf1; then
- set signal.h __LANGUAGE_C__; eval $inctest
-else
- set signal.h LANGUAGE_C; eval $inctest
-fi
-
-case "$hint" in
-none|recommended) dflt="$ccflags $dflt" ;;
-*) dflt="$ccflags";;
-esac
-
-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. If you
-want $package to honor its debug switch, you should include -DDEBUG here.
-
-To use no flags, specify the word "none".
-
-EOH
-set X $dflt
-shift
-dflt=${1+"$@"}
-rp="Any additional cc flags?"
-. ./myread
-case "$ans" in
-none) ccflags='';;
-*) ccflags="$ans";;
-esac
-
-: the following weeds options from ccflags that are of no interest to cpp
-cppflags="$ccflags"
-case "$gccversion" in
-1*) cppflags="$cppflags -D__GNUC__"
-esac
-case "$mips_type" in
-'');;
-*BSD*) cppflags="$cppflags -DSYSTYPE_BSD43";;
-esac
-case "$cppflags" in
-'');;
-*)
- echo " "
- echo "Let me guess what the preprocessor flags are..." >&4
- set X $cppflags
- shift
- cppflags=''
- $cat >cpp.c <<'EOM'
-#define BLURFL foo
-
-BLURFL xx LFRULB
-EOM
- previous=''
- for flag in $*
- do
- case "$flag" in
- -*) ftry="$flag";;
- *) ftry="$previous $flag";;
- esac
- if $cppstdin -DLFRULB=bar $ftry $cppminus <cpp.c \
- >cpp1.out 2>/dev/null && \
- $cpprun -DLFRULB=bar $ftry $cpplast <cpp.c \
- >cpp2.out 2>/dev/null && \
- $contains 'foo.*xx.*bar' cpp1.out >/dev/null 2>&1 && \
- $contains 'foo.*xx.*bar' cpp2.out >/dev/null 2>&1
- then
- cppflags="$cppflags $ftry"
- previous=''
- else
- previous="$flag"
- fi
- done
- set X $cppflags
- shift
- cppflags=${1+"$@"}
- case "$cppflags" in
- *-*) echo "They appear to be: $cppflags";;
- esac
- $rm -f cpp.c cpp?.out
- ;;
-esac
-
-: flags used in final linking phase
-case "$ldflags" in
-'') if ./venix; then
- dflt='-i -z'
- else
- dflt=''
- fi
- case "$ccflags" in
- *-posix*) dflt="$dflt -posix" ;;
- esac
- ;;
-*) dflt="$ldflags";;
-esac
-
-: Try to guess additional flags to pick up local libraries.
-for thislibdir in $libpth; do
- case " $loclibpth " in
- *" $thislibdir "*)
- case "$dflt " in
- *"-L$thislibdir "*) ;;
- *) dflt="$dflt -L$thislibdir" ;;
- esac
- ;;
- esac
-done
-
-case "$dflt" in
-'') dflt='none' ;;
-esac
-
-$cat <<EOH
-
-Your C linker may need flags. For this question you should
-include -L/whatever and any other flags used by the C linker, but you
-should NOT include libraries like -lwhatever.
-
-Make sure you include the appropriate -L/path flags if your C linker
-does not normally search all of the directories you specified above,
-namely
- $libpth
-To use no flags, specify the word "none".
-
-EOH
-
-rp="Any additional ld flags (NOT including libraries)?"
-. ./myread
-case "$ans" in
-none) ldflags='';;
-*) ldflags="$ans";;
-esac
-rmlist="$rmlist pdp11"
-
-: coherency check
-echo " "
-echo "Checking your choice of C compiler and flags for coherency..." >&4
-set X $cc $optimize $ccflags $ldflags try.c -o try
-shift
-$cat >try.msg <<EOM
-I've tried to compile and run a simple program with:
-
- $*
- ./try
-
-and I got the following output:
-
-EOM
-$cat > try.c <<'EOF'
-#include <stdio.h>
-main() { exit(0); }
-EOF
-dflt=y
-if sh -c "$cc $optimize $ccflags try.c -o try $ldflags" >>try.msg 2>&1; then
- if sh -c './try' >>try.msg 2>&1; then
- dflt=n
- else
- echo "The program compiled OK, but exited with status $?." >>try.msg
- rp="You have a problem. Shall I abort Configure"
- dflt=y
- fi
-else
- echo "I can't compile the test program." >>try.msg
- rp="You have a BIG problem. Shall I abort Configure"
- dflt=y
-fi
-case "$dflt" in
-y)
- $cat try.msg
- case "$knowitall" in
- '')
- echo "(The supplied flags might be incorrect with this C compiler.)"
- ;;
- *) dflt=n;;
- esac
- echo " "
- . ./myread
- case "$ans" in
- n*|N*) ;;
- *) echo "Ok. Stopping Configure." >&4
- exit 1
- ;;
- esac
- ;;
-n) echo "OK, that should do.";;
-esac
-$rm -f try try.* core
-
-: Initialize h_fcntl
-h_fcntl=false
-
-: Initialize h_sysfile
-h_sysfile=false
-
-: compute shared library extension
-case "$so" in
-'')
- if xxx=`./loc libc.sl X $libpth`; $test -f "$xxx"; then
- dflt='sl'
- else
- dflt='so'
- fi
- ;;
-*) dflt="$so";;
-esac
-$cat <<EOM
-
-On some systems, shared libraries may be available. Answer 'none' if
-you want to suppress searching of shared libraries for the remaining
-of this configuration.
-
-EOM
-rp='What is the file extension used for shared libraries?'
-. ./myread
-so="$ans"
-
-: Define several unixisms.
-: Hints files or command line option can be used to override them.
-case "$_a" in
-'') _a='.a';;
-esac
-case "$_o" in
-'') _o='.o';;
-esac
-
-: Looking for optional libraries
-echo " "
-echo "Checking for optional libraries..." >&4
-case "$libs" in
-' '|'') dflt='';;
-*) dflt="$libs";;
-esac
-case "$libswanted" in
-'') libswanted='c_s';;
-esac
-for thislib in $libswanted; do
-
-
-
- if $test "$thislib" = "resolv"; then
- case " $dflt " in
- *"-lbind "*) echo "We've already found -lbind, so we don't need -lresolv" ;;
- *)
-
- if xxx=`./loc lib$thislib.$so.[0-9]'*' X $libpth`; $test -f "$xxx"; then
- echo "Found -l$thislib (shared)."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc lib$thislib.$so X $libpth` ; $test -f "$xxx"; then
- echo "Found -l$thislib (shared)."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc lib$thislib$_a X $libpth`; $test -f "$xxx"; then
- echo "Found -l$thislib."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc $thislib$_a X $libpth`; $test -f "$xxx"; then
- echo "Found -l$thislib."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc lib${thislib}_s$_a X $libpth`; $test -f "$xxx"; then
- echo "Found -l${thislib}_s."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l${thislib}_s";;
- esac
- elif xxx=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$xxx"; then
- echo "Found -l$thislib."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- else
- echo "No -l$thislib."
- fi
-
- ;;
- esac
- else
-
- if xxx=`./loc lib$thislib.$so.[0-9]'*' X $libpth`; $test -f "$xxx"; then
- echo "Found -l$thislib (shared)."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc lib$thislib.$so X $libpth` ; $test -f "$xxx"; then
- echo "Found -l$thislib (shared)."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc lib$thislib$_a X $libpth`; $test -f "$xxx"; then
- echo "Found -l$thislib."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc $thislib$_a X $libpth`; $test -f "$xxx"; then
- echo "Found -l$thislib."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- elif xxx=`./loc lib${thislib}_s$_a X $libpth`; $test -f "$xxx"; then
- echo "Found -l${thislib}_s."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l${thislib}_s";;
- esac
- elif xxx=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$xxx"; then
- echo "Found -l$thislib."
- case " $dflt " in
- *"-l$thislib "*);;
- *) dflt="$dflt -l$thislib";;
- esac
- else
- echo "No -l$thislib."
- fi
-
- fi
-done
-set X $dflt
-shift
-dflt="$*"
-case "$libs" in
-'') dflt="$dflt";;
-*) dflt="$libs";;
-esac
-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 System V Release 3'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?"
-. ./myread
-case "$ans" in
-none) libs=' ';;
-*) libs="$ans";;
-esac
-
-: set up the script used to warn in case of inconsistency
-cat <<EOS >whoa
-$startsh
-EOS
-cat <<'EOSC' >>whoa
-dflt=y
-echo " "
-echo "*** WHOA THERE!!! ***" >&4
-echo " The $hint value for \$$var on this machine was \"$was\"!" >&4
-rp=" Keep the $hint value?"
-. ./myread
-case "$ans" in
-y) td=$was; tu=$was;;
-esac
-EOSC
-
-: function used to set $1 to $val
-setvar='var=$1; eval "was=\$$1"; td=$define; tu=$undef;
-case "$val$was" in
-$define$undef) . ./whoa; eval "$var=\$td";;
-$undef$define) . ./whoa; eval "$var=\$tu";;
-*) eval "$var=$val";;
-esac'
-
-echo " "
-echo "Checking for GNU C Library..." >&4
-cat >gnulibc.c <<EOM
-int
-main()
-{
- return __libc_main();
-}
-EOM
-if $cc $ccflags $ldflags -o gnulibc gnulibc.c $libs >/dev/null 2>&1 && \
- ./gnulibc | $contains '^GNU C Library' >/dev/null 2>&1; then
- val="$define"
- echo "You are using the GNU C Library" >&4
-else
-cat >gnulibc.c <<EOM
-#include <features.h>
-int main()
-{
-#ifdef __GLIBC__
- return 0;
-#else
- return 1;
-#endif
-}
-EOM
-if $cc $ccflags $ldflags -o gnulibc gnulibc.c $libs >/dev/null 2>&1 && \
- ./gnulibc; then
- val="$define"
- echo "You are using the GNU C Library" >&4
-else
- val="$undef"
- echo "You are not using the GNU C Library" >&4
-fi
-fi
-$rm -f gnulibc*
-set d_gnulibc
-eval $setvar
-
-: see if nm is to be used to determine whether a symbol is defined or not
-case "$usenm" in
-'')
- case "$d_gnulibc" in
- $define)
- dflt=n
- ;;
- *)
- dflt=`egrep 'inlibc|csym' ../Configure | wc -l 2>/dev/null`
- if $test $dflt -gt 20; then
- dflt=y
- else
- dflt=n
- fi
- ;;
- esac
- ;;
-*)
- case "$usenm" in
- true) dflt=y;;
- *) dflt=n;;
- esac
- ;;
-esac
-$cat <<EOM
-
-I can use 'nm' to extract the symbols from your C libraries. This is a time
-consuming task which may generate huge output on the disk (up to 3 megabytes)
-but that should make the symbols extraction faster. The alternative is to skip
-the 'nm' extraction part and to compile a small test program instead to
-determine whether each symbol is present. If you have a fast C compiler and/or
-if your 'nm' output cannot be parsed, this may be the best solution.
-If you see a lot of messages about functions NOT found that you know you
-have, re-run Configure and don't let me use 'nm'.
-
-EOM
-rp='Shall I use nm to extract C symbols from the libraries?'
-. ./myread
-case "$ans" in
-n|N) usenm=false;;
-*) usenm=true;;
-esac
-
-runnm=$usenm
-case "$reuseval" in
-true) runnm=false;;
-esac
-
-: nm options which may be necessary
-case "$nm_opt" in
-'') if $test -f /mach_boot; then
- nm_opt=''
- elif $test -d /usr/ccs/lib; then
- nm_opt='-p'
- elif $test -f /dgux; then
- nm_opt='-p'
- else
- nm_opt=''
- fi;;
-esac
-
-: nm options which may be necessary for shared libraries but illegal
-: for archive libraries. Thank you, Linux.
-case "$nm_so_opt" in
-'') case "$myuname" in
- *linux*)
- if nm --help | $grep 'dynamic' > /dev/null 2>&1; then
- nm_so_opt='--dynamic'
- fi
- ;;
- esac
- ;;
-esac
-
-case "$runnm" in
-true)
-: get list of predefined functions in a handy place
-echo " "
-case "$libc" in
-'') libc=unknown
- case "$libs" in
- *-lc_s*) libc=`./loc libc_s$_a $libc $libpth`
- esac
- ;;
-esac
-libnames='';
-case "$libs" in
-'') ;;
-*) for thislib in $libs; do
- case "$thislib" in
- -lc|-lc_s)
- : Handle C library specially below.
- ;;
- -l*)
- thislib=`echo $thislib | $sed -e 's/^-l//'`
- if try=`./loc lib$thislib.$so.'*' X $libpth`; $test -f "$try"; then
- :
- elif try=`./loc lib$thislib.$so X $libpth`; $test -f "$try"; then
- :
- elif try=`./loc lib$thislib$_a X $libpth`; $test -f "$try"; then
- :
- elif try=`./loc $thislib$_a X $libpth`; $test -f "$try"; then
- :
- elif try=`./loc lib$thislib X $libpth`; $test -f "$try"; then
- :
- elif try=`./loc $thislib X $libpth`; $test -f "$try"; then
- :
- elif try=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$try"; then
- :
- else
- try=''
- fi
- libnames="$libnames $try"
- ;;
- *) libnames="$libnames $thislib" ;;
- esac
- done
- ;;
-esac
-xxx=normal
-case "$libc" in
-unknown)
- set /lib/libc.$so
- for xxx in $libpth; do
- $test -r $1 || set $xxx/libc.$so
- $test -r $1 || \
- set `echo blurfl; echo $xxx/libc.$so.[0-9]* | \
- tr ' ' '\012' | egrep -v '\.[A-Za-z]*$' | $sed -e '
- h
- s/[0-9][0-9]*/0000&/g
- s/0*\([0-9][0-9][0-9][0-9][0-9]\)/\1/g
- G
- s/\n/ /' | \
- sort | $sed -e 's/^.* //'`
- eval set \$$#
- done
- $test -r $1 || set /usr/ccs/lib/libc.$so
- $test -r $1 || set /lib/libsys_s$_a
- ;;
-*)
- set blurfl
- ;;
-esac
-if $test -r "$1"; then
- echo "Your (shared) C library seems to be in $1."
- libc="$1"
-elif $test -r /lib/libc && $test -r /lib/clib; then
- echo "Your C library seems to be in both /lib/clib and /lib/libc."
- xxx=apollo
- libc='/lib/clib /lib/libc'
- if $test -r /lib/syslib; then
- echo "(Your math library is in /lib/syslib.)"
- libc="$libc /lib/syslib"
- fi
-elif $test -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then
- echo "Your C library seems to be in $libc, as you said before."
-elif $test -r $incpath/usr/lib/libc$_a; then
- libc=$incpath/usr/lib/libc$_a;
- echo "Your C library seems to be in $libc. That's fine."
-elif $test -r /lib/libc$_a; then
- libc=/lib/libc$_a;
- echo "Your C library seems to be in $libc. You're normal."
-else
- if tans=`./loc libc$_a blurfl/dyick $libpth`; $test -r "$tans"; then
- :
- elif tans=`./loc libc blurfl/dyick $libpth`; $test -r "$tans"; then
- libnames="$libnames "`./loc clib blurfl/dyick $libpth`
- elif tans=`./loc clib blurfl/dyick $libpth`; $test -r "$tans"; then
- :
- elif tans=`./loc Slibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then
- :
- elif tans=`./loc Mlibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then
- :
- else
- tans=`./loc Llibc$_a blurfl/dyick $xlibpth`
- fi
- if $test -r "$tans"; then
- echo "Your C library seems to be in $tans, of all places."
- libc=$tans
- else
- libc='blurfl'
- fi
-fi
-if $test $xxx = apollo -o -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then
- dflt="$libc"
- cat <<EOM
-
-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.
-
-EOM
-else
- dflt=''
- echo $libpth | tr ' ' '\012' | sort | uniq > libpath
- cat >&4 <<EOM
-I can't seem to find your C library. I've looked in the following places:
-
-EOM
- $sed 's/^/ /' libpath
- cat <<EOM
-
-None of these seems to contain your C library. I need to get its name...
-
-EOM
-fi
-fn=f
-rp='Where is your C library?'
-. ./getfile
-libc="$ans"
-
-echo " "
-echo $libc $libnames | tr ' ' '\012' | sort | uniq > libnames
-set X `cat libnames`
-shift
-xxx=files
-case $# in 1) xxx=file; esac
-echo "Extracting names from the following $xxx for later perusal:" >&4
-echo " "
-$sed 's/^/ /' libnames >&4
-echo " "
-$echo $n "This may take a while...$c" >&4
-
-for file in $*; do
- case $file in
- *$so*) nm $nm_so_opt $nm_opt $file 2>/dev/null;;
- *) nm $nm_opt $file 2>/dev/null;;
- esac
-done >libc.tmp
-
-$echo $n ".$c"
-$grep fprintf libc.tmp > libc.ptf
-xscan='eval "<libc.ptf $com >libc.list"; $echo $n ".$c" >&4'
-xrun='eval "<libc.tmp $com >libc.list"; echo "done" >&4'
-xxx='[ADTSIW]'
-if com="$sed -n -e 's/__IO//' -e 's/^.* $xxx *_[_.]*//p' -e 's/^.* $xxx *//p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^__*//' -e 's/^\([a-zA-Z_0-9$]*\).*xtern.*/\1/p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e '/|UNDEF/d' -e '/FUNC..GL/s/^.*|__*//p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^.* D __*//p' -e 's/^.* D //p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^_//' -e 's/^\([a-zA-Z_0-9]*\).*xtern.*text.*/\1/p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$grep '|' | $sed -n -e '/|COMMON/d' -e '/|DATA/d' \
- -e '/ file/d' -e 's/^\([^ ]*\).*/\1/p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p' -e 's/^.*|FUNC |WEAK .*|//p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^__//' -e '/|Undef/d' -e '/|Proc/s/ .*//p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e '/Def. Text/s/.* \([^ ]*\)\$/\1/p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/^[-0-9a-f ]*_\(.*\)=.*/\1/p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-elif com="$sed -n -e 's/.*\.text n\ \ \ \.//p'";\
- eval $xscan;\
- $contains '^fprintf$' libc.list >/dev/null 2>&1; then
- eval $xrun
-else
- nm -p $* 2>/dev/null >libc.tmp
- $grep fprintf libc.tmp > libc.ptf
- if com="$sed -n -e 's/^.* [ADTSIW] *_[_.]*//p' -e 's/^.* [ADTSIW] //p'";\
- eval $xscan; $contains '^fprintf$' libc.list >/dev/null 2>&1
- then
- nm_opt='-p'
- eval $xrun
- else
- echo " "
- echo "nm didn't seem to work right. Trying ar instead..." >&4
- com=''
- 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." >&4
- else
- echo "ar didn't seem to work right." >&4
- echo "Maybe this is a Cray...trying bld instead..." >&4
- 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." >&4
- else
- echo "That didn't work either. Giving up." >&4
- exit 1
- fi
- fi
- fi
-fi
-nm_extract="$com"
-if $test -f /lib/syscalls.exp; then
- echo " "
- echo "Also extracting names from /lib/syscalls.exp for good ole AIX..." >&4
- $sed -n 's/^\([^ ]*\)[ ]*syscall$/\1/p' /lib/syscalls.exp >>libc.list
-fi
-;;
-esac
-$rm -f libnames libpath
-
-: is a C symbol defined?
-csym='tlook=$1;
-case "$3" in
--v) tf=libc.tmp; tc=""; tdc="";;
--a) tf=libc.tmp; tc="[0]"; tdc="[]";;
-*) tlook="^$1\$"; tf=libc.list; tc="()"; tdc="()";;
-esac;
-tx=yes;
-case "$reuseval-$4" in
-true-) ;;
-true-*) tx=no; eval "tval=\$$4"; case "$tval" in "") tx=yes;; esac;;
-esac;
-case "$tx" in
-yes)
- case "$runnm" in
- true)
- if $contains $tlook $tf >/dev/null 2>&1;
- then tval=true;
- else tval=false;
- fi;;
- *)
- echo "main() { extern short $1$tdc; printf(\"%hd\", $1$tc); }" > t.c;
- if $cc $ccflags $ldflags -o t t.c $libs >/dev/null 2>&1;
- then tval=true;
- else tval=false;
- fi;
- $rm -f t t.c;;
- esac;;
-*)
- case "$tval" in
- $define) tval=true;;
- *) tval=false;;
- esac;;
-esac;
-eval "$2=$tval"'
-
-: define an is-in-libc? function
-inlibc='echo " "; td=$define; tu=$undef;
-sym=$1; var=$2; eval "was=\$$2";
-tx=yes;
-case "$reuseval$was" in
-true) ;;
-true*) tx=no;;
-esac;
-case "$tx" in
-yes)
- set $sym tres -f;
- eval $csym;
- case "$tres" in
- true)
- echo "$sym() found." >&4;
- case "$was" in $undef) . ./whoa; esac; eval "$var=\$td";;
- *)
- echo "$sym() NOT found." >&4;
- case "$was" in $define) . ./whoa; esac; eval "$var=\$tu";;
- esac;;
-*)
- case "$was" in
- $define) echo "$sym() found." >&4;;
- *) echo "$sym() NOT found." >&4;;
- esac;;
-esac'
-
-: determine filename position in cpp output
-echo " "
-echo "Computing filename position in cpp output for #include directives..." >&4
-echo '#include <stdio.h>' > foo.c
-$cat >fieldn <<EOF
-$startsh
-$cppstdin $cppflags $cppminus <foo.c 2>/dev/null | \
-$grep '^[ ]*#.*stdio\.h' | \
-while read cline; do
- pos=1
- qline=\`echo "\$cline" | $sed -e 's/\\([][{}#$<>;&()|^*?\\\\]\\)/\\\\\\\\\\1/g'\`
- eval set \$qline
- while $test "x\$1" \!= x; do
- if $test -r "\$1"; then
- echo "\$pos"
- exit 0
- fi
- shift
- pos=\`expr \$pos + 1\`
- done
-done
-EOF
-chmod +x fieldn
-fieldn=`./fieldn`
-$rm -f foo.c fieldn
-case $fieldn in
-'') pos='???';;
-1) pos=first;;
-2) pos=second;;
-3) pos=third;;
-*) pos="${fieldn}th";;
-esac
-echo "Your cpp writes the filename in the $pos field of the line."
-
-: locate header file
-$cat >findhdr <<EOF
-$startsh
-wanted=\$1
-name=''
-if test -f $usrinc/\$wanted; then
- echo "$usrinc/\$wanted"
- exit 0
-fi
-echo "#include <\$wanted>" > foo\$\$.c
-$cppstdin $cppminus $cppflags < foo\$\$.c 2>/dev/null | \
-$grep "^[ ]*#.*\$wanted" | \
-while read cline; do
- pos=1
- qline=\`echo "\$cline" | $sed -e 's/\\([][{}#$<>;&()|^'"'"'*?\\\\]\\)/\\\\\\\\\\1/g'\`
- eval set \$qline
- while $test $fieldn -gt \$pos; do
- shift
- pos=\`expr \$pos + 1\`
- done
- name=\$1
- case "\$name" in
- */\$wanted) echo "\$name"; exit 0;;
- *\\\\\$wanted) echo "\$name"; exit 0;;
- *) name='';;
- esac;
-done;
-$rm -f foo\$\$.c;
-case "\$name" in
-'') exit 1;;
-esac
-EOF
-chmod +x findhdr
-
-: access call always available on UNIX
-set access d_access
-eval $inlibc
-
-: locate the flags for 'access()'
-case "$d_access" in
-"$define")
- echo " "
- $cat >access.c <<'EOCP'
-#include <sys/types.h>
-#ifdef I_FCNTL
-#include <fcntl.h>
-#endif
-#ifdef I_SYS_FILE
-#include <sys/file.h>
-#endif
-#ifdef I_UNISTD
-#include <unistd.h>
-#endif
-main() {
- exit(R_OK);
-}
-EOCP
- : check sys/file.h first, no particular reason here
- if $test `./findhdr sys/file.h` && \
- $cc $cppflags -DI_SYS_FILE access.c -o access >/dev/null 2>&1 ; then
- h_sysfile=true;
- echo "<sys/file.h> defines the *_OK access constants." >&4
- elif $test `./findhdr fcntl.h` && \
- $cc $cppflags -DI_FCNTL access.c -o access >/dev/null 2>&1 ; then
- h_fcntl=true;
- echo "<fcntl.h> defines the *_OK access constants." >&4
- elif $test `./findhdr unistd.h` && \
- $cc $cppflags -DI_UNISTD access.c -o access >/dev/null 2>&1 ; then
- echo "<unistd.h> defines the *_OK access constants." >&4
- else
- echo "I can't find the four *_OK access constants--I'll use mine." >&4
- fi
- ;;
-esac
-$rm -f access*
-
-: check for ok to use function ptr arguments in prototypes
-echo " "
-$cat >test_argsinfp.c <<'EOCP'
-#include <stdio.h>
-int myfun(int);
-int fun(int (*func)(int));
-int fun2(int, int (*prevfun)(int(*func)(int)));
-int fun (int (*func)(int)) { int a = 1; return func(a); }
-int myfun(int x) { return x - 1; }
-
-int main(int argc, char **argv) {
- exit(fun(myfun));
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_argsinfp test_argsinfp.c >/dev/null 2>&1 ; then
- d_argsinfp='define'
- echo 'Your compiler prefers arguments in function pointers in prototypes.' >&4
-else
- d_argsinfp='undef'
- echo "Your compiler prefers no arguments in function pointers in prototypes." >&4
-fi
-$rm -f test_argsinfp* core
-
-: see if we have the assert macro
-echo " "
-echo "Let's see if I can assert() myself." >&4
- $cat >d_assert.c <<EOCP
-#include <assert.h>
-#include <stdlib.h>
-
-int main()
-{
- assert(1);
-}
-EOCP
-
-if $cc $ccflags $ldflags d_assert.c -o d_assert $libs >/dev/null 2>&1; then
- val="$define"
- set d_assert; eval $setvar
- echo "Looks like I can." >&4
-else
- val="$undef"
- set d_assert; eval $setvar
- echo "Nope, I need assertiveness training." >&4
-fi
-$rm -f d_assert*
-
-: Look for GNU-cc style attribute checking
-echo " "
-echo "Checking whether your compiler can handle __attribute__ ..." >&4
-$cat >attrib.c <<'EOCP'
-#include <stdio.h>
-void croak (char* pat,...) __attribute__((format(printf,1,2),noreturn));
-EOCP
-if $cc $optimize $ccflags -c attrib.c >attrib.out 2>&1 ; then
- if $contains 'warning' attrib.out >/dev/null 2>&1; then
- echo "Your C compiler doesn't fully support __attribute__."
- val="$undef"
- else
- echo "Your C compiler supports __attribute__."
- val="$define"
- fi
-else
- echo "Your C compiler doesn't seem to understand __attribute__ at all."
- val="$undef"
-fi
-set d_attribut
-eval $setvar
-$rm -f attrib*
-
-: see if bcopy exists
-set bcopy d_bcopy
-eval $inlibc
-
-: define an alternate in-header-list? function
-inhdr='echo " "; td=$define; tu=$undef; yyy=$@;
-cont=true; xxf="echo \"<\$1> found.\" >&4";
-case $# in 2) xxnf="echo \"<\$1> NOT found.\" >&4";;
-*) xxnf="echo \"<\$1> NOT found, ...\" >&4";;
-esac;
-case $# in 4) instead=instead;; *) instead="at last";; esac;
-while $test "$cont"; do
- xxx=`./findhdr $1`
- var=$2; eval "was=\$$2";
- if $test "$xxx" && $test -r "$xxx";
- then eval $xxf;
- eval "case \"\$$var\" in $undef) . ./whoa; esac"; eval "$var=\$td";
- cont="";
- else eval $xxnf;
- eval "case \"\$$var\" in $define) . ./whoa; esac"; eval "$var=\$tu"; fi;
- set $yyy; shift; shift; yyy=$@;
- case $# in 0) cont="";;
- 2) xxf="echo \"but I found <\$1> $instead.\" >&4";
- xxnf="echo \"and I did not find <\$1> either.\" >&4";;
- *) xxf="echo \"but I found <\$1\> instead.\" >&4";
- xxnf="echo \"there is no <\$1>, ...\" >&4";;
- esac;
-done;
-while $test "$yyy";
-do set $yyy; var=$2; eval "was=\$$2";
- eval "case \"\$$var\" in $define) . ./whoa; esac"; eval "$var=\$tu";
- set $yyy; shift; shift; yyy=$@;
-done'
-
-: see if libintl.h can be included
-set libintl.h i_libintl
-eval $inhdr
-: check for a new-style definitions
-echo " "
-$cat >test_bindtextdomain.c <<EOCP
-#$i_libintl I_LIBINTL
-#ifdef I_LIBINTL
-#include <libintl.h>
-#endif
-int main(int argc, char **argv) {
- return (int) bindtextdomain ("", "");
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_bindtextdomain test_bindtextdomain.c $libs >/dev/null 2>&1 ; then
- d_bindtextdomain='define'
- echo 'Otima! You seem to have bindtextdomain for translations.' >&4
-else
- d_bindtextdomain='undef'
- echo "You don't seem to have bindtextdomain. Sinto muito." >&4
-fi
-$rm -f test_bindtextdomain* core
-
-: see if this is a unistd.h system
-set unistd.h i_unistd
-eval $inhdr
-
-: see if setpgrp exists
-set setpgrp d_setpgrp
-eval $inlibc
-
-case "$d_setpgrp" in
-"$define")
- echo " "
- echo "Checking to see which flavor of setpgrp is in use..."
- $cat >set.c <<EOP
-#$i_unistd I_UNISTD
-#include <sys/types.h>
-#ifdef I_UNISTD
-# include <unistd.h>
-#endif
-main()
-{
- if (getuid() == 0) {
- printf("(I see you are running Configure as super-user...)\n");
- setuid(1);
- }
-#ifdef TRY_BSD_PGRP
- if (-1 == setpgrp(1, 1))
- exit(0);
-#else
- if (setpgrp() != -1)
- exit(0);
-#endif
- exit(1);
-}
-EOP
- if $cc -DTRY_BSD_PGRP $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then
- echo 'You have to use setpgrp(pid,pgrp) instead of setpgrp().' >&4
- val="$define"
- elif $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then
- echo 'You have to use setpgrp() instead of setpgrp(pid,pgrp).' >&4
- val="$undef"
- else
- echo "(I can't seem to compile and run the test program.)"
- if ./usg; then
- xxx="a USG one, i.e. you use setpgrp()."
- else
- # SVR4 systems can appear rather BSD-ish.
- case "$i_unistd" in
- $undef)
- xxx="a BSD one, i.e. you use setpgrp(pid,pgrp)."
- val="$define"
- ;;
- $define)
- xxx="probably a USG one, i.e. you use setpgrp()."
- val="$undef"
- ;;
- esac
- fi
- echo "Assuming your setpgrp is $xxx" >&4
- fi
- ;;
-*) val="$undef";;
-esac
-set d_bsdsetpgrp
-eval $setvar
-$rm -f set set.c
-: see if bzero exists
-set bzero d_bzero
-eval $inlibc
-
-: check for const keyword
-echo " "
-echo 'Checking to see if your C compiler knows about "const"...' >&4
-$cat >const.c <<'EOCP'
-typedef struct spug { int drokk; } spug;
-main()
-{
- const char *foo;
- const spug y;
-}
-EOCP
-if $cc -c $ccflags const.c >/dev/null 2>&1 ; then
- val="$define"
- echo "Yup, it does."
-else
- val="$undef"
- echo "Nope, it doesn't."
-fi
-set d_const
-eval $setvar
-
-: see if crypt exists
-echo " "
-if set crypt val -f d_crypt; eval $csym; $val; then
- echo 'crypt() found.' >&4
- 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!' >&4
- val="$undef"
- else
- val="$define"
- fi
-fi
-set d_crypt
-eval $setvar
-: see if crypt.h can be included
-set crypt.h i_crypt
-eval $inhdr
-
-: Do nothing by default
-val="$undef"
-set d_force_ipv4; eval $setvar
-
-echo " "
-: see if floatingpoint.h can be included
-set floatingpoint.h i_floatingpoint
-eval $inhdr
-
-: see if fpsetround exists
-$cat >test_fpsetround.c <<'EOCP'
-#$i_floatingpoint I_FLOATINGPOINT
-#ifdef I_FLOATINGPOINT
-#include <floatingpoint.h>
-#endif
-
-int main() {
- fpsetround(FP_RN);
-}
-EOCP
-
-if ($cc $ccflags $ldflags -o test_fpsetround test_fpsetround.c $libs \
- && ./test_fpsetround) >/dev/null 2>&1 ; then
- echo 'fpsetround() is around (and found).' >&4
- val="$define"
-else
- echo 'no fpsetround(). No problem.' >&4
- val="$undef"
-fi
-set d_fpsetround
-eval $setvar
-
-: see if fpsetmask exists
-$cat >test_fpsetmask.c <<'EOCP'
-#$i_floatingpoint I_FLOATINGPOINT
-#ifdef I_FLOATINGPOINT
-#include <floatingpoint.h>
-#endif
-
-int main() {
- fpsetmask(0L);
-}
-EOCP
-
-if ($cc $ccflags $ldflags -o test_fpsetmask test_fpsetmask.c $libs && \
- ./test_fpsetmask) >/dev/null 2>&1 ; then
- echo 'fpsetmask() is up to the task.' >&4
- val="$define"
-else
- echo 'no fpsetmask(). No problem.' >&4
- val="$undef"
-fi
-set d_fpsetmask
-eval $setvar
-
-$rm -f test_fpset* core
-
-: see if gai_strerror exists
-set gai_strerror d_gaistr
-eval $inlibc
-
-: see if getaddrinfo exists
-set getaddrinfo d_getadinf
-eval $inlibc
-
-: see which of string.h or strings.h is needed
-echo " "
-strings=`./findhdr string.h`
-if $test "$strings" && $test -r "$strings"; then
- echo "Using <string.h> instead of <strings.h>." >&4
- val="$define"
-else
- val="$undef"
- strings=`./findhdr strings.h`
- if $test "$strings" && $test -r "$strings"; then
- echo "Using <strings.h> instead of <string.h>." >&4
- else
- echo "No string header found -- You'll surely have problems." >&4
- fi
-fi
-set i_string
-eval $setvar
-case "$i_string" in
-"$undef") strings=`./findhdr strings.h`;;
-*) strings=`./findhdr string.h`;;
-esac
-
-: see if getdate exists
-set getdate d_getdate
-eval $inlibc
-
-if test $d_getdate = 'define'; then
-$cat >test_getdate.c <<EOCP
-#ifdef I_STRING
-#include <string.h>
-#else
-#include <strings.h>
-#endif
-#include <ctype.h>
-#ifdef __GNUC__
-/* Required to get the getdate() prototype on glibc. */
-#define __USE_XOPEN_EXTENDED
-#endif
-#include <time.h>
-int main(int argc, char **argv) {
- int i;
- i = getdate_err;
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_getdate test_getdate.c $libs >/dev/null 2>&1 ; then
- d_getdate='define'
-else
- d_getdate='undef'
- echo "You may have getdate, but it's broken." >&4
-fi
-$rm -f test_getdate* core
-
-fi
-
-: see if gethostbyname2 exists
-set gethostbyname2 d_gethbynm2
-eval $inlibc
-
-: see if getnameinfo exists - along with constants we use
-set getnameinfo d_getnminf
-eval $inlibc
-
-if test $d_getnminf = 'define'; then
-
-echo " "
-$cat >test_getnminf.c <<EOCP
-#include <netdb.h>
-int main(int argc, char **argv) {
- int i;
- i = NI_MAXHOST + NI_MAXSERV + NI_NOFQDN + NI_NUMERICHOST + NI_NAMEREQD;
- i += NI_NUMERICSERV + NI_DGRAM;
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_getnminf test_getnminf.c $libs >/dev/null 2>&1 ; then
- d_getnminf='define'
- echo "You've got getnameinfo and the netdb constants." >&4
-else
- d_getnminf='undef'
- echo "You've got getnameinfo but not the NI_* constants! Broken!" >&4
-fi
-$rm -f test_getnminf* core
-
-fi
-: see if sysctl exists
-set sysctl d_sysctl
-eval $inlibc
-: see if sysctlbyname exists
-set sysctlbyname d_sysctlbyname
-eval $inlibc
-
-: see if getpagesize exists
-set getpagesize d_getpagsz
-eval $inlibc
-
-: determine the system page size
-echo " "
-guess=' (OK to guess)'
-case "$pagesize" in
-'')
- $cat >page.c <<EOP
-#include <stdio.h>
-extern int getpagesize();
-int main()
-{
- printf("%d\n", getpagesize());
-}
-EOP
- echo "Computing the granularity of memory management calls..." >&4
- dflt='4096'
- case "$d_getpagsz" in
- "$define")
- if $cc $ccflags $ldflags page.c -o page $libs >/dev/null 2>&1; then
- dflt=`./page`
- guess=''
- else
- echo "(I can't seem to compile the test program--guessing)"
- fi
- ;;
- *)
- if $cc $ccflags $ldflags page.c -o page $libs -lPW >/dev/null 2>&1; then
- dflt=`./page`
- guess=''
- echo "(For your eyes only: I used the getpagesize() from -lPW.)"
- else
- if $contains PAGESIZE `./findhdr sys/param.h` >/dev/null 2>&1; then
- $cat >page.c <<EOP
-#include <sys/param.h>
-#include <stdio.h>
-int main()
-{
- printf("%d\n", PAGESIZE);
-}
-EOP
- if $cc $ccflags $ldflags page.c -o page $libs >/dev/null 2>&1; then
- dflt=`./page`
- guess=''
- echo "(Using value of PAGESIZE found in <sys/param.h>.)"
- else
- if $test "x$d_sysctlbyname" = "x$define"; then
- $cat >page.c <<EOP
-#include <sys/types.h>
-#include <sys/sysctl.h>
-#include <stdio.h>
-int main()
-{
- int res, pgsize
- size_t len;
- len = sizeof(pgsize);
- res = sysctlbyname("hw.pagesize",&pgsize,&len,NULL,0);
- if (res < 0)
- res = sysctlbyname("hw_pagesize",&pgsize,&len,NULL,0);
- printf("%d\n", res ? -1 : pgsize);
-}
-EOP
- if $cc $ccflags $ldflags page.c -o page $libs >/dev/null 2>&1; then
- dflt=`./page`
- if $test $dflt -gt 0; then
- guess=''
- echo "(Using value from sysctlbyname)"
- else
- dflt='4096'
- fi
- fi
- fi
- fi
- fi
- fi
- ;;
- esac
- ;;
-*) dflt="$pagesize"; guess='';;
-esac
-rp="What is the system page size, in bytes$guess?"
-. ./myread
-pagesize=$ans
-$rm -f page.c page
-
-: see if getpriority exists
-set getpriority d_getprior
-eval $inlibc
-
-: see if getdtablesize exists
-echo " "
-case "$d_gettblsz" in
-$define) d_gettblsz="$undef";;
-$undef) d_gettblsz="$define";;
-esac
-if set getdtablesize val -f d_gettblsz; eval $csym; $val; then
- echo 'getdtablesize() found.' >&4
- d_gettblsz="$undef"
- tablesize=''
-else
- echo 'getdtablesize() NOT found...' >&4
- if set ulimit val -f; eval $csym; $val; then
- echo 'Maybe ulimit(4,0) will work...'
- $cat >nofile.c <<'EOCP'
-#include <stdio.h>
-#ifdef GETPARAM_H
-#include <sys/param.h>
-#endif
-main()
-{
- printf("%d %d\n",
-#ifdef NOFILE
- NOFILE,
-#else
- 0,
-#endif
- ulimit(4,0));
- exit(0);
-}
-EOCP
- if $cc $ccflags -DGETPARAM_H nofile.c -o nofile $libs >/dev/null 2>&1 \
- || $cc $ccflags nofile.c -o nofile $libs >/dev/null 2>&1 ; then
- set `./nofile`
- d_gettblsz=$1
- d_ulimit4=$2
- if $test "$d_ulimit4" -lt 0; then
- echo "Your ulimit() call doesn't tell me what I want to know."
- echo "We'll just use NOFILE in this case."
- nofile=$d_gettblsz
- d_gettblsz="$define"
- tablesize='NOFILE'
- else
- if $test "$d_gettblsz" -gt 0; then
- echo "Your system defines NOFILE to be $d_gettblsz, and" >&4
- else
- echo "I had trouble getting NOFILE from your system, but" >&4
- fi
-echo "ulimit returns $d_ulimit4 as the number of available file descriptors." >&4
- dflt='y';
- echo " "
- rp='Should I use ulimit to get the number of available file descriptors?'
- . ./myread
- case "$ans" in
- y*)
- nofile=$d_ulimit4
- d_gettblsz="$define"
- tablesize='ulimit(4, 0L)'
- echo "Using ulimit(4,0)."
- ;;
- *)
- nofile=$d_gettblsz
- d_gettblsz="$define"
- tablesize='NOFILE'
- echo "Using NOFILE."
- ;;
- esac
- fi
- else
- echo "Strange, I couldn't get my test program to compile."
- echo "We'll just use NOFILE in this case."
- d_gettblsz="$define"
- tablesize='NOFILE'
- nofile=''
- fi
- else
- echo 'Using NOFILE instead.'
- d_gettblsz="$define"
- tablesize='NOFILE'
- nofile=''
- fi
-fi
-$rm -f nofile*
-
-: check for a new-style definitions
-echo " "
-$cat >test_gettext.c <<EOCP
-#$i_libintl I_LIBINTL
-#ifdef I_LIBINTL
-#include <libintl.h>
-#endif
-int main(int argc, char **argv) {
- return (int) gettext ("");
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_gettext test_gettext.c $libs >/dev/null 2>&1 ; then
- d_gettext='define'
- echo 'Voila! You seem to have gettext for translations.' >&4
-else
- d_gettext='undef'
- echo "You don't seem to have gettext. Quel dommage." >&4
-fi
-$rm -f test_gettext* core
-
-: see if this is a values.h system
-set values.h i_values
-eval $inhdr
-
-: see if this is a limits.h system
-set limits.h i_limits
-eval $inhdr
-
-: see if we have HUGE, HUGE_VAL, MAXINT, or MAXDOUBLE
-echo " "
-echo "Let's try to figure out a really big double." >&4
- $cat >d_huge.c <<EOCP
-#include <stdio.h>
-#include <math.h>
-#$i_values I_VALUES
-#$i_limits I_LIMITS
-#ifdef I_LIMITS
-#include <limits.h>
-#else
-#ifdef I_VALUES
-#include <values.h>
-#endif
-#endif
-
-int main()
-{
- printf("%f\n",HUGE_VAL);
-}
-EOCP
- if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
- val="$define"
- set d_huge_val; eval $setvar
- val="$undef"
- set d_huge; eval $setvar
- set d_maxdouble; eval $setvar
- echo "Great. Your system defines HUGE_VAL." >&4
- else
- val="$undef"
- set d_huge_val; eval $setvar
- echo "Your system doesn't have HUGE_VAL. Maybe HUGE?" >&4
- $cat >d_huge.c <<EOCP
-#include <stdio.h>
-#include <math.h>
-#$i_values I_VALUES
-#$i_limits I_LIMITS
-#ifdef I_LIMITS
-#include <limits.h>
-#else
-#ifdef I_VALUES
-#include <values.h>
-#endif
-#endif
-int main()
-{
- printf("%f\n",HUGE);
-}
-EOCP
-
- if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
- val="$define"
- set d_huge; eval $setvar
- val="$undef"
- set d_maxdouble; eval $setvar
- echo "Good. Your system defines HUGE." >&4
- else
- val="$undef"
- set d_huge; eval $setvar
- echo "Hmm. Your system doesn't define HUGE. MAX_DOUBLE?" >&4
- $cat >d_huge.c <<EOCP
-#include <stdio.h>
-#include <math.h>
-#$i_limits I_LIMITS
-#ifdef I_LIMITS
-#include <limits.h>
-#else
-#$i_values I_VALUES
-#ifdef I_VALUES
-#include <values.h>
-#endif
-#endif
-int main()
-{
- printf("%f\n",MAX_DOUBLE);
-}
-EOCP
-
- if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
- val="$define"
- echo "Ok, you've got MAXDOUBLE." >&4
- else
- val="$undef"
- echo "Nope, no MAXDOUBLE either. We'll guess one." >&4
- fi
- set d_maxdouble; eval $setvar
- fi
-fi
-
-
-echo " "
-echo "Let's try to figure out a really big int, too." >&4
- $cat >d_huge.c <<EOCP
-#include <stdio.h>
-#include <math.h>
-#$i_limits I_LIMITS
-#ifdef I_LIMITS
-#include <limits.h>
-#else
-#$i_values I_VALUES
-#ifdef I_VALUES
-#include <values.h>
-#endif
-#endif
-int main()
-{
- printf("%d\n",INT_MAX);
-}
-EOCP
-
-if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
- val="$define"
- set d_int_max; eval $setvar
- val="$undef"
- set d_maxint; eval $setvar
- echo "Ok, you've got INT_MAX." >&4
-else
- val="$undef"
- echo "No INT_MAX. Maybe MAXINT?" >&4
- set d_int_max; eval $setvar
- $cat >d_huge.c <<EOCP
-#include <stdio.h>
-#include <math.h>
-#$i_limits I_LIMITS
-#ifdef I_LIMITS
-#include <limits.h>
-#else
-#$i_values I_VALUES
-#ifdef I_VALUES
-#include <values.h>
-#endif
-#endif
-int main()
-{
- printf("%d\n",MAXINT);
-}
-EOCP
- if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
- val="$define"
- echo "Ok, you've got MAXINT." >&4
- set d_maxint; eval $setvar
- else
- val="$undef"
- echo "No MAXINT. I give up. I'll take a guess." >&4
- set d_maxint; eval $setvar
- fi
-fi
-
-$rm -f d_huge*
-
-: check for a safe ieee
-echo " "
-echo "Let's see if your math functions handle errors nicely..." >&4
-$cat >test_ieee.c <<'EOCP'
-#include <stdio.h>
-#include <math.h>
-
-int main() {
- double x;
- x = pow(-1,.5);
- x = pow(10000,10000);
- printf("define\n");
- exit(0);
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_ieee test_ieee.c -lm >/dev/null 2>&1 ; then
- d_ieee=`./test_ieee`
- if test $d_ieee = define ; then
- echo "Great! They can." >&4
- else
- echo "Nope, they crash and burn." >&4
- d_ieee='undef'
- fi
-else
- $cat <<EOM
-(I can't seem to get my test program to work. We'll play it safe
- and assume that your math functions don't handle errors nicely.)
-EOM
- d_ieee='undef'
-fi
-$rm -f test_ieee* core
-
-: see inet_pton exists
-set inet_pton d_in2p
-eval $inlibc
-
-: index or strchr
-echo " "
-if set index val -f; eval $csym; $val; then
- if set strchr val -f d_strchr; eval $csym; $val; then
- if $contains strchr "$strings" >/dev/null 2>&1 ; then
- val="$define"
- vali="$define"
- echo "strchr() and index() found." >&4
- else
- val="$undef"
- vali="$define"
- echo "index() found." >&4
- fi
- else
- val="$undef"
- vali="$define"
- echo "index() found." >&4
- fi
-else
- if set strchr val -f d_strchr; eval $csym; $val; then
- val="$define"
- vali="$undef"
- echo "strchr() found." >&4
- else
- echo "No index() or strchr() found!" >&4
- val="$undef"
- vali="$undef"
- fi
-fi
-set d_strchr; eval $setvar
-val="$vali"
-set d_index; eval $setvar
-
-: check for internet mailer
-dflt=y
-case "$d_internet" in
-"$undef") dflt=n;;
-esac
-cat <<EOM
-
-Most mailers can deliver mail to addresses of the INTERNET persuasion,
-such as user@host.edu. Some older mailers, however, require the complete
-path to the destination to be specified in the address.
-
-EOM
-rp="Does your mailer understand INTERNET addresses?"
-. ./myread
-case "$ans" in
-y*) val="$define";;
-*) val="$undef";;
-esac
-set d_internet
-eval $setvar
-
-: see if sys/types.h has to be included
-set sys/types.h i_systypes
-eval $inhdr
-
-: see if this is a sys/socket.h system
-set sys/socket.h i_syssock
-eval $inhdr
-
-: see if this is a netinet/in.h or sys/in.h system
-set netinet/in.h i_niin sys/in.h i_sysin
-eval $inhdr
-
-: see if we have struct sockaddr_in6.
-echo " "
-$cat >d_ipv6.c <<EOCP
-#$i_systypes I_SYS_TYPES
-#$i_syssock I_SYS_SOCK
-#$i_niin I_NETINET_IN
-#$i_sysin I_SYS_IN
-#ifdef I_SYS_TYPES
-#include <sys/types.h>
-#endif
-#ifdef I_SYS_SOCK
-#include <sys/socket.h>
-#endif
-#ifdef I_NETINET_IN
-#include <netinet/in.h>
-#else
-#ifdef I_SYS_IN
-#include <sys/in.h>
-#endif
-#endif
-#include <stdio.h>
-main()
-{
- struct sockaddr_in6 test;
- int foo = AF_INET6;
- printf("%d\n", foo);
-}
-EOCP
-if $cc $ccflags $ldflags d_ipv6.c -o d_ipv6 $libs >/dev/null 2>&1; then
- val="$define"
- set d_ipv6; eval $setvar
- echo "IPv6 structures found." >&4
-else
- val="$undef"
- set d_ipv6; eval $setvar
- echo "No IPv6 structures found. No problem." >&4
-fi
-: see if setitimer exists
-set setitimer d_itimer
-eval $inlibc
-
-socketlib=''
-sockethdr=''
-: see whether socket exists
-echo " "
-$echo $n "Hmm... $c" >&4
-if set socket val -f d_socket; eval $csym; $val; then
- echo "Looks like you have Berkeley networking support." >&4
- d_socket="$define"
- if set setsockopt val -f; eval $csym; $val; then
- d_oldsock="$undef"
- else
- echo "...but it uses the old 4.1c interface, rather than 4.2" >&4
- d_oldsock="$define"
- fi
-else
- if $contains socklib libc.list >/dev/null 2>&1; then
- echo "Looks like you have Berkeley networking support." >&4
- d_socket="$define"
- : we will have to assume that it supports the 4.2 BSD interface
- d_oldsock="$undef"
- else
- echo "You don't have Berkeley networking in libc$_a..." >&4
- if test -f /usr/lib/libnet$_a; then
- ( (nm $nm_opt /usr/lib/libnet$_a | eval $nm_extract) || \
- ar t /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." >&4
- socketlib="-lnet"
- sockethdr="-I/usr/netinclude"
- d_socket="$define"
- if $contains setsockopt libc.list >/dev/null 2>&1; then
- d_oldsock="$undef"
- else
- echo "...using the old 4.1c interface, rather than 4.2" >&4
- d_oldsock="$define"
- fi
- else
- echo "or even in libnet$_a, which is peculiar." >&4
- d_socket="$undef"
- d_oldsock="$undef"
- fi
- else
- echo "or anywhere else I see." >&4
- d_socket="$undef"
- d_oldsock="$undef"
- fi
- fi
-fi
-
-: see if socketpair exists
-set socketpair d_sockpair
-eval $inlibc
-
-: see if this is a netinet/tcp.h system
-set netinet/tcp.h i_nitcp
-eval $inhdr
-
-: see if setsockopt with SO_KEEPALIVE works as advertised
-echo " "
-case "$d_oldsock" in
-"$undef")
- echo "OK, let's see if SO_KEEPALIVE works as advertised..." >&4
- $cat > socket.c <<EOP
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#$i_nitcp I_NETINET_TCP
-#ifdef I_NETINET_TCP
-#include <netinet/tcp.h>
-#endif
-#include <netdb.h>
-
-main()
-{
- int s = socket(AF_INET, SOCK_STREAM, 0);
- int val = 1;
- if (s == -1)
- exit(1);
- if (-1 == setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, &val, sizeof(val)))
- exit(2);
-#ifdef I_NETINET_TCP
-#ifdef TCP_KEEPIDLE
- val = 1;
- if (-1 == setsockopt(s, IPPROTO_TCP, TCP_KEEPIDLE, &val, sizeof(val)))
- exit(3);
-#else
- exit(3);
-#endif
-#endif
- exit(0);
-}
-EOP
- if $cc $ccflags $sockethdr socket.c -o socket $libs \
- $socketlib >/dev/null 2>&1; then
- ./socket >/dev/null 2>&1
- case $? in
- 0) echo "Yes, it does!"
- val="$define"
- val2="$i_nitcp"
- ;;
- 1) $cat <<EOM
-(Something went wrong -- Assuming SO_KEEPALIVE is broken)
-EOM
- val="$undef"
- val2="$undef"
- ;;
- 2) echo "No, it doesn't. Don't trust your manuals!!"
- val="$undef"
- val2="$undef"
- ;;
- 3) echo "It does, but TCP_KEEPIDLE doesn't."
- val="$define"
- val2="$undef"
- ;;
- esac
- else
- cat <<EOM
-(I can't compile the test program -- Assuming SO_KEEPALIVE is broken)
-EOM
- val="$undef"
- val2="$undef"
- fi
- ;;
-*) cat <<EOM
-As you have an old socket interface, you can't have heard of SO_KEEPALIVE.
-EOM
- val="$undef"
- val2="$undef";;
-esac
-set d_keepalive
-eval $setvar
-val="$val2"
-set d_keepidle
-eval $setvar
-$rm -f socket socket.c
-
-echo " "
-: see if we have sigaction
-if set sigaction val -f d_sigaction; eval $csym; $val; then
- echo 'sigaction() found.' >&4
- val="$define"
-else
- echo 'sigaction NOT found.' >&4
- val="$undef"
-fi
-$cat > set.c <<'EOP'
-#include <stdio.h>
-#include <sys/types.h>
-#include <signal.h>
-main()
-{
- struct sigaction act, oact;
-}
-EOP
-if $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1; then
- :
-else
- echo "But you don't seem to have a useable struct sigaction." >&4
- val="$undef"
-fi
-set d_sigaction; eval $setvar
-$rm -f set set$_o set.c
-
-: see if signals are kept
-val="$undef"
-echo " "
-echo "Checking to see if signal handlers stick around..." >&4
-if test ${d_sigaction} = "$define"; then
- echo "You've got sigaction, so we can force 'em to." >&4
- val="$define"
-else
- $cat >try.c <<'EOCP'
-foo() {}
-
-int main()
-{
- signal(2, foo);
- kill(getpid(), 2);
- kill(getpid(), 2);
- printf("abc\n");
-}
-EOCP
- if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then
- sh -c ./try >try.out 2>/dev/null
- if $contains abc try.out >/dev/null 2>&1; then
- echo "Yes, they do."
- val="$define";
- else
- echo "No, they don't."
- fi
- else
- $echo $n "(I can't seem to compile the test program. Assuming $c"
- if ./bsd; then
- echo "they do.)"
- val="$define"
- else
- echo "they don't.)"
- fi
- fi
-fi
-set d_keepsig
-eval $setvar
-$rm -f try*
-
-: random, lrand48, or rand
-set random d_random
-eval $inlibc
-set lrand48 d_lrand48
-eval $inlibc
-set rand d_rand
-eval $inlibc
-
-: see if memcpy exists
-set memcpy d_memcpy
-eval $inlibc
-set memmove d_memmove
-eval $inlibc
-
-: see if memset exists
-set memset d_memset
-eval $inlibc
-
-: see if we should include -lmysqlclient
-echo " "
-
-d_mysql="$undef"
-
-if $test "x$no_mysql" = "x"; then
-
- libmysqlclient="-lmysqlclient"
-
- $cat > test_mysql.c <<EOM
-#include <stdio.h>
-#include <stdlib.h>
-#include <mysql/mysql.h>
-#include <mysql/errmsg.h>
-
-int main(int argc, char **argv) {
- printf("Your mysql is version %s\n",mysql_get_client_info());
- exit(0);
-}
-EOM
-
- if $cc $ccflags $ldflags -o test_mysql test_mysql.c $libs $libmysqlclient >/dev/null 2>&1 ;
- then
- echo 'You have mysql...' >&4
- version=`./test_mysql`
- if $test $? -eq 0; then
- echo "$version" >&4
- d_mysql="$define"
- else
- echo "...but my test program didn't run correctly." >&4
- libmysqlclient=''
- fi
- else
- echo "You don't seem to have mysql." >&4
- libmysqlclient=''
- fi
- $rm -f test_mysql* core
-
-else
-
- echo "Skipping mysql tests." >&4
- libmysqlclient=''
-
-fi
-
-: check for a new-style definitions
-echo " "
-$cat >test_newstyle.c <<'EOCP'
-#include <stdio.h>
-int main(int argc, char **argv) {
- exit(0);
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_newstyle test_newstyle.c >/dev/null 2>&1 ; then
- d_newstyle='define'
- echo 'Your compiler accepts new-style function definitions.' >&4
-else
- d_newstyle='undef'
- echo "Your compiler DOESN'T accept new-style function definitions." >&4
-fi
-$rm -f test_newstyle* core
-
-: 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
-int 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 "`./findhdr sys/file.h`" && \
- $cc $ccflags $ldflags "-DI_SYS_FILE" open3.c -o open3 $libs >/dev/null 2>&1 ; then
- h_sysfile=true;
- echo "<sys/file.h> defines the O_* constants..." >&4
- if ./open3; then
- echo "and you have the 3 argument form of open()." >&4
- val="$define"
- else
- echo "but not the 3 argument form of open(). Oh, well." >&4
- val="$undef"
- fi
-elif $test "`./findhdr fcntl.h`" && \
- $cc $ccflags $ldflags "-DI_FCNTL" open3.c -o open3 $libs >/dev/null 2>&1 ; then
- h_fcntl=true;
- echo "<fcntl.h> defines the O_* constants..." >&4
- if ./open3; then
- echo "and you have the 3 argument form of open()." >&4
- val="$define"
- else
- echo "but not the 3 argument form of open(). Oh, well." >&4
- val="$undef"
- fi
-else
- val="$undef"
- echo "I can't find the O_* constant definitions! You got problems." >&4
-fi
-set d_open3
-eval $setvar
-$rm -f open3*
-
-: see if we should include -lssl and -lcrypto
-echo " "
-
-d_openssl="$undef"
-
-if $test "x$no_openssl" = "x"; then
-
- libssl="-lssl -lcrypto"
-
- $cat > test_ssl.c <<EOM
-#include <stdio.h>
-#include <stdlib.h>
-#include <openssl/opensslv.h>
-int main(int argc, char **argv) {
- printf("Your openssl is version %lx\n",OPENSSL_VERSION_NUMBER);
- exit(OPENSSL_VERSION_NUMBER < 0x00906000L);
-}
-EOM
-
- if $cc $ccflags $ldflags -o test_ssl test_ssl.c $libs $libssl >/dev/null 2>&1 ;
- then
- echo 'You have openssl...' >&4
- version=`./test_ssl`
- if $test $? -eq 0; then
- echo '...and at least version 0.9.6. Great.' >&4
- d_openssl="$define"
- else
- echo '...but not version 0.9.6 or later.' >&4
- libssl=''
- fi
- else
- echo "You don't seem to have openssl." >&4
- libssl=''
- fi
- $rm -f test_ssl* core
-
-else
-
- echo "Skipping openssl tests." >&4
- libssl=''
-
-fi
-
-: see if rename exists
-set rename d_rename
-eval $inlibc
-
-: see if getrlimit exists
-set getrlimit d_rlimit
-eval $inlibc
-
-: see if getrusage exists
-set getrusage d_rusage
-eval $inlibc
-
-: see if select exists
-set select d_select
-eval $inlibc
-
-: have we got sendmail?
-echo " "
-echo "Checking to see if we can use sendmail..."
-if $test -f $sendmail; then
- echo "Looks like sendmail is in $sendmail"
- val="$define"
-else
- echo "Nope, out of luck."
- val="$undef"
-fi
-set d_sendmail
-eval $setvar
-
-: see if setlocale exists
-set setlocale d_setlocale
-eval $inlibc
-
-: see if setpgid exists
-set setpgid d_setpgid
-eval $inlibc
-
-: see if setpriority exists
-set setpriority d_setprior
-eval $inlibc
-
-: see if we have SIGCHLD, SIGCLD, or both
-echo " "
-echo "How should a child signal a parent?" >&4
-$cat >d_sigchld.c <<EOCP
-#include <signal.h>
-#include <stdio.h>
-int main()
-{
- printf("%d\n",SIGCHLD);
-}
-EOCP
-if $cc $ccflags $ldflags d_sigchld.c -o d_sigchld $libs >/dev/null 2>&1; then
- val="$define"
- set d_sigchld; eval $setvar
- echo "SIGCHLD works."
-else
- val="$undef"
- set d_sigchld; eval $setvar
- echo "SIGCHLD doesn't work."
-fi
-
-$cat >d_sigchld.c <<EOCP
-#include <signal.h>
-#include <stdio.h>
-int main()
-{
- printf("%d\n",SIGCLD);
-}
-EOCP
-if $cc $ccflags $ldflags d_sigchld.c -o d_sigchld $libs >/dev/null 2>&1; then
- val="$define"
- set d_sigcld; eval $setvar
- echo "SIGCLD works."
-else
- val="$undef"
- set d_sigcld; eval $setvar
- echo "SIGCLD doesn't work."
-fi
-: Cruising for prototypes
-echo " "
-echo "Checking out function prototypes..." >&4
-$cat >prototype.c <<'EOCP'
-main(int argc, char *argv[]) {
- exit(0);}
-EOCP
-if $cc $ccflags -c prototype.c >prototype.out 2>&1 ; then
- echo "Your C compiler appears to support function prototypes."
- val="$define"
-else
- echo "Your C compiler doesn't seem to understand function prototypes."
- val="$undef"
-fi
-set prototype
-eval $setvar
-$rm -f prototype*
-
-: see if signal is declared as pointer to function returning int or void
-echo " "
-xxx=`./findhdr signal.h`
-$test "$xxx" && $cppstdin $cppminus $cppflags < $xxx >$$.tmp 2>/dev/null
-if $contains 'int.*\*[ ]*signal' $$.tmp >/dev/null 2>&1 ; then
- echo "You have int (*signal())() instead of void." >&4
- val="$undef"
-elif $contains 'void.*\*[ ]*signal' $$.tmp >/dev/null 2>&1 ; then
- echo "You have void (*signal())() instead of int." >&4
- val="$define"
-elif $contains 'extern[ ]*[(\*]*signal' $$.tmp >/dev/null 2>&1 ; then
- echo "You have int (*signal())() instead of void." >&4
- val="$undef"
-else
- case "$d_voidsig" in
- '')
- echo "I can't determine whether signal handler returns void or int..." >&4
- dflt=void
- rp="What type does your signal handler return?"
- . ./myread
- case "$ans" in
- v*) val="$define";;
- *) val="$undef";;
- esac;;
- "$define")
- echo "As you already told me, signal handler returns void." >&4;;
- *)
- echo "As you already told me, signal handler returns int." >&4;;
- esac
-fi
-set d_voidsig
-eval $setvar
-case "$d_voidsig" in
-"$define") signal_t="void";;
-*) signal_t="int";;
-esac
-$rm -f $$.tmp
-
-: can we prototype signal ourselves
-val="$undef"
-echo " "
-echo "Checking to see if we can declare or prototype signal()..." >&4
-if test ${prototype} = "$define"; then
- $cat >try.c <<EOCP
-#include <stdio.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-typedef ${signal_t} (*Sigfunc) (int);
-extern Sigfunc signal (int signo, Sigfunc func);
-int main()
-{ printf("no op\n"); }
-EOCP
-else
- $cat >try.c <<EOCP
-#include <stdio.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-typedef ${signal_t} (*Sigfunc) ();
-extern Sigfunc signal ();
-int main()
-{ printf("no op\n"); }
-EOCP
-fi
-if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then
- $echo "Looks like we can."
- val="$define";
-else
- $echo "Looks like we can't."
-fi
-set d_signalproto
-eval $setvar
-$rm -f try*
-
-echo " "
-: see if we have sigprocmask
-if set sigprocmask val -f d_sigprocmask; eval $csym; $val; then
- echo 'sigprocmask() found.' >&4
- val="$define"
-else
- echo 'sigprocmask NOT found.' >&4
- val="$undef"
-fi
-$cat > set.c <<'EOP'
-#include <stdio.h>
-#include <sys/types.h>
-#include <signal.h>
-main()
-{
- sigset_t mask, oldmask;
- sigprocmask(SIG_SETMASK, &mask, &oldmask);
-}
-EOP
-if $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1; then
- :
-else
- echo "But you don't seem to have a working sigprocmask." >&4
- val="$undef"
-fi
-set d_sigprocmask; eval $setvar
-$rm -f set set$_o set.c
-
-: see if snprintf exists
-echo " "
-if set snprintf val -f d_snprintf; eval $csym; $val; then
- echo 'snprintf() found.' >&4
- val="$define"
-else
- echo 'snprintf() NOT found.' >&4
- val="$undef"
-fi
-set d_snprintf
-eval $setvar
-
-: see if we have socklen_t.
-echo " "
-$cat >d_socklen.c <<EOCP
-#$i_systypes I_SYS_TYPES
-#$i_syssock I_SYS_SOCKET
-#ifdef I_SYS_TYPES
-#include <sys/types.h>
-#endif
-#ifdef I_SYS_SOCKET
-#include <sys/socket.h>
-#endif
-#include <stdio.h>
-main()
-{
- socklen_t test = 1;
- printf("%d\n",test);
-}
-EOCP
-if $cc $ccflags $ldflags d_socklen.c -o d_socklen $libs >/dev/null 2>&1; then
- val="$define"
- set d_socklen; eval $setvar
- echo "socklen_t works." >&4
-else
- val="$undef"
- set d_socklen; eval $setvar
- echo "socklen_t doesn't work. Using int." >&4
-fi
-: see if strcasecmp exists
-set strcasecmp d_strccmp
-eval $inlibc
-
-: see if strcoll exists
-set strcoll d_strcoll
-eval $inlibc
-
-: see if strdup exists
-set strdup d_strdup
-eval $inlibc
-
-: see if strxfrm exists
-set strxfrm d_strxfrm
-eval $inlibc
-
-: see if sysconf exists
-set sysconf d_sysconf
-eval $inlibc
-
-: see if tcl exists
-echo " "
-ok=0
-
-if $test -f src/tcl.c -o -f ../src/tcl.c ; then
- echo "I'm tickled pink - we have the penn TCL source." >&4
- echo "Let's see if we have TCL." >&4
-
-: see if tcl.h can be included
- set tcl.h i_tcl
- eval $inhdr
- if $test $i_tcl = "$define"; then
- echo "We have tcl.h, that's a start." >&4
- : see if the tcl library was found earlier
- case $libs in
- *tcl*) val="$define"
- set d_tcl
- eval $setvar
- echo "We have the TCL library, too." >&4
- ok=1
- ;;
- *) echo "Oops, no TCL library. Check your TCL installation." >&4
- ;;
- esac
- else
- echo "I can't find tcl.h. Check your TCL installation." >&4
- fi
-fi
-
-if $test $ok = 0; then
- nlibs=""
- for l in $libs; do
- case $l in
- *tcl*) ;;
- *dl*) ;;
- *ld*) ;;
- *) nlibs="$nlibs$l " ;;
- esac
- done
- libs="$nlibs"
- val="$undef"
- set d_tcl
- eval $setvar
- val="$undef"
- set i_tcl
- eval $setvar
-else
- echo "TCL will be compiled and included." >&4
-fi
-: check for a new-style definitions
-echo " "
-$cat >test_textdomain.c <<EOCP
-#$i_libintl I_LIBINTL
-#ifdef I_LIBINTL
-#include <libintl.h>
-#endif
-int main(int argc, char **argv) {
- return (int) textdomain ("");
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_textdomain test_textdomain.c $libs >/dev/null 2>&1 ; then
- d_textdomain='define'
- echo 'Mabuhay! You seem to have textdomain for translations.' >&4
-else
- d_textdomain='undef'
- echo "You don't seem to have textdomain. Sayang." >&4
-fi
-$rm -f test_textdomain* core
-
-: see if timelocal exists
-set timelocal d_timelocal
-eval $inlibc
-
-: check for a safe toupper
-echo " "
-echo "Checking out your toupper()..." >&4
-$cat >test_toupper.c <<'EOCP'
-#include <stdio.h>
-#include <ctype.h>
-
-int main() {
- char c = 'A';
- if (c == toupper(c)) {
- printf("define\n");
- } else {
- printf("undef\n");
- }
- exit(0);
-}
-EOCP
-
-if $cc $ccflags $ldflags -o test_toupper test_toupper.c >/dev/null 2>&1 ; then
- d_toupper=`./test_toupper`
- if test $d_toupper = define ; then
- echo "It's safe toupper uppers." >&4
- else
- echo "We can't toupper uppers." >&4
- fi
-else
- $cat <<EOM
-(I can't seem to get my test program to work. We'll play it safe.)
-EOM
- d_toupper='undef'
-fi
-$rm -f test_toupper* core
-
-: get C preprocessor symbols handy
-echo " "
-$echo $n "Hmm... $c"
-echo $al | $tr ' ' '\012' >Cppsym.know
-$cat <<EOSS >Cppsym
-$startsh
-case "\$1" in
--l) list=true
- shift
- ;;
-esac
-unknown=''
-case "\$list\$#" in
-1|2)
- for sym do
- if $contains "^\$1$" Cppsym.true >/dev/null 2>&1; then
- exit 0
- elif $contains "^\$1$" Cppsym.know >/dev/null 2>&1; then
- :
- else
- unknown="\$unknown \$sym"
- fi
- done
- set X \$unknown
- shift
- ;;
-esac
-case \$# in
-0) exit 1;;
-esac
-echo \$* | $tr ' ' '\012' | $sed -e 's/\(.*\)/\\
-#ifdef \1\\
-exit 0; _ _ _ _\1\\ \1\\
-#endif\\
-/' >Cppsym\$\$
-echo "exit 1; _ _ _" >>Cppsym\$\$
-$cppstdin $cppminus <Cppsym\$\$ | $grep '^exit [01]; _ _' >Cppsym2\$\$
-case "\$list" in
-true) $awk 'NF > 5 {print substr(\$6,2,100)}' <Cppsym2\$\$ ;;
-*)
- sh Cppsym2\$\$
- status=\$?
- ;;
-esac
-$rm -f Cppsym\$\$ Cppsym2\$\$
-exit \$status
-EOSS
-chmod +x Cppsym
-$eunicefix Cppsym
-./Cppsym -l $al | $sort | $grep -v '^$' >Cppsym.true
-
-: now check the C compiler for additional symbols
-$cat >ccsym <<EOS
-$startsh
-$cat >tmp.c <<EOF
-extern int foo;
-EOF
-for i in \`$cc -v -c tmp.c 2>&1\`
-do
- case "\$i" in
- -D*) echo "\$i" | $sed 's/^-D//';;
- -A*) $test "$gccversion" && echo "\$i" | $sed 's/^-A\(.*\)(\(.*\))/\1=\2/';;
- esac
-done
-$rm -f try.c
-EOS
-chmod +x ccsym
-$eunicefix ccsym
-./ccsym | $sort | $uniq >ccsym.raw
-$awk '/\=/ { print $0; next }
- { print $0"=1" }' ccsym.raw >ccsym.list
-$awk '{ print $0"=1" }' Cppsym.true >ccsym.true
-$comm -13 ccsym.true ccsym.list >ccsym.own
-$comm -12 ccsym.true ccsym.list >ccsym.com
-$comm -23 ccsym.true ccsym.list >ccsym.cpp
-also=''
-symbols='symbols'
-if $test -z ccsym.raw; then
- echo "Your C compiler doesn't seem to define any symbol!" >&4
- echo " "
- echo "However, your C preprocessor defines the following ones:"
- $cat Cppsym.true
-else
- if $test -s ccsym.com; then
- echo "Your C compiler and pre-processor define these symbols:"
- $sed -e 's/\(.*\)=.*/\1/' ccsym.com
- also='also '
- symbols='ones'
- $test "$silent" || sleep 1
- fi
- if $test -s ccsym.cpp; then
- $test "$also" && echo " "
- echo "Your C pre-processor ${also}defines the following $symbols:"
- $sed -e 's/\(.*\)=.*/\1/' ccsym.cpp
- also='further '
- $test "$silent" || sleep 1
- fi
- if $test -s ccsym.own; then
- $test "$also" && echo " "
- echo "Your C compiler ${also}defines the following cpp variables:"
- $sed -e 's/\(.*\)=1/\1/' ccsym.own
- $sed -e 's/\(.*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true
- $test "$silent" || sleep 1
- fi
-fi
-$rm -f ccsym*
-
-: see if this is a stdint system
-val="$undef"
-if $test "`./findhdr stdint.h`"; then
- val="$define"
- echo "<stdint.h> found." >&4
-fi
-echo " "
-set i_stdint; eval $setvar
-: see if we have uint32_t
-echo "Let's try to figure out a really big double." >&4
-echo " "
- $cat >d_uint32.c <<EOCP
-#include <stdio.h>
-#$i_stdint I_STDINT
-#ifdef I_STDINT
-#include <stdint.h>
-#endif
-
-int main()
-{
- uint32_t a;
- a = 2*2*2*2;
- a *= a; /* 2^8 */
- a *= a; /* 2^16 */
- a *= a; /* 2^32 */
- a += 1; /* 2^32 + 1 */
- if (a == 1)
- printf("ok\n");
- else
- printf("not ok\n");
-}
-EOCP
-
-if $cc $ccflags $ldflags d_uint32.c -o d_uint32 $libs >/dev/null 2>&1; then
- val=`./d_uint32`
- if test $val = "ok" ; then
- val="$define"
- set d_uint32_t; eval $setvar
- echo "You have uint32_t." >&4
- else
- val="$undef"
- set d_uint32_t; eval $setvar
- echo "You don't have uint32_t, hope you're a 32 bit machine." >&4
- fi
-else
- val="$undef"
- set d_uint32_t; eval $setvar
- echo "I can't tell if you have uint32_t, hope you're a 32 bit machine." >&4
-fi
-
-$rm -f d_uint32*
-
-: uptime
-echo " "
-if $test -x $uptime ; then
- val="$define"
-else
- val="$undef"
-fi
-set d_uptime; eval $setvar
-
-: see if /dev/urandom is present
-echo " "
-if $test -c /dev/urandom ; then
- val="$define"
-else
- val="$undef"
-fi
-set d_urandom; eval $setvar
-
-: see if union wait is available
-echo " "
-set X $cppflags
-shift
-flags=''
-also=''
-for f in $*; do
- case "$f" in
- *NO_PROTO*) ;;
- *) flags="$flags $f";;
- esac
-done
-xxx="`./findhdr sys/wait.h`"
-case "x$xxx" in
-x) xxx=/dev/null
-esac
-$cat "$xxx" | $cppstdin $flags $cppminus >wait.out 2>/dev/null
-if $contains 'union.*wait.*{' wait.out >/dev/null 2>&1 ; then
- echo "Looks like your <sys/wait.h> knows about 'union wait'..." >&4
- val="$define"
- also='also '
- if $contains 'extern.*wait[ ]*([ ]*int' wait.out >/dev/null 2>&1
- then
- echo "But wait() seems to expect an 'int' pointer (POSIX way)." >&4
- val="$undef"
- also=''
- elif $contains 'extern.*wait[ ]*([ ]*union' wait.out >/dev/null 2>&1
- then
- echo "And indeed wait() expects an 'union wait' pointer (BSD way)." >&4
- else
- echo "So we'll use that for wait()." >&4
- fi
-else
- echo "No trace of 'union wait' in <sys/wait.h>..." >&4
- val="$undef"
- echo "Your wait() should be happy with a plain 'int' pointer." >&4
-fi
-set d_uwait
-eval $setvar
-$rm -f wait.out
-
-: see if this is a termio system
-val="$undef"
-val2="$undef"
-val3="$undef"
-if $test "`./findhdr termios.h`"; then
- set tcsetattr i_termios
- eval $inlibc
- val3="$i_termios"
-fi
-echo " "
-case "$val3" in
-"$define") echo "You have POSIX termios.h... good!" >&4;;
-*) if ./Cppsym pyr; then
- case "`/bin/universe`" in
- ucb) if $test "`./findhdr sgtty.h`"; then
- val2="$define"
- echo "<sgtty.h> found." >&4
- else
- echo "System is pyramid with BSD universe."
- echo "<sgtty.h> not found--you could have problems." >&4
- fi;;
- *) if $test "`./findhdr termio.h`"; then
- val="$define"
- echo "<termio.h> found." >&4
- else
- echo "System is pyramid with USG universe."
- echo "<termio.h> not found--you could have problems." >&4
- fi;;
- esac
- elif ./usg; then
- if $test "`./findhdr termio.h`"; then
- echo "<termio.h> found." >&4
- val="$define"
- elif $test "`./findhdr sgtty.h`"; then
- echo "<sgtty.h> found." >&4
- val2="$define"
- else
-echo "Neither <termio.h> nor <sgtty.h> found--you could have problems." >&4
- fi
- else
- if $test "`./findhdr sgtty.h`"; then
- echo "<sgtty.h> found." >&4
- val2="$define"
- elif $test "`./findhdr termio.h`"; then
- echo "<termio.h> found." >&4
- val="$define"
- else
-echo "Neither <sgtty.h> nor <termio.h> found--you could have problems." >&4
- fi
- fi;;
-esac
-set i_termio; eval $setvar
-val=$val2; set i_sgtty; eval $setvar
-val=$val3; set i_termios; eval $setvar
-
-: see if ioctl defs are in sgtty, termio, sys/filio or sys/ioctl
-set sys/filio.h i_sysfilio
-eval $inhdr
-echo " "
-if $test "`./findhdr sys/ioctl.h`"; then
- val="$define"
- echo '<sys/ioctl.h> found.' >&4
-else
- val="$undef"
- if $test $i_sysfilio = "$define"; then
- echo '<sys/ioctl.h> NOT found.' >&4
- else
- $test $i_sgtty = "$define" && xxx="sgtty.h"
- $test $i_termio = "$define" && xxx="termio.h"
- $test $i_termios = "$define" && xxx="termios.h"
-echo "No <sys/ioctl.h> found, assuming ioctl args are defined in <$xxx>." >&4
- fi
-fi
-set i_sysioctl
-eval $setvar
-
-: check how to void tty association
-echo " "
-case "$i_sysioctl" in
-"$define") xxx='sys/ioctl.h';;
-esac
-$cat > tcio.c <<EOM
-#include <sys/types.h> /* Just in case */
-#include <$xxx>
-
-int main()
-{
-#ifdef TIOCNOTTY
- exit(0);
-#else
- exit(1);
-#endif
-}
-EOM
-if ($cc -o tcio tcio.c && ./tcio) >/dev/null 2>&1; then
- val="$define"
- echo "TIOCNOTTY found in <$xxx>." >&4
- echo "Using ioctl() call on /dev/tty to void tty association." >&4
-else
- val="$undef"
- echo "Closing standard file descriptors should void tty association." >&4
-fi
-set d_voidtty
-eval $setvar
-$rm -f tcio tcio.? core
-
-: check for volatile keyword
-echo " "
-echo 'Checking to see if your C compiler knows about "volatile"...' >&4
-$cat >try.c <<'EOCP'
-main()
-{
- typedef struct _goo_struct goo_struct;
- goo_struct * volatile goo = ((goo_struct *)0);
- struct _goo_struct {
- long long_int;
- int reg_int;
- char char_var;
- };
- 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 vsnprintf exists
-echo " "
-if set vsnprintf val -f d_vsnprintf; eval $csym; $val; then
- echo 'vsnprintf() found.' >&4
- val="$define"
-else
- echo 'vsnprintf() NOT found.' >&4
- val="$undef"
-fi
-set d_vsnprintf
-eval $setvar
-
-: see if waitpid exists
-set waitpid d_waitpid
-eval $inlibc
-
-: check for a __cdecl use
-echo " "
-$cat >test_cdecl.c <<'EOCP'
-#include <stdio.h>
-#include <stdlib.h>
-#define WIN32_CDECL __cdecl
-
-int WIN32_CDCEL main(int argc, char **argv) {
- exit(0);
-}
-EOCP
-
-if ($cc $ccflags -o test_cdecl test_cdecl.c && ./test_cdecl) >/dev/null 2>&1 ; then
- cdecl='__cdecl'
- echo 'Your compiler likes __cdecl as a keyword.' >&4
-else
- cdecl=''
- echo "Your compiler doesn't grok __cdecl - it probably has a brain." >&4
-fi
-$rm -f test_cdecl* core
-
-: check for void type
-echo " "
-echo "Checking to see how well your C compiler groks the void type..." >&4
-echo " "
-$cat >&4 <<EOM
- 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.
- 8: generic void pointers.
-EOM
-echo " "
-case "$voidflags" in
-'')
- $cat >try.c <<'EOCP'
-#if TRY & 1
-void sub() {
-#else
-sub() {
-#endif
- extern void moo(); /* function returning void */
- void (*goo)(); /* ptr to func returning void */
-#if TRY & 8
- void *hue; /* generic ptr */
-#endif
-#if TRY & 2
- void (*foo[10])();
-#endif
-
-#if TRY & 4
- if(goo == moo) {
- exit(0);
- }
-#endif
- exit(0);
-}
-main() { sub(); }
-EOCP
- if $cc $ccflags -c -DTRY=$defvoidused try.c >.out 2>&1 ; then
- voidflags=$defvoidused
- echo "It appears to support void to the level $package wants ($defvoidused)."
- if $contains warning .out >/dev/null 2>&1; then
- echo "However, you might get some warnings that look like this:"
- $cat .out
- fi
- else
-echo "Hmm, your compiler has some difficulty with void. Checking further..." >&4
- if $cc $ccflags -c -DTRY=1 try.c >/dev/null 2>&1; then
- echo "It supports 1..."
- if $cc $ccflags -c -DTRY=3 try.c >/dev/null 2>&1; then
- echo "It also supports 2..."
- if $cc $ccflags -c -DTRY=7 try.c >/dev/null 2>&1; then
- voidflags=7
- echo "And it supports 4 but not 8 definitely."
- else
- echo "It doesn't support 4..."
- if $cc $ccflags -c -DTRY=11 try.c >/dev/null 2>&1; then
- voidflags=11
- echo "But it supports 8."
- else
- voidflags=3
- echo "Neither does it support 8."
- fi
- fi
- else
- echo "It does not support 2..."
- if $cc $ccflags -c -DTRY=13 try.c >/dev/null 2>&1; then
- voidflags=13
- echo "But it supports 4 and 8."
- else
- if $cc $ccflags -c -DTRY=5 try.c >/dev/null 2>&1; then
- voidflags=5
- echo "And it supports 4 but has not heard about 8."
- else
- echo "However it supports 8 but not 4."
- fi
- fi
- fi
- else
- echo "There is no support at all for void."
- voidflags=0
- fi
- fi
-esac
-case "$voidflags" in
-"$defvoidused") ;;
-*)
- dflt="$voidflags";
- rp="Your void support flags add up to what?"
- . ./myread
- voidflags="$ans"
- ;;
-esac
-$rm -f try.* .out
-
-: see if this is a malloc.h system
-set malloc.h i_malloc
-eval $inhdr
-
-: see if stdlib is available
-set stdlib.h i_stdlib
-eval $inhdr
-
-: compute the return types of malloc and free
-echo " "
-$cat >malloc.c <<END
-#$i_malloc I_MALLOC
-#$i_stdlib I_STDLIB
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef I_MALLOC
-#include <malloc.h>
-#endif
-#ifdef I_STDLIB
-#include <stdlib.h>
-#endif
-#ifdef TRY_MALLOC
-void *malloc();
-#endif
-#ifdef TRY_FREE
-void free();
-#endif
-END
-case "$malloctype" in
-'')
- if $cc $ccflags -c -DTRY_MALLOC malloc.c >/dev/null 2>&1; then
- malloctype='void *'
- else
- malloctype='char *'
- fi
- ;;
-esac
-echo "Your system wants malloc to return '$malloctype', it would seem." >&4
-
-case "$freetype" in
-'')
- if $cc $ccflags -c -DTRY_FREE malloc.c >/dev/null 2>&1; then
- freetype='void'
- else
- freetype='int'
- fi
- ;;
-esac
-echo "Your system uses $freetype free(), it would seem." >&4
-$rm -f malloc.[co]
-: locate a BSD compatible install program
-echo " "
-echo "Looking for a BSD-compatible install program..." >&4
-creatdir=''
-case "$install" in
-'')
- tryit=''
- for dir in $pth; do
- for file in ginstall installbsd scoinst install; do
- if $test -f $dir/$file; then
- tryit="$tryit $dir/$file"
- fi
- done
- done
- $cat >try.c <<EOC
-main()
-{
- printf("OK\n");
- exit(0);
-}
-EOC
- if $cc try.c -o try >/dev/null 2>&1; then
- cp try try.ns
- strip try >/dev/null 2>&1
- else
- echo "(I can't seem to compile a trivial C program -- bypassing.)"
- echo "try" >try
- cp try try.ns
- fi
- $cat >tryinst <<EOS
-$startsh
-$rm -rf foo d
-\$1 -d foo/bar
-$mkdir d
-\$1 -c -m 764 try.ns d
-\$1 -c -s -m 642 try.ns d/try
-EOS
- chmod +x tryinst
- $eunicefix tryinst
- dflt=''
- either=''
- for prog in $tryit; do
- $echo $n "Checking $prog... $c"
- ./tryinst $prog >/dev/null 2>&1
- if $test -d foo/bar; then
- creatdir="$prog -d"
- fi
- (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null
- if (cmp -s d/try try && cmp -s d/try.ns try.ns && \
- $contains 'rwxrw-r--' tryno.ls && \
- $contains 'rw-r---w-' try.ls) >/dev/null 2>&1
- then
- dflt="$prog"
- echo "ok, that will do."
- break
- fi
- echo "not good$either."
- either=' either'
- $rm -f try*.ls
- done
- $rm -rf foo d tryinst try try*.ls try.*
- case "$dflt" in
- '')
- dflt='install'
- ;;
- esac
- ;;
-*) dflt="$install";;
-esac
-$cat <<EOM
-
-I will be requiring a BSD-compatible install program (one that allows
-options like -s to strip executables or -m to specify a file mode) to
-install $package.
-
-If the question below contains a fully qualified default path, then it
-is probably ok. If it is an unqualified name such as 'install', then it
-means I was unable to find out a good install program I could use. If
-you know of one, please tell me about it.
-
-EOM
-fn='/fe~(install)'
-rp='Which install program shall I use?'
-. ./getfile
-install="$ans"
-
-: how can we create nested directories?
-echo " "
-echo "Ok, let's see how we can create nested directories..." >&4
-case "$installdir" in
-'')
- case "$creatdir" in
- '')
- $mkdir -p foo/bar >/dev/null 2>&1
- if $test -d foo/bar; then
- echo "Great, we can build them using 'mkdir -p'."
- creatdir='mkdir -p'
- elif eval "$install -d foo/bar"; $test -d foo/bar; then
- creatdir="install -d"
- echo "It looks like '$creatdir' will do it for us."
- fi
- ;;
- *)
- eval "$creatdir foo/bar" >/dev/null 2>&1
- if $test -d foo/bar; then
- echo "Ah! We can use '$creatdir' to do just that."
- fi
- ;;
- esac
- $rm -rf foo
- case "$creatdir" in
- '')
- echo "Heck! Another ancient system lacking the comfort of modern ones!"
- echo "We have no choice but to use plain old 'mkdir' -- wish me luck!"
- installdir=mkdir
- ;;
- *) installdir="$creatdir";;
- esac
- ;;
-*) echo "As you already told me, '$installdir' should work.";;
-esac
-
-echo " "
-echo "Checking if your $make program sets \$(MAKE)..." >&4
-case "$make_set_make" in
-'')
- $sed 's/^X //' > testmake.mak << 'EOF'
-Xall:
-X @echo 'maketemp="$(MAKE)"'
-EOF
- case "`$make -f testmake.mak 2>/dev/null`" in
- *maketemp=*) make_set_make='#' ;;
- *) make_set_make="MAKE=$make" ;;
- esac
- $rm -f testmake.mak
- ;;
-esac
-case "$make_set_make" in
-'#') echo "Yup, it does.";;
-*) echo "Nope, it doesn't.";;
-esac
-
-: see if we have to deal with yellow pages, now NIS.
-if $test -d /usr/etc/yp || $test -d /etc/yp; then
- if $test -f /usr/etc/nibindd; then
- echo " "
- echo "I'm fairly confident you're on a NeXT."
- echo " "
- rp='Do you get the passwd file via NetInfo?'
- dflt=y
- case "$passcat" in
- nidump*) ;;
- '') ;;
- *) dflt=n;;
- esac
- . ./myread
- case "$ans" in
- y*) passcat='nidump passwd .'
- ;;
- *) echo "You told me, so don't blame me."
- case "$passcat" in
- nidump*) passcat=''
- esac
- ;;
- esac
- echo " "
- rp='Do you get the hosts file via NetInfo?'
- dflt=y
- case "$hostcat" in
- nidump*) ;;
- '') ;;
- *) dflt=n;;
- esac
- . ./myread
- case "$ans" in
- y*) hostcat='nidump hosts .';;
- *) case "$hostcat" in
- nidump*) hostcat='';;
- esac
- ;;
- esac
- fi
- case "$passcat" in
- nidump*) ;;
- *)
- case "$passcat" in
- *ypcat*) dflt=y;;
- '') if $contains '^\+' /etc/passwd >/dev/null 2>&1; then
- dflt=y
- else
- dflt=n
- fi;;
- *) dflt=n;;
- esac
- echo " "
- rp='Are you getting the passwd file via yellow pages?'
- . ./myread
- case "$ans" in
- y*) passcat='ypcat passwd'
- ;;
- *) passcat='cat /etc/passwd'
- ;;
- esac
- ;;
- esac
- case "$hostcat" in
- nidump*) ;;
- *)
- case "$hostcat" in
- *ypcat*) dflt=y;;
- '') if $contains '^\+' /etc/passwd >/dev/null 2>&1; then
- dflt=y
- else
- dflt=n
- fi;;
- *) dflt=n;;
- esac
- echo " "
- rp='Are you getting the hosts file via yellow pages?'
- . ./myread
- case "$ans" in
- y*) hostcat='ypcat hosts';;
- *) hostcat='cat /etc/hosts';;
- esac
- ;;
- esac
-fi
-case "$hostcat" in
-'') hostcat='cat /etc/hosts';;
-esac
-case "$groupcat" in
-'') groupcat='cat /etc/group';;
-esac
-case "$passcat" in
-'') passcat='cat /etc/passwd';;
-esac
-case "$hostcat" in
-'') hostcat='cat /etc/hosts';;
-*) ;;
-esac
-case "$groupcat" in
-'') groupcat='cat /etc/group';;
-*) ;;
-esac
-case "$passcat" in
-'') passcat='cat /etc/passwd';;
-*) ;;
-esac
-
-: now get the host name
-echo " "
-echo "Figuring out host name..." >&4
-case "$myhostname" in
-'') cont=true
- echo 'Maybe "hostname" will work...'
- if tans=`sh -c hostname 2>&1` ; then
- myhostname=$tans
- phostname=hostname
- cont=''
- fi
- ;;
-*) cont='';;
-esac
-if $test "$cont"; then
- if ./xenix; then
- echo 'Oh, dear. Maybe "/etc/systemid" is the key...'
- if tans=`cat /etc/systemid 2>&1` ; then
- myhostname=$tans
- phostname='cat /etc/systemid'
- echo "Whadyaknow. Xenix always was a bit strange..."
- cont=''
- fi
- elif $test -r /etc/systemid; then
- echo "(What is a non-Xenix system doing with /etc/systemid?)"
- fi
-fi
-if $test "$cont"; then
- echo 'No, maybe "uuname -l" will work...'
- if tans=`sh -c 'uuname -l' 2>&1` ; then
- myhostname=$tans
- phostname='uuname -l'
- else
- echo 'Strange. Maybe "uname -n" will work...'
- if tans=`sh -c 'uname -n' 2>&1` ; then
- myhostname=$tans
- phostname='uname -n'
- else
- echo 'Oh well, maybe I can mine it out of whoami.h...'
- if tans=`sh -c $contains' sysname $usrinc/whoami.h' 2>&1` ; then
- myhostname=`echo "$tans" | $sed 's/^.*"\(.*\)"/\1/'`
- phostname="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' <$usrinc/whoami.h"
- else
- case "$myhostname" in
- '') echo "Does this machine have an identity crisis or something?"
- phostname='';;
- *)
- echo "Well, you said $myhostname before..."
- phostname='echo $myhostname';;
- esac
- fi
- fi
- fi
-fi
-: you do not want to know about this
-set $myhostname
-myhostname=$1
-
-: verify guess
-if $test "$myhostname" ; then
- dflt=y
- rp='Your host name appears to be "'$myhostname'".'" Right?"
- . ./myread
- case "$ans" in
- y*) ;;
- *) myhostname='';;
- esac
-fi
-
-: bad guess or no guess
-while $test "X$myhostname" = X ; do
- dflt=''
- rp="Please type the (one word) name of your host:"
- . ./myread
- myhostname="$ans"
-done
-
-: translate upper to lower if necessary
-case "$myhostname" in
-*[A-Z]*)
- echo "(Normalizing case in your host name)"
- myhostname=`echo $myhostname | ./tr '[A-Z]' '[a-z]'`
- ;;
-esac
-
-case "$myhostname" in
-*.*)
- dflt=`expr "X$myhostname" : "X[^.]*\(\..*\)"`
- myhostname=`expr "X$myhostname" : "X\([^.]*\)\."`
- echo "(Trimming domain name from host name--host name is now $myhostname)"
- ;;
-*) case "$mydomain" in
- '')
- {
- test "X$hostcat" = "Xypcat hosts" &&
- ypmatch "$myhostname" hosts 2>/dev/null |\
- $sed -e 's/[ ]*#.*//; s/$/ /' > hosts && \
- $test -s hosts
- } || {
- $hostcat | $sed -n -e "s/[ ]*#.*//; s/\$/ /
- /[ ]$myhostname[ . ]/p" > hosts
- }
- tmp_re="[ . ]"
- $test x`$awk "/[0-9].*[ ]$myhostname$tmp_re/ { sum++ }
- END { print sum }" hosts` = x1 || tmp_re="[ ]"
- dflt=.`$awk "/[0-9].*[ ]$myhostname$tmp_re/ {for(i=2; i<=NF;i++) print \\\$i}" \
- hosts | $sort | $uniq | \
- $sed -n -e "s/$myhostname\.\([-a-zA-Z0-9_.]\)/\1/p"`
- case `$echo X$dflt` in
- X*\ *) echo "(Several hosts in /etc/hosts matched hostname)"
- dflt=.
- ;;
- X.) echo "(You do not have fully-qualified names in /etc/hosts)"
- ;;
- esac
- case "$dflt" in
- .)
- tans=`./loc resolv.conf X /etc /usr/etc`
- if $test -f "$tans"; then
- echo "(Attempting domain name extraction from $tans)"
- dflt=.`$sed -n -e 's/ / /g' \
- -e 's/^search *\([^ ]*\).*/\1/p' $tans \
- | ./tr '[A-Z]' '[a-z]' 2>/dev/null`
- case "$dflt" in
- .) dflt=.`$sed -n -e 's/ / /g' \
- -e 's/^domain *\([^ ]*\).*/\1/p' $tans \
- | ./tr '[A-Z]' '[a-z]' 2>/dev/null`
- ;;
- esac
- fi
- ;;
- esac
- case "$dflt" in
- .) echo "(No help from resolv.conf either -- attempting clever guess)"
- dflt=.`sh -c domainname 2>/dev/null`
- case "$dflt" in
- '') dflt='.';;
- .nis.*|.yp.*|.main.*) dflt=`echo $dflt | $sed -e 's/^\.[^.]*//'`;;
- esac
- ;;
- esac
- case "$dflt" in
- .) echo "(Lost all hope -- silly guess then)"
- dflt='.uucp'
- ;;
- esac
- $rm -f hosts
- ;;
- *) dflt="$mydomain";;
- esac;;
-esac
-echo " "
-rp="What is your domain name?"
-. ./myread
-tans="$ans"
-case "$ans" in
-'') ;;
-.*) ;;
-*) tans=".$tans";;
-esac
-mydomain="$tans"
-
-: translate upper to lower if necessary
-case "$mydomain" in
-*[A-Z]*)
- echo "(Normalizing case in your domain name)"
- mydomain=`echo $mydomain | ./tr '[A-Z]' '[a-z]'`
- ;;
-esac
-
-: a little sanity check here
-case "$phostname" in
-'') ;;
-*)
- case `$phostname | ./tr '[A-Z]' '[a-z]'` in
- $myhostname$mydomain|$myhostname) ;;
- *)
- case "$phostname" in
- sed*)
- echo "(That doesn't agree with your whoami.h file, by the way.)"
- ;;
- *)
- echo "(That doesn't agree with your $phostname command, by the way.)"
- ;;
- esac
- ;;
- esac
- ;;
-esac
-
-: define an is-a-typedef? function
-typedef='type=$1; var=$2; def=$3; shift; shift; shift; inclist=$@;
-case "$inclist" in
-"") inclist="sys/types.h";;
-esac;
-eval "varval=\$$var";
-case "$varval" in
-"")
- $rm -f temp.c;
- for inc in $inclist; do
- echo "#include <$inc>" >>temp.c;
- done;
- $cppstdin $cppflags $cppminus < temp.c >temp.E 2>/dev/null;
- if $contains $type temp.E >/dev/null 2>&1; then
- eval "$var=\$type";
- else
- eval "$var=\$def";
- fi;
- $rm -f temp.?;;
-*) eval "$var=\$varval";;
-esac'
-
-: see what type pids are declared as in the kernel
-set pid_t pidtype int stdio.h sys/types.h
-eval $typedef
-dflt="$pidtype"
-echo " "
-rp="What type are process ids on this system declared as?"
-. ./myread
-pidtype="$ans"
-
-: see what type is used for size_t
-set size_t sizetype 'unsigned int' stdio.h sys/types.h
-eval $typedef
-dflt="$sizetype"
-echo " "
-rp="What type is used for the length parameter for string functions?"
-. ./myread
-sizetype="$ans"
-
-: see if arpa/inet.h has to be included
-set arpa/inet.h i_arpainet
-eval $inhdr
-
-: see if arpa/nameser.h has to be included
-set arpa/nameser.h i_arpanameser
-eval $inhdr
-
-: see if errno.h can be included
-set errno.h i_errno
-eval $inhdr
-: see if sys/errno.h can be included
-set sys/errno.h i_syserrno
-eval $inhdr
-: see if this is a sys/file.h system
-val=''
-set sys/file.h val
-eval $inhdr
-
-: do we need to include sys/file.h ?
-case "$val" in
-"$define")
- echo " "
- if $h_sysfile; then
- val="$define"
- echo "We'll be including <sys/file.h>." >&4
- else
- val="$undef"
- echo "We won't be including <sys/file.h>." >&4
- fi
- ;;
-*)
- h_sysfile=false
- ;;
-esac
-set i_sysfile
-eval $setvar
-
-: see if fcntl.h is there
-val=''
-set fcntl.h val
-eval $inhdr
-
-: see if we can include fcntl.h
-case "$val" in
-"$define")
- echo " "
- if $h_fcntl; then
- val="$define"
- echo "We'll be including <fcntl.h>." >&4
- else
- val="$undef"
- if $h_sysfile; then
- echo "We don't need to include <fcntl.h> if we include <sys/file.h>." >&4
- else
- echo "We won't be including <fcntl.h>." >&4
- fi
- fi
- ;;
-*)
- h_fcntl=false
- val="$undef"
- ;;
-esac
-set i_fcntl
-eval $setvar
-
-: see if locale.h is available
-set locale.h i_locale
-eval $inhdr
-
-: see if memory.h is available.
-val=''
-set memory.h val
-eval $inhdr
-
-: See if it conflicts with string.h
-case "$val" in
-$define)
- case "$strings" in
- '') ;;
- *)
- $cppstdin $cppflags $cppminus < "$strings" > mem.h
- if $contains 'memcpy' mem.h >/dev/null 2>&1; then
- echo " "
- echo "We won't be including <memory.h>."
- val="$undef"
- fi
- $rm -f mem.h
- ;;
- esac
-esac
-set i_memory
-eval $setvar
-
-: see if netdb.h can be included
-set netdb.h i_netdb
-eval $inhdr
-: see if setjmp.h can be included
-set setjmp.h i_setjmp
-eval $inhdr
-: see if stdarg is available
-echo " "
-if $test "`./findhdr stdarg.h`"; then
- echo "<stdarg.h> found." >&4
- valstd="$define"
-else
- echo "<stdarg.h> NOT found." >&4
- valstd="$undef"
-fi
-
-: see if varags is available
-echo " "
-if $test "`./findhdr varargs.h`"; then
- echo "<varargs.h> found." >&4
-else
- echo "<varargs.h> NOT found, but that's ok (I hope)." >&4
-fi
-
-: set up the varargs testing programs
-$cat > varargs.c <<EOP
-#ifdef I_STDARG
-#include <stdarg.h>
-#endif
-#ifdef I_VARARGS
-#include <varargs.h>
-#endif
-
-#ifdef I_STDARG
-int f(char *p, ...)
-#else
-int f(va_alist)
-va_dcl
-#endif
-{
- va_list ap;
-#ifndef I_STDARG
- char *p;
-#endif
-#ifdef I_STDARG
- va_start(ap,p);
-#else
- va_start(ap);
- p = va_arg(ap, char *);
-#endif
- va_end(ap);
-}
-EOP
-$cat > varargs <<EOP
-$startsh
-if $cc -c $ccflags $ldflags -D\$1 varargs.c >/dev/null 2>&1; then
- echo "true"
-else
- echo "false"
-fi
-$rm -f varargs$_o
-EOP
-chmod +x varargs
-
-: now check which varargs header should be included
-echo " "
-i_varhdr=''
-case "$valstd" in
-"$define")
- if `./varargs I_STDARG`; then
- val='stdarg.h'
- elif `./varargs I_VARARGS`; then
- val='varargs.h'
- fi
- ;;
-*)
- if `./varargs I_VARARGS`; then
- val='varargs.h'
- fi
- ;;
-esac
-case "$val" in
-'')
-echo "I could not find the definition for va_dcl... You have problems..." >&4
- val="$undef"; set i_stdarg; eval $setvar
- val="$undef"; set i_varargs; eval $setvar
- ;;
-*)
- set i_varhdr
- eval $setvar
- case "$i_varhdr" in
- stdarg.h)
- val="$define"; set i_stdarg; eval $setvar
- val="$undef"; set i_varargs; eval $setvar
- ;;
- varargs.h)
- val="$undef"; set i_stdarg; eval $setvar
- val="$define"; set i_varargs; eval $setvar
- ;;
- esac
- echo "We'll include <$i_varhdr> to get va_dcl definition." >&4;;
-esac
-$rm -f varargs*
-
-: see if stddef is available
-set stddef.h i_stddef
-eval $inhdr
-
-: see if sys/mman.h has to be included
-set sys/mman.h i_sysmman
-eval $inhdr
-
-: see if sys/page.h has to be included
-set sys/page.h i_syspage
-eval $inhdr
-
-: see if this is a sys/param system
-set sys/param.h i_sysparam
-eval $inhdr
-
-: see if sys/resource.h has to be included
-set sys/resource.h i_sysresrc
-eval $inhdr
-
-: see if sys/select.h has to be included
-set sys/select.h i_sysselct
-eval $inhdr
-
-: see if sys/stat.h is available
-set sys/stat.h i_sysstat
-eval $inhdr
-
-: see if we should include time.h, sys/time.h, or both
-echo " "
-echo "Testing to see if we should include <time.h>, <sys/time.h> or both." >&4
-$echo $n "I'm now running the test program...$c"
-$cat >try.c <<'EOCP'
-#include <sys/types.h>
-#ifdef I_TIME
-#include <time.h>
-#endif
-#ifdef I_SYSTIME
-#ifdef SYSTIMEKERNEL
-#define KERNEL
-#endif
-#include <sys/time.h>
-#endif
-#ifdef I_SYSSELECT
-#include <sys/select.h>
-#endif
-main()
-{
- struct tm foo;
-#ifdef S_TIMEVAL
- struct timeval bar;
-#endif
-#ifdef S_TIMEZONE
- struct timezone tzp;
-#endif
- if (foo.tm_sec == foo.tm_sec)
- exit(0);
-#ifdef S_TIMEVAL
- if (bar.tv_sec == bar.tv_sec)
- exit(0);
-#endif
- exit(1);
-}
-EOCP
-flags=''
-for s_timezone in '-DS_TIMEZONE' ''; do
-sysselect=''
-for s_timeval in '-DS_TIMEVAL' ''; do
-for i_systimek in '' '-DSYSTIMEKERNEL'; do
-for i_time in '' '-DI_TIME'; do
-for i_systime in '-DI_SYSTIME' ''; do
- case "$flags" in
- '') $echo $n ".$c"
- if $cc $ccflags \
- $i_time $i_systime $i_systimek $sysselect $s_timeval $s_timezone \
- try.c -o try >/dev/null 2>&1 ; then
- set X $i_time $i_systime $i_systimek $sysselect $s_timeval
- shift
- flags="$*"
- echo " "
- $echo $n "Succeeded with $flags$c"
- fi
- ;;
- esac
-done
-done
-done
-done
-done
-timeincl=''
-echo " "
-case "$flags" in
-*SYSTIMEKERNEL*) i_systimek="$define"
- timeincl=`./findhdr sys/time.h`
- echo "We'll include <sys/time.h> with KERNEL defined." >&4;;
-*) i_systimek="$undef";;
-esac
-case "$flags" in
-*I_TIME*) i_time="$define"
- timeincl=`./findhdr time.h`" $timeincl"
- echo "We'll include <time.h>." >&4;;
-*) i_time="$undef";;
-esac
-case "$flags" in
-*I_SYSTIME*) i_systime="$define"
- timeincl=`./findhdr sys/time.h`" $timeincl"
- echo "We'll include <sys/time.h>." >&4;;
-*) i_systime="$undef";;
-esac
-$rm -f try.c try
-
-: see if sys/vlimit.h has to be included
-set sys/vlimit.h i_sysvlimit
-eval $inhdr
-
-: see if this is a syswait system
-set sys/wait.h i_syswait
-eval $inhdr
-
-: determine the name of a reasonable mailer
-case "$mailer" in
-'')
- if $test -f "$sendmail"; then
- dflt="$sendmail"
- elif $test -f "$smail"; then
- dflt="$smail"
- elif $test -f "$rmail"; then
- dflt="$rmail"
- elif $test -f /bin/mail; then
- dflt=/bin/mail
- else
- dflt=$mail
- fi
- ;;
-*) dflt="$mailer";;
-esac
-$cat <<EOM
-
-Later on, I'm going to offer you the chance to subscribe (or unsubscribe)
-to the $package mailing list. In order to do that, I need to figure out
-how to send mail, your name, and a few other things.
-
-I need the full pathname of the program used to deliver mail on your system.
-A typical answer would be /usr/lib/sendmail or /bin/rmail, but you may choose
-any other program, as long as it can be fed from standard input and will
-honour any user-supplied headers.
-
-EOM
-fn=f
-rp='Mail transport agent to be used?'
-. ./getfile
-mailer="$ans"
-
-: find out how to find out full name
-case "$d_berknames" in
-"$define")
- dflt=y;;
-"$undef")
- dflt=n;;
-*)
- if ./bsd; then
- dflt=y
- elif ./xenix; then
- dflt=y
- elif $test "x$osname" = "xlinux"; then
- dflt=y
- else
- dflt=n
- fi
- ;;
-esac
-$cat <<'EOM'
-
-Does your /etc/passwd file keep full names in Berkeley/V7 format (name first
-thing after ':' in GCOS field)? In that case, a typical entry in the password
-file looks like this:
-
- guest:**paswword**:10:100:Mister Guest User:/usr/users:/bin/sh
- ^^^^^^^^^^^^^^^^^
-EOM
-rp="Berkeley/V7 format for full name in /etc/passwd?"
-. ./myread
-case "$ans" in
-y*) d_passnames="$define"
- d_berknames="$define"
- d_usgnames="$undef"
- nametype=bsd
- ;;
-*)
- case "$d_usgnames" in
- "$define") dflt=y;;
- "$undef") dflt=n;;
- *)
- if ./usg; then
- dflt=y
- else
- dflt=n
- fi
- ;;
- esac
-$cat <<'EOM'
-
-Does your passwd file keep full names in USG format (name sandwiched between a
-'-' and a '(')? In that case, a typical entry in the password file looks like
-this:
-
- guest:**paswword**:10:100:000-Mister Guest User(000):/usr/users:/bin/sh
- ^^^^^^^^^^^^^^^^^
-EOM
- rp="USG format for full name in /etc/passwd?"
- . ./myread
- case "$ans" in
- n*) echo "Full name will be taken from ~/.fullname"
- d_passnames="$undef"
- d_berknames="$undef"
- d_usgnames="$undef"
- nametype=other
- ;;
- *)
- d_passnames="$define"
- d_berknames="$undef"
- d_usgnames="$define"
- nametype=usg
- ;;
- esac;;
-esac
-
-: figure out their full name
-case "$NAME" in
-'') case "$nametype" in
- other)
- fn=`./filexp ~/.fullname`
- xxx=usg
- $test -f $fn && xxx=other
- ;;
- *)
- xxx="$nametype"
- ;;
- esac
-
- case "$xxx" in
- bsd)
- cf_name=`$passcat | grep "^$cf_by:" | \
- sed -e 's/^[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\):.*/\1/' \
- -e 's/,.*//'`
- ;;
- usg)
- cf_name=`$passcat | grep "^$cf_by:" | \
- sed -e 's/^[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\):.*/\1/' \
- -e 's/[^-]*-\(.*\)(.*)/\1/'`
- ;;
- *)
- cf_name=`$cat $fn`
- ;;
- esac
- ;;
-*)
- cf_name="$NAME"
- ;;
-esac
-echo " "
-echo "Pleased to meet you, $cf_name."
-
-$cat <<EOM
-
-I need to get your e-mail address in Internet format if possible, i.e.
-something like user@host.domain. Please answer accurately since I have
-no easy means to double check it. The default value provided below
-is most probably close to the reality but may not be valid from outside
-your organization...
-
-EOM
-cont=x
-while test "$cont"; do
- case "$cf_email" in
- '') dflt="$cf_by@$myhostname$mydomain";;
- *) dflt="$cf_email";;
- esac
- rp='What is your e-mail address?'
- . ./myread
- cf_email="$ans"
- case "$cf_email" in
- *@*.*) cont='' ;;
- *)
- rp='Address does not look like an Internet one. Use it anyway?'
- case "$fastread" in
- yes) dflt=y ;;
- *) dflt=n ;;
- esac
- . ./myread
- case "$ans" in
- y*) cont='' ;;
- *) echo " " ;;
- esac
- ;;
- esac
-done
-
-: offer to join the mailing list
-list_request=''
-list_sub=""
-list_unsub=""
-list_name=""
-$cat <<EOM
-
-There is a mailing list for discussion about $package and related issues.
-This is the preferred place to ask questions about the program and discuss
-modifications and additions with the author and other users. If you are able
-to send mail to the Internet, you are encouraged to subscribe. You need only
-ever subscribe once, and you can unsubscribe automatically at any time in the
-future. If you have already subscribed and you wish to unsubscribe now, you
-may do so by answering "unsubscribe". Answer "subscribe" to subscribe to the
-list.
-
-EOM
-rp="Subscribe to or unsubscribe from the $list_name mailing list?"
-dflt=neither
-. ./myread
-case "$ans" in
-[sS]*) $cat <<EOM
-
-You will be sent a message from the list server to let you know when your
-subscription has been successful and telling you how to submit articles and
-how to unsubscribe again when necessary. You may also unsubscribe by running
-this script again and asking it to do so for you.
-
-EOM
- echo "Sending mail to subscribe you to the $list_name list..." >&4
- $mailer $list_request <<EOM >/dev/null 2>&1
-To: $list_request
-Subject: Subscription request by configure
-
-$list_sub
-EOM
- ;;
-[uU]*) echo "Sending mail to unsubscribe you from the $list_name list..." >&4
- $mailer $list_request <<EOM >/dev/null 2>&1
-To: $list_request
-Subject: Unsubscription request by configure
-
-$list_unsub
-EOM
- ;;
-esac
-
-: end of configuration questions
-echo " "
-echo "End of configuration questions."
-echo " "
-
-: back to where it started
-if test -d ../UU; then
- cd ..
-fi
-
-: configuration may be patched via a 'config.over' file
-if $test -f config.over; then
- echo " "
- dflt=y
- rp='I see a config.over file. Do you wish to load it?'
- . UU/myread
- case "$ans" in
- n*) echo "OK, I'll ignore it.";;
- *) . ./config.over
- echo "Configuration override changes have been loaded."
- ;;
- esac
-fi
-
-: in case they want portability, strip down executable paths
-case "$d_portable" in
-"$define")
- echo " "
- echo "Stripping down executable paths..." >&4
- for file in $loclist $trylist; do
- eval $file="\$file"
- done
- ;;
-esac
-
-: create config.sh file
-echo " "
-echo "Creating config.sh..." >&4
-$spitshell <<EOT >config.sh
-$startsh
-#
-# This file was produced by running the Configure script. It holds all the
-# definitions figured out by Configure. Should you modify one of these values,
-# do not forget to propagate your changes by running "Configure -der". You may
-# instead choose to run each of the .SH files by yourself, or "Configure -S".
-#
-
-# Package name : $package
-# Source directory : $src
-# Configuration time: $cf_time
-# Configured by : $cf_by
-# Target system : $myuname
-
-Author='$Author'
-Date='$Date'
-Header='$Header'
-Id='$Id'
-Locker='$Locker'
-Log='$Log'
-Mcc='$Mcc'
-RCSfile='$RCSfile'
-Revision='$Revision'
-Source='$Source'
-State='$State'
-ar='$ar'
-archobjs='$archobjs'
-awk='$awk'
-bash='$bash'
-bison='$bison'
-byacc='$byacc'
-c='$c'
-cat='$cat'
-cc='$cc'
-ccflags='$ccflags'
-cdecl='$cdecl'
-cf_by='$cf_by'
-cf_email='$cf_email'
-cf_name='$cf_name'
-cf_time='$cf_time'
-chgrp='$chgrp'
-chmod='$chmod'
-chown='$chown'
-comm='$comm'
-compress='$compress'
-contains='$contains'
-cp='$cp'
-cpio='$cpio'
-cpp='$cpp'
-cppflags='$cppflags'
-cpplast='$cpplast'
-cppminus='$cppminus'
-cpprun='$cpprun'
-cppstdin='$cppstdin'
-cryptlib='$cryptlib'
-csh='$csh'
-d_access='$d_access'
-d_argsinfp='$d_argsinfp'
-d_assert='$d_assert'
-d_attribut='$d_attribut'
-d_bcopy='$d_bcopy'
-d_berknames='$d_berknames'
-d_bindtextdomain='$d_bindtextdomain'
-d_bsd='$d_bsd'
-d_bsdsetpgrp='$d_bsdsetpgrp'
-d_bzero='$d_bzero'
-d_const='$d_const'
-d_crypt='$d_crypt'
-d_eunice='$d_eunice'
-d_force_ipv4='$d_force_ipv4'
-d_fpsetmask='$d_fpsetmask'
-d_fpsetround='$d_fpsetround'
-d_gaistr='$d_gaistr'
-d_getadinf='$d_getadinf'
-d_getdate='$d_getdate'
-d_gethbynm2='$d_gethbynm2'
-d_getnminf='$d_getnminf'
-d_getpagsz='$d_getpagsz'
-d_getprior='$d_getprior'
-d_gettblsz='$d_gettblsz'
-d_gettext='$d_gettext'
-d_gnulibc='$d_gnulibc'
-d_huge='$d_huge'
-d_huge_val='$d_huge_val'
-d_ieee='$d_ieee'
-d_in2p='$d_in2p'
-d_index='$d_index'
-d_int_max='$d_int_max'
-d_internet='$d_internet'
-d_ipv6='$d_ipv6'
-d_itimer='$d_itimer'
-d_keepalive='$d_keepalive'
-d_keepidle='$d_keepidle'
-d_keepsig='$d_keepsig'
-d_lrand48='$d_lrand48'
-d_maxdouble='$d_maxdouble'
-d_maxint='$d_maxint'
-d_memcpy='$d_memcpy'
-d_memmove='$d_memmove'
-d_memset='$d_memset'
-d_mymalloc='$d_mymalloc'
-d_mysql='$d_mysql'
-d_newstyle='$d_newstyle'
-d_oldsock='$d_oldsock'
-d_open3='$d_open3'
-d_openssl='$d_openssl'
-d_passnames='$d_passnames'
-d_portable='$d_portable'
-d_rand='$d_rand'
-d_random='$d_random'
-d_rename='$d_rename'
-d_rlimit='$d_rlimit'
-d_rusage='$d_rusage'
-d_select='$d_select'
-d_sendmail='$d_sendmail'
-d_setlocale='$d_setlocale'
-d_setpgid='$d_setpgid'
-d_setpgrp='$d_setpgrp'
-d_setprior='$d_setprior'
-d_sigaction='$d_sigaction'
-d_sigchld='$d_sigchld'
-d_sigcld='$d_sigcld'
-d_signalproto='$d_signalproto'
-d_sigprocmask='$d_sigprocmask'
-d_snprintf='$d_snprintf'
-d_socket='$d_socket'
-d_socklen='$d_socklen'
-d_sockpair='$d_sockpair'
-d_strccmp='$d_strccmp'
-d_strchr='$d_strchr'
-d_strcoll='$d_strcoll'
-d_strdup='$d_strdup'
-d_strxfrm='$d_strxfrm'
-d_sysconf='$d_sysconf'
-d_sysctl='$d_sysctl'
-d_sysctlbyname='$d_sysctlbyname'
-d_tcl='$d_tcl'
-d_textdomain='$d_textdomain'
-d_timelocal='$d_timelocal'
-d_toupper='$d_toupper'
-d_uint32_t='$d_uint32_t'
-d_uptime='$d_uptime'
-d_urandom='$d_urandom'
-d_usgnames='$d_usgnames'
-d_uwait3='$d_uwait3'
-d_uwait='$d_uwait'
-d_voidsig='$d_voidsig'
-d_voidtty='$d_voidtty'
-d_volatile='$d_volatile'
-d_vsnprintf='$d_vsnprintf'
-d_waitpid='$d_waitpid'
-d_xenix='$d_xenix'
-date='$date'
-defvoidused='$defvoidused'
-echo='$echo'
-egrep='$egrep'
-emacs='$emacs'
-eunicefix='$eunicefix'
-expr='$expr'
-find='$find'
-firstmakefile='$firstmakefile'
-flex='$flex'
-freetype='$freetype'
-gcc='$gcc'
-gccversion='$gccversion'
-glibpth='$glibpth'
-grep='$grep'
-groupcat='$groupcat'
-gzip='$gzip'
-h_fcntl='$h_fcntl'
-h_sysfile='$h_sysfile'
-hint='$hint'
-hostcat='$hostcat'
-i_arpainet='$i_arpainet'
-i_arpanameser='$i_arpanameser'
-i_bsdioctl='$i_bsdioctl'
-i_crypt='$i_crypt'
-i_errno='$i_errno'
-i_fcntl='$i_fcntl'
-i_floatingpoint='$i_floatingpoint'
-i_libintl='$i_libintl'
-i_limits='$i_limits'
-i_locale='$i_locale'
-i_malloc='$i_malloc'
-i_memory='$i_memory'
-i_netdb='$i_netdb'
-i_niin='$i_niin'
-i_nitcp='$i_nitcp'
-i_setjmp='$i_setjmp'
-i_sgtty='$i_sgtty'
-i_stdarg='$i_stdarg'
-i_stddef='$i_stddef'
-i_stdint='$i_stdint'
-i_stdlib='$i_stdlib'
-i_string='$i_string'
-i_syserrno='$i_syserrno'
-i_sysfile='$i_sysfile'
-i_sysfilio='$i_sysfilio'
-i_sysin='$i_sysin'
-i_sysioctl='$i_sysioctl'
-i_sysmman='$i_sysmman'
-i_syspage='$i_syspage'
-i_sysparam='$i_sysparam'
-i_sysresrc='$i_sysresrc'
-i_sysselct='$i_sysselct'
-i_syssock='$i_syssock'
-i_syssockio='$i_syssockio'
-i_sysstat='$i_sysstat'
-i_systime='$i_systime'
-i_systimek='$i_systimek'
-i_systypes='$i_systypes'
-i_sysvlimit='$i_sysvlimit'
-i_syswait='$i_syswait'
-i_tcl='$i_tcl'
-i_termio='$i_termio'
-i_termios='$i_termios'
-i_time='$i_time'
-i_unistd='$i_unistd'
-i_values='$i_values'
-i_varargs='$i_varargs'
-i_varhdr='$i_varhdr'
-incpath='$incpath'
-inews='$inews'
-install='$install'
-installdir='$installdir'
-ksh='$ksh'
-ldflags='$ldflags'
-less='$less'
-libc='$libc'
-libmysqlclient='$libmysqlclient'
-libpth='$libpth'
-libs='$libs'
-libssl='$libssl'
-line='$line'
-lint='$lint'
-lkflags='$lkflags'
-ln='$ln'
-lns='$lns'
-locincpth='$locincpth'
-loclibpth='$loclibpth'
-lp='$lp'
-lpr='$lpr'
-ls='$ls'
-mail='$mail'
-mailer='$mailer'
-mailx='$mailx'
-make='$make'
-make_set_make='$make_set_make'
-mallocobj='$mallocobj'
-mallocsrc='$mallocsrc'
-malloctype='$malloctype'
-mips='$mips'
-mips_type='$mips_type'
-mkdir='$mkdir'
-more='$more'
-mv='$mv'
-mydomain='$mydomain'
-myhostname='$myhostname'
-myuname='$myuname'
-n='$n'
-nametype='$nametype'
-nm_opt='$nm_opt'
-nm_so_opt='$nm_so_opt'
-nofile='$nofile'
-nroff='$nroff'
-optimize='$optimize'
-osname='$osname'
-osvers='$osvers'
-package='$package'
-pagesize='$pagesize'
-passcat='$passcat'
-perl='$perl'
-pg='$pg'
-phostname='$phostname'
-pidtype='$pidtype'
-plibpth='$plibpth'
-pmake='$pmake'
-pr='$pr'
-prototype='$prototype'
-rm='$rm'
-rmail='$rmail'
-runnm='$runnm'
-sed='$sed'
-sendmail='$sendmail'
-sh='$sh'
-shar='$shar'
-sharpbang='$sharpbang'
-shsharp='$shsharp'
-signal_t='$signal_t'
-sizetype='$sizetype'
-sleep='$sleep'
-smail='$smail'
-so='$so'
-sockethdr='$sockethdr'
-socketlib='$socketlib'
-sort='$sort'
-spackage='$spackage'
-spitshell='$spitshell'
-src='$src'
-startsh='$startsh'
-strings='$strings'
-submit='$submit'
-sysman='$sysman'
-tablesize='$tablesize'
-tail='$tail'
-tar='$tar'
-tbl='$tbl'
-test='$test'
-timeincl='$timeincl'
-touch='$touch'
-tr='$tr'
-troff='$troff'
-uname='$uname'
-uniq='$uniq'
-uptime='$uptime'
-usemymalloc='$usemymalloc'
-usenm='$usenm'
-usrinc='$usrinc'
-uuname='$uuname'
-vi='$vi'
-voidflags='$voidflags'
-warnings='$warnings'
-xlibpth='$xlibpth'
-zcat='$zcat'
-zip='$zip'
-EOT
-
-: add special variables
-$test -f $src/patchlevel.h && \
-awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh
-echo "CONFIG=true" >>config.sh
-
-: propagate old symbols
-if $test -f UU/config.sh; then
- <UU/config.sh sort | uniq >UU/oldconfig.sh
- 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) ;;
- *)
- cat <<EOM
-Hmm...You had some extra variables I don't know about...I'll try to keep 'em...
-EOM
- echo "# Variables propagated from previous config.sh file." >>config.sh
- 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
-
-: preserve RCS keywords in files with variable substitution, grrr
-Id='$Id'
-
-: Finish up by extracting the .SH files
-case "$alldone" in
-exit)
- $rm -rf UU
- echo "Done."
- exit 0
- ;;
-cont)
- ;;
-'')
- dflt=''
- nostick=true
- $cat <<EOM
-
-If you'd like to make any changes to the config.sh file before I begin
-to configure things, do it as a shell escape now (e.g. !vi config.sh).
-
-EOM
- rp="Press return or use a shell escape to edit config.sh:"
- . UU/myread
- nostick=''
- case "$ans" in
- '') ;;
- *) : in case they cannot read
- sh 1>&4 -c "$ans";;
- esac
- ;;
-esac
-
-: if this fails, just run all the .SH files by hand
-. ./config.sh
-
-echo " "
-exec 1>&4
-. ./UU/extract
-
-if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then
- dflt=y
- case "$silent" in
- true) ;;
- *)
- $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
- ;;
- esac
- rp="Run make depend now?"
- . 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 ark*isdone
-$rm -rf UU
-
-: End of Configure
-
--- /dev/null
+game/data/README
+game/README
+game/access.README
+game/aliascnf.dst
+game/getdate.README
+game/getdate.template
+game/mushcnf.dst
+game/namescnf.dst
+game/restart.dst
+game/restrictcnf.dst
+game/log/README
+game/save/README
+game/txt/evt/index.evt
+game/txt/evt/pennmush.evt
+game/txt/Makefile
+game/txt/README
+game/txt/changes.txt
+game/txt/compose.sh.SH
+game/txt/connect.txt
+game/txt/down.txt
+game/txt/full.txt
+game/txt/guest.txt
+game/txt/index-files.pl
+game/txt/motd.txt
+game/txt/newuser.txt
+game/txt/quit.txt
+game/txt/register.txt
+game/txt/hlp/cobra_attr.hlp
+game/txt/hlp/cobra_chat.hlp
+game/txt/hlp/cobra_cmd.hlp
+game/txt/hlp/cobra_code.hlp
+game/txt/hlp/cobra_conf.hlp
+game/txt/hlp/cobra_division.hlp
+game/txt/hlp/cobra_flag.hlp
+game/txt/hlp/cobra_func.hlp
+game/txt/hlp/cobra_mail.hlp
+game/txt/hlp/cobra_pueb.hlp
+game/txt/hlp/cobramush.hlp
+game/txt/hlp/cobratop.hlp
+game/txt/hlp/index.hlp
+game/txt/hlp/pennv174.hlp
+game/txt/hlp/pennv175.hlp
+game/txt/hlp/pennv176.hlp
+game/txt/hlp/pennv177.hlp
+game/txt/hlp/pennv180.hlp
+game/txt/hlp/pennvOLD.hlp
+game/txt/nws/base.nws
+BUGS
+CHANGES.174
+CHANGES.175
+CHANGES.176
+CHANGES.177
+CHANGES.180
+CHANGES.181
+CHANGES.182
+CHANGES.183
+CHANGES.OLD
+COPYRITE
+FAQ
+I18N
+INSTALL
+MANIFEST
+Makefile.SH
+Patchlevel
+README
+README.SQL
+README.SSL
+UPGRADING
+config_h.SH
+confmagic.h
+options.h.dist
+hdrs/access.h
+hdrs/ansi.h
+hdrs/atr_tab.h
+hdrs/attrib.h
+hdrs/boolexp.h
+hdrs/bufferq.h
+hdrs/case.h
+hdrs/chunk.h
+hdrs/command.h
+hdrs/compile.h
+hdrs/conf.h
+hdrs/copyrite.h
+hdrs/cron.h
+hdrs/csrimalloc.h
+hdrs/dbdefs.h
+hdrs/dbio.h
+hdrs/division.h
+hdrs/extchat.h
+hdrs/externs.h
+hdrs/extmail.h
+hdrs/flags.h
+hdrs/function.h
+hdrs/game.h
+hdrs/getpgsiz.h
+hdrs/help.h
+hdrs/htab.h
+hdrs/ident.h
+hdrs/intrface.h
+hdrs/lock.h
+hdrs/log.h
+hdrs/malias.h
+hdrs/match.h
+hdrs/mushdb.h
+hdrs/mushtype.h
+hdrs/mymalloc.h
+hdrs/mysocket.h
+hdrs/myssl.h
+hdrs/oldflags.h
+hdrs/parse.h
+hdrs/pcre.h
+hdrs/privtab.h
+hdrs/ptab.h
+hdrs/pueblo.h
+hdrs/shs.h
+hdrs/strtree.h
+hdrs/version.h
+hints/a-u-x.sh
+hints/aix.sh
+hints/darwin.sh
+hints/darwin-fink.sh
+hints/dec_osf.sh
+hints/freebsd.sh
+hints/hpux-gcc.sh
+hints/hpux.sh
+hints/irix.sh
+hints/irix_6.sh
+hints/linux_2.sh
+hints/mingw32.sh
+hints/next.sh
+hints/openbsd.sh
+hints/os2.sh
+hints/solaris_2.sh
+hints/sunos_4.sh
+hints/ultrix.sh
+hints/win32-gcc.sh
+hints/win32.sh
+os2/GCCOPT.CMD
+os2/Makefile
+os2/Penn-OS2.htm
+os2/config.h
+po/Makefile
+src/Makefile.SH
+src/SWITCHES
+src/access.c
+src/announce.c
+src/atr_tab.c
+src/attrib.c
+src/boolexp.c
+src/bsd.c
+src/bufferq.c
+src/chunk.c
+src/cmdlocal.dst
+src/cmds.c
+src/command.c
+src/comp_h.c
+src/comp_w.c
+src/comp_w8.c
+src/compress.c
+src/conf.c
+src/console.c
+src/cque.c
+src/create.c
+src/cron.c
+src/csrimalloc.c
+src/db.c
+src/destroy.c
+src/division.c
+src/extchat.c
+src/extmail.c
+src/filecopy.c
+src/flaglocal.dst
+src/flags.c
+src/funcrypt.c
+src/function.c
+src/fundb.c
+src/fundiv.c
+src/funlist.c
+src/funlocal.dst
+src/funmath.c
+src/funmisc.c
+src/funstr.c
+src/funtime.c
+src/funufun.c
+src/game.c
+src/gmalloc.c
+src/help.c
+src/htab.c
+src/ident.c
+src/info_slave.c
+src/local.dst
+src/lock.c
+src/log.c
+src/look.c
+src/malias.c
+src/match.c
+src/memcheck.c
+src/move.c
+src/mycrypt.c
+src/mymalloc.c
+src/mysocket.c
+src/myssl.c
+src/notify.c
+src/parse.c
+src/pcre.c
+src/player.c
+src/plyrlist.c
+src/portmsg.c
+src/predicat.c
+src/privtab.c
+src/prog.c
+src/ptab.c
+src/rob.c
+src/rplog.c
+src/services.c
+src/set.c
+src/shs.c
+src/sig.c
+src/speech.c
+src/sql.c
+src/strdup.c
+src/strtree.c
+src/strutil.c
+src/switchinc.c
+src/tables.c
+src/timer.c
+src/unparse.c
+src/utils.c
+src/version.c
+src/warnings.c
+src/wild.c
+src/wiz.c
+utils/clwrapper.sh
+utils/customize.pl
+utils/fixdepend.pl
+utils/gentables.c
+utils/ln-dir.sh
+utils/make_access_cnf.sh
+utils/mkcmds.sh.SH
+utils/mkvershlp.pl
+utils/penn-install
+utils/update-cnf.pl
+utils/update.pl
+win32/README.mingw
+win32/README.txt
+win32/cmds.h
+win32/cobramush.sln
+win32/config.h
+win32/confmagic.h
+win32/funs.h
+win32/options.h
+win32/patches.h
+win32/pennmush.dsp
+win32/pennmush.dsw
+Configure Portability tool
--- /dev/null
+?RCS: $Id: End.U 1.2 Tue, 30 Sep 2003 18:01:23 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: End.U,v $
+?RCS: Revision 3.0 1993/08/18 12:04:51 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This unit serves as the goal which forces make to choose all the units that
+?X: ask questions. The $W on the ?MAKE: line is the list of all symbols wanted.
+?X: To force any unit to be included, copy this unit to your private U directory
+?X: and add the name of the unit desired to the ?MAKE: dependency line.
+?X:
+?MAKE:End: $W d_tcl MailList
+?MAKE: -pick add $@ %<
+?LINT:use $W d_tcl MailList
+: end of configuration questions
+echo " "
+echo "End of configuration questions."
+echo " "
+
--- /dev/null
+?RCS: $Id: Findhdr.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Thomas Neumann <tom@smart.bo.open.de>
+?RCS:
+?RCS: $Log: Findhdr.U,v $
+?RCS: Revision 1.2 1997/11/25 18:41:56 popiel
+?RCS: From dist
+?RCS:
+?RCS: Revision 3.0.1.2 1994/10/29 15:53:08 ram
+?RCS: patch36: added ?F: line for metalint file checking
+?RCS:
+?RCS: Revision 3.0.1.1 1994/05/06 14:03:56 ram
+?RCS: patch23: cppminus must be after other cppflags, not before
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:04:54 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This unit produces a findhdr script which is used to locate the header
+?X: files in $usrinc or other stranger places using cpp capabilities. The
+?X: script is given an include file base name, like 'stdio.h' or 'sys/file.h'
+?X: and it returns the full path of the include file and a zero status or an
+?X: empty string with an error status if the file could not be located.
+?X:
+?MAKE:Findhdr: grep test tr rm +usrinc awk cat startsh \
+ cppstdin cppminus +cppflags
+?MAKE: -pick add $@ %<
+?LINT:define fieldn
+?S:fieldn:
+?S: This variable is used internally by Configure. It contains the position
+?S: of the included file name in cpp output. That is to say, when cpp
+?S: pre-processes a #include <file> line, it replaces it by a # line which
+?S: contains the original position in the input file and the full name of
+?S: included file, between "quotes".
+?S:.
+?V:fieldn
+?F:./findhdr !fieldn
+?T:cline pos wanted name awkprg
+: determine filename position in cpp output
+echo " "
+echo "Computing filename position in cpp output for #include directives..." >&4
+echo '#include <stdio.h>' > foo.c
+$cat >fieldn <<EOF
+$startsh
+$cppstdin $cppflags $cppminus <foo.c 2>/dev/null | \
+$grep '^[ ]*#.*stdio\.h' | \
+while read cline; do
+ pos=1
+?X: We have to go through this nightmare of sed and eval because some
+?X: folks like putting spaces in their directory names, which then get
+?X: echoed into the paths to standard headers. Thanks, Microsoft!
+?X:
+?X: What we're doing here is escaping every single shell meta-character
+?X: except for quotation marks, then evaluating that as an argument list.
+ qline=\`echo "\$cline" | $sed -e 's/\\([][{}#$<>;&()|^*?\\\\]\\)/\\\\\\\\\\1/g'\`
+ eval set \$qline
+ while $test "x\$1" \!= x; do
+ if $test -r "\$1"; then
+ echo "\$pos"
+ exit 0
+ fi
+ shift
+ pos=\`expr \$pos + 1\`
+ done
+done
+EOF
+chmod +x fieldn
+fieldn=`./fieldn`
+$rm -f foo.c fieldn
+case $fieldn in
+'') pos='???';;
+1) pos=first;;
+2) pos=second;;
+3) pos=third;;
+*) pos="${fieldn}th";;
+esac
+echo "Your cpp writes the filename in the $pos field of the line."
+
+?X: To locate a header file, we cannot simply check for $usrinc/file.h, since
+?X: some machine have the headers in weird places and our only hope is that
+?X: the C pre-processor will know how to find those headers. Thank you NexT!
+: locate header file
+$cat >findhdr <<EOF
+$startsh
+wanted=\$1
+name=''
+if test -f $usrinc/\$wanted; then
+ echo "$usrinc/\$wanted"
+ exit 0
+fi
+echo "#include <\$wanted>" > foo\$\$.c
+$cppstdin $cppminus $cppflags < foo\$\$.c 2>/dev/null | \
+$grep "^[ ]*#.*\$wanted" | \
+while read cline; do
+ pos=1
+ qline=\`echo "\$cline" | $sed -e 's/\\([][{}#$<>;&()|^'"'"'*?\\\\]\\)/\\\\\\\\\\1/g'\`
+ eval set \$qline
+ while $test $fieldn -gt \$pos; do
+ shift
+ pos=\`expr \$pos + 1\`
+ done
+ name=\$1
+ case "\$name" in
+ */\$wanted) echo "\$name"; exit 0;;
+?X: Of course, Microsoft likes backslashes, too. @whee.
+ *\\\\\$wanted) echo "\$name"; exit 0;;
+ *) name='';;
+ esac;
+done;
+$rm -f foo\$\$.c;
+case "\$name" in
+'') exit 1;;
+esac
+EOF
+chmod +x findhdr
+
--- /dev/null
+?RCS: $Id: Guess.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: Guess.U,v $
+?RCS: Revision 3.0.1.4 1994/10/29 15:53:55 ram
+?RCS: patch36: added ?F: line for metalint file checking
+?RCS: patch36: call ./xenix explicitely instead of relying on PATH
+?RCS:
+?RCS: Revision 3.0.1.3 1993/12/15 08:14:35 ram
+?RCS: patch15: variable d_bsd was not always set properly
+?RCS:
+?RCS: Revision 3.0.1.2 1993/08/30 08:57:14 ram
+?RCS: patch8: fixed comment which wrongly attributed the usrinc symbol
+?RCS: patch8: no more ugly messages when no /usr/include/ctype.h
+?RCS:
+?RCS: Revision 3.0.1.1 1993/08/27 14:37:37 ram
+?RCS: patch7: added support for OSF/1 machines
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:04:57 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This unit hazards some guesses as to what the general nature of the system
+?X: is. The information it collects here is used primarily to establish default
+?X: answers to other questions.
+?X:
+?MAKE:Guess d_eunice d_xenix d_bsd: cat test echo n c contains rm Loc eunicefix
+?MAKE: -pick add $@ %<
+?S:d_eunice:
+?S: This variable conditionally defines the symbols EUNICE and VAX, which
+?S: alerts the C program that it must deal with ideosyncracies of VMS.
+?S:.
+?S:d_xenix:
+?S: This variable conditionally defines the symbol XENIX, which alerts
+?S: the C program that it runs under Xenix.
+?S:.
+?S:d_bsd:
+?S: This symbol conditionally defines the symbol BSD when running on a
+?S: BSD system.
+?S:.
+?F:./bsd ./usg ./v7 ./osf1 ./eunice ./xenix ./venix
+?T:xxx
+: make some quick guesses about what we are up against
+echo " "
+$echo $n "Hmm... $c"
+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
+d_bsd="$undef"
+?X:
+?X: Do not use 'usrinc', or we get a circular dependency. because
+?X: usrinc is defined in usrinc.U, which relies on us...
+?X:
+$cat /usr/include/signal.h /usr/include/sys/signal.h >foo 2>/dev/null
+if test -f /osf_boot || $contains 'OSF/1' /usr/include/ctype.h >/dev/null 2>&1
+then
+ echo "Looks kind of like an OSF/1 system, but we'll see..."
+ echo exit 0 >osf1
+elif test `echo abc | tr a-z A-Z` = Abc ; then
+ xxx=`./loc addbib blurfl $pth`
+ if $test -f $xxx; then
+ echo "Looks kind of like a USG system with BSD features, but we'll see..."
+ echo exit 0 >bsd
+ echo exit 0 >usg
+ else
+ if $contains SIGTSTP foo >/dev/null 2>&1 ; then
+ echo "Looks kind of like an extended USG system, but we'll see..."
+ else
+ echo "Looks kind of like a USG system, but we'll see..."
+ fi
+ echo exit 0 >usg
+ fi
+elif $contains SIGTSTP foo >/dev/null 2>&1 ; then
+ echo "Looks kind of like a BSD system, but we'll see..."
+ d_bsd="$define"
+ 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"
+: it so happens the Eunice I know will not run shell scripts in Unix format
+ ;;
+*)
+ 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
+ d_xenix="$define"
+else
+ echo " "
+ echo "It's not Xenix..."
+ d_xenix="$undef"
+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 xenix venix
+$eunicefix bsd usg v7 osf1 eunice xenix venix
+$rm -f foo
+
--- /dev/null
+?RCS: $Id: Head.U 1.3 Mon, 10 Nov 2003 14:51:32 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: Head.U,v $
+?RCS: Revision 1.2 1997/11/25 18:08:08 popiel
+?RCS: From dist.
+?RCS:
+?RCS: Revision 3.0.1.9 1997/02/28 15:02:09 ram
+?RCS: patch61: make sure we unset CDPATH for shells that support this
+?RCS: patch61: improved Korn shell detection and handling
+?RCS:
+?RCS: Revision 3.0.1.8 1995/07/25 13:40:02 ram
+?RCS: patch56: added SVR4-ish /opt directories to path list (ADO)
+?RCS: patch56: OS/2 platforms are using another path separator
+?RCS:
+?RCS: Revision 3.0.1.7 1995/03/21 08:46:15 ram
+?RCS: patch52: definition of paths wrongly added spurious ':' chars
+?RCS:
+?RCS: Revision 3.0.1.6 1994/10/29 15:54:19 ram
+?RCS: patch36: make sure ENV is unset before calling /bin/ksh
+?RCS:
+?RCS: Revision 3.0.1.5 1994/08/29 16:03:44 ram
+?RCS: patch32: now sets PATH only using existing directories
+?RCS:
+?RCS: Revision 3.0.1.4 1994/06/20 06:54:28 ram
+?RCS: patch30: now computes its invocation name into 'me'
+?RCS: patch30: symbol me is made visible to all units read-only
+?RCS:
+?RCS: Revision 3.0.1.3 1993/12/15 08:15:07 ram
+?RCS: patch15: added /sbin:/usr/sbin:/usr/libexec in PATH for BSD/386
+?RCS:
+?RCS: Revision 3.0.1.2 1993/11/10 17:32:35 ram
+?RCS: patch14: ensure PATH is reset to '.' before testing for alias
+?RCS:
+?RCS: Revision 3.0.1.1 1993/08/27 14:38:07 ram
+?RCS: patch7: not all 'test' programs support the -x option
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:04:58 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This is the very first unit in the Configure script. It is mostly just
+?X: things to keep people from getting into a tizzy right off the bat.
+?X:
+?MAKE:Head:
+?MAKE: -pick wipe $@ %<
+?V:PATH p_ me
+?T:argv Id p paths OS2_SHELL
+?T:inksh needksh avoidksh newsh changesh reason
+#! /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 have a look at the prototypical config_h.SH file
+# 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.)
+#
+?X:
+?X: NOTE THAT A CONFIGURE SCRIPT IS IN THE PUBLIC DOMAIN (whether or not
+?X: the software which uses it is in the public domain).
+?X:
+# Yes, you may rip this off to use in other distribution packages. This
+# script belongs to the public domain and cannot be copyrighted.
+#
+?X:
+?X: WE ASK YOU NOT TO REMOVE OR ALTER THE FOLLOWING PARAGRAPH, PLEASE:
+?X:
+# (Note: this Configure script was generated automatically. Rather than
+# working with this copy of Configure, you may wish to get metaconfig.
+# The dist-3.0 package (which contains metaconfig) was posted in
+# comp.sources.misc and is available on CPAN under authors/id/RAM so
+# you may fetch it yourself from your nearest archive site.)
+#
+?X:
+?X: NOTA BENE:
+?X: If you develop you own version of metaconfig based on this work,
+?X: you have to add some comments telling that the script was generated
+?X: by your version, not mine: It credits your work.
+?X:
+
+# $Id: Head.U 1.3 Mon, 10 Nov 2003 14:51:32 -0600 dunemush $
+#
+# Generated on <DATE> [metaconfig <VERSION> PL<PATCHLEVEL>]
+
+cat >/tmp/c1$$ <<EOF
+ARGGGHHHH!!!!!
+
+SCO csh still thinks true is false. Write to SCO today and tell them that next
+year Configure ought to "rm /bin/csh" unless they fix their blasted shell. :-)
+
+(Actually, Configure ought to just patch csh in place. Hmm. Hmmmmm. All
+we'd have to do is go in and swap the && and || tokens, wherever they are.)
+
+[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 $argv:q
+
+(exit $?0) || cat /tmp/c2$$
+(exit $?0) || exec sh $0 $argv:q
+rm -f /tmp/c1$$ /tmp/c2$$
+
+: compute my invocation name
+me=$0
+case "$0" in
+*/*)
+ me=`echo $0 | sed -e 's!.*/\(.*\)!\1!' 2>/dev/null`
+ test "$me" || me=$0
+ ;;
+esac
+
+?X:
+?X: To be able to run under OS/2, we must detect that early enough to use
+?X: the proper path separator, stored in $p_. It is : on UNIX and \ on OS/2.
+?X: However, we have to be careful not to confuse with win32 running the
+?X: cygwin32 unix emulation tools.
+?X:
+: Proper PATH separator
+p_=:
+: On OS/2 this directory should exist if this is not floppy only system :-]
+if test -d c:/.; then
+ : Check for cygwin32 emulation
+ case "x$OSTYPE$OS" in
+ x*msys*Windows*)
+ echo 'Running on Windows? Using the MinGW MSys tools...'
+ ;;
+ x*win32*)
+ echo 'Running on Windows? Assuming cygwin32 emulation tools...'
+ ;;
+ x*windows*)
+ echo 'Running on Windows? Assuming cygwin32 emulation tools...'
+ ;;
+ x*cygwin*)
+ echo 'Looks like cygwin32...'
+ ;;
+ x*)
+ p_=\;
+ PATH=`cmd /c "echo %PATH%" | tr '\\\\' / `
+?X: That's a bug in ksh5.22
+ OS2_SHELL=`cmd /c "echo %OS2_SHELL%" | tr '\\\\' / | tr '[A-Z]' '[a-z]'`
+ ;;
+ esac
+fi
+
+?X:
+?X: There are two schools of thoughts here. Some people correctly argue that
+?X: the user has a better chance than we do of setting a reasonable PATH and
+?X: others argue that Configure is the best place there is to set up a suitable
+?X: PATH. Well, here we try to compromize by keeping the user's PATH and
+?X: appending some directories which are known to work on some machine or the
+?X: other. The rationale behind this being that a novice user might not have a
+?X: proper environment variable set, and some directories like /etc (where
+?X: chown is located on some BSD systems) may be missing--RAM.
+?X:
+?X: SVR4 adds an /opt directory for optional packages. Some sites use
+?X: various permutations on /opt as opposed to /usr or /usr/local.-- ADO
+?X:
+?X: cygwin32 strongly suggests /gnuwin32/b18/H-i386-cygwin32/bin. Talk
+?X: about ugly.
+?X:
+?X: We only add directories that are not already in the PATH of the
+?X: user and the directories must exist also.
+?X:
+: Proper PATH setting
+paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
+paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
+paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
+paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
+paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
+paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin"
+paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
+paths="$paths /sbin /usr/sbin /usr/libexec /gnuwin32/b18/H-i386-cygwin32/bin"
+
+case "x$OSTYPE$OS" in
+ x*msys*Windows*)
+ PATH='/usr/local/bin:/mingw/bin:/bin:/perl/bin'
+ ;;
+ x*)
+ for p in $paths
+ do
+ case "$p_$PATH$p_" in
+ *$p_$p$p_*) ;;
+ *) test -d $p && PATH=$PATH$p_$p ;;
+ esac
+ done
+
+ PATH=.$p_$PATH
+ export PATH
+ ;;
+esac
+
+: shall we be using ksh?
+inksh=''
+needksh=''
+avoidksh=''
+newsh=/bin/ksh
+changesh=''
+?X: Use (alias -x) and not (alias) since zsh and bash recognize the alias
+?X: builtin but not the -x option which is typically ksh...
+?X: We need to set up PATH before calling the "alias" built-in since some
+?X: systems like HP-UX have a binary called /bin/alias.
+if (PATH=.; alias -x) >/dev/null 2>&1; then
+ inksh=true
+fi
+?X: On HP-UX, large Configure scripts may exercise a bug in /bin/sh, use ksh
+if test -f /hp-ux -a -f /bin/ksh; then
+ needksh='to avoid sh bug in "here document" expansion'
+fi
+?X: On AIX4, /bin/sh is really ksh and it causes problems, use sh
+if test -d /usr/lpp -a -f /usr/bin/bsh -a -f /usr/bin/uname; then
+ if test X`/usr/bin/uname -v` = X4; then
+ avoidksh="to avoid AIX 4's /bin/sh"
+ newsh=/usr/bin/bsh
+ fi
+fi
+?X: If we are not in ksh and need it, then feed us back to it
+case "$inksh/$needksh" in
+/[a-z]*)
+?X: Unset ENV to avoid any ~/.kshrc that could alias cd or whatever...
+ unset ENV
+ changesh=true
+ reason="$needksh"
+ ;;
+esac
+?X: If we are in ksh and must avoid it, then feed us back to a new shell
+case "$inksh/$avoidksh" in
+true/[a-z]*)
+ changesh=true
+ reason="$avoidksh"
+ ;;
+esac
+?X: Warn them if they use ksh on other systems, which are those where
+?X: we don't need ksh nor want to avoid it explicitely, yet are using it.
+case "$inksh/$needksh-$avoidksh-" in
+true/--)
+ cat <<EOM
+(I see you are using the Korn shell. Some ksh's blow up on $me,
+mainly on older exotic systems. If yours does, try the Bourne shell instead.)
+EOM
+ ;;
+esac
+case "$changesh" in
+true)
+ echo "(Feeding myself to $newsh $reason.)"
+?X: Make sure they didn't say sh <Configure by checking whether $0 ends
+?X: with Configure or not. If they did say sh <../../Configure, then too
+?X: bad for them anyway, since we lost that path indication...
+?X: Otherwise, execing $0 ensures we keep the full remote source dir
+?X: indication for src.U.
+ case "$0" in
+ Configure|*/Configure) exec $newsh $0 "$@";;
+ *) exec $newsh Configure "$@";;
+ esac
+ ;;
+esac
+
+: Configure runs within the UU subdirectory
+test -d UU || mkdir UU
+?X: Use ./* to avoid any confirmation prompts from enhanced shells -- WED
+?X: Unset CDPATH to avoid surprised when using cd under some shells
+unset CDPATH
+cd UU && rm -f ./*
+
--- /dev/null
+?RCS: $Id: Loc.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: Loc.U,v $
+?RCS: Revision 3.0.1.10 1997/02/28 15:04:16 ram
+?RCS: patch61: allow users to specify paths on the command line
+?RCS: patch61: will now substitute cp for ln if not supported
+?RCS:
+?RCS: Revision 3.0.1.9 1995/09/25 09:11:24 ram
+?RCS: patch59: commented the purpose of the #un-def directive
+?RCS: patch59: abort Configure run when mandatory command is missing
+?RCS:
+?RCS: Revision 3.0.1.8 1995/07/25 13:40:40 ram
+?RCS: patch56: now knows about OS/2 platforms
+?RCS:
+?RCS: Revision 3.0.1.7 1995/01/11 15:13:37 ram
+?RCS: patch45: protected "sh -c" within backquotes for Linux and SGI
+?RCS: patch45: added path lookup for the 'comm' program
+?RCS:
+?RCS: Revision 3.0.1.6 1994/10/29 15:56:14 ram
+?RCS: patch36: added ?F: line for metalint file checking
+?RCS: patch36: be careful and guard against wildcard searching (ADO)
+?RCS:
+?RCS: Revision 3.0.1.5 1994/06/20 06:54:55 ram
+?RCS: patch30: now locates find
+?RCS:
+?RCS: Revision 3.0.1.4 1994/05/13 15:18:15 ram
+?RCS: patch27: added byacc to the trylist (ADO)
+?RCS: patch27: lint lines reformatted (ADO)
+?RCS:
+?RCS: Revision 3.0.1.3 1994/01/24 14:01:44 ram
+?RCS: patch16: added metalint hint on changed PATH variable
+?RCS:
+?RCS: Revision 3.0.1.2 1993/12/15 08:16:52 ram
+?RCS: patch15: now set _test variable when test is built-in
+?RCS: patch15: fixed rare cases where echo is not needed
+?RCS:
+?RCS: Revision 3.0.1.1 1993/09/13 15:47:13 ram
+?RCS: patch10: test program not always in /bin/test (WAD)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:05 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This unit produces a shell script "loc" which can be used to find out
+?X: where in a list of directories something is. It then uses loc to
+?X: determine the location of commonly used programs. It leaves loc sitting
+?X: around for other Configure units to use, but arranges for its demise
+?X: at the end of Configure.
+?X:
+?X: To add a new program to find, add it both to the ?MAKE: line and to either
+?X: the loclist or trylist variable.
+?X:
+?X: I put startsh at the end of the dependency list, in order to avoid the
+?X: loading of the spitshell unit before the instructions.
+?X:
+?MAKE:Loc Mcc awk ar bash bison byacc cat chgrp chmod chown \
+ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \
+ gcc gzip grep inews ksh less line lint ln lp lpr ls mail mailx \
+ make mkdir more mv nroff perl pg pmake pr rm rmail sed sendmail \
+ shar sleep smail sort submit tail tar tbl test touch tr troff \
+ uname uniq uptime uuname vi zcat zip: eunicefix n c Instruct Myread \
+ startsh
+?MAKE: -pick weed $@ %<
+?LINT:describe Loc Mcc awk ar bash bison byacc cat chgrp chmod chown \
+ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \
+ gcc gzip grep inews ksh less line lint ln lp lpr ls mail mailx \
+ make mkdir more mv nroff perl pg pmake pr rm rmail sed sendmail \
+ shar sleep smail sort submit tail tar tbl test touch tr troff \
+ uname uniq uptime uuname vi zcat zip
+?V::pth loclist trylist
+?F:./loc
+?T:thisthing thing xxx dir file say _test
+?LINT:change PATH
+: find out where common programs are
+echo " "
+echo "Locating common programs..." >&4
+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
+ ;;
+ *)
+?X: Be careful in case thing includes wildcards that might expand to multiple
+?X: files. Choose the last one. This happens when searching for shared
+?X: libraries with version numbers. How to choose which one we want is
+?X: probably an insoluble problem, in general.
+?X: Some folks leave things like libc.so.orig around w/o read
+?X: permission. A -r test would handle that, but since ./loc is
+?X: also used to find executables (which are installed w/o read
+?X: permission on SCO ODT 3.0, we can't include the -r test.
+ for thisthing in \$dir/\$thing; do
+ : just loop through to pick last item
+ done
+ if test -f \$thisthing; then
+ echo \$thisthing
+ 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="
+?awk:awk
+?cat:cat
+?chgrp:chgrp
+?chmod:chmod
+?chown:chown
+?comm:comm
+?cp:cp
+?echo:echo
+?expr:expr
+?find:find
+?grep:grep
+?ls:ls
+?make:make
+?mkdir:mkdir
+?mv:mv
+?rm:rm
+?sed:sed
+?sleep:sleep
+?sort:sort
+?tail:tail
+?touch:touch
+?tr:tr
+?uniq:uniq
+"
+trylist="
+?Mcc:Mcc
+?ar:ar
+?bash:bash
+?bison:bison
+?byacc:byacc
+?compress:compress
+?cpio:cpio
+?cpp:cpp
+?csh:csh
+?date:date
+?egrep:egrep
+?emacs:emacs
+?flex:flex
+?gcc:gcc
+?gzip:gzip
+?inews:inews
+?ksh:ksh
+?less:less
+?line:line
+?lint:lint
+?ln:ln
+?lp:lp
+?lpr:lpr
+?mail:mail
+?mailx:mailx
+?more:more
+?nroff:nroff
+?perl:perl
+?pg:pg
+?pmake:pmake
+?pr:pr
+?rmail:rmail
+?sendmail:sendmail
+?shar:shar
+?smail:smail
+?submit:submit
+?tar:tar
+?tbl:tbl
+?test:test
+?troff:troff
+?uname:uname
+?uptime:uptime
+?uuname:uuname
+?vi:vi
+?zcat:zcat
+?zip:zip
+"
+?LINT:set Loc Mcc awk ar bash bison byacc cat chgrp chmod chown \
+ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \
+ gcc gzip grep inews ksh less line lint ln lp lpr ls mail mailx \
+ make mkdir more mv nroff perl pg pmake pr rm rmail sed sendmail \
+ shar sleep smail sort submit tail tar tbl test touch tr troff \
+ uname uniq uptime uuname vi zcat zip
+pth=`echo $PATH | sed -e "s/$p_/ /g"`
+pth="$pth /lib /usr/lib"
+for file in $loclist; do
+?X:
+?X: Allow them to -Dmake=pmake on the command line for instance...
+?X: If the file is not fully qualified, as in -Dmake=pmake, then we
+?X: look the for the specified command (pmake here). If they say
+?X: -Dmake=/sbin/make for instance, then we make sure the file
+?X: exists, or we die...
+?X:
+ eval xxx=\$$file
+ case "$xxx" in
+ /*|?:[\\/]*)
+ if test -f "$xxx"; then
+ : ok
+ else
+ echo "WARNING: no $xxx -- ignoring your setting for $file." >&4
+ xxx=`./loc $file $file $pth`
+ fi
+ ;;
+ '') xxx=`./loc $file $file $pth`;;
+ *) xxx=`./loc $xxx $xxx $pth`;;
+ esac
+ eval $file=$xxx
+ eval _$file=$xxx
+ case "$xxx" in
+ /*)
+ echo $file is in $xxx.
+ ;;
+?X: Under OS/2, we have PC-like paths
+ ?:[\\/]*)
+ echo $file is in $xxx.
+ ;;
+ *)
+ echo "I don't know where '$file' is, and my life depends on it." >&4
+ echo "Go find a public domain implementation or fix your PATH setting!" >&4
+ exit 1
+ ;;
+ esac
+done
+echo " "
+echo "Don't worry if any of the following aren't found..."
+say=offhand
+for file in $trylist; do
+?X: Allow them to -Dmake=pmake on the command line for instance (see above)
+ eval xxx=\$$file
+ case "$xxx" in
+ /*|?:[\\/]*)
+ if test -f "$xxx"; then
+ : ok
+ else
+ echo "WARNING: no $xxx -- ignoring your setting for $file." >&4
+ xxx=`./loc $file $file $pth`
+ fi
+ ;;
+ '') xxx=`./loc $file $file $pth`;;
+ *) xxx=`./loc $xxx $xxx $pth`;;
+ esac
+ eval $file=$xxx
+ eval _$file=$xxx
+ case "$xxx" in
+ /*)
+ echo $file is in $xxx.
+ ;;
+?X: Under OS/2, we have PC-like paths
+ ?:[\\/]*)
+ echo $file is in $xxx.
+ ;;
+ *)
+ echo "I don't see $file out there, $say."
+ say=either
+ ;;
+ esac
+done
+case "$egrep" in
+egrep)
+ echo "Substituting grep for egrep."
+ egrep=$grep
+ ;;
+esac
+@if ln
+case "$ln" in
+ln)
+ echo "Substituting cp for ln."
+ ln=$cp
+ ;;
+esac
+@end
+case "$test" in
+test)
+ echo "Hopefully test is built into your sh."
+ ;;
+*)
+ if `sh -c "PATH= test true" >/dev/null 2>&1`; then
+ echo "Using the test built into your sh."
+?X:
+?X: We need to set both test and _test, since Oldconfig.U will use the _test
+?X: value to systematically restore computed paths, which may be wrong if
+?X: we choose to load an old config.sh generated on another platform.
+?X:
+ test=test
+ _test=test
+ fi
+ ;;
+esac
+?LINT:change n c
+case "$echo" in
+echo)
+ echo "Hopefully echo is built into your sh."
+ ;;
+?X: For those rare cases where we don't need $echo...
+'') ;;
+*)
+ echo " "
+echo "Checking compatibility between $echo and builtin echo (if any)..." >&4
+ $echo $n "hi there$c" >foo1
+ echo $n "hi there$c" >foo2
+ if cmp foo1 foo2 >/dev/null 2>&1; then
+ echo "They are compatible. In fact, they may be identical."
+ else
+ case "$n" in
+ '-n') n='' c='\c';;
+ *) n='-n' c='';;
+ esac
+ cat <<FOO
+They are not compatible! You are probably running ksh on a non-USG system.
+I'll have to use $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 '$n$c' to suppress newlines now. Life is ridiculous.
+
+FOO
+ $echo $n "The star should be here-->$c"
+ $echo "*"
+ fi
+ $rm -f foo1 foo2
+ ;;
+esac
+
--- /dev/null
+?RCS: $Id: MailList.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Graham Stoney <greyham@research.canon.oz.au>
+?RCS:
+?RCS: $Log: MailList.U,v $
+?RCS: Revision 3.0.1.1 1994/01/24 14:01:49 ram
+?RCS: patch16: created
+?RCS:
+?RCS:
+?X:
+?X: This unit offers the user the option of subscribing to the mailing
+?X: list. To force inclusion of this unit, you must add it's name to the
+?X: dependancies on the MAKE line in your private copy of End.U.
+?X: The address of the mailing list server must be set via a "list_request=..."
+?X: entry in the .package file. This is usually done by running packinit and
+?X: answering the proper questions.
+?X:
+?MAKE:MailList: cat mailer package Myread cf_name cf_email
+?MAKE: -pick wipe $@ %<
+?T:list_request list_sub list_unsub list_name
+?X:
+?X: The cf_name dependency is used through list_sub when the mailing list
+?X: manager happens to be listserv, whereas cf_email is used whith majordomo
+?X: or when the mailing list request address is scanned by a human. Since
+?X: they do not appear within the unit itself, we need a lint hint.
+?X:
+?LINT:use cf_name cf_email
+: offer to join the mailing list
+list_request='<$list_request>'
+list_sub="<$list_sub>"
+list_unsub="<$list_unsub>"
+list_name="<$list_name>"
+$cat <<EOM
+
+There is a mailing list for discussion about $package and related issues.
+This is the preferred place to ask questions about the program and discuss
+modifications and additions with the author and other users. If you are able
+to send mail to the Internet, you are encouraged to subscribe. You need only
+ever subscribe once, and you can unsubscribe automatically at any time in the
+future. If you have already subscribed and you wish to unsubscribe now, you
+may do so by answering "unsubscribe". Answer "subscribe" to subscribe to the
+list.
+
+EOM
+rp="Subscribe to or unsubscribe from the $list_name mailing list?"
+dflt=neither
+. ./myread
+case "$ans" in
+[sS]*) $cat <<EOM
+
+You will be sent a message from the list server to let you know when your
+subscription has been successful and telling you how to submit articles and
+how to unsubscribe again when necessary. You may also unsubscribe by running
+this script again and asking it to do so for you.
+
+EOM
+ echo "Sending mail to subscribe you to the $list_name list..." >&4
+ $mailer $list_request <<EOM >/dev/null 2>&1
+To: $list_request
+Subject: Subscription request by configure
+
+$list_sub
+EOM
+ ;;
+[uU]*) echo "Sending mail to unsubscribe you from the $list_name list..." >&4
+ $mailer $list_request <<EOM >/dev/null 2>&1
+To: $list_request
+Subject: Unsubscription request by configure
+
+$list_unsub
+EOM
+ ;;
+esac
+
--- /dev/null
+?RCS: $Id: Myinit.U 1.5 Sun, 02 Feb 2003 10:43:44 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: Myinit.U,v $
+?RCS: Revision 3.0.1.1 1994/10/31 09:47:29 ram
+?RCS: patch44: leading comment states this unit comes before option processing
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:07 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: If you want to initialize any default values, copy this unit to your
+?X: personal U directory and add the assignments to the end. This file
+?X: is included after variables are initialized but before any old
+?X: config.sh file is read in and before any Configure switch processing.
+?X:
+?MAKE:Myinit: Init
+?MAKE: -pick add $@ %<
+?LINT:set defvoidused libswanted
+defvoidused=15
+libswanted='nsl socket m c crypt bind resolv ld dl tcl intl'
+
--- /dev/null
+?RCS: $Id: Oldconfig.U 1.3 Mon, 28 Jun 2004 09:20:49 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: Oldconfig.U,v $
+?RCS: Revision 1.2 1997/11/25 18:20:23 popiel
+?RCS: From dist
+?RCS:
+?RCS: Revision 3.0.1.10 1997/02/28 15:06:39 ram
+?RCS: patch61: added support for src.U
+?RCS: patch61: new OSNAME define
+?RCS: patch61: can now sense new OSes
+?RCS:
+?RCS: Revision 3.0.1.9 1995/07/25 13:40:51 ram
+?RCS: patch56: now knows about OS/2 platforms
+?RCS:
+?RCS: Revision 3.0.1.8 1995/05/12 12:04:18 ram
+?RCS: patch54: config.sh reload logic now knows about new -K switch
+?RCS: patch54: cleaned up and extended osvers for DEC OSF/1 (ADO)
+?RCS: patch54: added MachTen detection (ADO)
+?RCS:
+?RCS: Revision 3.0.1.7 1995/02/15 14:13:41 ram
+?RCS: patch51: adapted osvers computation for AIX (ADO)
+?RCS:
+?RCS: Revision 3.0.1.6 1995/01/30 14:27:15 ram
+?RCS: patch49: unit Options.U now exports file optdef.sh, not a variable
+?RCS: patch49: update code for myuname changed (WED)
+?RCS:
+?RCS: Revision 3.0.1.5 1995/01/11 15:15:36 ram
+?RCS: patch45: added quotes around the INITPROG variable (ADO)
+?RCS: patch45: allows variable overriding after config file loading
+?RCS:
+?RCS: Revision 3.0.1.4 1994/10/29 15:57:05 ram
+?RCS: patch36: added ?F: line for metalint file checking
+?RCS: patch36: merged with the version used for perl5's Configure (ADO)
+?RCS:
+?RCS: Revision 3.0.1.3 1994/05/06 14:24:17 ram
+?RCS: patch23: added support for osf1 hints
+?RCS: patch23: new support for solaris and i386 systems (ADO)
+?RCS:
+?RCS: Revision 3.0.1.2 1994/01/24 14:05:02 ram
+?RCS: patch16: added post-processing on myuname for Xenix targets
+?RCS: patch16: message proposing config.sh defaults made consistent
+?RCS:
+?RCS: Revision 3.0.1.1 1993/09/13 15:56:32 ram
+?RCS: patch10: force use of config.sh when -d option is used (WAD)
+?RCS: patch10: complain about non-existent hint files (WAD)
+?RCS: patch10: added Options dependency for fastread variable
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:12 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This unit tries to remember what we did last time we ran Configure, mostly
+?X: for the sake of setting defaults.
+?X:
+?MAKE:Oldconfig hint myuname osname osvers: Instruct Myread uname \
+ sh awk sed test cat rm lns n c contains Loc Options Tr src
+?MAKE: -pick wipe $@ %<
+?S:myuname:
+?S: The output of 'uname -a' if available, otherwise the hostname. On Xenix,
+?S: pseudo variables assignments in the output are stripped, thank you. The
+?S: whole thing is then lower-cased.
+?S:.
+?S:hint:
+?S: Gives the type of hints used for previous answers. May be one of
+?S: "default", "recommended" or "previous".
+?S:.
+?S:osname:
+?S: This variable contains the operating system name (e.g. sunos,
+?S: solaris, hpux, etc.). It can be useful later on for setting
+?S: defaults. Any spaces are replaced with underscores. It is set
+?S: to a null string if we can't figure it out.
+?S:.
+?S:osvers:
+?S: This variable contains the operating system version (e.g.
+?S: 4.1.3, 5.2, etc.). It is primarily used for helping select
+?S: an appropriate hints file, but might be useful elsewhere for
+?S: setting defaults. It is set to '' if we can't figure it out.
+?S: We try to be flexible about how much of the version number
+?S: to keep, e.g. if 4.1.1, 4.1.2, and 4.1.3 are essentially the
+?S: same for this package, hints files might just be os_4.0 or
+?S: os_4.1, etc., not keeping separate files for each little release.
+?S:.
+?C:OSNAME:
+?C: This symbol contains the name of the operating system, as determined
+?C: by Configure. You shouldn't rely on it too much; the specific
+?C: feature tests from Configure are generally more reliable.
+?C:.
+?H:#define OSNAME "$osname" /**/
+?H:.
+?F:!config.sh
+?T:tmp tmp_n tmp_c tmp_sh file
+?T:xxxxfile xxxfile xxfile xfile hintfile newmyuname
+?T:tans _ isesix INITPROG
+?LINT:change n c sh
+: Try to determine whether config.sh was made on this system
+case "$config_sh" in
+'')
+?X: indentation wrong on purpose--RAM
+?X: Leave a white space between first two '(' for ksh. The sub-shell is needed
+?X: on some machines to avoid the error message when uname is not found; e.g.
+?X: old SUN-OS 3.2 would not execute hostname in (uname -a || hostname). Sigh!
+myuname=`( ($uname -a) 2>/dev/null || hostname) 2>&1`
+?X: Special mention for Xenix, whose 'uname -a' gives us output like this:
+?X: sysname=XENIX
+?X: nodename=whatever
+?X: release=2.3.2 .. etc...
+?X: Therefore, we strip all this variable assignment junk and remove all the
+?X: new lines to keep the myuname variable sane... --RAM
+myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \
+ ./tr '[A-Z]' '[a-z]' | tr '\012' ' '`
+?X: Save the value we just computed to reset myuname after we get done here.
+newmyuname="$myuname"
+dflt=n
+case "$knowitall" in
+'')
+ if test -f ../config.sh; then
+ if $contains myuname= ../config.sh >/dev/null 2>&1; then
+ eval "`grep myuname= ../config.sh`"
+ fi
+ if test "X$myuname" = "X$newmyuname"; then
+ dflt=y
+ fi
+ fi
+ ;;
+*) dflt=y;;
+esac
+
+@if {test -d ../hints}
+: Get old answers from old config file if Configure was run on the
+: same system, otherwise use the hints.
+hint=default
+cd ..
+?X: Since we are now at the root of the source tree, we must use $src
+?X: to access the sources and not $rsrc. See src.U for details...
+if test -f config.sh; then
+ echo " "
+ rp="I see a config.sh file. Shall I use it to set the defaults?"
+ . UU/myread
+ case "$ans" in
+ n*|N*) echo "OK, I'll ignore it."; mv config.sh config.sh.old;;
+ *) echo "Fetching default answers from your old config.sh file..." >&4
+ tmp_n="$n"
+ tmp_c="$c"
+ tmp_sh="$sh"
+ . ./config.sh
+ cp config.sh UU
+ n="$tmp_n"
+ c="$tmp_c"
+ : Older versions did not always set $sh. Catch re-use of such
+ : an old config.sh.
+ case "$sh" in
+ '') sh="$tmp_sh" ;;
+ esac
+ hint=previous
+ ;;
+ esac
+fi
+if test ! -f config.sh; then
+ $cat <<EOM
+
+First time through, eh? I have some defaults handy for the following systems:
+
+EOM
+ (cd $src/hints; ls -C *.sh) | $sed 's/\.sh/ /g' >&4
+ dflt=''
+ : Half the following guesses are probably wrong... If you have better
+ : tests or hints, please send them to <MAINTLOC>
+ : The metaconfig authors would also appreciate a copy...
+ $test -f /irix && osname=irix
+ $test -f /xenix && osname=sco_xenix
+ $test -f /dynix && osname=dynix
+ $test -f /dnix && osname=dnix
+ $test -f /lynx.os && osname=lynxos
+ $test -f /unicos && osname=unicos && osvers=`$uname -r`
+ $test -f /unicosmk.ar && osname=unicosmk && osvers=`$uname -r`
+ $test -f /bin/mips && /bin/mips && osname=mips
+ $test -d /NextApps && set X `hostinfo | grep 'NeXT Mach.*:' | \
+ $sed -e 's/://' -e 's/\./_/'` && osname=next && osvers=$4
+ $test -d /usr/apollo/bin && osname=apollo
+ $test -f /etc/saf/_sactab && osname=svr4
+ $test -d /usr/include/minix && osname=minix
+ if $test -d /MachTen; then
+?X: MachTen uname -a output looks like
+?X: xxx 4 0.0 Macintosh
+?X: MachTen /sbin/version output looks like
+?X: MachTen 4.0 Mon Aug 28 10:18:00 1995
+?X: MachTen 3.x had the 'version' command in /usr/etc/version.
+ osname=machten
+ if $test -x /sbin/version; then
+ osvers=`/sbin/version | $awk '{print $2}' |
+ $sed -e 's/[A-Za-z]$//'`
+ elif $test -x /usr/etc/version; then
+ osvers=`/usr/etc/version | $awk '{print $2}' |
+ $sed -e 's/[A-Za-z]$//'`
+ else
+ osvers="$2.$3"
+ fi
+ fi
+?X: If we have uname, we already computed a suitable uname -a output, correctly
+?X: formatted for Xenix, and it lies in $myuname.
+ if $test -f $uname; then
+ set X $myuname
+ shift
+
+ case "$5" in
+ fps*) osname=fps ;;
+ mips*)
+ case "$4" in
+ umips) osname=umips ;;
+ *) osname=mips ;;
+ esac;;
+ [23]100) osname=mips ;;
+ next*) osname=next ;;
+ news*) osname=news ;;
+?X: Interactive Unix.
+ i386*)
+ if $test -f /etc/kconfig; then
+ osname=isc
+ if test "$lns" = "ln -s"; then
+ osvers=4
+ elif $contains _SYSV3 /usr/include/stdio.h > /dev/null 2>&1 ; then
+ osvers=3
+ elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 ; then
+ osvers=2
+ fi
+ fi
+ ;;
+ esac
+
+ case "$1" in
+ aix) osname=aix
+?X: aix 4.1 uname -a output looks like
+?X: AIX foo 1 4 000123456789
+?X: where $4 is the major release number and $3 is the (minor) version.
+?X: More detail on the version is available with the oslevel command.
+?X: in 3.2.x, it output a string (see case statements below). In 4.1,
+?X: it puts out something like 4.1.1.0
+ tmp=`( (oslevel) 2>/dev/null || echo "not found") 2>&1`
+ case "$tmp" in
+ 'not found') osvers="$4"."$3" ;;
+ '<3240'|'<>3240') osvers=3.2.0 ;;
+ '=3240'|'>3240'|'<3250'|'<>3250') osvers=3.2.4 ;;
+ '=3250'|'>3250') osvers=3.2.5 ;;
+ *) osvers=$tmp;;
+ esac
+ ;;
+ *dc.osx) osname=dcosx
+ osvers="$3"
+ ;;
+ dnix) osname=dnix
+ osvers="$3"
+ ;;
+ domainos) osname=apollo
+ osvers="$3"
+ ;;
+ dgux) osname=dgux
+ osvers="$3"
+ ;;
+?X: uname -a returns
+?X: DYNIX/ptx xxx 4.0 V4.1.2 i386
+ dynixptx*) osname=dynixptx
+ osvers="$3"
+ ;;
+ freebsd) osname=freebsd
+ osvers="$3" ;;
+ genix) osname=genix ;;
+ hp*) osname=hpux
+ case "$3" in
+ *.08.*) osvers=9 ;;
+ *.09.*) osvers=9 ;;
+ *.10.*) osvers=10 ;;
+ *) osvers="$3" ;;
+ esac
+ ;;
+ irix*) osname=irix
+ case "$3" in
+ 4*) osvers=4 ;;
+ 5*) osvers=5 ;;
+ 6*) osvers=6 ;;
+ *) osvers="$3" ;;
+ esac
+ ;;
+ linux) osname=linux
+ case "$3" in
+ 1*) osvers=1 ;;
+ *) osvers="$3" ;;
+ esac
+ ;;
+ netbsd*) osname=netbsd
+ osvers="$3"
+ ;;
+ bsd386) osname=bsd386
+ osvers=`$uname -r`
+ ;;
+ next*) osname=next ;;
+ solaris) osname=solaris
+ case "$3" in
+ 5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;;
+ *) osvers="$3" ;;
+ esac
+ ;;
+ sunos) osname=sunos
+ case "$3" in
+ 5*) osname=solaris
+ osvers=`echo $3 | $sed 's/^5/2/g'` ;;
+ *) osvers="$3" ;;
+ esac
+ ;;
+ titanos) osname=titanos
+ case "$3" in
+ 1*) osvers=1 ;;
+ 2*) osvers=2 ;;
+ 3*) osvers=3 ;;
+ 4*) osvers=4 ;;
+ *) osvers="$3" ;;
+ esac
+ ;;
+ ultrix) osname=ultrix
+ osvers="$3"
+ ;;
+ osf1|mls+) case "$5" in
+ alpha)
+?X: DEC OSF/1 myuname -a output looks like: osf1 xxxx t3.2 123.4 alpha
+?X: where the version number can be either vn.n or tn.n.
+ osname=dec_osf
+ osvers=`echo "$3" | sed 's/^[vt]//'`
+ ;;
+ hp*) osname=hp_osf1 ;;
+ mips) osname=mips_osf1 ;;
+?X: hp and mips were unsupported Technology Releases -- ADO, 24/10/94
+ esac
+ ;;
+ uts) osname=uts
+ osvers="$3"
+ ;;
+ qnx) osname=qnx
+ osvers="$4"
+ ;;
+ mingw32*) osname=mingw32
+ osvers="$3"
+ ;;
+ $2) case "$osname" in
+ *isc*) ;;
+ *freebsd*) ;;
+ svr*)
+ : svr4.x or possibly later
+ case "svr$3" in
+ ${osname}*)
+ osname=svr$3
+ osvers=$4
+ ;;
+ esac
+ case "$osname" in
+ svr4.0)
+ : Check for ESIX
+ if test -f /stand/boot ; then
+ eval `grep '^INITPROG=[a-z/0-9]*$' /stand/boot`
+ if test -n "$INITPROG" -a -f "$INITPROG"; then
+ isesix=`strings -a $INITPROG|grep 'ESIX SYSTEM V/386 Release 4.0'`
+ if test -n "$isesix"; then
+ osname=esix4
+ fi
+ fi
+ fi
+ ;;
+ esac
+ ;;
+ *) if test -f /etc/systemid; then
+ osname=sco
+ set `echo $3 | $sed 's/\./ /g'` $4
+ if $test -f sco_$1_$2_$3.sh; then
+ osvers=$1.$2.$3
+ elif $test -f sco_$1_$2.sh; then
+ osvers=$1.$2
+ elif $test -f sco_$1.sh; then
+ osvers=$1
+ fi
+ else
+ case "$osname" in
+ '') : Still unknown. Probably a generic Sys V.
+ osname="sysv"
+ osvers="$3"
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ ;;
+ *) case "$osname" in
+ '') : Still unknown. Probably a generic BSD.
+ osname="$1"
+ osvers="$3"
+ ;;
+ esac
+ ;;
+ esac
+ else
+?X: Try to identify sony's NEWS-OS (BSD unix)
+ if test -f /vmunix -a -f $src/hints/news_os.sh; then
+ (what /vmunix | UU/tr '[A-Z]' '[a-z]') > UU/kernel.what 2>&1
+ if $contains news-os UU/kernel.what >/dev/null 2>&1; then
+ osname=news_os
+ fi
+ $rm -f UU/kernel.what
+?X: Maybe it's an OS/2
+?X: Might also be win32
+ elif test -d c:/.; then
+ : Check for cygwin32 emulation
+ case "x$OS" in
+ xWindows_*)
+ set X $myuname
+ osname=win32
+ osvers="$3"
+ ;;
+ x*)
+ set X $myuname
+ osname=os2
+ osvers="$5"
+ ;;
+ esac
+ fi
+ fi
+?X: Fix up cygwin32 to win32, just because...
+ case "x$osname" in
+ xcygwin32*)
+ osname=win32
+ ;;
+ esac
+
+ : Now look for a hint file osname_osvers, unless one has been
+ : specified already.
+ case "$hintfile" in
+ ''|' ')
+ file=`echo "${osname}_${osvers}" | $sed -e 's@\.@_@g' -e 's@_$@@'`
+ : Also try without trailing minor version numbers.
+ xfile=`echo $file | $sed -e 's@_[^_]*$@@'`
+ xxfile=`echo $xfile | $sed -e 's@_[^_]*$@@'`
+ xxxfile=`echo $xxfile | $sed -e 's@_[^_]*$@@'`
+ xxxxfile=`echo $xxxfile | $sed -e 's@_[^_]*$@@'`
+ case "$file" in
+ '') dflt=none ;;
+ *) case "$osvers" in
+ '') dflt=$file
+ ;;
+ *) if $test -f $src/hints/$file.sh ; then
+ dflt=$file
+ elif $test -f $src/hints/$xfile.sh ; then
+ dflt=$xfile
+ elif $test -f $src/hints/$xxfile.sh ; then
+ dflt=$xxfile
+ elif $test -f $src/hints/$xxxfile.sh ; then
+ dflt=$xxxfile
+ elif $test -f $src/hints/$xxxxfile.sh ; then
+ dflt=$xxxxfile
+ elif $test -f "$src/hints/${osname}.sh" ; then
+ dflt="${osname}"
+ else
+ dflt=none
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ *)
+ dflt=`echo $hintfile | $sed 's/\.sh$//'`
+ ;;
+ esac
+
+ $cat <<EOM
+
+You may give one or more space-separated answers, or "none" if appropriate.
+If your OS version has no hints, DO NOT give a wrong version -- say "none".
+
+EOM
+ rp="Which of these apply, if any?"
+ . UU/myread
+ tans=$ans
+ for file in $tans; do
+ if $test -f $src/hints/$file.sh; then
+ . $src/hints/$file.sh
+ $cat $src/hints/$file.sh >> UU/config.sh
+ elif $test X$tans = X -o X$tans = Xnone ; then
+ : nothing
+ else
+ : Give one chance to correct a possible typo.
+ echo "$file.sh does not exist"
+ dflt=$file
+ rp="hint to use instead?"
+ . UU/myread
+ for file in $ans; do
+ if $test -f "$src/hints/$file.sh"; then
+ . $src/hints/$file.sh
+ $cat $src/hints/$file.sh >> UU/config.sh
+ elif $test X$ans = X -o X$ans = Xnone ; then
+ : nothing
+ else
+ echo "$file.sh does not exist -- ignored."
+ fi
+ done
+ fi
+ done
+
+ hint=recommended
+ : Remember our hint file for later.
+ if $test -f "$src/hints/$file.sh" ; then
+ hintfile="$file"
+ else
+ hintfile=''
+ fi
+fi
+cd UU
+?X: From here on, we must use $rsrc instead of $src
+@else
+: Get old answers, if there is a config file out there
+hint=default
+hintfile=''
+if test -f ../config.sh; then
+ echo " "
+ rp="I see a config.sh file. Shall I use it to set the defaults?"
+ . ./myread
+ case "$ans" in
+ n*|N*) echo "OK, I'll ignore it.";;
+ *) echo "Fetching default answers from your old config.sh file..." >&4
+ tmp_n="$n"
+ tmp_c="$c"
+ . ../config.sh
+ cp ../config.sh .
+ n="$tmp_n"
+ c="$tmp_c"
+ hint=previous
+ ;;
+ esac
+fi
+@end
+?X: remember, indentation is wrong--RAM
+;;
+*)
+ echo " "
+ echo "Fetching default answers from $config_sh..." >&4
+ tmp_n="$n"
+ tmp_c="$c"
+ cd ..
+?X: preserve symbolic links, if any
+ cp $config_sh config.sh 2>/dev/null
+ chmod +w config.sh
+ . ./config.sh
+ cd UU
+ cp ../config.sh .
+ n="$tmp_n"
+ c="$tmp_c"
+ hint=previous
+ ;;
+esac
+test "$override" && . ./optdef.sh
+myuname="$newmyuname"
+
+: Restore computed paths
+for file in $loclist $trylist; do
+ eval $file="\$_$file"
+done
+
+@if osname || osvers
+cat << EOM
+
+Configure uses the operating system name and version to set some defaults.
+The default value is probably right if the name rings a bell. Otherwise,
+since spelling matters for me, either accept the default or answer "none"
+to leave it blank.
+
+EOM
+@end
+@if osname
+case "$osname" in
+ ''|' ')
+ case "$hintfile" in
+ ''|' '|none) dflt=none ;;
+ *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/_.*$//'` ;;
+ esac
+ ;;
+ *) dflt="$osname" ;;
+esac
+rp="Operating system name?"
+. ./myread
+case "$ans" in
+none) osname='' ;;
+*) osname=`echo "$ans" | $sed -e 's/[ ][ ]*/_/g' | ./tr '[A-Z]' '[a-z]'`;;
+esac
+@end
+@if osvers
+@if osname
+echo " "
+@end
+case "$osvers" in
+ ''|' ')
+ case "$hintfile" in
+ ''|' '|none) dflt=none ;;
+ *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/^[^_]*//'`
+ dflt=`echo $dflt | $sed -e 's/^_//' -e 's/_/./g'`
+ case "$dflt" in
+ ''|' ') dflt=none ;;
+ esac
+ ;;
+ esac
+ ;;
+ *) dflt="$osvers" ;;
+esac
+rp="Operating system version?"
+. ./myread
+case "$ans" in
+none) osvers='' ;;
+*) osvers="$ans" ;;
+esac
+
+@end
--- /dev/null
+?RCS: $Id: ccflags.U 1.6 Sat, 24 Jan 2004 13:13:31 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: ccflags.U,v $
+?RCS: Revision 3.0.1.9 1997/02/28 15:27:07 ram
+?RCS: patch61: removed support for NO_PROTOTYPE detection on SCO
+?RCS: patch61: new locincpth variable
+?RCS: patch61: added info on the "additional ld flags" question
+?RCS:
+?RCS: Revision 3.0.1.8 1995/07/25 13:48:54 ram
+?RCS: patch56: re-arranged compile line to include ldflags before objects
+?RCS:
+?RCS: Revision 3.0.1.7 1995/05/12 12:08:33 ram
+?RCS: patch54: now checks for cc/ccflags/ldflags coherency
+?RCS:
+?RCS: Revision 3.0.1.6 1994/10/29 16:07:02 ram
+?RCS: patch36: gcc versionning no longer relies on the C compiler's name
+?RCS: patch36: simplified check for gcc version checking (ADO)
+?RCS:
+?RCS: Revision 3.0.1.5 1994/08/29 16:06:35 ram
+?RCS: patch32: propagate -posix flag from ccflags to ldflags
+?RCS:
+?RCS: Revision 3.0.1.4 1994/05/06 14:28:45 ram
+?RCS: patch23: -fpcc-struct-return only needed in gcc 1.x (ADO)
+?RCS: patch23: cppflags now computed on an option-by-option basis
+?RCS: patch23: magically added cc flags now only done the first time
+?RCS:
+?RCS: Revision 3.0.1.3 1993/09/13 15:58:29 ram
+?RCS: patch10: explicitely mention -DDEBUG just in case they need it (WAD)
+?RCS: patch10: removed all the "tans" variable usage (WAD)
+?RCS:
+?RCS: Revision 3.0.1.2 1993/08/27 14:39:38 ram
+?RCS: patch7: added support for OSF/1 machines
+?RCS:
+?RCS: Revision 3.0.1.1 1993/08/25 14:00:24 ram
+?RCS: patch6: added defaults for cppflags, ccflags and ldflags
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:31 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:ccflags ldflags lkflags cppflags optimize warnings locincpth: test cat \
+ Myread Guess Options Oldconfig +gccversion mips_type +usrinc \
+ package contains rm +cc cppstdin cppminus cpprun cpplast libpth \
+ loclibpth hint
+?MAKE: -pick add $@ %<
+?S:ccflags:
+?S: This variable contains any additional C compiler flags desired by
+?S: the user. It is up to the Makefile to use this.
+?S:.
+?S:cppflags:
+?S: This variable holds the flags that will be passed to the C pre-
+?S: processor. It is up to the Makefile to use it.
+?S:.
+?S:optimize:
+?S: This variable contains any optimizer/debugger flag that should be used.
+?S: It is up to the Makefile to use it.
+?S:.
+?S:warnings:
+?S: This variable contains any compiler warning flags that should be used.
+?S:.
+?S:ldflags:
+?S: This variable contains any additional C loader flags desired by
+?S: the user. It is up to the Makefile to use this.
+?S:.
+?S:lkflags:
+?S: This variable contains any additional C partial linker flags desired by
+?S: the user. It is up to the Makefile to use this.
+?S:.
+?S:locincpth:
+?S: This variable contains a list of additional directories to be
+?S: searched by the compiler. The appropriate -I directives will
+?S: be added to ccflags. This is intended to simplify setting
+?S: local directories from the Configure command line.
+?S: It's not much, but it parallels the loclibpth stuff in libpth.U.
+?S:.
+?T:inctest thisincl xxx flag inclwanted ftry previous thislibdir
+?D:cppflags=''
+?D:ccflags=''
+?D:ldflags=''
+?D:optimize=''
+?D:warnings=''
+?INIT:: Possible local include directories to search.
+?INIT:: Set locincpth to "" in a hint file to defeat local include searches.
+?INIT:locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
+?INIT:locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
+?INIT:locincpth="$locincpth /usr/kerberos/include"
+?INIT::
+?INIT:: no include file wanted by default
+?INIT:inclwanted=''
+?INIT:
+: determine optimize, if desired, or use for debug flag also
+case "$optimize" in
+' ') dflt='none';;
+'') case $gccversion in
+ 2*) dflt='-g -O' ;;
+ *egcs*) dflt='-g -O' ;;
+ *) dflt='-g' ;;
+ esac ;;
+*) 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?"
+. ./myread
+optimize="$ans"
+case "$optimize" in
+'none') optimize=" ";;
+esac
+
+case "$warnings" in
+' ') dflt='none';;
+'') case $gccversion in
+ 2*|egcs*) dflt='-W -Wall -Wno-comment' ;;
+ *) dflt='none' ;;
+ esac ;;
+*) dflt="$warnings";;
+esac
+$cat <<EOH
+
+EOH
+rp="What compiler warning flags should be used?"
+. ./myread
+warnings="$ans"
+case "$warnings" in
+'none') warnings=" ";;
+esac
+
+dflt=''
+: We will not override a previous value, but we might want to
+: augment a hint file
+case "$hint" in
+none|recommended)
+ case "$gccversion" in
+ 1*) dflt='-fpcc-struct-return' ;;
+ esac
+?X: case "$optimize" in
+?X: *-g*) dflt="$dflt -DDEBUGGING";;
+?X: esac
+?X: check for POSIXized ISC
+ case "$gccversion" in
+ 2*) if test -d /etc/conf/kconfig.d &&
+ $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1
+ then
+ dflt="$dflt -posix"
+ fi
+ ;;
+ esac
+ ;;
+esac
+
+?X: In USG mode, a MIPS system may need some BSD includes
+case "$mips_type" in
+*BSD*|'') inclwanted="$locincpth $usrinc";;
+*) inclwanted="$locincpth $inclwanted $usrinc/bsd";;
+esac
+for thisincl in $inclwanted; do
+ if $test -d $thisincl; then
+ if $test x$thisincl != x$usrinc; then
+ case "$dflt" in
+ *$thisincl*);;
+ *) dflt="$dflt -I$thisincl";;
+ esac
+ fi
+ fi
+done
+
+?X: Include test function (header, symbol)
+inctest='if $contains $2 $usrinc/$1 >/dev/null 2>&1; then
+ xxx=true;
+elif $contains $2 $usrinc/sys/$1 >/dev/null 2>&1; then
+ xxx=true;
+else
+ xxx=false;
+fi;
+if $xxx; then
+ case "$dflt" in
+ *$2*);;
+ *) dflt="$dflt -D$2";;
+ esac;
+fi'
+
+?X:
+?X: OSF/1 uses __LANGUAGE_C__ instead of LANGUAGE_C
+?X:
+if ./osf1; then
+ set signal.h __LANGUAGE_C__; eval $inctest
+else
+ set signal.h LANGUAGE_C; eval $inctest
+fi
+
+case "$hint" in
+none|recommended) dflt="$ccflags $dflt" ;;
+*) dflt="$ccflags";;
+esac
+
+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. If you
+want $package to honor its debug switch, you should include -DDEBUG here.
+
+To use no flags, specify the word "none".
+
+EOH
+?X: strip leading space
+set X $dflt
+shift
+dflt=${1+"$@"}
+rp="Any additional cc flags?"
+. ./myread
+case "$ans" in
+none) ccflags='';;
+*) ccflags="$ans";;
+esac
+
+: the following weeds options from ccflags that are of no interest to cpp
+cppflags="$ccflags"
+case "$gccversion" in
+1*) cppflags="$cppflags -D__GNUC__"
+esac
+case "$mips_type" in
+'');;
+*BSD*) cppflags="$cppflags -DSYSTYPE_BSD43";;
+esac
+case "$cppflags" in
+'');;
+*)
+ echo " "
+ echo "Let me guess what the preprocessor flags are..." >&4
+ set X $cppflags
+ shift
+ cppflags=''
+ $cat >cpp.c <<'EOM'
+#define BLURFL foo
+
+BLURFL xx LFRULB
+EOM
+?X:
+?X: For each cc flag, try it out with both cppstdin and cpprun, since the
+?X: first is almost surely a cc wrapper. We have to try both in case
+?X: of cc flags like '-Olimit 2900' that are actually two words...
+?X:
+ previous=''
+ for flag in $*
+ do
+ case "$flag" in
+ -*) ftry="$flag";;
+ *) ftry="$previous $flag";;
+ esac
+ if $cppstdin -DLFRULB=bar $ftry $cppminus <cpp.c \
+ >cpp1.out 2>/dev/null && \
+ $cpprun -DLFRULB=bar $ftry $cpplast <cpp.c \
+ >cpp2.out 2>/dev/null && \
+ $contains 'foo.*xx.*bar' cpp1.out >/dev/null 2>&1 && \
+ $contains 'foo.*xx.*bar' cpp2.out >/dev/null 2>&1
+ then
+ cppflags="$cppflags $ftry"
+ previous=''
+ else
+ previous="$flag"
+ fi
+ done
+ set X $cppflags
+ shift
+ cppflags=${1+"$@"}
+ case "$cppflags" in
+ *-*) echo "They appear to be: $cppflags";;
+ esac
+ $rm -f cpp.c cpp?.out
+ ;;
+esac
+
+: flags used in final linking phase
+case "$ldflags" in
+'') if ./venix; then
+ dflt='-i -z'
+ else
+ dflt=''
+ fi
+ case "$ccflags" in
+ *-posix*) dflt="$dflt -posix" ;;
+ esac
+ ;;
+*) dflt="$ldflags";;
+esac
+
+: Try to guess additional flags to pick up local libraries.
+for thislibdir in $libpth; do
+ case " $loclibpth " in
+ *" $thislibdir "*)
+ case "$dflt " in
+ *"-L$thislibdir "*) ;;
+ *) dflt="$dflt -L$thislibdir" ;;
+ esac
+ ;;
+ esac
+done
+
+case "$dflt" in
+'') dflt='none' ;;
+esac
+
+$cat <<EOH
+
+Your C linker may need flags. For this question you should
+include -L/whatever and any other flags used by the C linker, but you
+should NOT include libraries like -lwhatever.
+
+Make sure you include the appropriate -L/path flags if your C linker
+does not normally search all of the directories you specified above,
+namely
+ $libpth
+To use no flags, specify the word "none".
+
+EOH
+
+rp="Any additional ld flags (NOT including libraries)?"
+. ./myread
+case "$ans" in
+none) ldflags='';;
+*) ldflags="$ans";;
+esac
+rmlist="$rmlist pdp11"
+
+@if lkflags
+: partial linking may need other flags
+case "$lkflags" in
+'') case "$ldflags" in
+ '') dflt='none';;
+ *) dflt="$ldflags";;
+ esac;;
+*) dflt="$lkflags";;
+esac
+echo " "
+rp="Partial linking flags to be used (NOT including -r)?"
+. ./myread
+case "$ans" in
+none) lkflags='';;
+*) lkflags="$ans";;
+esac
+
+@end
+?X:
+?X: If the user changes compilers after selecting a hint file, it's
+?X: possible that the suggested ccflags/ldflags will be wrong. Try to
+?X: compile and run a simple test program. Let the user see all the
+?X: error messages. -- ADO and RAM
+?X:
+: coherency check
+echo " "
+echo "Checking your choice of C compiler and flags for coherency..." >&4
+?X: Strip extra blanks in case some of the following variables are empty
+set X $cc $optimize $ccflags $ldflags try.c -o try
+shift
+$cat >try.msg <<EOM
+I've tried to compile and run a simple program with:
+
+ $*
+ ./try
+
+and I got the following output:
+
+EOM
+$cat > try.c <<'EOF'
+#include <stdio.h>
+main() { exit(0); }
+EOF
+dflt=y
+?X: Use "sh -c" to avoid error messages tagged with leading "Configure:".
+?X: We need to try the resulting executable, because cc might yield a 0 status
+?X: even when ld failed, in which case the executable will not run properly,
+?X: if its x bit is set at all...
+if sh -c "$cc $optimize $ccflags try.c -o try $ldflags" >>try.msg 2>&1; then
+ if sh -c './try' >>try.msg 2>&1; then
+ dflt=n
+ else
+ echo "The program compiled OK, but exited with status $?." >>try.msg
+ rp="You have a problem. Shall I abort Configure"
+ dflt=y
+ fi
+else
+ echo "I can't compile the test program." >>try.msg
+ rp="You have a BIG problem. Shall I abort Configure"
+ dflt=y
+fi
+case "$dflt" in
+y)
+ $cat try.msg
+?X: using -K will prevent default aborting--maybe they're cross compiling?
+ case "$knowitall" in
+ '')
+ echo "(The supplied flags might be incorrect with this C compiler.)"
+ ;;
+ *) dflt=n;;
+ esac
+ echo " "
+ . ./myread
+ case "$ans" in
+ n*|N*) ;;
+ *) echo "Ok. Stopping Configure." >&4
+ exit 1
+ ;;
+ esac
+ ;;
+n) echo "OK, that should do.";;
+esac
+$rm -f try try.* core
+
--- /dev/null
+?RCS: $Id: cdecl.U 1.3 Wed, 17 Mar 2004 16:02:04 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:cdecl: Myread cat cc ccflags rm
+?MAKE: -pick add $@ %<
+?S:cdecl:
+?S: Defined to be __cdecl if the compiler can handle a __cdecl keyword
+?S: to specify C-style argument passing conventions. Otherwise defined
+?S: as nothing. Basically MS VC++.
+?S:.
+?C:WIN32_CDECL:
+?C: Defined as __cdecl if the compiler can handle that keyword to specify
+?C: C-style argument passing conventions. This allows MS VC++
+?C: on Win32 to use the __fastcall convention for everything else
+?C: and get a performance boost. Any compiler with a brain (read:
+?C: not MS VC) handles this optimization automatically without such a
+?C: kludge. On these systems, this is defined as nothing.
+?C:.
+?H:#define WIN32_CDECL $cdecl
+?H:.
+: check for a __cdecl use
+echo " "
+$cat >test_cdecl.c <<'EOCP'
+#include <stdio.h>
+#include <stdlib.h>
+#define WIN32_CDECL __cdecl
+
+int WIN32_CDCEL main(int argc, char **argv) {
+ exit(0);
+}
+EOCP
+
+if ($cc $ccflags -o test_cdecl test_cdecl.c && ./test_cdecl) >/dev/null 2>&1 ; then
+ cdecl='__cdecl'
+ echo 'Your compiler likes __cdecl as a keyword.' >&4
+else
+ cdecl=''
+ echo "Your compiler doesn't grok __cdecl - it probably has a brain." >&4
+fi
+$rm -f test_cdecl* core
+
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Graham Stoney <greyham@research.canon.oz.au>
+?RCS:
+?RCS: $Log: cf_name.U,v $
+?RCS: Revision 3.0.1.2 1994/05/06 14:29:36 ram
+?RCS: patch23: fixed user name computation from /etc/passwd in bsd systems
+?RCS:
+?RCS: Revision 3.0.1.1 1994/01/24 14:05:11 ram
+?RCS: patch16: created
+?RCS:
+?RCS:
+?MAKE:cf_name: cf_by passcat Filexp nametype cat test
+?MAKE: -pick add $@ %<
+?S:cf_name:
+?S: Full name of the person who ran the Configure script and answered the
+?S: questions. This can be used by units that require the user's full name.
+?S: This variable is for internal use only.
+?S:.
+?T:xxx fn NAME
+: figure out their full name
+case "$NAME" in
+'') case "$nametype" in
+ other)
+ fn=`./filexp ~/.fullname`
+ xxx=usg
+ $test -f $fn && xxx=other
+ ;;
+ *)
+ xxx="$nametype"
+ ;;
+ esac
+
+ case "$xxx" in
+ bsd)
+ cf_name=`$passcat | grep "^$cf_by:" | \
+ sed -e 's/^[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\):.*/\1/' \
+ -e 's/,.*//'`
+ ;;
+ usg)
+ cf_name=`$passcat | grep "^$cf_by:" | \
+ sed -e 's/^[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\):.*/\1/' \
+ -e 's/[^-]*-\(.*\)(.*)/\1/'`
+ ;;
+ *)
+ cf_name=`$cat $fn`
+ ;;
+ esac
+ ;;
+*)
+ cf_name="$NAME"
+ ;;
+esac
+?X:
+?X: In the original unit, Graham asked for the user name, in case the above
+?X: code was unable to figure it out correctly. Since now cf_name has been
+?X: made an internal variable only (i.e. it is not saved in config.sh), letting
+?X: the user override the computed default each time would be a pain.
+?X: Therefore, I have decided to trust the above code to get it right, and for
+?X: those rare cases where it will fail, too bad :-) --RAM.
+?X:
+echo " "
+echo "Pleased to meet you, $cf_name."
+
--- /dev/null
+?RCS: $Id: d_argsinfp.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_argsinfp: Myread cat cc ccflags rm ldflags
+?MAKE: -pick add $@ %<
+?S:d_argsinfp:
+?S: Defined if new-style function definitions are allowable.
+?S:.
+?C:CAN_TAKE_ARGS_IN_FP:
+?C: Defined if the compiler prefers that function pointer parameters
+?C: in prototypes include the function's arguments, rather than
+?C: nothing (that is, int (*fun)(int) rather than int(*fun)().
+?C:.
+?H:#$d_argsinfp CAN_TAKE_ARGS_IN_FP /**/
+?H:.
+: check for ok to use function ptr arguments in prototypes
+echo " "
+$cat >test_argsinfp.c <<'EOCP'
+#include <stdio.h>
+int myfun(int);
+int fun(int (*func)(int));
+int fun2(int, int (*prevfun)(int(*func)(int)));
+int fun (int (*func)(int)) { int a = 1; return func(a); }
+int myfun(int x) { return x - 1; }
+
+int main(int argc, char **argv) {
+ exit(fun(myfun));
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_argsinfp test_argsinfp.c >/dev/null 2>&1 ; then
+ d_argsinfp='define'
+ echo 'Your compiler prefers arguments in function pointers in prototypes.' >&4
+else
+ d_argsinfp='undef'
+ echo "Your compiler prefers no arguments in function pointers in prototypes." >&4
+fi
+$rm -f test_argsinfp* core
+
--- /dev/null
+?RCS: $Id: d_assert.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:39 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_assert: Myread cat cc ccflags rm Setvar libs ldflags
+?MAKE: -pick add $@ %<
+?S:d_assert:
+?S: This variable is set if the system has the assert() macro
+?S:.
+?C:HAS_ASSERT:
+?C: If defined, this system has the assert() macro.
+?C:.
+?H:#$d_assert HAS_ASSERT /**/
+?H:.
+?T:val
+?LINT:set d_assert
+: see if we have the assert macro
+echo " "
+echo "Let's see if I can assert() myself." >&4
+ $cat >d_assert.c <<EOCP
+#include <assert.h>
+#include <stdlib.h>
+
+int main()
+{
+ assert(1);
+}
+EOCP
+
+if $cc $ccflags $ldflags d_assert.c -o d_assert $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_assert; eval $setvar
+ echo "Looks like I can." >&4
+else
+ val="$undef"
+ set d_assert; eval $setvar
+ echo "Nope, I need assertiveness training." >&4
+fi
+$rm -f d_assert*
+
--- /dev/null
+?RCS: $Id: d_attribut.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Andy Dougherty <doughera@lafcol.lafayette.edu>
+?RCS:
+?RCS: $Log: d_attribut.U,v $
+?RCS: Revision 3.0.1.3 1995/01/30 14:33:45 ram
+?RCS: patch49: test C program now includes <stdio.h> (WED)
+?RCS:
+?RCS: Revision 3.0.1.2 1995/01/11 15:25:47 ram
+?RCS: patch45: fixed typo in the d_attribut variable (ADO)
+?RCS:
+?RCS: Revision 3.0.1.1 1994/10/29 16:08:55 ram
+?RCS: patch36: created by ADO
+?RCS:
+?MAKE:d_attribut: Myread Oldconfig cat cc ccflags rm Setvar contains optimize
+?MAKE: -pick add $@ %<
+?S:d_attribut (d_attrib):
+?S: This variable conditionally defines HASATTRIBUTE, which
+?S: indicates the C compiler can check for function attributes,
+?S: such as printf formats.
+?S:.
+?C:HASATTRIBUTE ~ %< (GNUC_ATTRIBUTE_CHECK):
+?C: This symbol indicates the C compiler can check for function attributes,
+?C: such as printf formats. This is normally only supported by GNU cc.
+?C:.
+?H:?%<:#$d_attribut HASATTRIBUTE /**/
+?H:?%<:#ifndef HASATTRIBUTE
+?H:?%<:#define __attribute__(_arg_)
+?H:?%<:#endif
+?H:.
+?W:%<:__attribute__
+?LINT:set d_attribut
+?LINT:known __attribute__
+: Look for GNU-cc style attribute checking
+echo " "
+echo "Checking whether your compiler can handle __attribute__ ..." >&4
+$cat >attrib.c <<'EOCP'
+#include <stdio.h>
+void croak (char* pat,...) __attribute__((format(printf,1,2),noreturn));
+EOCP
+if $cc $optimize $ccflags -c attrib.c >attrib.out 2>&1 ; then
+ if $contains 'warning' attrib.out >/dev/null 2>&1; then
+ echo "Your C compiler doesn't fully support __attribute__."
+ val="$undef"
+ else
+ echo "Your C compiler supports __attribute__."
+ val="$define"
+ fi
+else
+ echo "Your C compiler doesn't seem to understand __attribute__ at all."
+ val="$undef"
+fi
+set d_attribut
+eval $setvar
+$rm -f attrib*
+
--- /dev/null
+?RCS: $Id: d_bindtextdomain.U 1.2 Wed, 13 Sep 2000 14:49:45 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_bindtextdomain: Myread cat cc ccflags rm ldflags libs i_libintl
+?MAKE: -pick add $@ %<
+?S:d_bindtextdomain:
+?S: Defined if bindtextdomain() is available.
+?S:.
+?C:HAS_BINDTEXTDOMAIN:
+?C: Defined if bindtextdomain is available().
+?C:.
+?H:#$d_bindtextdomain HAS_BINDTEXTDOMAIN /**/
+?H:.
+: check for a new-style definitions
+echo " "
+$cat >test_bindtextdomain.c <<EOCP
+#$i_libintl I_LIBINTL
+#ifdef I_LIBINTL
+#include <libintl.h>
+#endif
+int main(int argc, char **argv) {
+ return (int) bindtextdomain ("", "");
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_bindtextdomain test_bindtextdomain.c $libs >/dev/null 2>&1 ; then
+ d_bindtextdomain='define'
+ echo 'Otima! You seem to have bindtextdomain for translations.' >&4
+else
+ d_bindtextdomain='undef'
+ echo "You don't seem to have bindtextdomain. Sinto muito." >&4
+fi
+$rm -f test_bindtextdomain* core
+
--- /dev/null
+?RCS: $Id: d_crypt.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_crypt.U,v $
+?RCS: Revision 3.0 1993/08/18 12:05:52 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_crypt cryptlib i_crypt: Loc test xlibpth libpth Csym Setvar Inhdr
+?MAKE: -pick add $@ %<
+?S:d_crypt:
+?S: This variable conditionally defines the CRYPT symbol, which
+?S: indicates to the C program that the crypt() routine is available
+?S: to encrypt passwords and the like.
+?S:.
+?S:cryptlib:
+?S: This variable holds -lcrypt or the path to a libcrypt.a archive if
+?S: the crypt() function is not defined in the standard C library. It is
+?S: up to the Makefile to use this.
+?S:.
+?S:i_crypt:
+?S: This variable conditionally defines the I_CRYPT symbol, which
+?S: indicates whether a C program should include <crypt.h>
+?S:.
+?C:HAS_CRYPT (CRYPT):
+?C: This symbol, if defined, indicates that the crypt routine is available
+?C: to encrypt passwords and the like.
+?C:.
+?C:I_CRYPT:
+?C: This symbol, if defined, indicates that <crypt.h> can be included.
+?C:.
+?H:#$d_crypt HAS_CRYPT /**/
+?H:.
+?H:#$i_crypt I_CRYPT /**/
+?H:.
+?M:crypt: HAS_CRYPT
+?M:/* If your system doesn't have the crypt(3) DES encryption code,
+?M: * (which isn't exportable from the U.S.), then don't encrypt
+?M: */
+?M:#ifndef HAS_CRYPT
+?M:#define crypt(s,t) (s)
+?M:#endif
+?M:.
+?LINT:set d_crypt i_crypt
+?T:val
+: see if crypt exists
+echo " "
+if set crypt val -f d_crypt; eval $csym; $val; then
+ echo 'crypt() found.' >&4
+ 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!' >&4
+ val="$undef"
+ else
+ val="$define"
+ fi
+fi
+set d_crypt
+eval $setvar
+: see if crypt.h can be included
+set crypt.h i_crypt
+eval $inhdr
+
--- /dev/null
+?RCS: $Id: d_force_ipv4.U 1.1 Sat, 17 Mar 2001 14:16:55 -0600 dunemush $
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:39 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_force_ipv4: Myread cat cc ccflags rm Setvar libs ldflags
+?MAKE: -pick add $@ %<
+?S:d_force_ipv4:
+?S: This variable allows us to force the use of ipv4 rather than ipv6.
+?S:.
+?C:FORCE_IPV4:
+?C: If defined, this system will not use IPv6. Necessary for Openbsd.
+?C:.
+?H:#$d_force_ipv4 FORCE_IPV4 /**/
+?H:.
+?T:val
+?LINT:set d_force_ipv4
+: Do nothing by default
+val="$undef"
+set d_force_ipv4; eval $setvar
+
--- /dev/null
+?RCS: $Id: d_fpsetround.U 1.2 Wed, 17 Mar 2004 16:02:04 -0600 dunemush $
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_fpsetround.U,v $
+?RCS:
+?MAKE:d_fpsetround d_fpsetmask i_floatingpoint: Loc test Csym Setvar Inhdr cc ccflags libs rm cat test ldflags
+?MAKE: -pick add $@ %<
+?S:d_fpsetround:
+?S: This variable conditionally defines the HAS_FPSETROUND symbol,
+?S: indicating we have fpsetround(), a FreeBSD thing, mostly.
+?S:.
+?S:d_fpsetmask:
+?S: This variable conditionally defines the HAS_FPSETMASK symbol,
+?S: indicating we have fpsetmask(), a FreeBSD thing, mostly.
+?S:.
+?S:i_floatingpoint:
+?S: This variable conditionally defines the I_FLOATINGPOINT symbol, which
+?S: indicates whether a C program should include <floatingpoint.h>,
+?S: a FreeBSD thing, mostly.
+?S:.
+?C:HAS_FPSETROUND:
+?C: This symbol, if defined, indicates that the crypt routine is available
+?C: to encrypt passwords and the like.
+?C:.
+?C:I_FLOATINGPOINT:
+?C: This symbol, if defined, indicates that <crypt.h> can be included.
+?C:.
+?H:#$d_fpsetround HAS_FPSETROUND /**/
+?H:.
+?H:#$d_fpsetmask HAS_FPSETMASK /**/
+?H:.
+?H:#$i_floatingpoint I_FLOATINGPOINT /**/
+?H:.
+?LINT:set d_fpsetround d_fpsetmask i_floatingpoint
+?T:val
+echo " "
+: see if floatingpoint.h can be included
+set floatingpoint.h i_floatingpoint
+eval $inhdr
+
+: see if fpsetround exists
+$cat >test_fpsetround.c <<'EOCP'
+#$i_floatingpoint I_FLOATINGPOINT
+#ifdef I_FLOATINGPOINT
+#include <floatingpoint.h>
+#endif
+
+int main() {
+ fpsetround(FP_RN);
+}
+EOCP
+
+if ($cc $ccflags $ldflags -o test_fpsetround test_fpsetround.c $libs \
+ && ./test_fpsetround) >/dev/null 2>&1 ; then
+ echo 'fpsetround() is around (and found).' >&4
+ val="$define"
+else
+ echo 'no fpsetround(). No problem.' >&4
+ val="$undef"
+fi
+set d_fpsetround
+eval $setvar
+
+: see if fpsetmask exists
+$cat >test_fpsetmask.c <<'EOCP'
+#$i_floatingpoint I_FLOATINGPOINT
+#ifdef I_FLOATINGPOINT
+#include <floatingpoint.h>
+#endif
+
+int main() {
+ fpsetmask(0L);
+}
+EOCP
+
+if ($cc $ccflags $ldflags -o test_fpsetmask test_fpsetmask.c $libs && \
+ ./test_fpsetmask) >/dev/null 2>&1 ; then
+ echo 'fpsetmask() is up to the task.' >&4
+ val="$define"
+else
+ echo 'no fpsetmask(). No problem.' >&4
+ val="$undef"
+fi
+set d_fpsetmask
+eval $setvar
+
+$rm -f test_fpset* core
+
--- /dev/null
+?RCS:
+?RCS: Copyright (c) 200, Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_gaistr: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_gaistr (d_gaistr):
+?S: This variable conditionally defines the HAS_GAI_STRERROR symbol, which
+?S: indicates to the C program that getaddrinfo()'s error codes can be
+?S: converted to strings for printing.
+?S:.
+?C:HAS_GAI_STRERROR (GAI_STRERROR):
+?C: This symbol, if defined, indicates that getaddrinfo()'s error cores
+?C: can be converted to strings for printing.
+?C:.
+?H:#$d_gaistr HAS_GAI_STRERROR /**/
+?H:.
+?LINT:set d_gaistr
+: see if gai_strerror exists
+set gai_strerror d_gaistr
+eval $inlibc
+
--- /dev/null
+?RCS:
+?RCS: Copyright (c) 2000, Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_getadinf: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_getadinf (d_getadinf):
+?S: This variable conditionally defines the HAS_GETADDRINFO symbol, which
+?S: indicates to the C program that the getaddrinfo() routine is available
+?S: to lookup internet addresses in one data base or another..
+?S:.
+?C:HAS_GETADDRINFO (GETADDRINFO):
+?C: This symbol, if defined, indicates that the getaddrinfo() routine is
+?C: available to lookup internet addresses in some data base or other.
+?C:.
+?H:#$d_getadinf HAS_GETADDRINFO /**/
+?H:.
+?LINT:set d_getadinf
+: see if getaddrinfo exists
+set getaddrinfo d_getadinf
+eval $inlibc
+
--- /dev/null
+?RCS: $Id: d_getdate.U 1.4 Mon, 04 Dec 2000 10:36:58 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 2000, Shawn Wagner
+?RCS:
+?RCS:
+?MAKE:d_getdate: Inlibc cc ccflags ldflags libs rm cat i_string
+?MAKE: -pick add $@ %<
+?S:d_getdate:
+?S: This variable conditionally defines the HAS_GETDATE symbol, which
+?S: indicates that the getdate() routine exists. The getdate() routine
+?S: turns date strings into struct tm's.
+?S:.
+?C:HAS_GETDATE:
+?C: This symbol, if defined, indicates that the getdate() routine is
+?C: available to convert date strings into struct tm's.
+?C:.
+?H:#$d_getdate HAS_GETDATE /**/
+?H:.
+?LINT:set d_getdate
+: see if getdate exists
+set getdate d_getdate
+eval $inlibc
+
+if test $d_getdate = 'define'; then
+$cat >test_getdate.c <<EOCP
+#ifdef I_STRING
+#include <string.h>
+#else
+#include <strings.h>
+#endif
+#include <ctype.h>
+#ifdef __GNUC__
+/* Required to get the getdate() prototype on glibc. */
+#define __USE_XOPEN_EXTENDED
+#endif
+#include <time.h>
+int main(int argc, char **argv) {
+ int i;
+ i = getdate_err;
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_getdate test_getdate.c $libs >/dev/null 2>&1 ; then
+ d_getdate='define'
+else
+ d_getdate='undef'
+ echo "You may have getdate, but it's broken." >&4
+fi
+$rm -f test_getdate* core
+
+fi
+
--- /dev/null
+?RCS:
+?RCS: Copyright (c) 2000, Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_gethbynm2: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_gethbynm2 (d_gethbynm2):
+?S: This variable conditionally defines the HAS_GETHOSTBYNAME2 symbol, which
+?S: indicates to the C program that the gethostbyname2() function is
+?S: available to resolve hostnames.
+?S:.
+?C:HAS_GETHOSTBYNAME2:
+?C: This symbol, if defined, indicates that the gethostbyname2()
+?C: function is available to resolve hostnames.
+?C:.
+?H:#$d_gethbynm2 HAS_GETHOSTBYNAME2 /**/
+?H:.
+?LINT:set d_gethbynm2
+: see if gethostbyname2 exists
+set gethostbyname2 d_gethbynm2
+eval $inlibc
+
--- /dev/null
+?RCS:
+?RCS: Copyright (c) 2000, Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_getnminf: cat cc ccflags rm ldflags libs Inlibc
+?MAKE: -pick add $@ %<
+?S:d_getnminf (d_getnminf):
+?S: This variable conditionally defines the HAS_GETNAMEINFO symbol, which
+?S: indicates to the C program that the getnameinfo() routine is available
+?S: to lookup host names in one data base or another..
+?S:.
+?C:HAS_GETNAMEINFO (GETNAMEINFO):
+?C: This symbol, if defined, indicates that the getnameinfo() routine is
+?C: available to lookup host names in some data base or other.
+?C:.
+?H:#$d_getnminf HAS_GETNAMEINFO /**/
+?H:.
+?LINT:set d_getnminf
+: see if getnameinfo exists - along with constants we use
+set getnameinfo d_getnminf
+eval $inlibc
+
+if test $d_getnminf = 'define'; then
+
+echo " "
+$cat >test_getnminf.c <<EOCP
+#include <netdb.h>
+int main(int argc, char **argv) {
+ int i;
+ i = NI_MAXHOST + NI_MAXSERV + NI_NOFQDN + NI_NUMERICHOST + NI_NAMEREQD;
+ i += NI_NUMERICSERV + NI_DGRAM;
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_getnminf test_getnminf.c $libs >/dev/null 2>&1 ; then
+ d_getnminf='define'
+ echo "You've got getnameinfo and the netdb constants." >&4
+else
+ d_getnminf='undef'
+ echo "You've got getnameinfo but not the NI_* constants! Broken!" >&4
+fi
+$rm -f test_getnminf* core
+
+fi
--- /dev/null
+?RCS: $Id: d_getpagsz.U 1.2 Mon, 26 Mar 2001 15:18:14 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_getpagsz.U,v $
+?RCS: Revision 3.0.1.1 1994/10/29 16:13:10 ram
+?RCS: patch36: added ?F: line for metalint file checking
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:06:14 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_getpagsz pagesize: Oldconfig Myread Inlibc cat contains cc ccflags \
+ ldflags libs rm Findhdr osname d_sysctlbyname test
+?MAKE: -pick add $@ %<
+?S:d_getpagsz:
+?S: This variable conditionally defines HAS_GETPAGESIZE if getpagesize()
+?S: is available to get the system page size.
+?S:.
+?S:pagesize (pagsize):
+?S: This variable holds the size in bytes of a system page.
+?S:.
+?C:HAS_GETPAGESIZE (GETPAGESIZE):
+?C: This symbol, if defined, indicates that the getpagesize system call
+?C: is available to get system page size, which is the granularity of
+?C: many memory management calls.
+?C:.
+?X: Don't name it PAGESIZE, this is sometimes used by <sys/param.h>
+?C:PAGESIZE_VALUE (PAGSIZE):
+?C: This symbol holds the size in bytes of a system page (obtained via
+?C: the getpagesize() system call at configuration time or asked to the
+?C: user if the system call is not available).
+?C:.
+?H:#$d_getpagsz HAS_GETPAGESIZE /**/
+?H:#define PAGESIZE_VALUE $pagesize /* System page size, in bytes */
+?H:.
+?F:!page
+?T:guess
+?LINT:set d_getpagsz
+: see if getpagesize exists
+set getpagesize d_getpagsz
+eval $inlibc
+
+@if pagesize || PAGESIZE_VALUE
+: determine the system page size
+echo " "
+guess=' (OK to guess)'
+case "$pagesize" in
+'')
+ $cat >page.c <<EOP
+#include <stdio.h>
+extern int getpagesize();
+int main()
+{
+ printf("%d\n", getpagesize());
+}
+EOP
+ echo "Computing the granularity of memory management calls..." >&4
+ dflt='4096'
+ case "$d_getpagsz" in
+ "$define")
+ if $cc $ccflags $ldflags page.c -o page $libs >/dev/null 2>&1; then
+ dflt=`./page`
+ guess=''
+ else
+ echo "(I can't seem to compile the test program--guessing)"
+ fi
+ ;;
+ *)
+ if $cc $ccflags $ldflags page.c -o page $libs -lPW >/dev/null 2>&1; then
+ dflt=`./page`
+ guess=''
+ echo "(For your eyes only: I used the getpagesize() from -lPW.)"
+ else
+ if $contains PAGESIZE `./findhdr sys/param.h` >/dev/null 2>&1; then
+ $cat >page.c <<EOP
+#include <sys/param.h>
+#include <stdio.h>
+int main()
+{
+ printf("%d\n", PAGESIZE);
+}
+EOP
+ if $cc $ccflags $ldflags page.c -o page $libs >/dev/null 2>&1; then
+ dflt=`./page`
+ guess=''
+ echo "(Using value of PAGESIZE found in <sys/param.h>.)"
+ else
+ if $test "x$d_sysctlbyname" = "x$define"; then
+ $cat >page.c <<EOP
+#include <sys/types.h>
+#include <sys/sysctl.h>
+#include <stdio.h>
+int main()
+{
+ int res, pgsize
+ size_t len;
+ len = sizeof(pgsize);
+ res = sysctlbyname("hw.pagesize",&pgsize,&len,NULL,0);
+ if (res < 0)
+ res = sysctlbyname("hw_pagesize",&pgsize,&len,NULL,0);
+ printf("%d\n", res ? -1 : pgsize);
+}
+EOP
+ if $cc $ccflags $ldflags page.c -o page $libs >/dev/null 2>&1; then
+ dflt=`./page`
+ if $test $dflt -gt 0; then
+ guess=''
+ echo "(Using value from sysctlbyname)"
+ else
+ dflt='4096'
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+ ;;
+ esac
+ ;;
+*) dflt="$pagesize"; guess='';;
+esac
+rp="What is the system page size, in bytes$guess?"
+. ./myread
+pagesize=$ans
+$rm -f page.c page
+
+@end
--- /dev/null
+?RCS: $Id: d_gettext.U 1.2 Wed, 13 Sep 2000 14:49:45 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_gettext: Myread cat cc ccflags rm ldflags libs i_libintl
+?MAKE: -pick add $@ %<
+?S:d_gettext:
+?S: Defined if gettext() is available.
+?S:.
+?C:HAS_GETTEXT:
+?C: Defined if gettext is available().
+?C:.
+?H:#$d_gettext HAS_GETTEXT /**/
+?H:.
+: check for a new-style definitions
+echo " "
+$cat >test_gettext.c <<EOCP
+#$i_libintl I_LIBINTL
+#ifdef I_LIBINTL
+#include <libintl.h>
+#endif
+int main(int argc, char **argv) {
+ return (int) gettext ("");
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_gettext test_gettext.c $libs >/dev/null 2>&1 ; then
+ d_gettext='define'
+ echo 'Voila! You seem to have gettext for translations.' >&4
+else
+ d_gettext='undef'
+ echo "You don't seem to have gettext. Quel dommage." >&4
+fi
+$rm -f test_gettext* core
+
--- /dev/null
+?RCS: $Id: d_gnulibc.U,v 3.0.1.1 1997/02/28 15:34:33 ram Exp $
+?RCS:
+?RCS: Copyright (c) 1996, Andy Dougherty
+?RCS: Copyright (c) 1996, Sven Verdoolaege
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_gnulibc.U,v $
+?RCS: Revision 3.0.1.1 1997/02/28 15:34:33 ram
+?RCS: patch61: created
+?RCS:
+?MAKE:d_gnulibc: Myread Oldconfig Setvar contains rm \
+ +cc +ccflags +ldflags +libs
+?MAKE: -pick add $@ %<
+?S:d_gnulibc:
+?S: Defined if we're dealing with the GNU C Library.
+?S:.
+?C:HAS_GNULIBC:
+?C: This symbol, if defined, indicates to the C program that
+?C: the GNU C library is being used.
+?C:.
+?H:#$d_gnulibc HAS_GNULIBC /**/
+?H.
+?LINT: set d_gnulibc
+?X: gnulibc can be executed by calling this entry point.
+?X: Ulrich Drepper doesn't think any other libc does that,
+?X: but we check if it says 'GNU C Library' to be sure.
+echo " "
+echo "Checking for GNU C Library..." >&4
+cat >gnulibc.c <<EOM
+int
+main()
+{
+ return __libc_main();
+}
+EOM
+if $cc $ccflags $ldflags -o gnulibc gnulibc.c $libs >/dev/null 2>&1 && \
+ ./gnulibc | $contains '^GNU C Library' >/dev/null 2>&1; then
+ val="$define"
+ echo "You are using the GNU C Library" >&4
+else
+cat >gnulibc.c <<EOM
+#include <features.h>
+int main()
+{
+#ifdef __GLIBC__
+ return 0;
+#else
+ return 1;
+#endif
+}
+EOM
+if $cc $ccflags $ldflags -o gnulibc gnulibc.c $libs >/dev/null 2>&1 && \
+ ./gnulibc; then
+ val="$define"
+ echo "You are using the GNU C Library" >&4
+else
+ val="$undef"
+ echo "You are not using the GNU C Library" >&4
+fi
+fi
+$rm -f gnulibc*
+set d_gnulibc
+eval $setvar
+
--- /dev/null
+?RCS: $Id: d_huge.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:39 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_huge_val d_huge d_maxint d_int_max d_maxdouble: Myread cat cc ccflags rm Setvar libs i_values i_limits ldflags
+?MAKE: -pick add $@ %<
+?S:d_huge_val:
+?S: This variable is set if the system defines the HUGE_VAL constant.
+?S:.
+?S:d_huge:
+?S: This variable is set if the system defines the HUGE constant.
+?S:.
+?S:d_maxint:
+?S: This variable is set if the system defines the MAXINT constant.
+?S:.
+?S:d_int_max:
+?S: This variable is set if the system defines the INT_MAX constant.
+?S:.
+?S:d_maxdouble:
+?S: This variable is set if the system defines the MAXDOUBLE constant.
+?S:.
+?C:HAS_HUGE_VAL:
+?C: If defined, this system has the HUGE_VAL constant. We like this,
+?C: and don't bother defining the other floats below if we find it.
+?C:.
+?C:HAS_HUGE:
+?C: If defined, this system has the HUGE constant. We like this, and
+?C: don't bother defining the other floats below if we find it.
+?C:.
+?C:HAS_INT_MAX:
+?C: If defined, this system has the INT_MAX constant.
+?C:.
+?C:HAS_MAXINT:
+?C: If defined, this system has the MAXINT constant.
+?C:.
+?C:HAS_MAXDOUBLE:
+?C: If defined, this system has the MAXDOUBLE constant.
+?C:.
+?H:#$d_huge_val HAS_HUGE_VAL /**/
+?H:.
+?H:#$d_huge HAS_HUGE /**/
+?H:.
+?H:#$d_int_max HAS_INT_MAX /**/
+?H:.
+?H:#$d_maxint HAS_MAXINT /**/
+?H:.
+?H:#$d_maxdouble HAS_MAXDOUBLE /**/
+?H:.
+?M:parse_integer: HAS_HUGE HAS_HUGE_VAL HAS_MAXINT HAS_MAXDOUBLE HAS_INT_MAX
+?M:#ifdef HAS_HUGE_VAL
+?M:#define HUGE_DOUBLE HUGE_VAL
+?M:#else
+?M:#ifdef HAS_HUGE
+?M:#define HUGE_DOUBLE HUGE
+?M:#else
+?M:#ifdef HAS_MAXDOUBLE
+?M:#define HUGE_DOUBLE MAXDOUBLE
+?M:#else
+?M:#define HUGE_DOUBLE 2000000000
+?M:#endif
+?M:#endif
+?M:#endif
+?M:#ifdef HAS_INT_MAX
+?M:#define HUGE_INT INT_MAX
+?M:#else
+?M:#ifdef HAS_MAXINT
+?M:#define HUGE_INT MAXINT
+?M:#else
+?M:#define HUGE_INT 2000000000
+?M:#endif
+?M:#endif
+?M:.
+?T:val
+?LINT:set d_huge d_huge_val d_maxint d_maxdouble
+: see if we have HUGE, HUGE_VAL, MAXINT, or MAXDOUBLE
+echo " "
+echo "Let's try to figure out a really big double." >&4
+ $cat >d_huge.c <<EOCP
+#include <stdio.h>
+#include <math.h>
+#$i_values I_VALUES
+#$i_limits I_LIMITS
+#ifdef I_LIMITS
+#include <limits.h>
+#else
+#ifdef I_VALUES
+#include <values.h>
+#endif
+#endif
+
+int main()
+{
+ printf("%f\n",HUGE_VAL);
+}
+EOCP
+ if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_huge_val; eval $setvar
+ val="$undef"
+ set d_huge; eval $setvar
+ set d_maxdouble; eval $setvar
+ echo "Great. Your system defines HUGE_VAL." >&4
+ else
+ val="$undef"
+ set d_huge_val; eval $setvar
+ echo "Your system doesn't have HUGE_VAL. Maybe HUGE?" >&4
+ $cat >d_huge.c <<EOCP
+#include <stdio.h>
+#include <math.h>
+#$i_values I_VALUES
+#$i_limits I_LIMITS
+#ifdef I_LIMITS
+#include <limits.h>
+#else
+#ifdef I_VALUES
+#include <values.h>
+#endif
+#endif
+int main()
+{
+ printf("%f\n",HUGE);
+}
+EOCP
+
+ if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_huge; eval $setvar
+ val="$undef"
+ set d_maxdouble; eval $setvar
+ echo "Good. Your system defines HUGE." >&4
+ else
+ val="$undef"
+ set d_huge; eval $setvar
+ echo "Hmm. Your system doesn't define HUGE. MAX_DOUBLE?" >&4
+ $cat >d_huge.c <<EOCP
+#include <stdio.h>
+#include <math.h>
+#$i_limits I_LIMITS
+#ifdef I_LIMITS
+#include <limits.h>
+#else
+#$i_values I_VALUES
+#ifdef I_VALUES
+#include <values.h>
+#endif
+#endif
+int main()
+{
+ printf("%f\n",MAX_DOUBLE);
+}
+EOCP
+
+ if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
+ val="$define"
+ echo "Ok, you've got MAXDOUBLE." >&4
+ else
+ val="$undef"
+ echo "Nope, no MAXDOUBLE either. We'll guess one." >&4
+ fi
+ set d_maxdouble; eval $setvar
+ fi
+fi
+
+
+echo " "
+echo "Let's try to figure out a really big int, too." >&4
+ $cat >d_huge.c <<EOCP
+#include <stdio.h>
+#include <math.h>
+#$i_limits I_LIMITS
+#ifdef I_LIMITS
+#include <limits.h>
+#else
+#$i_values I_VALUES
+#ifdef I_VALUES
+#include <values.h>
+#endif
+#endif
+int main()
+{
+ printf("%d\n",INT_MAX);
+}
+EOCP
+
+if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_int_max; eval $setvar
+ val="$undef"
+ set d_maxint; eval $setvar
+ echo "Ok, you've got INT_MAX." >&4
+else
+ val="$undef"
+ echo "No INT_MAX. Maybe MAXINT?" >&4
+ set d_int_max; eval $setvar
+ $cat >d_huge.c <<EOCP
+#include <stdio.h>
+#include <math.h>
+#$i_limits I_LIMITS
+#ifdef I_LIMITS
+#include <limits.h>
+#else
+#$i_values I_VALUES
+#ifdef I_VALUES
+#include <values.h>
+#endif
+#endif
+int main()
+{
+ printf("%d\n",MAXINT);
+}
+EOCP
+ if $cc $ccflags $ldflags d_huge.c -o d_huge $libs >/dev/null 2>&1; then
+ val="$define"
+ echo "Ok, you've got MAXINT." >&4
+ set d_maxint; eval $setvar
+ else
+ val="$undef"
+ echo "No MAXINT. I give up. I'll take a guess." >&4
+ set d_maxint; eval $setvar
+ fi
+fi
+
+$rm -f d_huge*
+
--- /dev/null
+?RCS: $Id: d_ieee.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_ieee: Myread cat cc ccflags rm ldflags
+?MAKE: -pick add $@ %<
+?S:d_ieee:
+?S: Defined if the machine supports IEEE math - that is, can safely
+?S: return NaN or Inf rather than crash on bad math.
+?S:.
+?C:HAS_IEEE_MATH:
+?C: Defined if the machine supports IEEE math - that is, can safely
+?C: return NaN or Inf rather than crash on bad math.
+?C:.
+?H:#$d_ieee HAS_IEEE_MATH /**/
+?H:.
+: check for a safe ieee
+echo " "
+echo "Let's see if your math functions handle errors nicely..." >&4
+$cat >test_ieee.c <<'EOCP'
+#include <stdio.h>
+#include <math.h>
+
+int main() {
+ double x;
+ x = pow(-1,.5);
+ x = pow(10000,10000);
+ printf("define\n");
+ exit(0);
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_ieee test_ieee.c -lm >/dev/null 2>&1 ; then
+ d_ieee=`./test_ieee`
+ if test $d_ieee = define ; then
+ echo "Great! They can." >&4
+ else
+ echo "Nope, they crash and burn." >&4
+ d_ieee='undef'
+ fi
+else
+ $cat <<EOM
+(I can't seem to get my test program to work. We'll play it safe
+ and assume that your math functions don't handle errors nicely.)
+EOM
+ d_ieee='undef'
+fi
+$rm -f test_ieee* core
+
--- /dev/null
+?RCS:
+?RCS: Copyright (c) 2000, Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_in2p: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_in2p (d_in2p):
+?S: This variable conditionally defines the HAS_INET_PTON symbol, which
+?S: indicates to the C program that the inet_pton() and inet_ntop()
+?S: routines are available to convert IP addresses.
+?S:.
+?C:HAS_INET_PTON (INET_PTON):
+?C: This symbol, if defined, indicates that the inet_pton() and
+?C: inet_ntop() routines are available to convert IP addresses..
+?C:.
+?H:#$d_in2p HAS_INET_PTON /**/
+?H:.
+?LINT:set d_in2p
+: see inet_pton exists
+set inet_pton d_in2p
+eval $inlibc
+
--- /dev/null
+?MAKE:d_ipv6: test cc cat ccflags ldflags libs i_systypes i_syssock i_niin i_sysin
+?MAKE: -pick add $@ %<
+?S:d_ipv6:
+?S: This variable is set if the system defines the sockaddr_in6 struct.
+?S: and AF_INET6. We can't rely on just AF_INET6 being defined.
+?S:.
+?C:HAS_IPV6:
+?C: If defined, this system has the sockaddr_in6 struct and AF_INET6.
+?C: We can't rely on just AF_INET6 being defined.
+?C:.
+?H:#$d_ipv6 HAS_IPV6 /**/
+?H:.
+?LINT:set d_ipv6
+: see if we have struct sockaddr_in6.
+echo " "
+$cat >d_ipv6.c <<EOCP
+#$i_systypes I_SYS_TYPES
+#$i_syssock I_SYS_SOCK
+#$i_niin I_NETINET_IN
+#$i_sysin I_SYS_IN
+#ifdef I_SYS_TYPES
+#include <sys/types.h>
+#endif
+#ifdef I_SYS_SOCK
+#include <sys/socket.h>
+#endif
+#ifdef I_NETINET_IN
+#include <netinet/in.h>
+#else
+#ifdef I_SYS_IN
+#include <sys/in.h>
+#endif
+#endif
+#include <stdio.h>
+main()
+{
+ struct sockaddr_in6 test;
+ int foo = AF_INET6;
+ printf("%d\n", foo);
+}
+EOCP
+if $cc $ccflags $ldflags d_ipv6.c -o d_ipv6 $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_ipv6; eval $setvar
+ echo "IPv6 structures found." >&4
+else
+ val="$undef"
+ set d_ipv6; eval $setvar
+ echo "No IPv6 structures found. No problem." >&4
+fi
--- /dev/null
+?RCS: $Id: d_keepsig.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_keepsig.U,v $
+?RCS: Revision 3.0.1.3 1995/01/11 15:26:25 ram
+?RCS: patch45: protected "sh -c" within backquotes for Linux and SGI
+?RCS:
+?RCS: Revision 3.0.1.2 1994/10/29 16:13:59 ram
+?RCS: patch36: call ./bsd explicitely instead of relying on PATH
+?RCS:
+?RCS: Revision 3.0.1.1 1993/10/16 13:48:47 ram
+?RCS: patch12: comment for SIGNALS_KEPT was the other way round
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:06:26 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_keepsig: cat cc ccflags rm Guess contains echo n c Setvar d_sigaction ldflags
+?MAKE: -pick add $@ %<
+?S:d_keepsig:
+?S: This variable contains the eventual value of the SIGNALS_KEPT symbol,
+?S: which indicates to the C program if signal handlers need not reinstated
+?S: after receipt of a signal.
+?S:.
+?C:SIGNALS_KEPT (PERSISTENT_SIGNAL):
+?C: This symbol is defined if signal handlers needn't be reinstated after
+?C: receipt of a signal.
+?C:.
+?H:#$d_keepsig SIGNALS_KEPT /**/
+?H:.
+?LINT:set d_keepsig
+: see if signals are kept
+val="$undef"
+echo " "
+echo "Checking to see if signal handlers stick around..." >&4
+if test ${d_sigaction} = "$define"; then
+ echo "You've got sigaction, so we can force 'em to." >&4
+ val="$define"
+else
+ $cat >try.c <<'EOCP'
+foo() {}
+
+int main()
+{
+ signal(2, foo);
+ kill(getpid(), 2);
+ kill(getpid(), 2);
+ printf("abc\n");
+}
+EOCP
+ if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then
+ sh -c ./try >try.out 2>/dev/null
+ if $contains abc try.out >/dev/null 2>&1; then
+ echo "Yes, they do."
+ val="$define";
+ else
+ echo "No, they don't."
+ fi
+ else
+ $echo $n "(I can't seem to compile the test program. Assuming $c"
+ if ./bsd; then
+ echo "they do.)"
+ val="$define"
+ else
+ echo "they don't.)"
+ fi
+ fi
+fi
+set d_keepsig
+eval $setvar
+$rm -f try*
+
--- /dev/null
+?RCS: $Id: d_memcpy.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_memcpy.U,v $
+?RCS: Revision 3.0.1.1 1993/09/13 16:02:58 ram
+?RCS: patch10: removed text recommending bcopy over memcpy (WAD)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:06:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_memcpy d_memmove: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_memcpy:
+?S: This variable conditionally defines the HAS_MEMCPY symbol, which
+?S: indicates to the C program that the memcpy() routine is available
+?S: to copy blocks of memory.
+?S:.
+?S:d_memmove:
+?S: This variable conditionally defines the HAS_MEMMOVE symbol, which
+?S: indicates to the C program that the memmove() routine is available
+?S: to copy overlapping blocks of memory.
+?S:.
+?C:HAS_MEMCPY (MEMCPY):
+?C: This symbol, if defined, indicates that the memcpy routine is available
+?C: to copy blocks of memory. If not, it will be mapped to bcopy
+?C: in confmagic.h
+?C:.
+?C:HAS_MEMMOVE (MEMMOVE):
+?C: This symbol, if defined, indicates that the memmove routine is available
+?C: to copy blocks of memory. If not, it will be mapped to bcopy
+?C:.
+?H:#$d_memcpy HAS_MEMCPY /**/
+?H:.
+?H:#$d_memmove HAS_MEMMOVE /**/
+?H:.
+?M:memcpy:HAS_MEMCPY
+?M:#ifndef HAS_MEMCPY
+?M:#ifndef memcpy
+?M:#define memcpy(d,s,l) bcopy((s),(d),(l))
+?M:#endif
+?M:#endif
+?M:.
+?M:memmove:HAS_MEMMOVE
+?M:#ifndef HAS_MEMMOVE
+?M:#ifndef memmove
+?M:#define memmove(d,s,l) bcopy((s),(d),(l))
+?M:#endif
+?M:#endif
+?M:.
+?LINT:set d_memcpy d_memmove
+: see if memcpy exists
+set memcpy d_memcpy
+eval $inlibc
+set memmove d_memmove
+eval $inlibc
+
--- /dev/null
+?RCS: $Id: d_newstyle.U 1.2 Sat, 30 Jun 2001 08:59:12 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_newstyle: Myread cat cc ccflags rm ldflags
+?MAKE: -pick add $@ %<
+?S:d_newstyle:
+?S: Defined if new-style function definitions are allowable.
+?S:.
+?C:CAN_NEWSTYLE:
+?C: Defined if new-style function definitions are allowable.
+?C: If they are, we can avoid some warnings that you get if
+?C: you declare char arguments in a prototype and use old-style
+?C: function definitions, which implicitly promote them to ints.
+?C:.
+?H:#$d_newstyle CAN_NEWSTYLE /**/
+?H:.
+: check for a new-style definitions
+echo " "
+$cat >test_newstyle.c <<'EOCP'
+#include <stdio.h>
+int main(int argc, char **argv) {
+ exit(0);
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_newstyle test_newstyle.c >/dev/null 2>&1 ; then
+ d_newstyle='define'
+ echo 'Your compiler accepts new-style function definitions.' >&4
+else
+ d_newstyle='undef'
+ echo "Your compiler DOESN'T accept new-style function definitions." >&4
+fi
+$rm -f test_newstyle* core
+
--- /dev/null
+?RCS: $Id: d_open3.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_open3.U,v $
+?RCS: Revision 3.0.1.2 1997/02/28 15:37:12 ram
+?RCS: patch61: added ?F: metalint hint
+?RCS:
+?RCS: Revision 3.0.1.1 1995/07/25 13:58:26 ram
+?RCS: patch56: added knowledge of the O_NONBLOCK symbol
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:06:44 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_open3: test cc cat ccflags ldflags libs h_fcntl h_sysfile rm Setvar Findhdr
+?MAKE: -pick add $@ %<
+?X: It would be easy to separate the h_O_stuff from this.
+?X: Is there a reason to do so? -- HMS
+?S:d_open3:
+?S: This variable conditionally defines the HAS_OPEN3 manifest constant,
+?S: which indicates to the C program that the 3 argument version of
+?S: the open(2) function is available.
+?S:.
+?C:HAS_OPEN3 (OPEN3):
+?C: This manifest constant lets the C program know that the three
+?C: argument form of open(2) is available.
+?C:.
+?H:#$d_open3 HAS_OPEN3 /**/
+?H:.
+?W:%<:O_RDONLY O_WRONLY O_RDWR O_NDELAY O_APPEND O_SYNC O_CREAT O_TRUNC
+?W:%<:O_EXCL O_NONBLOCK
+?F:!open3
+?LINT:set d_open3
+?LINT:change h_fcntl h_sysfile
+: 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
+int 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 "`./findhdr sys/file.h`" && \
+ $cc $ccflags $ldflags "-DI_SYS_FILE" open3.c -o open3 $libs >/dev/null 2>&1 ; then
+ h_sysfile=true;
+ echo "<sys/file.h> defines the O_* constants..." >&4
+ if ./open3; then
+ echo "and you have the 3 argument form of open()." >&4
+ val="$define"
+ else
+ echo "but not the 3 argument form of open(). Oh, well." >&4
+ val="$undef"
+ fi
+elif $test "`./findhdr fcntl.h`" && \
+ $cc $ccflags $ldflags "-DI_FCNTL" open3.c -o open3 $libs >/dev/null 2>&1 ; then
+ h_fcntl=true;
+ echo "<fcntl.h> defines the O_* constants..." >&4
+ if ./open3; then
+ echo "and you have the 3 argument form of open()." >&4
+ val="$define"
+ else
+ echo "but not the 3 argument form of open(). Oh, well." >&4
+ val="$undef"
+ fi
+else
+ val="$undef"
+ echo "I can't find the O_* constant definitions! You got problems." >&4
+fi
+set d_open3
+eval $setvar
+$rm -f open3*
+
--- /dev/null
+?RCS: $Id: d_random.U 1.4 Fri, 15 Feb 2002 16:56:28 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS: Based on d_strchr.U
+?RCS:
+?MAKE:d_random d_lrand48 d_rand: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_random:
+?S: This variable conditionally defines HAS_RANDOM if random() is there
+?S:.
+?S:d_lrand48:
+?S: This conditionally defines HAS_LRAND48 if lrand45() is there
+?S:.
+?S:d_rand:
+?S: This conditionally defines HAS_RAND if rand() is there
+?S:.
+?C:HAS_RANDOM:
+?C: Have we got random(), our first choice for number generation?
+?C:.
+?C:HAS_LRAND48:
+?C: Have we got lrand48(), our second choice?
+?C:.
+?C:HAS_RAND:
+?C: Have we got rand(), our last choice?
+?C:.
+?H:#$d_random HAS_RANDOM /**/
+?H:#$d_lrand48 HAS_LRAND48 /**/
+?H:#$d_rand HAS_RAND /**/
+?H:.
+?M:random: HAS_RANDOM HAS_LRAND48 HAS_RAND
+?M:#ifndef HAS_RANDOM
+?M:#ifndef random
+?M:#ifdef HAS_LRAND48
+?M:#define random lrand48
+?M:#define srandom srand48
+?M:#else
+?M:#ifdef HAS_RAND
+?M:#define random rand
+?M:#define srandom srand
+?M:#endif
+?M:#endif
+?M:#endif
+?M:#endif
+?M:.
+?LINT:set d_lrand48 d_rand d_random
+: random, lrand48, or rand
+set random d_random
+eval $inlibc
+set lrand48 d_lrand48
+eval $inlibc
+set rand d_rand
+eval $inlibc
+
--- /dev/null
+?RCS: $Id: d_rlimit.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS:
+?X: We may need to include <sys/resource.h> and <sys/time.h> FIXME
+?X:INC: i_sysresrc i_systime
+?MAKE:d_rlimit: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_rlimit:
+?S: This variable conditionally defines the HAS_GETRLIMIT symbol, which
+?S: indicates that the getrlimit() routine exists. The getrlimit() routine
+?S: supports getting resource limits, and there should be a setrlimit() too
+?S: We probably need to include <sys/resource.h> and <sys/time.h>.
+?S:.
+?C:HAS_GETRLIMIT (RLIMIT GETRLIMIT):
+?C: This symbol, if defined, indicates that the getrlimit() routine is
+?C: available to get resource limits. Probably means setrlimit too.
+?C: Inclusion of <sys/resource.h> and <sys/time.h> may be necessary.
+?C:.
+?H:#$d_rlimit HAS_GETRLIMIT /**/
+?H:.
+?LINT:set d_rlimit
+: see if getrlimit exists
+set getrlimit d_rlimit
+eval $inlibc
+
--- /dev/null
+?RCS:
+?RCS:
+?RCS:
+?MAKE:d_round: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_round:
+?S: This variable conditionally defines the HAS_ROUND symbol, which
+?S: indicates that the round() routine exists.
+?S:.
+?C:HAS_ROUND:
+?C: This symbol, if defined, indicates that the round() routine is
+?C: available to get some system parameters.
+?C:.
+?H:#$d_round HAS_ROUND /**/
+?H:.
+?LINT:set d_round d_roundbyname
+: see if round exists
+set round d_round
+eval $inlibc
+
--- /dev/null
+?RCS: $Id: d_sendmail.U 1.2 Tue, 30 Sep 2003 18:01:23 -0500 dunemush $
+?RCS:
+?RCS:
+?MAKE:d_sendmail : sendmail Setvar Oldconfig Csym Loc test
+?MAKE: -pick add $@ %<
+?S:d_sendmail:
+?S: This variable is defined if sendmail is available.
+?S:.
+?C:SENDMAIL:
+?C: This symbol contains the full pathname to sendmail.
+?C:.
+?C:HAS_SENDMAIL:
+?C: If defined, we have sendmail.
+?C:.
+?H:#$d_sendmail HAS_SENDMAIL /**/
+?H:#define SENDMAIL "$sendmail"
+?H:.
+?W:%<:SENDMAIL HAS_SENDMAIL
+?LINT:set d_sendmail
+: have we got sendmail?
+echo " "
+echo "Checking to see if we can use sendmail..."
+if $test -f $sendmail; then
+ echo "Looks like sendmail is in $sendmail"
+ val="$define"
+else
+ echo "Nope, out of luck."
+ val="$undef"
+fi
+set d_sendmail
+eval $setvar
+
--- /dev/null
+?RCS: $Id: d_sigchld.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:39 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_sigchld d_sigcld: Myread cat cc ccflags rm Setvar libs ldflags
+?MAKE: -pick add $@ %<
+?S:d_sigchld:
+?S: This variable is set if the system defines SIGCHLD
+?S:.
+?S:d_sigcld:
+?S: This variable is set if the system defines SIGCLD (the SysV
+?S: version of SIGCHLD)
+?S:.
+?C:HAS_SIGCHLD:
+?C: If defined, this system has the SIGCHLD constant.
+?C:.
+?C:HAS_SIGCLD:
+?C: If defined, this system has the SIGCLD constant (SysVish SIGCHLD).
+?C:.
+?H:#$d_sigchld HAS_SIGCHLD /**/
+?H:.
+?H:#$d_sigcld HAS_SIGCLD /**/
+?H:.
+?M:SIGCHLD: HAS_SIGCHLD
+?M:#ifndef HAS_SIGCHLD
+?M:#define SIGCHLD SIGCLD
+?M:#endif
+?M:.
+?M:SIGCLD: HAS_SIGCLD
+?M:#ifndef HAS_SIGCLD
+?M:#define SIGCLD SIGCHLD
+?M:#endif
+?M:.
+?T:val
+?LINT:set d_sigchld d_sigcld
+: see if we have SIGCHLD, SIGCLD, or both
+echo " "
+echo "How should a child signal a parent?" >&4
+$cat >d_sigchld.c <<EOCP
+#include <signal.h>
+#include <stdio.h>
+int main()
+{
+ printf("%d\n",SIGCHLD);
+}
+EOCP
+if $cc $ccflags $ldflags d_sigchld.c -o d_sigchld $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_sigchld; eval $setvar
+ echo "SIGCHLD works."
+else
+ val="$undef"
+ set d_sigchld; eval $setvar
+ echo "SIGCHLD doesn't work."
+fi
+
+$cat >d_sigchld.c <<EOCP
+#include <signal.h>
+#include <stdio.h>
+int main()
+{
+ printf("%d\n",SIGCLD);
+}
+EOCP
+if $cc $ccflags $ldflags d_sigchld.c -o d_sigchld $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_sigcld; eval $setvar
+ echo "SIGCLD works."
+else
+ val="$undef"
+ set d_sigcld; eval $setvar
+ echo "SIGCLD doesn't work."
+fi
--- /dev/null
+?RCS: $Id: d_signalproto.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_keepsig.U,v $
+?RCS: Revision 3.0.1.3 1995/01/11 15:26:25 ram
+?RCS: patch45: protected "sh -c" within backquotes for Linux and SGI
+?RCS:
+?RCS: Revision 3.0.1.2 1994/10/29 16:13:59 ram
+?RCS: patch36: call ./bsd explicitely instead of relying on PATH
+?RCS:
+?RCS: Revision 3.0.1.1 1993/10/16 13:48:47 ram
+?RCS: patch12: comment for SIGNALS_KEPT was the other way round
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:06:26 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_signalproto: cat cc ccflags rm Guess echo Setvar prototype signal_t ldflags
+?MAKE: -pick add $@ %<
+?S:d_signalproto:
+?S: This variable tells us if we can safely prototype signal() as follows:
+?S: Signal_t(*Sigfunc) _((int));
+?S: extern Sigfunc signal _((int signo, Sigfunc func));
+?S:.
+?C:CAN_PROTOTYPE_SIGNAL:
+?C: This symbol is defined if we can safely prototype our rewritten
+?C: signal() function as:
+?C: Signal_t(*Sigfunc) _((int));
+?C: extern Sigfunc signal _((int signo, Sigfunc func));
+?C:.
+?H:#$d_signalproto CAN_PROTOTYPE_SIGNAL /**/
+?H:.
+?LINT:set d_signalproto
+: can we prototype signal ourselves
+val="$undef"
+echo " "
+echo "Checking to see if we can declare or prototype signal()..." >&4
+if test ${prototype} = "$define"; then
+ $cat >try.c <<EOCP
+#include <stdio.h>
+#include <signal.h>
+#ifdef signal
+#undef signal
+#endif
+typedef ${signal_t} (*Sigfunc) (int);
+extern Sigfunc signal (int signo, Sigfunc func);
+int main()
+{ printf("no op\n"); }
+EOCP
+else
+ $cat >try.c <<EOCP
+#include <stdio.h>
+#include <signal.h>
+#ifdef signal
+#undef signal
+#endif
+typedef ${signal_t} (*Sigfunc) ();
+extern Sigfunc signal ();
+int main()
+{ printf("no op\n"); }
+EOCP
+fi
+if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then
+ $echo "Looks like we can."
+ val="$define";
+else
+ $echo "Looks like we can't."
+fi
+set d_signalproto
+eval $setvar
+$rm -f try*
+
--- /dev/null
+?RCS: $Id: d_signed_stdio.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_signed_stdio: Myread cat cc ccflags rm ldflags
+?MAKE: -pick add $@ %<
+?S:d_signed_stdio:
+?S: Defined if file desriptors in the stdio library are signed chars,
+?S: rather than unsigned chars, for example, in SunOS 4.1.x.
+?S: This is bad, because descriptors > 127 break.
+?S:.
+?C:HAS_SIGNED_STDIO:
+?C: Defined if file desriptors in the stdio library are signed chars,
+?C: rather than unsigned chars, for example, in SunOS 4.1.x.
+?C: This is bad, because descriptors > 127 break.
+?C:.
+?H:#$d_signed_stdio HAS_SIGNED_STDIO /**/
+?H:.
+: check for broken brain-damaged signed char stdio calls.
+echo " "
+echo "Let's see if your stdio uses signed chars instead of unsigned for fd's..." >&4
+
+$cat >test_signed_stdio.c <<'EOCP'
+#include <stdio.h>
+int main() {
+ FILE foo;
+ foo._file = 128;
+ if (foo._file == 128)
+ printf("undef\n"); /* good stdio */
+ else
+ printf("define\n"); /* bad stdio */
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_signed_stdio test_signed_stdio.c >/dev/null 2>&1 ; then
+ d_signed_stdio=`./test_signed_stdio`
+ if test $d_signed_stdio = define ; then
+ echo "Alas, you've got signed char stdio. Have to work around that." >&4
+ else
+ echo "Cool. Your stdio uses unsigned chars like it should." >&4
+ fi
+else
+ $cat <<EOM
+(My program won't work, so your stdio probably doesn't support _file.
+ The good news is that means it's probably using unsigned chars like it should)
+EOM
+ d_signed_stdio='undef'
+fi
+$rm -f test_signed_stdio* core
+
--- /dev/null
+?RCS: $Id: d_sigprocmask.U 1.1 Wed, 29 Nov 2000 11:35:38 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 2000 Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS:
+?MAKE:d_sigprocmask: Csym Setvar cat cc ccflags ldflags libs rm _o
+?MAKE: -pick add $@ %<
+?S:d_sigprocmask:
+?S: This variable conditionally defines the HAS_SIGPROCMASK symbol, which
+?S: indicates that the POSIX sigprocmask() routine is available.
+?S:.
+?C:HAS_SIGPROCMASK:
+?C: This symbol, if defined, indicates that POSIX's sigprocmask() routine
+?C: is available.
+?C:.
+?H:#$d_sigprocmask HAS_SIGPROCMASK /**/
+?H:.
+?T:val
+?LINT:set d_sigprocmask
+echo " "
+: see if we have sigprocmask
+if set sigprocmask val -f d_sigprocmask; eval $csym; $val; then
+ echo 'sigprocmask() found.' >&4
+ val="$define"
+else
+ echo 'sigprocmask NOT found.' >&4
+ val="$undef"
+fi
+?X:
+?X: Solaris 2.5_x86 with SunWorks Pro C 3.0.1 doesn't have a complete
+?X: sigaction structure if compiled with cc -Xc. This compile test
+?X: will fail then. <doughera@lafcol.lafayette.edu>
+?X:
+$cat > set.c <<'EOP'
+#include <stdio.h>
+#include <sys/types.h>
+#include <signal.h>
+main()
+{
+ sigset_t mask, oldmask;
+ sigprocmask(SIG_SETMASK, &mask, &oldmask);
+}
+EOP
+if $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1; then
+ :
+else
+ echo "But you don't seem to have a working sigprocmask." >&4
+ val="$undef"
+fi
+set d_sigprocmask; eval $setvar
+$rm -f set set$_o set.c
+
--- /dev/null
+?RCS: $Id: d_snprintf.U 1.1 Thu, 01 Feb 2001 14:47:02 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_snprintf.U,v $
+?RCS: Revision 3.0 1993/08/18 12:07:59 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_snprintf: Guess cat +cc +ccflags Csym Setvar
+?MAKE: -pick add $@ %<
+?S:d_snprintf:
+?S: This variable conditionally defines the HAS_SNPRINTF symbol, which
+?S: indicates to the C program that the snprintf() routine is available.
+?S:.
+?C:HAS_SNPRINTF:
+?C: This symbol, if defined, indicates that the snprintf routine is
+?C: available. If not, we use sprintf, which is less safe.
+?C:.
+?H:#$d_snprintf HAS_SNPRINTF /**/
+?H:.
+?LINT:set d_snprintf
+: see if snprintf exists
+echo " "
+if set snprintf val -f d_snprintf; eval $csym; $val; then
+ echo 'snprintf() found.' >&4
+ val="$define"
+else
+ echo 'snprintf() NOT found.' >&4
+ val="$undef"
+fi
+set d_snprintf
+eval $setvar
+
--- /dev/null
+?MAKE: d_socklen: libs sockethdr i_systypes i_syssock cc ccflags ldflags Setvar
+?MAKE: -pick add $@ %<
+?S:d_socklen:
+?S: This variable is set if the system defines the socklen_t type.
+?S:.
+?C:HAS_SOCKLEN_T:
+?C: If defined, this system has the socklen_t type.
+?C:.
+?H:#$d_socklen HAS_SOCKLEN_T /**/
+?H:.
+?LINT:set d_socklen
+: see if we have socklen_t.
+echo " "
+$cat >d_socklen.c <<EOCP
+#$i_systypes I_SYS_TYPES
+#$i_syssock I_SYS_SOCKET
+#ifdef I_SYS_TYPES
+#include <sys/types.h>
+#endif
+#ifdef I_SYS_SOCKET
+#include <sys/socket.h>
+#endif
+#include <stdio.h>
+main()
+{
+ socklen_t test = 1;
+ printf("%d\n",test);
+}
+EOCP
+if $cc $ccflags $ldflags d_socklen.c -o d_socklen $libs >/dev/null 2>&1; then
+ val="$define"
+ set d_socklen; eval $setvar
+ echo "socklen_t works." >&4
+else
+ val="$undef"
+ set d_socklen; eval $setvar
+ echo "socklen_t doesn't work. Using int." >&4
+fi
--- /dev/null
+?RCS: $Id: d_stdstdio.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Tye McQueen <tye@metronet.com>
+?RCS: Actually, now this won't do anything.
+?RCS:
+?RCS: $Log: d_stdstdio.U,v $
+?RCS: Revision 3.0.1.1 1995/05/12 12:12:11 ram
+?RCS: patch54: complete rewrite by Tye McQueen to fit modern systems
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:07:31 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_stdstdio d_stdiobase stdio_ptr stdio_cnt stdio_base \
+ stdio_bufsiz: +ccflags \
+ Setvar Findhdr Oldconfig
+?MAKE: -pick add $@ %<
+?LINT:describe d_stdstdio d_stdiobase stdio_base stdio_bufsiz \
+ stdio_cnt stdio_ptr
+?LINT:set d_stdstdio d_stdiobase stdio_base stdio_bufsiz \
+ stdio_cnt stdio_ptr
+: do nothing but prevent the standard stdstdio.U from running
+
--- /dev/null
+?RCS: $Id: d_strchr.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_strchr.U,v $
+?RCS: Revision 3.0.1.2 1993/10/16 13:49:20 ram
+?RCS: patch12: added support for HAS_INDEX
+?RCS: patch12: added magic for index() and rindex()
+?RCS:
+?RCS: Revision 3.0.1.1 1993/09/13 16:05:26 ram
+?RCS: patch10: now only defines HAS_STRCHR, no macro remap of index (WAD)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:07:32 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_strchr d_index: contains strings Setvar Myread Oldconfig Csym
+?MAKE: -pick add $@ %<
+?S:d_strchr:
+?S: This variable conditionally defines HAS_STRCHR if strchr() and
+?S: strrchr() are available for string searching.
+?S:.
+?S:d_index:
+?S: This variable conditionally defines HAS_INDEX if index() and
+?S: rindex() are available for string searching.
+?S:.
+?C:HAS_STRCHR:
+?C: This symbol is defined to indicate that the strchr()/strrchr()
+?C: functions are available for string searching. If not, try the
+?C: index()/rindex() pair.
+?C:.
+?C:HAS_INDEX:
+?C: This symbol is defined to indicate that the index()/rindex()
+?C: functions are available for string searching.
+?C:.
+?H:#$d_strchr HAS_STRCHR /**/
+?H:#$d_index HAS_INDEX /**/
+?H:.
+?M:index: HAS_INDEX
+?M:#ifndef HAS_INDEX
+?M:#ifndef index
+?M:#define index strchr
+?M:#endif
+?M:#endif
+?M:.
+?M:strchr: HAS_STRCHR
+?M:#ifndef HAS_STRCHR
+?M:#ifndef strchr
+?M:#define strchr index
+?M:#endif
+?M:#endif
+?M:.
+?M:rindex: HAS_INDEX
+?M:#ifndef HAS_INDEX
+?M:#ifndef rindex
+?M:#define rindex strrchr
+?M:#endif
+?M:#endif
+?M:.
+?M:strrchr: HAS_STRCHR
+?M:#ifndef HAS_STRCHR
+?M:#ifndef strrchr
+?M:#define strrchr rindex
+?M:#endif
+?M:#endif
+?M:.
+?T:vali
+?LINT:set d_strchr d_index
+: index or strchr
+echo " "
+if set index val -f; eval $csym; $val; then
+ if set strchr val -f d_strchr; eval $csym; $val; then
+ if $contains strchr "$strings" >/dev/null 2>&1 ; then
+?X: has index, strchr, and strchr in string header
+ val="$define"
+ vali="$define"
+ echo "strchr() and index() found." >&4
+ else
+?X: has index, strchr, and no strchr in string header
+ val="$undef"
+ vali="$define"
+ echo "index() found." >&4
+ fi
+ else
+?X: has only index, no strchr, string header is a moot point
+ val="$undef"
+ vali="$define"
+ echo "index() found." >&4
+ fi
+else
+ if set strchr val -f d_strchr; eval $csym; $val; then
+ val="$define"
+ vali="$undef"
+ echo "strchr() found." >&4
+ else
+ echo "No index() or strchr() found!" >&4
+ val="$undef"
+ vali="$undef"
+ fi
+fi
+set d_strchr; eval $setvar
+val="$vali"
+set d_index; eval $setvar
+
--- /dev/null
+?RCS: $Id: d_strcoll.U 1.3 Tue, 30 Sep 2003 18:01:23 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Andy Dougherty <doughera@lafcol.lafayette.edu>
+?RCS:
+?RCS: $Log: d_strcoll.U,v $
+?RCS: Revision 3.0.1.1 1994/08/29 16:12:01 ram
+?RCS: patch32: created by ADO
+?RCS:
+?MAKE:d_strcoll: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_strcoll:
+?S: This variable conditionally defines HAS_STRCOLL if strcoll() is
+?S: available to compare strings using collating information.
+?S:.
+?C:HAS_STRCOLL:
+?C: This symbol, if defined, indicates that the strcoll routine is
+?C: available to compare strings using collating information.
+?C:.
+?H:#$d_strcoll HAS_STRCOLL /**/
+?H:.
+?M:strcoll: HAS_STRCOLL
+?M:#ifndef HAS_STRCOLL
+?M:#undef strcoll
+?M:#define strcoll strcmp
+?M:#endif
+?M:.
+?W:%<:strcoll
+?LINT:set d_strcoll
+: see if strcoll exists
+set strcoll d_strcoll
+eval $inlibc
+
--- /dev/null
+?RCS: $Id: d_strxfrm.U 1.2 Tue, 20 Nov 2001 17:08:09 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: Original Author: Andy Dougherty <doughera@lafcol.lafayette.edu>
+?RCS:
+?RCS: $Log: d_strxfrm.U,v $
+?RCS: Revision 3.0.1.1 1994/08/29 16:12:01 ram
+?RCS: patch32: created by ADO
+?RCS:
+?MAKE:d_strxfrm: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_strxfrm:
+?S: This variable conditionally defines HAS_STRXFRM if strxfrm() is
+?S: available to transform strings using collating information.
+?S:.
+?C:HAS_STRXFRM:
+?C: This symbol, if defined, indicates that the strxfrm routine is
+?C: available to transform strings using collating information.
+?C:.
+?H:#$d_strxfrm HAS_STRXFRM /**/
+?H:.
+?M:strxfrm: HAS_STRXFRM
+?M:#if !defined(WIN32) && !defined(HAS_STRXFRM)
+?M:#define strncoll strncmp
+?M:#define strncasecoll strncasecmp
+?M:#define strcasecoll strcasecmp
+?M:#endif
+?M:.
+?LINT:set d_strxfrm
+: see if strxfrm exists
+set strxfrm d_strxfrm
+eval $inlibc
+
--- /dev/null
+?RCS:
+?RCS:
+?RCS:
+?MAKE:d_sysctl d_sysctlbyname: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_sysctl:
+?S: This variable conditionally defines the HAS_SYSCTL symbol, which
+?S: indicates that the sysctl() routine exists.
+?S:.
+?S:d_sysctlbyname:
+?S: This variable conditionally defines the HAS_SYSCTLBYNAME symbol, which
+?S: indicates that the sysctlbyname() routine exists.
+?S:.
+?C:HAS_SYSCTL:
+?C: This symbol, if defined, indicates that the sysctl() routine is
+?C: available to get some system parameters.
+?C:.
+?C:HAS_SYSCTLBYNAME:
+?C: This symbol, if defined, indicates that the sysctlbyname() routine is
+?C: available to get some system parameters.
+?C:.
+?H:#$d_sysctl HAS_SYSCTL /**/
+?H:#$d_sysctlbyname HAS_SYSCTLBYNAME /**/
+?H:.
+?LINT:set d_sysctl d_sysctlbyname
+: see if sysctl exists
+set sysctl d_sysctl
+eval $inlibc
+: see if sysctlbyname exists
+set sysctlbyname d_sysctlbyname
+eval $inlibc
+
--- /dev/null
+?MAKE:d_tcl i_tcl: Loc test xlibpth libpth Csym Setvar Inhdr libs
+?MAKE: -pick add $@ %<
+?S:d_tcl:
+?S: This variable conditionally defines the TCL symbol, which
+?S: indicates to the C program that the tcl library is available.
+?S:.
+?S:i_tcl:
+?S: This variable conditionally defines the I_TCL symbol, which
+?S: indicates whether a C program should include <tcl.h>
+?S:.
+?C:HAS_TCL:
+?C: This symbol, if defined, indicates that the tcl library is available
+?C:.
+?C:I_TCL:
+?C: This symbol, if defined, indicates that <tcl.h> can be included.
+?C:.
+?H:?%<:/* HAS_TCL:
+?H:?%<: * This symbol, if defined, means we have the tcl library
+?H:?%<: */
+?H:?%<:#$d_tcl HAS_TCL /**/
+?H:.
+?H:?%<:/* I_TCL:
+?H:?%<: * This symbol, if defined, means we have the <tcl.h> include file
+?H:?%<: */
+?H:?%<:#$i_tcl I_TCL /**/
+?H:.
+?W:d_tcl:HAS_TCL I_TCL
+?LINT:set d_tcl i_tcl
+?T:val
+: see if tcl exists
+echo " "
+ok=0
+
+if $test -f src/tcl.c -o -f ../src/tcl.c ; then
+ echo "I'm tickled pink - we have the penn TCL source." >&4
+ echo "Let's see if we have TCL." >&4
+
+: see if tcl.h can be included
+ set tcl.h i_tcl
+ eval $inhdr
+ if $test $i_tcl = "$define"; then
+ echo "We have tcl.h, that's a start." >&4
+ : see if the tcl library was found earlier
+ case $libs in
+ *tcl*) val="$define"
+ set d_tcl
+ eval $setvar
+ echo "We have the TCL library, too." >&4
+ ok=1
+ ;;
+ *) echo "Oops, no TCL library. Check your TCL installation." >&4
+ ;;
+ esac
+ else
+ echo "I can't find tcl.h. Check your TCL installation." >&4
+ fi
+fi
+
+if $test $ok = 0; then
+ nlibs=""
+ for l in $libs; do
+ case $l in
+ *tcl*) ;;
+ *dl*) ;;
+ *ld*) ;;
+ *) nlibs="$nlibs$l " ;;
+ esac
+ done
+ libs="$nlibs"
+ val="$undef"
+ set d_tcl
+ eval $setvar
+ val="$undef"
+ set i_tcl
+ eval $setvar
+else
+ echo "TCL will be compiled and included." >&4
+fi
--- /dev/null
+?RCS: $Id: d_textdomain.U 1.2 Wed, 13 Sep 2000 14:49:45 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_textdomain: Myread cat cc ccflags rm ldflags libs i_libintl
+?MAKE: -pick add $@ %<
+?S:d_textdomain:
+?S: Defined if textdomain() is available.
+?S:.
+?C:HAS_TEXTDOMAIN:
+?C: Defined if textdomain is available().
+?C:.
+?H:#$d_textdomain HAS_TEXTDOMAIN /**/
+?H:.
+: check for a new-style definitions
+echo " "
+$cat >test_textdomain.c <<EOCP
+#$i_libintl I_LIBINTL
+#ifdef I_LIBINTL
+#include <libintl.h>
+#endif
+int main(int argc, char **argv) {
+ return (int) textdomain ("");
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_textdomain test_textdomain.c $libs >/dev/null 2>&1 ; then
+ d_textdomain='define'
+ echo 'Mabuhay! You seem to have textdomain for translations.' >&4
+else
+ d_textdomain='undef'
+ echo "You don't seem to have textdomain. Sayang." >&4
+fi
+$rm -f test_textdomain* core
+
--- /dev/null
+?RCS: $Id: d_timelocal.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS:
+?MAKE:d_timelocal: Inlibc
+?MAKE: -pick add $@ %<
+?S:d_timelocal:
+?S: This variable conditionally defines the HAS_TIMELOCAL symbol, which
+?S: indicates that the timelocal() routine exists.
+?S:.
+?C:HAS_TIMELOCAL:
+?C: This symbol, if defined, indicates that the timelocal() routine is
+?C: available.
+?C:.
+?H:#$d_timelocal HAS_TIMELOCAL /**/
+?H:.
+?LINT:set d_timelocal
+: see if timelocal exists
+set timelocal d_timelocal
+eval $inlibc
+
--- /dev/null
+?RCS: $Id: d_toupper.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1995, Alan Schwartz
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_toupper: Myread cat cc ccflags rm ldflags
+?MAKE: -pick add $@ %<
+?S:d_toupper:
+?S: Defined if toupper() can operate safely on any ascii character.
+?S:.
+?C:HAS_SAFE_TOUPPER:
+?C: Defined if toupper() can operate safely on any ascii character.
+?C: Some systems only allow toupper() on lower-case ascii chars.
+?C:.
+?H:#$d_toupper HAS_SAFE_TOUPPER /**/
+?H:.
+: check for a safe toupper
+echo " "
+echo "Checking out your toupper()..." >&4
+$cat >test_toupper.c <<'EOCP'
+#include <stdio.h>
+#include <ctype.h>
+
+int main() {
+ char c = 'A';
+ if (c == toupper(c)) {
+ printf("define\n");
+ } else {
+ printf("undef\n");
+ }
+ exit(0);
+}
+EOCP
+
+if $cc $ccflags $ldflags -o test_toupper test_toupper.c >/dev/null 2>&1 ; then
+ d_toupper=`./test_toupper`
+ if test $d_toupper = define ; then
+ echo "It's safe toupper uppers." >&4
+ else
+ echo "We can't toupper uppers." >&4
+ fi
+else
+ $cat <<EOM
+(I can't seem to get my test program to work. We'll play it safe.)
+EOM
+ d_toupper='undef'
+fi
+$rm -f test_toupper* core
+
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:05:39 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_uint32_t: Myread cat cc ccflags rm Setvar libs i_stdint ldflags
+?MAKE: -pick add $@ %<
+?S:d_uint32_t:
+?S: This variable is set if the system defines the uint32_t type.
+?S:.
+?C:HAS_UINT32_T:
+?C: If defined, this system has the uint32_t type.
+?C:.
+?H:#$d_uint32_t HAS_UINT32_T /**/
+?H:.
+?T:val
+?LINT:set d_uint32_t
+: see if we have uint32_t
+echo "Let's try to figure out a really big double." >&4
+echo " "
+ $cat >d_uint32.c <<EOCP
+#include <stdio.h>
+#$i_stdint I_STDINT
+#ifdef I_STDINT
+#include <stdint.h>
+#endif
+
+int main()
+{
+ uint32_t a;
+ a = 2*2*2*2;
+ a *= a; /* 2^8 */
+ a *= a; /* 2^16 */
+ a *= a; /* 2^32 */
+ a += 1; /* 2^32 + 1 */
+ if (a == 1)
+ printf("ok\n");
+ else
+ printf("not ok\n");
+}
+EOCP
+
+if $cc $ccflags $ldflags d_uint32.c -o d_uint32 $libs >/dev/null 2>&1; then
+ val=`./d_uint32`
+ if test $val = "ok" ; then
+ val="$define"
+ set d_uint32_t; eval $setvar
+ echo "You have uint32_t." >&4
+ else
+ val="$undef"
+ set d_uint32_t; eval $setvar
+ echo "You don't have uint32_t, hope you're a 32 bit machine." >&4
+ fi
+else
+ val="$undef"
+ set d_uint32_t; eval $setvar
+ echo "I can't tell if you have uint32_t, hope you're a 32 bit machine." >&4
+fi
+
+$rm -f d_uint32*
+
--- /dev/null
+?RCS: $Id: d_uptime.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_uptime.U,v $
+?RCS: Revision 3.0.1.2 1993/10/16 13:49:20 ram
+?RCS: patch12: added support for HAS_INDEX
+?RCS: patch12: added magic for index() and rindex()
+?RCS:
+?RCS: Revision 3.0.1.1 1993/09/13 16:05:26 ram
+?RCS: patch10: now only defines HAS_STRCHR, no macro remap of index (WAD)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:07:32 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_uptime : Setvar Oldconfig Csym uptime test
+?MAKE: -pick add $@ %<
+?S:d_uptime:
+?S: This variable conditionally defines UPTIME_PATH if the uptime
+?S: program is available.
+?S:.
+?C:UPTIME_PATH:
+?C: This symbol gives the full path to the uptime(1) program if
+?C: it exists on the system. If not, this symbol is undefined.
+?C:.
+?C:HAS_UPTIME:
+?C: This symbol is defined if uptime(1) is available.
+?C:.
+?H:#$d_uptime HAS_UPTIME /**/
+?H:#define UPTIME_PATH "$uptime"
+?H:.
+?LINT:set d_uptime
+: uptime
+echo " "
+if $test -x $uptime ; then
+ val="$define"
+else
+ val="$undef"
+fi
+set d_uptime; eval $setvar
+
--- /dev/null
+?RCS: $Id: d_urandom.U 1.1 Tue, 08 Apr 2003 22:02:39 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 2002, Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?MAKE:d_urandom : Setvar Oldconfig Csym test
+?MAKE: -pick add $@ %<
+?S:d_urandom:
+?S: This variable conditionally defines HAS_DEV_URANDOM if the /dev/urandom
+?S: special file is available.
+?S:.
+?C:HAS_DEV_URANDOM:
+?C: This symbol is defined if /dev/urandom is available.
+?C:.
+?H:#$d_urandom HAS_DEV_URANDOM /**/
+?H:.
+?LINT:set d_urandom
+: see if /dev/urandom is present
+echo " "
+if $test -c /dev/urandom ; then
+ val="$define"
+else
+ val="$undef"
+fi
+set d_urandom; eval $setvar
+
--- /dev/null
+?RCS: $Id: d_uwait.U 1.2 Wed, 09 Aug 2000 14:09:22 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_uwait.U,v $
+?RCS: Revision 3.0.1.1 1994/01/24 14:10:49 ram
+?RCS: patch16: added knowledge about wait3()
+?RCS: patch16: revised 'union wait' look-up algorithm
+?RCS: patch16: fixed make dependency line accordingly
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:07:54 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_uwait d_uwait3: cat contains cppstdin cppminus +cppflags rm \
+ Setvar Findhdr
+?MAKE: -pick add $@ %<
+?S:d_uwait:
+?S: This symbol conditionally defines UNION_WAIT which indicates to the C
+?S: program that argument for the wait() system call should be declared as
+?S: 'union wait status' instead of 'int status'.
+?S:.
+?S:d_uwait3:
+?S: This symbol conditionally defines UNION_WAIT3 which indicates to the C
+?S: program that the first argument for the wait3() system call should be
+?S: declared as 'union wait status' instead of 'int status'.
+?S:.
+?C:UNION_WAIT:
+?C: This symbol if defined indicates to the C program that the argument
+?C: for the wait() system call should be declared as 'union wait status'
+?C: instead of 'int status'. You probably need to include <sys/wait.h>
+?C: in the former case (see I_SYSWAIT).
+?C:.
+?C:UNION_WAIT3:
+?C: This symbol if defined indicates to the C program that the first argument
+?C: for the wait3() system call should be declared as 'union wait status'
+?C: instead of 'int status'. You probably need to include <sys/wait.h>
+?C: in the former case (see I_SYS_WAIT). It seems safe to assume that the
+?C: same rule applies to the second parameter of wait4().
+?C:.
+?H:#$d_uwait UNION_WAIT /**/
+?H:#$d_uwait3 UNION_WAIT3 /**/
+?H:.
+?T:val2 flags f also
+?LINT:set d_uwait d_uwait3
+: see if union wait is available
+echo " "
+?X:
+?X: Unfortunately, we can't just grep <sys/wait.h> for "union wait" because
+?X: some weird systems (did I hear HP-UX?) define union wait only when _BSD
+?X: is defined. The same thing happens on OSF/1, who is pushing weirdness to
+?X: its limits by requiring wait() to use (int *) but wait3() to use
+?X: (union wait *), unless _BSD is defined and -lbsd is used, in which case
+?X: wait() also expects (union wait *). Aaargh!!--RAM
+?X:
+set X $cppflags
+shift
+flags=''
+also=''
+for f in $*; do
+ case "$f" in
+ *NO_PROTO*) ;;
+ *) flags="$flags $f";;
+ esac
+done
+xxx="`./findhdr sys/wait.h`"
+case "x$xxx" in
+x) xxx=/dev/null
+esac
+$cat "$xxx" | $cppstdin $flags $cppminus >wait.out 2>/dev/null
+if $contains 'union.*wait.*{' wait.out >/dev/null 2>&1 ; then
+ echo "Looks like your <sys/wait.h> knows about 'union wait'..." >&4
+ val="$define"
+@if UNION_WAIT
+ also='also '
+ if $contains 'extern.*wait[ ]*([ ]*int' wait.out >/dev/null 2>&1
+ then
+ echo "But wait() seems to expect an 'int' pointer (POSIX way)." >&4
+ val="$undef"
+ also=''
+ elif $contains 'extern.*wait[ ]*([ ]*union' wait.out >/dev/null 2>&1
+ then
+ echo "And indeed wait() expects an 'union wait' pointer (BSD way)." >&4
+ else
+ echo "So we'll use that for wait()." >&4
+ fi
+@end
+@if UNION_WAIT3 || d_uwait3
+ val2="$define"
+@end
+@if UNION_WAIT3
+ if $contains 'extern.*wait3[ ]*([ ]*int' wait.out >/dev/null 2>&1
+ then
+ echo "However wait3() seems to expect an 'int' pointer, weird." >&4
+ val2="$undef"
+ elif $contains 'extern.*wait3[ ]*([ ]*union' wait.out >/dev/null 2>&1
+ then
+ echo "And wait3() ${also}expects an 'union wait' pointer, fine." >&4
+ else
+ echo "As expected, wait3() ${also}uses an 'union wait' pointer." >&4
+ fi
+@end
+else
+ echo "No trace of 'union wait' in <sys/wait.h>..." >&4
+ val="$undef"
+@if UNION_WAIT && UNION_WAIT3
+ echo "Both wait() and wait3() will use a plain 'int' pointer then." >&4
+@elsif UNION_WAIT
+ echo "Your wait() should be happy with a plain 'int' pointer." >&4
+@elsif UNION_WAIT3
+ echo "Your wait3() should be happy with a plain 'int' pointer." >&4
+@end
+fi
+set d_uwait
+eval $setvar
+@if UNION_WAIT3 || d_uwait3
+val="$val2"; set d_uwait3
+eval $setvar
+@end
+$rm -f wait.out
+
--- /dev/null
+?RCS: $Id: d_vsnprintf.U 1.2 Sat, 30 Jun 2001 08:59:12 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: d_vsnprintf.U,v $
+?RCS: Revision 3.0 1993/08/18 12:07:59 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_vsnprintf: Guess cat +cc +ccflags Csym Setvar
+?MAKE: -pick add $@ %<
+?S:d_vsnprintf:
+?S: This variable conditionally defines the HAS_VSNPRINTF symbol, which
+?S: indicates to the C program that the vsnprintf() routine is available
+?S: to printf with a pointer to an argument list.
+?S:.
+?C:HAS_VSNPRINTF:
+?C: This symbol, if defined, indicates that the vsnprintf routine is
+?C: available to printf with a pointer to an argument list. If not, you
+?C: may need to write your own, probably in terms of _doprnt().
+?C:.
+?H:#$d_vsnprintf HAS_VSNPRINTF /**/
+?H:.
+?LINT:set d_vsnprintf
+: see if vsnprintf exists
+echo " "
+if set vsnprintf val -f d_vsnprintf; eval $csym; $val; then
+ echo 'vsnprintf() found.' >&4
+ val="$define"
+else
+ echo 'vsnprintf() NOT found.' >&4
+ val="$undef"
+fi
+set d_vsnprintf
+eval $setvar
+
--- /dev/null
+?RCS: $Id: i_arpanameser.U 1.1 Thu, 01 Feb 2001 14:47:02 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_arpanameser.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:15 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:i_arpanameser: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_arpanameser:
+?S: This variable conditionally defines the I_ARPA_NAMESER symbol,
+?S: and indicates whether a C program should include <arpa/nameser.h>.
+?S:.
+?C:I_ARPA_NAMESER:
+?C: This symbol, if defined, indicates to the C program that it should
+?C: include <arpa/nameser.h> to get nameser_addr and friends declarations.
+?C:.
+?H:#$i_arpanameser I_ARPA_NAMESER /**/
+?H:.
+?LINT:set i_arpanameser
+: see if arpa/nameser.h has to be included
+set arpa/nameser.h i_arpanameser
+eval $inhdr
+
--- /dev/null
+?RCS: $Id: i_errno.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_errno.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: Look whether <sys/page.h> needs to be included
+?X:
+?MAKE:i_errno i_syserrno: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_errno:
+?S: This variable conditionally defines the I_ERRNO symbol,
+?S: and indicates whether a C program can include <errno.h>.
+?S:.
+?S:i_syserrno:
+?S: This variable conditionally defines the I_SYS_ERRNO symbol,
+?S: and indicates whether a C program can include <sys/errno.h>.
+?S:.
+?C:I_ERRNO:
+?C: This symbol, if defined, indicates to the C program that it can
+?C: include <errno.h>.
+?C:.
+?C:I_SYS_ERRNO:
+?C: This symbol, if defined, indicates to the C program that it can
+?C: include <sys/errno.h>.
+?C:.
+?H:#$i_errno I_ERRNO /**/
+?H:.
+?H:#$i_syserrno I_SYS_ERRNO /**/
+?H:.
+?LINT:set i_errno i_syserrno
+: see if errno.h can be included
+set errno.h i_errno
+eval $inhdr
+: see if sys/errno.h can be included
+set sys/errno.h i_syserrno
+eval $inhdr
--- /dev/null
+?RCS: $Id: i_libintl.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_libintl.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: Look whether <libintl.h> can be included
+?X:
+?MAKE:i_libintl: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_libintl:
+?S: This variable conditionally defines the I_LIBINTL symbol,
+?S: and indicates whether a C program can include <libintl.h>.
+?S:.
+?C:I_LIBINTL:
+?C: This symbol, if defined, indicates to the C program that it can
+?C: include <libintl.h>.
+?C:.
+?H:#$i_libintl I_LIBINTL /**/
+?H:.
+?LINT:set i_libintl
+: see if libintl.h can be included
+set libintl.h i_libintl
+eval $inhdr
--- /dev/null
+?RCS: $Id: i_memory.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_memory.U,v $
+?RCS: Revision 1.2 1997/11/25 22:07:30 popiel
+?RCS: ,
+?RCS:
+?RCS: Revision 3.0.1.3 1994/06/20 07:01:55 ram
+?RCS: patch30: cosmetic changes
+?RCS:
+?RCS: Revision 3.0.1.2 1994/05/13 15:23:56 ram
+?RCS: patch27: modified to avoid spurious Whoa warnings (ADO)
+?RCS:
+?RCS: Revision 3.0.1.1 1994/05/06 15:02:25 ram
+?RCS: patch23: avoid conflicts with <string.h>
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:08:22 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:i_memory: Inhdr strings cppstdin cppflags cppminus contains rm Setvar
+?MAKE: -pick add $@ %<
+?S:i_memory:
+?S: This variable conditionally defines the I_MEMORY symbol, and indicates
+?S: whether a C program should include <memory.h>.
+?S:.
+?C:I_MEMORY:
+?C: This symbol, if defined, indicates to the C program that it should
+?C: include <memory.h>.
+?C:.
+?H:#$i_memory I_MEMORY /**/
+?H:.
+?LINT:set i_memory
+?X:
+?X: Unfortunately, the definitions of memory functions sometimes
+?X: conflict with those in <string.h>. We'll assume that if
+?X: <string.h> contains memcpy, then we don't need memory.h
+?X:
+: see if memory.h is available.
+val=''
+set memory.h val
+eval $inhdr
+
+: See if it conflicts with string.h
+case "$val" in
+$define)
+ case "$strings" in
+ '') ;;
+ *)
+ $cppstdin $cppflags $cppminus < "$strings" > mem.h
+ if $contains 'memcpy' mem.h >/dev/null 2>&1; then
+ echo " "
+ echo "We won't be including <memory.h>."
+ val="$undef"
+ fi
+ $rm -f mem.h
+ ;;
+ esac
+esac
+set i_memory
+eval $setvar
+
--- /dev/null
+?RCS: $Id: i_netdb.U 1.1 Mon, 26 Mar 2001 15:51:56 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_netdb.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: Look whether <netdb.h> needs to be included
+?X:
+?MAKE:i_netdb: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_netdb:
+?S: This variable conditionally defines the I_NETDB symbol,
+?S: and indicates whether a C program can include <errno.h>.
+?S:.
+?C:I_NETDB:
+?C: This symbol, if defined, indicates to the C program that it can
+?C: include <errno.h>.
+?C:.
+?H:#$i_netdb I_NETDB /**/
+?H:.
+?LINT:set i_netdb
+: see if netdb.h can be included
+set netdb.h i_netdb
+eval $inhdr
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_nitcp.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:24 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: This unit looks wether <netinet/in.h> is available or not
+?X:
+?MAKE:i_nitcp: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_nitcp:
+?S: This variable conditionally defines I_NETINET_TCP, which indicates
+?S: to the C program that it should include <netinet/tcp.h>.
+?S:.
+?C:I_NETINET_TCP:
+?C: This symbol, if defined, indicates to the C program that it should
+?C: include <netinet/tcp.h>.
+?C:.
+?H:#$i_nitcp I_NETINET_TCP /**/
+?H:.
+?LINT:set i_nitcp
+: see if this is a netinet/tcp.h system
+set netinet/tcp.h i_nitcp
+eval $inhdr
+
--- /dev/null
+?RCS: $Id: i_nl_types.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_nl_types.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: Look whether <nl_types.h> can be included
+?X:
+?MAKE:i_nl_types: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_nl_types:
+?S: This variable conditionally defines the I_NL_TYPES symbol,
+?S: and indicates whether a C program can include <nl_types.h>.
+?S:.
+?C:I_NL_TYPES:
+?C: This symbol, if defined, indicates to the C program that it can
+?C: include <nl_types.h>.
+?C:.
+?H:#$i_nl_types I_NL_TYPES /**/
+?H:.
+?LINT:set i_nl_types
+: see if nl_types.h can be included
+set nl_types.h i_nl_types
+eval $inhdr
--- /dev/null
+?RCS: $Id: i_setjmp.U 1.1 Wed, 29 Nov 2000 11:35:38 -0600 dunemush $
+?RCS:
+?RCS: Copyright (c) 200 Shawn Wagner
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS:
+?X:
+?X: Look whether <setjmp.h> can be included and setjmp/longjmp work
+?X: the way we expect.
+?X:
+?MAKE:i_setjmp: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_setjmp:
+?S: This variable conditionally defines the I_SETJMP symbol,
+?S: and indicates wether or not we have a working setjmp/longjmp.
+?S:.
+?C:I_SETJMP:
+?C: This symbol, if defined, indicates to the C program that it can
+?C: include <setjmp.h> and have things work right.
+?C:.
+?H:#$i_setjmp I_SETJMP /**/
+?H:.
+?LINT:set i_setjmp
+: see if setjmp.h can be included
+set setjmp.h i_setjmp
+eval $inhdr
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS:
+?MAKE:i_stdint: test Inlibc Cppsym Guess Setvar Findhdr
+?MAKE: -pick add $@ %<
+?S:i_stdint:
+?S: This variable conditionally defines the I_STDINT symbol, which
+?S: indicates to the C program that it should include <stdint.h>.
+?S:.
+?C:I_STDINT:
+?C: This symbol, if defined, indicates that the program should include
+?C: <stdint.h>.
+?C:.
+?H:#$i_stdint I_STDINT /**/
+?H:.
+?LINT:set i_stdint
+: see if this is a stdint system
+val="$undef"
+if $test "`./findhdr stdint.h`"; then
+ val="$define"
+ echo "<stdint.h> found." >&4
+fi
+echo " "
+set i_stdint; eval $setvar
--- /dev/null
+?RCS: $Id: i_sysioctl.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_sysioctl.U,v $
+?RCS: Revision 3.0.1.2 1994/05/06 15:04:57 ram
+?RCS: patch23: added knowledge for <sys/filio.h> (WED)
+?RCS: patch23: optimized amount of findhdr calls
+?RCS:
+?RCS: Revision 3.0.1.1 1993/11/10 17:36:09 ram
+?RCS: patch14: now use a compiler check for TIOCNOTTY because of HP-UX 9.x
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:08:32 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:i_sysioctl i_bsdioctl i_sysfilio i_syssockio d_voidtty: test contains \
+ cat i_termio i_termios i_sgtty Setvar Findhdr +cc rm Inhdr
+?MAKE: -pick add $@ %<
+?S:i_sysioctl:
+?S: This variable conditionally defines the I_SYS_IOCTL symbol, which
+?S: indicates to the C program that <sys/ioctl.h> exists and should
+?S: be included.
+?S:.
+?S:i_sysfilio:
+?S: This variable conditionally defines the I_SYS_FILIO symbol, which
+?S: indicates to the C program that <sys/filio.h> exists and should
+?S: be included in preference to <sys/ioctl.h>.
+?S:.
+?S:i_bsdioctl:
+?S: This variable conditionally defines the I_SYS_BSDIOCTL symbol, which
+?S: indicates to the C program that <sys/bsdioctl.h> exists and should
+?S: be included.
+?S:.
+?S:i_syssockio:
+?S: This variable conditionally defines I_SYS_SOCKIO to indicate to the
+?S: C program that socket ioctl codes may be found in <sys/sockio.h>
+?S: instead of <sys/ioctl.h>.
+?S:.
+?S:d_voidtty:
+?S: This variable conditionally defines USE_IOCNOTTY to indicate that the
+?S: ioctl() call with TIOCNOTTY should be used to void tty association.
+?S: Otherwise (on USG probably), it is enough to close the standard file
+?S: decriptors and do a setpgrp().
+?S:.
+?C:I_SYS_IOCTL (I_SYSIOCTL):
+?C: This symbol, if defined, indicates that <sys/ioctl.h> exists and should
+?C: be included. Otherwise, include <sgtty.h> or <termio.h>.
+?C:.
+?C:I_SYS_FILIO:
+?C: This symbol, if defined, indicates that <sys/filio.h> exists and
+?C: should be included instead of <sys/ioctl.h>.
+?C:.
+?C:I_SYS_BSDIOCTL (I_BSDIOCTL):
+?C: This symbol, if defined, indicates that <sys/bsdioctl.h> exists and should
+?C: be included. Otherwise, try <sys/ioctl.h>. This is primarly intended for
+?C: definitions of sockets options, like SIOCATMARK.
+?C:.
+?C:I_SYS_SOCKIO (I_SYSSOCKIO):
+?C: This symbol, if defined, indicates the <sys/sockio.h> should be included
+?C: to get socket ioctl options, like SIOCATMARK.
+?C:.
+?C:USE_TIOCNOTTY (VOIDTTY):
+?C: This symbol, if defined indicate to the C program that the ioctl()
+?C: call with TIOCNOTTY should be used to void tty association.
+?C: Otherwise (on USG probably), it is enough to close the standard file
+?C: decriptors and do a setpgrp().
+?C:.
+?H:#$i_sysioctl I_SYS_IOCTL /**/
+?H:#$i_sysfilio I_SYS_FILIO /**/
+?H:#$i_bsdioctl I_SYS_BSDIOCTL /**/
+?H:#$i_syssockio I_SYS_SOCKIO /**/
+?H:#$d_voidtty USE_TIOCNOTTY /**/
+?H:.
+?T:xxx
+: see if ioctl defs are in sgtty, termio, sys/filio or sys/ioctl
+?LINT:set i_sysfilio
+set sys/filio.h i_sysfilio
+eval $inhdr
+echo " "
+if $test "`./findhdr sys/ioctl.h`"; then
+ val="$define"
+ echo '<sys/ioctl.h> found.' >&4
+else
+ val="$undef"
+ if $test $i_sysfilio = "$define"; then
+ echo '<sys/ioctl.h> NOT found.' >&4
+ else
+ $test $i_sgtty = "$define" && xxx="sgtty.h"
+ $test $i_termio = "$define" && xxx="termio.h"
+ $test $i_termios = "$define" && xxx="termios.h"
+echo "No <sys/ioctl.h> found, assuming ioctl args are defined in <$xxx>." >&4
+ fi
+fi
+?LINT:set i_sysioctl
+set i_sysioctl
+eval $setvar
+
+@if I_BSDIOCTL || i_bsdioctl
+?X:
+?X: The only machine I know where this inclusion was necessary is a
+?X: BULL DPX 5000 (a French machine).
+?X:
+: see if socket ioctl defs are in sys/bsdioctl or sys/ioctl
+echo " "
+xxx="`./findhdr sys/bsdioctl.h`"
+if $test "$xxx"; then
+ if $contains SIOCATMARK $xxx >/dev/null 2>&1; then
+ val="$define"
+ echo "You have socket ioctls defined in <sys/bsdioctl.h>." >&4
+ else
+ val="$undef"
+ echo "No socket ioctls found in <sys/bsdioctl.h>." >&4
+ fi
+else
+ val="$undef"
+ echo "<sys/bsdioctl.h> not found, but that's ok." >&4
+fi
+?LINT:set i_bsdioctl
+set i_bsdioctl
+eval $setvar
+
+@end
+@if I_SYSSOCKIO || i_syssockio
+: see if socket ioctl defs are in sys/sockio.h
+echo " "
+xxx="`./findhdr sys/sockio.h`"
+if $test "$xxx"; then
+ if $contains SIOCATMARK $xxx >/dev/null 2>&1; then
+ val="$define"
+ echo "You have socket ioctls defined in <sys/sockio.h>." >&4
+ else
+ val="$undef"
+ echo "No socket ioctls found in <sys/sockio.h>." >&4
+ fi
+else
+ val="$undef"
+@if I_BSDIOCTL
+ case "$i_bsdioctl" in
+ "$define") $cat <<EOM
+<sys/sockio.h> not found, using ioctls from <sys/bsdioctl.h>.
+EOM
+ ;;
+ *) $cat <<EOM
+<sys/sockio.h> not found, assuming socket ioctls are in <sys/ioctl.h>.
+EOM
+ ;;
+ esac
+@else
+ $cat <<EOM
+<sys/sockio.h> not found, assuming socket ioctls are in <sys/ioctl.h>.
+EOM
+@end
+fi
+?LINT:set i_syssockio
+set i_syssockio
+eval $setvar
+
+@end
+@if VOIDTTY || d_voidtty
+: check how to void tty association
+echo " "
+case "$i_sysioctl" in
+"$define") xxx='sys/ioctl.h';;
+?X: otherwise $xxx was set during the determination of i_sysioctl, above.
+esac
+?X:
+?X: Can't use $contains here since HP-UX 9.x has TIOCNOTTY between a pair
+?X: of #ifdef/#endif and is never actually defined. Oh well...
+?X:
+$cat > tcio.c <<EOM
+#include <sys/types.h> /* Just in case */
+#include <$xxx>
+
+int main()
+{
+#ifdef TIOCNOTTY
+ exit(0);
+#else
+ exit(1);
+#endif
+}
+EOM
+if ($cc -o tcio tcio.c && ./tcio) >/dev/null 2>&1; then
+ val="$define"
+ echo "TIOCNOTTY found in <$xxx>." >&4
+ echo "Using ioctl() call on /dev/tty to void tty association." >&4
+else
+ val="$undef"
+ echo "Closing standard file descriptors should void tty association." >&4
+fi
+?LINT:set d_voidtty
+set d_voidtty
+eval $setvar
+$rm -f tcio tcio.? core
+
+@end
--- /dev/null
+?RCS: $Id: i_syspage.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_syspage.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: Look whether <sys/page.h> needs to be included
+?X:
+?MAKE:i_syspage: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_syspage:
+?S: This variable conditionally defines the I_SYS_PAGE symbol,
+?S: and indicates whether a C program should include <sys/page.h>.
+?S:.
+?C:I_SYS_PAGE (I_SYSPAGE):
+?C: This symbol, if defined, indicates to the C program that it should
+?C: include <sys/page.h>.
+?C:.
+?H:#$i_syspage I_SYS_PAGE /**/
+?H:.
+?LINT:set i_syspage
+: see if sys/page.h has to be included
+set sys/page.h i_syspage
+eval $inhdr
+
--- /dev/null
+?RCS: $Id: i_sysvlimit.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_sysvlimit.U,v $
+?RCS: Revision 3.0 1993/08/18 12:08:34 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?X:
+?X: Look wether <sys/vlimit.h> needs to be included
+?X:
+?MAKE:i_sysvlimit: Inhdr
+?MAKE: -pick add $@ %<
+?S:i_sysvlimit:
+?S: This variable conditionally defines the I_SYS_VLIMIT symbol,
+?S: and indicates whether a C program should include <sys/vlimit.h>.
+?S:.
+?C:I_SYS_VLIMIT (I_SYSVLIMIT):
+?C: This symbol, if defined, indicates to the C program that it should
+?C: include <sys/vlimit.h>.
+?C:.
+?H:#$i_sysvlimit I_SYS_VLIMIT /**/
+?H:.
+?LINT:set i_sysvlimit
+: see if sys/vlimit.h has to be included
+set sys/vlimit.h i_sysvlimit
+eval $inhdr
+
--- /dev/null
+?RCS: $Id: i_termio.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_termio.U,v $
+?RCS: Revision 3.0.1.4 1994/10/29 16:20:54 ram
+?RCS: patch36: call ./usg and ./Cppsym explicitely instead of relying on PATH
+?RCS:
+?RCS: Revision 3.0.1.3 1994/08/29 16:26:38 ram
+?RCS: patch32: don't include all threee I_* symbols in config.h
+?RCS: patch32: (had forgotten to undo this part last time)
+?RCS:
+?RCS: Revision 3.0.1.2 1994/05/13 15:25:03 ram
+?RCS: patch27: undone ADO's fix in previous patch since it was useless
+?RCS:
+?RCS: Revision 3.0.1.1 1994/05/06 15:05:23 ram
+?RCS: patch23: now include all three defines in config.h (ADO)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:08:44 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:i_termio i_sgtty i_termios: test Inlibc Cppsym Guess Setvar Findhdr
+?MAKE: -pick add $@ %<
+?S:i_termio:
+?S: This variable conditionally defines the I_TERMIO symbol, which
+?S: indicates to the C program that it should include <termio.h> rather
+?S: than <sgtty.h>.
+?S:.
+?S:i_termios:
+?S: This variable conditionally defines the I_TERMIOS symbol, which
+?S: indicates to the C program that the POSIX <termios.h> file is
+?S: to be included.
+?S:.
+?S:i_sgtty:
+?S: This variable conditionally defines the I_SGTTY symbol, which
+?S: indicates to the C program that it should include <sgtty.h> rather
+?S: than <termio.h>.
+?S:.
+?C:I_TERMIO:
+?C: This symbol, if defined, indicates that the program should include
+?C: <termio.h> rather than <sgtty.h>. There are also differences in
+?C: the ioctl() calls that depend on the value of this symbol.
+?C:.
+?C:I_TERMIOS:
+?C: This symbol, if defined, indicates that the program should include
+?C: the POSIX termios.h rather than sgtty.h or termio.h.
+?C: There are also differences in the ioctl() calls that depend on the
+?C: value of this symbol.
+?C:.
+?C:I_SGTTY:
+?C: This symbol, if defined, indicates that the program should include
+?C: <sgtty.h> rather than <termio.h>. There are also differences in
+?C: the ioctl() calls that depend on the value of this symbol.
+?C:.
+?H:#$i_termio I_TERMIO /**/
+?H:#$i_termios I_TERMIOS /**/
+?H:#$i_sgtty I_SGTTY /**/
+?H:.
+?T:val2 val3
+?LINT:set i_termio i_sgtty i_termios
+: see if this is a termio system
+val="$undef"
+val2="$undef"
+val3="$undef"
+?X: Prefer POSIX-approved termios.h over all else
+if $test "`./findhdr termios.h`"; then
+ set tcsetattr i_termios
+ eval $inlibc
+ val3="$i_termios"
+fi
+echo " "
+case "$val3" in
+"$define") echo "You have POSIX termios.h... good!" >&4;;
+*) if ./Cppsym pyr; then
+ case "`/bin/universe`" in
+ ucb) if $test "`./findhdr sgtty.h`"; then
+ val2="$define"
+ echo "<sgtty.h> found." >&4
+ else
+ echo "System is pyramid with BSD universe."
+ echo "<sgtty.h> not found--you could have problems." >&4
+ fi;;
+ *) if $test "`./findhdr termio.h`"; then
+ val="$define"
+ echo "<termio.h> found." >&4
+ else
+ echo "System is pyramid with USG universe."
+ echo "<termio.h> not found--you could have problems." >&4
+ fi;;
+ esac
+?X: Start with USG to avoid problems if both usg/bsd was guessed
+ elif ./usg; then
+ if $test "`./findhdr termio.h`"; then
+ echo "<termio.h> found." >&4
+ val="$define"
+ elif $test "`./findhdr sgtty.h`"; then
+ echo "<sgtty.h> found." >&4
+ val2="$define"
+ else
+echo "Neither <termio.h> nor <sgtty.h> found--you could have problems." >&4
+ fi
+ else
+ if $test "`./findhdr sgtty.h`"; then
+ echo "<sgtty.h> found." >&4
+ val2="$define"
+ elif $test "`./findhdr termio.h`"; then
+ echo "<termio.h> found." >&4
+ val="$define"
+ else
+echo "Neither <sgtty.h> nor <termio.h> found--you could have problems." >&4
+ fi
+ fi;;
+esac
+set i_termio; eval $setvar
+val=$val2; set i_sgtty; eval $setvar
+val=$val3; set i_termios; eval $setvar
+
--- /dev/null
+?RCS: $Id: i_varhdr.U 1.2 Tue, 30 Sep 2003 18:01:23 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: i_varhdr.U,v $
+?RCS: Revision 3.0.1.3 1997/02/28 15:54:42 ram
+?RCS: patch61: varargs script now starts with leading "startsh"
+?RCS:
+?RCS: Revision 3.0.1.2 1994/10/29 16:21:02 ram
+?RCS: patch36: added ?F: line for metalint file checking
+?RCS:
+?RCS: Revision 3.0.1.1 1994/05/13 15:26:05 ram
+?RCS: patch27: this unit now supersedes old i_stdarg.U and i_varargs.U
+?RCS: patch27: modified to avoid spurious Whoa warnings (ADO)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:08:49 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:i_stdarg i_varargs i_varhdr: cat cc ccflags rm test Setvar \
+ Findhdr startsh _o ldflags
+?MAKE: -pick add $@ %<
+?S:i_stdarg:
+?S: This variable conditionally defines the I_STDARG symbol, which
+?S: indicates to the C program that <stdarg.h> exists and should
+?S: be included.
+?S:.
+?S:i_varargs:
+?S: This variable conditionally defines I_VARARGS, which indicates
+?S: to the C program that it should include <varargs.h>.
+?S:.
+?S:i_varhdr:
+?S: Contains the name of the header to be included to get va_dcl definition.
+?S: Typically one of varargs.h or stdarg.h.
+?S:.
+?C:I_STDARG:
+?C: This symbol, if defined, indicates that <stdarg.h> exists and should
+?C: be included.
+?C:.
+?C:I_VARARGS:
+?C: This symbol, if defined, indicates to the C program that it should
+?C: include <varargs.h>.
+?C:.
+?H:#$i_stdarg I_STDARG /**/
+?H:.
+?H:#$i_varargs I_VARARGS /**/
+?H:.
+?W:%<:va_dcl
+?F:!varargs
+?T:valstd
+?LINT:set i_stdarg i_varargs
+?X:
+?X: Don't use setvar because the varags test below might override these.
+?X: Actually, the messages here are just informative. We don't wish to set
+?X: i_varargs or i_stdarg to their final value before knowing which of the
+?X: two we'll include.
+?X:
+: see if stdarg is available
+echo " "
+if $test "`./findhdr stdarg.h`"; then
+ echo "<stdarg.h> found." >&4
+ valstd="$define"
+else
+ echo "<stdarg.h> NOT found." >&4
+ valstd="$undef"
+fi
+
+: see if varags is available
+echo " "
+if $test "`./findhdr varargs.h`"; then
+ echo "<varargs.h> found." >&4
+else
+ echo "<varargs.h> NOT found, but that's ok (I hope)." >&4
+fi
+
+?X:
+?X: if you have stdarg.h, you need to support prototypes to actually use it;
+?X: but if stdarg.h exists and the compiler doesn't support prototypes (for some
+?X: bizarre reason), we'll fall back to varargs.h anyway so it's not so bad.
+?X:
+: set up the varargs testing programs
+$cat > varargs.c <<EOP
+#ifdef I_STDARG
+#include <stdarg.h>
+#endif
+#ifdef I_VARARGS
+#include <varargs.h>
+#endif
+
+#ifdef I_STDARG
+int f(char *p, ...)
+#else
+int f(va_alist)
+va_dcl
+#endif
+{
+ va_list ap;
+#ifndef I_STDARG
+ char *p;
+#endif
+#ifdef I_STDARG
+ va_start(ap,p);
+#else
+ va_start(ap);
+ p = va_arg(ap, char *);
+#endif
+ va_end(ap);
+}
+EOP
+$cat > varargs <<EOP
+$startsh
+if $cc -c $ccflags $ldflags -D\$1 varargs.c >/dev/null 2>&1; then
+ echo "true"
+else
+ echo "false"
+fi
+$rm -f varargs$_o
+EOP
+chmod +x varargs
+
+: now check which varargs header should be included
+echo " "
+i_varhdr=''
+case "$valstd" in
+"$define")
+ if `./varargs I_STDARG`; then
+ val='stdarg.h'
+ elif `./varargs I_VARARGS`; then
+ val='varargs.h'
+ fi
+ ;;
+*)
+ if `./varargs I_VARARGS`; then
+ val='varargs.h'
+ fi
+ ;;
+esac
+case "$val" in
+'')
+echo "I could not find the definition for va_dcl... You have problems..." >&4
+ val="$undef"; set i_stdarg; eval $setvar
+ val="$undef"; set i_varargs; eval $setvar
+ ;;
+*)
+ set i_varhdr
+ eval $setvar
+ case "$i_varhdr" in
+ stdarg.h)
+ val="$define"; set i_stdarg; eval $setvar
+ val="$undef"; set i_varargs; eval $setvar
+ ;;
+ varargs.h)
+ val="$undef"; set i_stdarg; eval $setvar
+ val="$define"; set i_varargs; eval $setvar
+ ;;
+ esac
+ echo "We'll include <$i_varhdr> to get va_dcl definition." >&4;;
+esac
+$rm -f varargs*
+
--- /dev/null
+?RCS: $Id: libc.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: libc.U,v $
+?RCS: Revision 3.0.1.10 1997/02/28 15:56:48 ram
+?RCS: patch61: replaced .a with $_a all over the place
+?RCS: patch61: added support for HPUX-10 nm output
+?RCS:
+?RCS: Revision 3.0.1.9 1995/07/25 14:11:56 ram
+?RCS: patch56: now knows about OS/2 platforms
+?RCS:
+?RCS: Revision 3.0.1.8 1995/05/12 12:20:47 ram
+?RCS: patch54: made sure only most recent version of shared lib is picked
+?RCS: patch54: final "nm -p" check now uses xscan and xrun like everybody
+?RCS: patch54: can now grok linux nm output with lead __IO (ADO)
+?RCS: patch54: added support for linux ELF output, using 'W' for alias (ADO)
+?RCS:
+?RCS: Revision 3.0.1.7 1994/10/29 16:23:40 ram
+?RCS: patch36: now looks for shared libraries before anything else (ADO)
+?RCS: patch36: added new nm output format (ADO)
+?RCS:
+?RCS: Revision 3.0.1.6 1994/08/29 16:28:10 ram
+?RCS: patch32: added I-type symbols for nm output parsing on Linux
+?RCS:
+?RCS: Revision 3.0.1.5 1994/06/20 07:03:24 ram
+?RCS: patch30: checks are now presented by succession of if/elif
+?RCS: patch30: uniformized checks for shared objects with new so symbol
+?RCS:
+?RCS: Revision 3.0.1.4 1994/05/06 15:06:33 ram
+?RCS: patch23: added shared library knowledge (ADO and WED)
+?RCS:
+?RCS: Revision 3.0.1.3 1994/01/24 14:12:17 ram
+?RCS: patch16: can now export nm_extract as an internal-use only variable
+?RCS:
+?RCS: Revision 3.0.1.2 1993/09/13 16:09:03 ram
+?RCS: patch10: added special handling for Apollo systems (WAD)
+?RCS:
+?RCS: Revision 3.0.1.1 1993/08/27 14:40:03 ram
+?RCS: patch7: added entry for /usr/shlib/libc.so (OSF/1 machines)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:08:57 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:libc +nm_extract: echo n c rm test grep Getfile Myread Oldconfig Loc \
+ sed libs incpath libpth runnm nm_opt nm_so_opt contains xlibpth so _a _o
+?MAKE: -pick add $@ %<
+?S:libc:
+?S: This variable contains the location of the C library.
+?S:.
+?S:nm_extract:
+?S: This variable holds the name of the extraction command used to process
+?S: the output of nm and yield the list of defined symbols. It is used
+?S: internally by Configure.
+?S:.
+?T:thislib try libnames xxx xscan xrun thisname com tans file
+?F:!libnames
+?LINT:change nm_opt
+case "$runnm" in
+true)
+?X: indentation is wrong on purpose--RAM
+: get list of predefined functions in a handy place
+echo " "
+case "$libc" in
+'') libc=unknown
+ case "$libs" in
+ *-lc_s*) libc=`./loc libc_s$_a $libc $libpth`
+ esac
+ ;;
+esac
+libnames='';
+case "$libs" in
+'') ;;
+*) for thislib in $libs; do
+ case "$thislib" in
+ -lc|-lc_s)
+ : Handle C library specially below.
+ ;;
+ -l*)
+ thislib=`echo $thislib | $sed -e 's/^-l//'`
+ if try=`./loc lib$thislib.$so.'*' X $libpth`; $test -f "$try"; then
+ :
+ elif try=`./loc lib$thislib.$so X $libpth`; $test -f "$try"; then
+ :
+ elif try=`./loc lib$thislib$_a X $libpth`; $test -f "$try"; then
+ :
+ elif try=`./loc $thislib$_a X $libpth`; $test -f "$try"; then
+ :
+ elif try=`./loc lib$thislib X $libpth`; $test -f "$try"; then
+ :
+ elif try=`./loc $thislib X $libpth`; $test -f "$try"; then
+ :
+ elif try=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$try"; then
+ :
+ else
+ try=''
+ fi
+ libnames="$libnames $try"
+ ;;
+ *) libnames="$libnames $thislib" ;;
+ esac
+ done
+ ;;
+esac
+?X:
+?X: Some systems (e.g. DG/UX) use "environmental" links, which make the test
+?X: -f fail. Ditto for symbolic links. So in order to reliably check the
+?X: existence of a file, we use test -r. It will still fail with DG/UX links
+?X: though, but at least it will detect symbolic links. At some strategic
+?X: points, we make use of (test -h), using a sub-shell in case builtin test
+?X: does not implement the -h check for symbolic links. This makes it
+?X: possible to preset libc in a hint file for instance and have it show up
+?X: as-is in the question.
+?X:
+xxx=normal
+case "$libc" in
+unknown)
+?X:
+?X: The sed below transforms .so.9 .so.12 into something like .so.0009 .so.0012,
+?X: then sorts on it to allow keeping .so.12 instead of .so.9 as the latest
+?X: up-to-date library. The initial filename (before sed munging, saved in hold
+?X: space via 'h') is appended via 'G' before sorting, then the leading munged
+?X: part is removed after sorting. Nice efficient work from Tye McQueen.
+?X: The initial blurfl is here to prevent the trailing pipe from producing an
+?X: empty string, causing Configure to output all its set variables!
+?X:
+ set /lib/libc.$so
+ for xxx in $libpth; do
+ $test -r $1 || set $xxx/libc.$so
+ $test -r $1 || \
+ set `echo blurfl; echo $xxx/libc.$so.[0-9]* | \
+ tr ' ' '\012' | egrep -v '\.[A-Za-z]*$' | $sed -e '
+ h
+ s/[0-9][0-9]*/0000&/g
+ s/0*\([0-9][0-9][0-9][0-9][0-9]\)/\1/g
+ G
+ s/\n/ /' | \
+ sort | $sed -e 's/^.* //'`
+ eval set \$$#
+ done
+ $test -r $1 || set /usr/ccs/lib/libc.$so
+ $test -r $1 || set /lib/libsys_s$_a
+ ;;
+*)
+?X: ensure the test below for the (shared) C library will fail
+ set blurfl
+ ;;
+esac
+if $test -r "$1"; then
+ echo "Your (shared) C library seems to be in $1."
+ libc="$1"
+elif $test -r /lib/libc && $test -r /lib/clib; then
+?X:
+?X: Apollo has its C library in /lib/clib AND /lib/libc
+?X: not to mention its math library in /lib/syslib...
+?X:
+ echo "Your C library seems to be in both /lib/clib and /lib/libc."
+ xxx=apollo
+ libc='/lib/clib /lib/libc'
+ if $test -r /lib/syslib; then
+ echo "(Your math library is in /lib/syslib.)"
+?X: Put syslib in libc -- not quite right, but won't hurt
+ libc="$libc /lib/syslib"
+ fi
+elif $test -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then
+ echo "Your C library seems to be in $libc, as you said before."
+?X: For mips, and...
+elif $test -r $incpath/usr/lib/libc$_a; then
+ libc=$incpath/usr/lib/libc$_a;
+ echo "Your C library seems to be in $libc. That's fine."
+elif $test -r /lib/libc$_a; then
+ libc=/lib/libc$_a;
+ echo "Your C library seems to be in $libc. You're normal."
+else
+ if tans=`./loc libc$_a blurfl/dyick $libpth`; $test -r "$tans"; then
+ :
+ elif tans=`./loc libc blurfl/dyick $libpth`; $test -r "$tans"; then
+ libnames="$libnames "`./loc clib blurfl/dyick $libpth`
+ elif tans=`./loc clib blurfl/dyick $libpth`; $test -r "$tans"; then
+ :
+ elif tans=`./loc Slibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then
+ :
+ elif tans=`./loc Mlibc$_a blurfl/dyick $xlibpth`; $test -r "$tans"; then
+ :
+ else
+ tans=`./loc Llibc$_a blurfl/dyick $xlibpth`
+ fi
+ if $test -r "$tans"; then
+ echo "Your C library seems to be in $tans, of all places."
+ libc=$tans
+ else
+ libc='blurfl'
+ fi
+fi
+if $test $xxx = apollo -o -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then
+ dflt="$libc"
+ cat <<EOM
+
+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.
+
+EOM
+else
+ dflt=''
+ echo $libpth | tr ' ' '\012' | sort | uniq > libpath
+ cat >&4 <<EOM
+I can't seem to find your C library. I've looked in the following places:
+
+EOM
+ $sed 's/^/ /' libpath
+ cat <<EOM
+
+None of these seems to contain your C library. I need to get its name...
+
+EOM
+fi
+fn=f
+rp='Where is your C library?'
+. ./getfile
+libc="$ans"
+
+echo " "
+echo $libc $libnames | tr ' ' '\012' | sort | uniq > libnames
+set X `cat libnames`
+shift
+xxx=files
+case $# in 1) xxx=file; esac
+echo "Extracting names from the following $xxx for later perusal:" >&4
+echo " "
+$sed 's/^/ /' libnames >&4
+echo " "
+$echo $n "This may take a while...$c" >&4
+
+?X:
+?X: Linux may need the special Dynamic option to nm for shared libraries.
+?X: In general, this is stored in the nm_so_opt variable.
+?X: Unfortunately, that option may be fatal on non-shared libraries.
+?X:
+for file in $*; do
+ case $file in
+ *$so*) nm $nm_so_opt $nm_opt $file 2>/dev/null;;
+ *) nm $nm_opt $file 2>/dev/null;;
+ esac
+done >libc.tmp
+
+$echo $n ".$c"
+?X:
+?X: To accelerate processing, we look at the correct 'sed' command
+?X: by using a small subset of libc.tmp, i.e. fprintf function.
+?X: When we know which sed command to use, do the name extraction
+?X:
+$grep fprintf libc.tmp > libc.ptf
+?X:
+?X: In order to ehance readability and save some space, we define
+?X: some variables that will be "eval"ed.
+?X:
+xscan='eval "<libc.ptf $com >libc.list"; $echo $n ".$c" >&4'
+xrun='eval "<libc.tmp $com >libc.list"; echo "done" >&4'
+?X: BSD-like output, I and W types added for Linux
+?X: Some versions of Linux include a leading __IO in the symbol name.
+?X: HPUX10 reportedly has trailing spaces, though I'm suprised it has
+?X: BSD-like output. (AD).
+xxx='[ADTSIW]'
+if com="$sed -n -e 's/__IO//' -e 's/^.* $xxx *_[_.]*//p' -e 's/^.* $xxx *//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+?X: SYSV-like output
+elif com="$sed -n -e 's/^__*//' -e 's/^\([a-zA-Z_0-9$]*\).*xtern.*/\1/p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e '/|UNDEF/d' -e '/FUNC..GL/s/^.*|__*//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e 's/^.* D __*//p' -e 's/^.* D //p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e 's/^_//' -e 's/^\([a-zA-Z_0-9]*\).*xtern.*text.*/\1/p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$grep '|' | $sed -n -e '/|COMMON/d' -e '/|DATA/d' \
+ -e '/ file/d' -e 's/^\([^ ]*\).*/\1/p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e 's/^.*|FUNC |GLOB .*|//p' -e 's/^.*|FUNC |WEAK .*|//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+?X: mips nm output (sysV)
+elif com="$sed -n -e 's/^__//' -e '/|Undef/d' -e '/|Proc/s/ .*//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e '/Def. Text/s/.* \([^ ]*\)\$/\1/p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+?X: OS/2 nm output
+elif com="$sed -n -e 's/^[-0-9a-f ]*_\(.*\)=.*/\1/p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+elif com="$sed -n -e 's/.*\.text n\ \ \ \.//p'";\
+ eval $xscan;\
+ $contains '^fprintf$' libc.list >/dev/null 2>&1; then
+ eval $xrun
+else
+ nm -p $* 2>/dev/null >libc.tmp
+ $grep fprintf libc.tmp > libc.ptf
+ if com="$sed -n -e 's/^.* [ADTSIW] *_[_.]*//p' -e 's/^.* [ADTSIW] //p'";\
+ eval $xscan; $contains '^fprintf$' libc.list >/dev/null 2>&1
+ then
+ nm_opt='-p'
+ eval $xrun
+ else
+ echo " "
+ echo "nm didn't seem to work right. Trying ar instead..." >&4
+ com=''
+ 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." >&4
+ else
+ echo "ar didn't seem to work right." >&4
+ echo "Maybe this is a Cray...trying bld instead..." >&4
+ 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." >&4
+ else
+ echo "That didn't work either. Giving up." >&4
+ exit 1
+ fi
+ fi
+ fi
+fi
+nm_extract="$com"
+if $test -f /lib/syscalls.exp; then
+ echo " "
+ echo "Also extracting names from /lib/syscalls.exp for good ole AIX..." >&4
+ $sed -n 's/^\([^ ]*\)[ ]*syscall$/\1/p' /lib/syscalls.exp >>libc.list
+fi
+?X: remember, indentation is wrong on purpose--RAM
+;;
+esac
+$rm -f libnames libpath
+
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS:
+?MAKE:libmysqlclient d_mysql: test Loc libpth _a cc ccflags ldflags libs rm cat
+?MAKE: -pick add $@ %<
+?S:libmysqlclient:
+?S: This variable contains the argument to pass to the loader in order
+?S: to get the ssl library routines. If there is no mysql
+?S: library, it is null.
+?S:.
+?S:d_mysql:
+?S: Defined if mysql client libraries are available.
+?S:.
+?C:HAS_MYSQL:
+?C: Defined if mysql client libraries are available.
+?C:.
+?H:#$d_mysql HAS_MYSQL /**/
+?H:.
+?T:xxx
+: see if we should include -lmysqlclient
+echo " "
+
+d_mysql="$undef"
+
+if $test "x$no_mysql" = "x"; then
+
+ libmysqlclient="-lmysqlclient"
+
+ $cat > test_mysql.c <<EOM
+#include <stdio.h>
+#include <stdlib.h>
+#include <mysql/mysql.h>
+#include <mysql/errmsg.h>
+
+int main(int argc, char **argv) {
+ printf("Your mysql is version %s\n",mysql_get_client_info());
+ exit(0);
+}
+EOM
+
+ if $cc $ccflags $ldflags -o test_mysql test_mysql.c $libs $libmysqlclient >/dev/null 2>&1 ;
+ then
+ echo 'You have mysql...' >&4
+ version=`./test_mysql`
+ if $test $? -eq 0; then
+ echo "$version" >&4
+ d_mysql="$define"
+ else
+ echo "...but my test program didn't run correctly." >&4
+ libmysqlclient=''
+ fi
+ else
+ echo "You don't seem to have mysql." >&4
+ libmysqlclient=''
+ fi
+ $rm -f test_mysql* core
+
+else
+
+ echo "Skipping mysql tests." >&4
+ libmysqlclient=''
+
+fi
+
--- /dev/null
+?RCS: $Id: libs.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: libs.U,v $
+?RCS: Revision 3.0.1.6 1997/02/28 16:09:11 ram
+?RCS: patch61: replaced .a with $_a all over the place
+?RCS:
+?RCS: Revision 3.0.1.5 1995/07/25 14:12:05 ram
+?RCS: patch56: now knows about OS/2 platforms
+?RCS:
+?RCS: Revision 3.0.1.4 1994/10/29 16:24:22 ram
+?RCS: patch36: removed old broken thislib/thatlib processing (ADO)
+?RCS:
+?RCS: Revision 3.0.1.3 1994/06/20 07:05:44 ram
+?RCS: patch30: code cleanup with if/elif by ADO and RAM
+?RCS: patch30: undone patch23 for libswanted default setting
+?RCS:
+?RCS: Revision 3.0.1.2 1994/05/06 15:08:45 ram
+?RCS: patch23: now includes ordered default libswanted variable (ADO)
+?RCS: patch23: major cleanup for library lookups (ADO)
+?RCS:
+?RCS: Revision 3.0.1.1 1993/08/25 14:02:31 ram
+?RCS: patch6: added default for libs
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:09:03 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:libs: test cat Myread Oldconfig Loc libpth package xlibpth so _a
+?MAKE: -pick add $@ %<
+?S:libs:
+?S: This variable holds the additional libraries we want to use.
+?S: It is up to the Makefile to deal with it.
+?S:.
+?T:xxx thislib libswanted
+?D:libs=''
+?X:
+?X: This order is chosen so that libraries -lndir, -ldir, -lucb, -lbsd,
+?X: -lBSD, -lPW, and -lx only get used if there are unresolved
+?X: routines at link time. Usually, these are backwards compatability
+?X: libraries, and may not be as reliable as the standard c library.
+?X:
+?X: The -lsocket -linet -lnsl order has been reported to be necessary
+?X: for at least one SVR4 implementation.
+?X: -lc must proceed -lucb or -lbsd for most Solaris applications.
+?X: -lc_s proceeds -lc so we pick up the shared library version, if
+?X: it is available.
+?X:
+?X: The ordering of c, posix, and cposix is a guess and almost
+?X: certainly wrong on about half of all systems.
+?X:
+?X: Set proper libswanted in your private Myinit.U if needed.
+?X:
+?X:: default ordered library list
+?X:libswanted='net socket inet nsl nm sdbm gdbm ndbm dbm malloc dl'
+?X:libswanted="$libswanted dld sun m c_s c posix cposix ndir dir ucb"
+?X:libswanted="$libswanted bsd BSD PW x"
+?X:
+?INIT:: default library list
+?INIT:libswanted=''
+: Looking for optional libraries
+echo " "
+echo "Checking for optional libraries..." >&4
+case "$libs" in
+' '|'') dflt='';;
+*) dflt="$libs";;
+esac
+case "$libswanted" in
+'') libswanted='c_s';;
+esac
+for thislib in $libswanted; do
+
+?X:
+?X: Comparaisons via case statement use the string " $dflt " to ensure that
+?X: each library is separated by a space. That way, by looking to something
+?X: like *"-l$thislib "*, we ensure we find -lm and not -lmalloc (which was
+?X: the case with the old looking pattern *-l$thislib*.
+?X:
+
+?X: A kludge - if we find libbind, we don't want libresolv
+
+ if $test "$thislib" = "resolv"; then
+ case " $dflt " in
+ *"-lbind "*) echo "We've already found -lbind, so we don't need -lresolv" ;;
+ *)
+
+ if xxx=`./loc lib$thislib.$so.[0-9]'*' X $libpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib (shared)."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ elif xxx=`./loc lib$thislib.$so X $libpth` ; $test -f "$xxx"; then
+ echo "Found -l$thislib (shared)."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ elif xxx=`./loc lib$thislib$_a X $libpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+?X: Don't forget about OS/2 where -lmalloc is spelled out malloc.a
+ elif xxx=`./loc $thislib$_a X $libpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ elif xxx=`./loc lib${thislib}_s$_a X $libpth`; $test -f "$xxx"; then
+ echo "Found -l${thislib}_s."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l${thislib}_s";;
+ esac
+ elif xxx=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ else
+ echo "No -l$thislib."
+ fi
+
+ ;;
+ esac
+ else
+
+ if xxx=`./loc lib$thislib.$so.[0-9]'*' X $libpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib (shared)."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ elif xxx=`./loc lib$thislib.$so X $libpth` ; $test -f "$xxx"; then
+ echo "Found -l$thislib (shared)."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ elif xxx=`./loc lib$thislib$_a X $libpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+?X: Don't forget about OS/2 where -lmalloc is spelled out malloc.a
+ elif xxx=`./loc $thislib$_a X $libpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ elif xxx=`./loc lib${thislib}_s$_a X $libpth`; $test -f "$xxx"; then
+ echo "Found -l${thislib}_s."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l${thislib}_s";;
+ esac
+ elif xxx=`./loc Slib$thislib$_a X $xlibpth`; $test -f "$xxx"; then
+ echo "Found -l$thislib."
+ case " $dflt " in
+ *"-l$thislib "*);;
+ *) dflt="$dflt -l$thislib";;
+ esac
+ else
+ echo "No -l$thislib."
+ fi
+
+ fi
+done
+set X $dflt
+shift
+dflt="$*"
+case "$libs" in
+'') dflt="$dflt";;
+*) dflt="$libs";;
+esac
+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 System V Release 3'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?"
+. ./myread
+case "$ans" in
+none) libs=' ';;
+*) libs="$ans";;
+esac
+
--- /dev/null
+?RCS: $Id: libssl.U 1.5 Tue, 08 Jun 2004 13:29:25 -0500 dunemush $
+?RCS:
+?RCS:
+?MAKE:libssl d_openssl: test Loc libpth _a cc ccflags ldflags libs rm cat
+?MAKE: -pick add $@ %<
+?S:libssl:
+?S: This variable contains the argument to pass to the loader in order
+?S: to get the ssl library routines. If there is no openssl
+?S: library, it is null.
+?S:.
+?S:d_openssl:
+?S: Defined if openssl 0.9.6+ is available.
+?S:.
+?C:HAS_OPENSSL:
+?C: Defined if openssl 0.9.6+ is available.
+?C:.
+?H:#$d_openssl HAS_OPENSSL /**/
+?H:.
+?T:xxx
+: see if we should include -lssl and -lcrypto
+echo " "
+
+d_openssl="$undef"
+
+if $test "x$no_openssl" = "x"; then
+
+ libssl="-lssl -lcrypto"
+
+ $cat > test_ssl.c <<EOM
+#include <stdio.h>
+#include <stdlib.h>
+#include <openssl/opensslv.h>
+int main(int argc, char **argv) {
+ printf("Your openssl is version %lx\n",OPENSSL_VERSION_NUMBER);
+ exit(OPENSSL_VERSION_NUMBER < 0x00906000L);
+}
+EOM
+
+ if $cc $ccflags $ldflags -o test_ssl test_ssl.c $libs $libssl >/dev/null 2>&1 ;
+ then
+ echo 'You have openssl...' >&4
+ version=`./test_ssl`
+ if $test $? -eq 0; then
+ echo '...and at least version 0.9.6. Great.' >&4
+ d_openssl="$define"
+ else
+ echo '...but not version 0.9.6 or later.' >&4
+ libssl=''
+ fi
+ else
+ echo "You don't seem to have openssl." >&4
+ libssl=''
+ fi
+ $rm -f test_ssl* core
+
+else
+
+ echo "Skipping openssl tests." >&4
+ libssl=''
+
+fi
+
--- /dev/null
+?RCS: $Id: mailer.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: mailer.U,v $
+?RCS: Revision 3.0.1.3 1995/01/11 15:32:11 ram
+?RCS: patch45: can now use Loc variables since path stripping is deferred
+?RCS:
+?RCS: Revision 3.0.1.2 1994/05/06 15:10:04 ram
+?RCS: patch23: ensure full path value is used for rmail also
+?RCS:
+?RCS: Revision 3.0.1.1 1994/01/24 14:14:18 ram
+?RCS: patch16: now use _sendmail vars and friends for portability issues
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:09:10 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:mailer: test cat rmail mail smail sendmail Getfile Oldconfig package
+?MAKE: -pick add $@ %<
+?S:mailer:
+?S: This variable contains the full pathname of a reasonable mailer.
+?S: By reasonable, we mean some program which can understand internet
+?S: addresses or at least forward them to some internet router. This
+?S: mailer should be invoked as "mailer [options] recipients <mail".
+?S:.
+: determine the name of a reasonable mailer
+case "$mailer" in
+'')
+ if $test -f "$sendmail"; then
+ dflt="$sendmail"
+ elif $test -f "$smail"; then
+ dflt="$smail"
+ elif $test -f "$rmail"; then
+ dflt="$rmail"
+ elif $test -f /bin/mail; then
+ dflt=/bin/mail
+ else
+ dflt=$mail
+ fi
+ ;;
+*) dflt="$mailer";;
+esac
+$cat <<EOM
+
+Later on, I'm going to offer you the chance to subscribe (or unsubscribe)
+to the $package mailing list. In order to do that, I need to figure out
+how to send mail, your name, and a few other things.
+
+I need the full pathname of the program used to deliver mail on your system.
+A typical answer would be /usr/lib/sendmail or /bin/rmail, but you may choose
+any other program, as long as it can be fed from standard input and will
+honour any user-supplied headers.
+
+EOM
+fn=f
+rp='Mail transport agent to be used?'
+. ./getfile
+mailer="$ans"
+
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: nametype.U,v $
+?RCS: Revision 3.0.1.3 1994/10/29 16:26:09 ram
+?RCS: patch36: call ./usg and ./bsd explicitely instead of relying on PATH
+?RCS:
+?RCS: Revision 3.0.1.2 1994/08/29 16:36:48 ram
+?RCS: patch32: fixed typo: /etc/password -> /etc/passwd (WED)
+?RCS:
+?RCS: Revision 3.0.1.1 1993/09/13 16:10:09 ram
+?RCS: patch10: made questions more explicit for 'Configure -s' prompting (WAD)
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:09:20 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:nametype d_passnames d_berknames d_usgnames: Myread Guess Oldconfig cat test osname
+?MAKE: -pick add $@ %<
+?S:nametype:
+?S: This variable indicates how full names are stored on this system.
+?S: Values are bsd, usg, and other.
+?S:.
+?S:d_passnames:
+?S: This variable conditionally defines the PASSNAMES symbol,
+?S: which indicates to the C program that full names are stored in
+?S: the /etc/passwd file.
+?S:.
+?S:d_berknames:
+?S: This variable conditionally defines the PASSNAMES symbol,
+?S: which indicates to the C program that full names are stored in
+?S: the /etc/passwd file in Berkeley format.
+?S:.
+?S:d_usgnames:
+?S: This variable conditionally defines the PASSNAMES symbol,
+?S: which indicates to the C program that full names are stored in
+?S: the /etc/passwd file in USG format.
+?S:.
+?C:PASSNAMES:
+?C: This symbol, if defined, indicates that full names are stored in
+?C: the /etc/passwd file.
+?C:.
+?C:BERKNAMES:
+?C: This symbol, if defined, indicates that full names are stored in
+?C: the /etc/passwd file in Berkeley format (name first thing, everything
+?C: up to first comma, with & replaced by capitalized login id, yuck).
+?C:.
+?C:USGNAMES:
+?C: This symbol, if defined, indicates that full names are stored in
+?C: the /etc/passwd file in USG format (everything after - and before ( is
+?C: the name).
+?C:.
+?H:#$d_passnames PASSNAMES /* (undef to take name from ~/.fullname) */
+?H:#$d_berknames BERKNAMES /* (that is, ":name,stuff:") */
+?H:#$d_usgnames USGNAMES /* (that is, ":stuff-name(stuff):") */
+?H:.
+: find out how to find out full name
+case "$d_berknames" in
+"$define")
+ dflt=y;;
+"$undef")
+ dflt=n;;
+*)
+ if ./bsd; then
+ dflt=y
+ elif ./xenix; then
+ dflt=y
+ elif $test "x$osname" = "xlinux"; then
+ dflt=y
+ else
+ dflt=n
+ fi
+ ;;
+esac
+$cat <<'EOM'
+
+Does your /etc/passwd file keep full names in Berkeley/V7 format (name first
+thing after ':' in GCOS field)? In that case, a typical entry in the password
+file looks like this:
+
+ guest:**paswword**:10:100:Mister Guest User:/usr/users:/bin/sh
+ ^^^^^^^^^^^^^^^^^
+EOM
+rp="Berkeley/V7 format for full name in /etc/passwd?"
+. ./myread
+case "$ans" in
+y*) d_passnames="$define"
+ d_berknames="$define"
+ d_usgnames="$undef"
+ nametype=bsd
+ ;;
+*)
+ case "$d_usgnames" in
+ "$define") dflt=y;;
+ "$undef") dflt=n;;
+ *)
+ if ./usg; then
+ dflt=y
+ else
+ dflt=n
+ fi
+ ;;
+ esac
+$cat <<'EOM'
+
+Does your passwd file keep full names in USG format (name sandwiched between a
+'-' and a '(')? In that case, a typical entry in the password file looks like
+this:
+
+ guest:**paswword**:10:100:000-Mister Guest User(000):/usr/users:/bin/sh
+ ^^^^^^^^^^^^^^^^^
+EOM
+ rp="USG format for full name in /etc/passwd?"
+ . ./myread
+ case "$ans" in
+ n*) echo "Full name will be taken from ~/.fullname"
+ d_passnames="$undef"
+ d_berknames="$undef"
+ d_usgnames="$undef"
+ nametype=other
+ ;;
+ *)
+ d_passnames="$define"
+ d_berknames="$undef"
+ d_usgnames="$define"
+ nametype=usg
+ ;;
+ esac;;
+esac
+
--- /dev/null
+?RCS: $Id$
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: sockopt.U,v $
+?RCS: Revision 3.0.1.1 1995/07/25 14:16:14 ram
+?RCS: patch56: obsoleted KEEPALIVE in favor of CAN_KEEPALIVE for consistency
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:09:48 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:d_keepalive d_keepidle: cat rm contains +cc +ccflags socketlib sockethdr \
+ d_oldsock libs Oldconfig Setvar Findhdr i_nitcp
+?MAKE: -pick add $@ %<
+?S:d_keepalive:
+?S: This symbol conditionally defines CAN_KEEPALIVE which indicates to the C
+?S: program that setsockopt SO_KEEPALIVE will work properly.
+?S:.
+?S:d_keepidle:
+?S: This symbol conditionally defines CAN_KEEPIDLE which indicates to the C
+?S: program that setsockopt TCP_KEEPIDLE will work properly.
+?S:.
+?C:CAN_KEEPALIVE:
+?C: This symbol if defined indicates to the C program that the SO_KEEPALIVE
+?C: option of setsockopt() will work as advertised in the manual.
+?C:.
+?C:CAN_KEEPIDLE:
+?C: This symbol if defined indicates to the C program that the TCP_KEEPIDLE
+?C: option of setsockopt() will work as advertised in the manual.
+?C:.
+?H:#$d_keepalive CAN_KEEPALIVE /**/
+?H:.
+?H:#$d_keepidle CAN_KEEPIDLE /**/
+?H:.
+?LINT:set d_keepalive d_keepidle
+: see if setsockopt with SO_KEEPALIVE works as advertised
+echo " "
+case "$d_oldsock" in
+"$undef")
+ echo "OK, let's see if SO_KEEPALIVE works as advertised..." >&4
+ $cat > socket.c <<EOP
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#$i_nitcp I_NETINET_TCP
+#ifdef I_NETINET_TCP
+#include <netinet/tcp.h>
+#endif
+#include <netdb.h>
+
+main()
+{
+ int s = socket(AF_INET, SOCK_STREAM, 0);
+ int val = 1;
+ if (s == -1)
+ exit(1);
+ if (-1 == setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, &val, sizeof(val)))
+ exit(2);
+#ifdef I_NETINET_TCP
+#ifdef TCP_KEEPIDLE
+ val = 1;
+ if (-1 == setsockopt(s, IPPROTO_TCP, TCP_KEEPIDLE, &val, sizeof(val)))
+ exit(3);
+#else
+ exit(3);
+#endif
+#endif
+ exit(0);
+}
+EOP
+ if $cc $ccflags $sockethdr socket.c -o socket $libs \
+ $socketlib >/dev/null 2>&1; then
+ ./socket >/dev/null 2>&1
+ case $? in
+ 0) echo "Yes, it does!"
+ val="$define"
+ val2="$i_nitcp"
+ ;;
+ 1) $cat <<EOM
+(Something went wrong -- Assuming SO_KEEPALIVE is broken)
+EOM
+ val="$undef"
+ val2="$undef"
+ ;;
+ 2) echo "No, it doesn't. Don't trust your manuals!!"
+ val="$undef"
+ val2="$undef"
+ ;;
+ 3) echo "It does, but TCP_KEEPIDLE doesn't."
+ val="$define"
+ val2="$undef"
+ ;;
+ esac
+ else
+ cat <<EOM
+(I can't compile the test program -- Assuming SO_KEEPALIVE is broken)
+EOM
+ val="$undef"
+ val2="$undef"
+ fi
+ ;;
+*) cat <<EOM
+As you have an old socket interface, you can't have heard of SO_KEEPALIVE.
+EOM
+ val="$undef"
+ val2="$undef";;
+esac
+set d_keepalive
+eval $setvar
+val="$val2"
+set d_keepidle
+eval $setvar
+$rm -f socket socket.c
+
--- /dev/null
+?RCS: $Id: usenm.U 1.1 Thu, 20 Jul 2000 17:42:54 -0500 dunemush $
+?RCS:
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS:
+?RCS: $Log: usenm.U,v $
+?RCS: Revision 3.0.1.1 1997/02/28 16:26:40 ram
+?RCS: patch61: don't use nm with the GNU C library
+?RCS: patch61: added support for Linux shared libs
+?RCS:
+?RCS: Revision 3.0 1993/08/18 12:09:57 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?RCS:
+?MAKE:usenm runnm nm_opt nm_so_opt: cat test Myread Oldconfig myuname grep \
+ d_gnulibc
+?MAKE: -pick add $@ %<
+?S:usenm:
+?S: This variable contains 'true' or 'false' depending whether the
+?S: nm extraction is wanted or not.
+?S:.
+?S:runnm:
+?S: This variable contains 'true' or 'false' depending whether the
+?S: nm extraction should be performed or not, according to the value
+?S: of usenm and the flags on the Configure command line.
+?S:.
+?S:nm_opt:
+?S: This variable holds the options that may be necessary for nm.
+?S:.
+?S:nm_so_opt:
+?S: This variable holds the options that may be necessary for nm
+?S: to work on a shared library but that can not be used on an
+?S: archive library. Currently, this is only used by Linux, where
+?S: nm --dynamic is *required* to get symbols from an ELF library which
+?S: has been stripped, but nm --dynamic is *fatal* on an archive library.
+?S: Maybe Linux should just always set usenm=false.
+?S:.
+: see if nm is to be used to determine whether a symbol is defined or not
+?X: If there is enough enquiries, it might be worth to wait for the nm
+?X: extraction. Otherwise, the C compilations might be a better deal.
+?X:
+?X: Don't bother if we're using GNU libc -- skimo
+case "$usenm" in
+'')
+ case "$d_gnulibc" in
+ $define)
+ dflt=n
+ ;;
+ *)
+ dflt=`egrep 'inlibc|csym' ../Configure | wc -l 2>/dev/null`
+ if $test $dflt -gt 20; then
+ dflt=y
+ else
+ dflt=n
+ fi
+ ;;
+ esac
+ ;;
+*)
+ case "$usenm" in
+ true) dflt=y;;
+ *) dflt=n;;
+ esac
+ ;;
+esac
+$cat <<EOM
+
+I can use 'nm' to extract the symbols from your C libraries. This is a time
+consuming task which may generate huge output on the disk (up to 3 megabytes)
+but that should make the symbols extraction faster. The alternative is to skip
+the 'nm' extraction part and to compile a small test program instead to
+determine whether each symbol is present. If you have a fast C compiler and/or
+if your 'nm' output cannot be parsed, this may be the best solution.
+If you see a lot of messages about functions NOT found that you know you
+have, re-run Configure and don't let me use 'nm'.
+
+EOM
+rp='Shall I use nm to extract C symbols from the libraries?'
+. ./myread
+case "$ans" in
+n|N) usenm=false;;
+*) usenm=true;;
+esac
+
+?X: Name extraction is to be run if 'nm' usage is wanted and if no -r flag
+?X: was provided to configure (in which case we simply re-use the previous
+?X: values).
+runnm=$usenm
+case "$reuseval" in
+true) runnm=false;;
+esac
+
+: nm options which may be necessary
+case "$nm_opt" in
+'') if $test -f /mach_boot; then
+ nm_opt=''
+ elif $test -d /usr/ccs/lib; then
+ nm_opt='-p'
+ elif $test -f /dgux; then
+ nm_opt='-p'
+ else
+ nm_opt=''
+ fi;;
+esac
+
+: nm options which may be necessary for shared libraries but illegal
+: for archive libraries. Thank you, Linux.
+case "$nm_so_opt" in
+'') case "$myuname" in
+ *linux*)
+ if nm --help | $grep 'dynamic' > /dev/null 2>&1; then
+ nm_so_opt='--dynamic'
+ fi
+ ;;
+ esac
+ ;;
+esac
+
+++ /dev/null
-case $CONFIG in
-'')
- if test -f config.sh; then TOP=.;
- elif test -f ../config.sh; then TOP=..;
- elif test -f ../../config.sh; then TOP=../..;
- elif test -f ../../../config.sh; then TOP=../../..;
- elif test -f ../../../../config.sh; then TOP=../../../..;
- else
- echo "Can't find config.sh."; exit 1
- fi
- . $TOP/config.sh
- ;;
-esac
-case "$0" in
-*/*) cd `expr X$0 : 'X\(.*\)/'` ;;
-esac
-echo "Extracting config.h (with variable substitutions)"
-sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!'
-/*
- * This file was produced by running the config_h.SH script, which
- * gets its values from config.sh, which is generally produced by
- * running Configure.
- *
- * Feel free to modify any of this as the need arises. Note, however,
- * that running config_h.SH again will wipe out any changes you've made.
- * For a more permanent change edit config.sh and rerun config_h.SH.
- *
- * \$Id: Config_h.U,v 3.0.1.5 1997/02/28 14:57:43 ram Exp $
- */
-
-/*
- * Package name : $package
- * Source directory : $src
- * Configuration time: $cf_time
- * Configured by : $cf_by
- * Target system : $myuname
- */
-
-#ifndef _config_h_
-#define _config_h_
-
-/* getdtablesize:
- * This catches use of the getdtablesize() subroutine, and remaps it
- * to either ulimit(4,0) or NOFILE, if getdtablesize() isn't available.
- */
-#$d_gettblsz getdtablesize() $tablesize /**/
-
-/* HAS_BCOPY:
- * This symbol is defined if the bcopy() routine is available to
- * copy blocks of memory.
- */
-#$d_bcopy HAS_BCOPY /**/
-
-/* HAS_BZERO:
- * This symbol is defined if the bzero() routine is available to
- * set a memory block to 0.
- */
-#$d_bzero HAS_BZERO /**/
-
-/* HASCONST:
- * This symbol, if defined, indicates that this C compiler knows about
- * the const type. There is no need to actually test for that symbol
- * within your programs. The mere use of the "const" keyword will
- * trigger the necessary tests.
- */
-#$d_const HASCONST /**/
-#ifndef HASCONST
-#define const
-#endif
-
-/* HAS_GETPRIORITY:
- * This symbol, if defined, indicates that the getpriority routine is
- * available to get a process's priority.
- */
-#$d_getprior HAS_GETPRIORITY /**/
-
-/* INTERNET:
- * This symbol, if defined, indicates that there is a mailer available
- * which supports internet-style addresses (user@site.domain).
- */
-#$d_internet INTERNET /**/
-
-/* HAS_ITIMER:
- * This symbol, if defined, indicates that the setitimer() routine exists.
- */
-#$d_itimer HAS_ITIMER /**/
-
-/* HAS_MEMSET:
- * This symbol, if defined, indicates that the memset routine is available
- * to set blocks of memory.
- */
-#$d_memset HAS_MEMSET /**/
-
-/* HAS_RENAME:
- * This symbol, if defined, indicates that the rename routine is available
- * to rename files. Otherwise you should do the unlink(), link(), unlink()
- * trick.
- */
-#$d_rename HAS_RENAME /**/
-
-/* HAS_GETRUSAGE:
- * This symbol, if defined, indicates that the getrusage() routine is
- * available to get process statistics with a sub-second accuracy.
- * Inclusion of <sys/resource.h> and <sys/time.h> may be necessary.
- */
-#$d_rusage HAS_GETRUSAGE /**/
-
-/* HAS_SELECT:
- * This symbol, if defined, indicates that the select routine is
- * available to select active file descriptors. If the timeout field
- * is used, <sys/time.h> may need to be included.
- */
-#$d_select HAS_SELECT /**/
-
-/* HAS_SETLOCALE:
- * This symbol, if defined, indicates that the setlocale routine is
- * available to handle locale-specific ctype implementations.
- */
-#$d_setlocale HAS_SETLOCALE /**/
-
-/* HAS_SETPGID:
- * This symbol, if defined, indicates that the setpgid(pid, gpid)
- * routine is available to set process group ID.
- */
-#$d_setpgid HAS_SETPGID /**/
-
-/* HAS_SETPGRP:
- * This symbol, if defined, indicates that the setpgrp routine is
- * available to set the current process group.
- */
-/* USE_BSD_SETPGRP:
- * This symbol, if defined, indicates that setpgrp needs two
- * arguments whereas USG one needs none. See also HAS_SETPGID
- * for a POSIX interface.
- */
-#$d_setpgrp HAS_SETPGRP /**/
-#$d_bsdsetpgrp USE_BSD_SETPGRP /**/
-
-/* HAS_SETPRIORITY:
- * This symbol, if defined, indicates that the setpriority routine is
- * available to set a process's priority.
- */
-#$d_setprior HAS_SETPRIORITY /**/
-
-/* HAS_SIGACTION:
- * This symbol, if defined, indicates that Vr4's sigaction() routine
- * is available.
- */
-#$d_sigaction HAS_SIGACTION /**/
-
-/* HAS_SOCKET:
- * This symbol, if defined, indicates that the BSD socket interface is
- * supported.
- */
-/* HAS_SOCKETPAIR:
- * This symbol, if defined, indicates that the BSD socketpair() call is
- * supported.
- */
-#$d_socket HAS_SOCKET /**/
-#$d_sockpair HAS_SOCKETPAIR /**/
-
-/* HAS_STRCASECMP:
- * This symbol, if defined, indicates that the strcasecmp() routine is
- * available for case-insensitive string compares.
- */
-#$d_strccmp HAS_STRCASECMP /**/
-
-/* HAS_STRDUP:
- * This symbol, if defined, indicates that the strdup routine is
- * available to duplicate strings in memory. Otherwise, roll up
- * your own...
- */
-#$d_strdup HAS_STRDUP /**/
-
-/* HAS_SYSCONF:
- * This symbol, if defined, indicates that sysconf() is available
- * to determine system related limits and options.
- */
-#$d_sysconf HAS_SYSCONF /**/
-
-/* VOIDSIG:
- * This symbol is defined if this system declares "void (*signal(...))()" in
- * signal.h. The old way was to declare it as "int (*signal(...))()". It
- * is up to the package author to declare things correctly based on the
- * symbol.
- */
-/* Signal_t:
- * This symbol's value is either "void" or "int", corresponding to the
- * appropriate return type of a signal handler. Thus, you can declare
- * a signal handler using "Signal_t (*handler)()", and define the
- * handler using "Signal_t handler(sig)".
- */
-#$d_voidsig VOIDSIG /**/
-#define Signal_t $signal_t /* Signal handler's return type */
-
-/* HASVOLATILE:
- * This symbol, if defined, indicates that this C compiler knows about
- * the volatile declaration.
- */
-#$d_volatile HASVOLATILE /**/
-#ifndef HASVOLATILE
-#define volatile
-#endif
-
-/* HAS_WAITPID:
- * This symbol, if defined, indicates that the waitpid routine is
- * available to wait for child process.
- */
-#$d_waitpid HAS_WAITPID /**/
-
-/* I_ARPA_INET:
- * This symbol, if defined, indicates to the C program that it should
- * include <arpa/inet.h> to get inet_addr and friends declarations.
- */
-#$i_arpainet I_ARPA_INET /**/
-
-/* I_FCNTL:
- * This manifest constant tells the C program to include <fcntl.h>.
- */
-#$i_fcntl I_FCNTL /**/
-
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#$i_limits I_LIMITS /**/
-
-/* I_LOCALE:
- * This symbol, if defined, indicates to the C program that it should
- * include <locale.h>.
- */
-#$i_locale I_LOCALE /**/
-
-/* I_MALLOC:
- * This symbol, if defined, indicates to the C program that it should
- * include <malloc.h>.
- */
-#$i_malloc I_MALLOC /**/
-
-/* I_NETINET_IN:
- * This symbol, if defined, indicates to the C program that it should
- * include <netinet/in.h>. Otherwise, you may try <sys/in.h>.
- */
-/* I_SYS_IN:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/in.h> instead of <netinet/in.h>.
- */
-#$i_niin I_NETINET_IN /**/
-#$i_sysin I_SYS_IN /**/
-
-/* I_STDDEF:
- * This symbol, if defined, indicates that <stddef.h> exists and should
- * be included.
- */
-#$i_stddef I_STDDEF /**/
-
-/* I_STDLIB:
- * This symbol, if defined, indicates that <stdlib.h> exists and should
- * be included.
- */
-#$i_stdlib I_STDLIB /**/
-
-/* I_STRING:
- * This symbol, if defined, indicates to the C program that it should
- * include <string.h> (USG systems) instead of <strings.h> (BSD systems).
- */
-#$i_string I_STRING /**/
-
-/* I_SYS_FILE:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/file.h> to get definition of R_OK and friends.
- */
-#$i_sysfile I_SYS_FILE /**/
-
-/* I_SYS_MMAN:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/mman.h>.
- */
-#$i_sysmman I_SYS_MMAN /**/
-
-/* I_SYS_PARAM:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/param.h>.
- */
-#$i_sysparam I_SYS_PARAM /**/
-
-/* I_SYS_RESOURCE:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/resource.h>.
- */
-#$i_sysresrc I_SYS_RESOURCE /**/
-
-/* I_SYS_SELECT:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/select.h> in order to get definition of struct timeval.
- */
-#$i_sysselct I_SYS_SELECT /**/
-
-/* I_SYS_SOCKET:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/socket.h> before performing socket calls.
- */
-#$i_syssock I_SYS_SOCKET /**/
-
-/* I_SYS_STAT:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/stat.h>.
- */
-#$i_sysstat I_SYS_STAT /**/
-
-/* I_SYS_TYPES:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/types.h>.
- */
-#$i_systypes I_SYS_TYPES /**/
-
-/* I_SYS_WAIT:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/wait.h>.
- */
-#$i_syswait I_SYS_WAIT /**/
-
-/* I_TIME:
- * This symbol, if defined, indicates to the C program that it should
- * include <time.h>.
- */
-/* I_SYS_TIME:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/time.h>.
- */
-#$i_time I_TIME /**/
-#$i_systime I_SYS_TIME /**/
-
-/* I_UNISTD:
- * This symbol, if defined, indicates to the C program that it should
- * include <unistd.h>.
- */
-#$i_unistd I_UNISTD /**/
-
-/* I_VALUES:
- * This symbol, if defined, indicates to the C program that it should
- * include <values.h> to get definition of symbols like MINFLOAT or
- * MAXLONG, i.e. machine dependant limitations. Probably, you
- * should use <limits.h> instead, if it is available.
- */
-#$i_values I_VALUES /**/
-
-/* Free_t:
- * This variable contains the return type of free(). It is usually
- * void, but occasionally int.
- */
-/* Malloc_t:
- * This symbol is the type of pointer returned by malloc and realloc.
- */
-#define Malloc_t $malloctype /**/
-#define Free_t $freetype /**/
-
-/* MYHOSTNAME:
- * This symbol contains name of the host the program is going to run on.
- * The domain is not kept with hostname, but must be gotten from MYDOMAIN.
- * The dot comes with MYDOMAIN, and need not be supplied by the program.
- * If gethostname() or uname() exist, MYHOSTNAME may be ignored. If MYDOMAIN
- * is not used, MYHOSTNAME will hold the name derived from PHOSTNAME.
- */
-#define MYHOSTNAME "$myhostname" /**/
-
-/* Pid_t:
- * This symbol holds the type used to declare process ids in the kernel.
- * It can be int, uint, pid_t, etc... It may be necessary to include
- * <sys/types.h> to get any typedef'ed information.
- */
-#define Pid_t $pidtype /* PID type */
-
-/* CAN_PROTOTYPE:
- * If defined, this macro indicates that the C compiler can handle
- * function prototypes.
- */
-/* _:
- * This macro is used to declare function parameters for folks who want
- * to make declarations with prototypes using a different style than
- * the above macros. Use double parentheses. For example:
- *
- * int main _((int argc, char *argv[]));
- */
-#$prototype CAN_PROTOTYPE /**/
-#ifdef CAN_PROTOTYPE
-#define _(args) args
-#else
-#define _(args) ()
-#endif
-
-/* Size_t:
- * This symbol holds the type used to declare length parameters
- * for string functions. It is usually size_t, but may be
- * unsigned long, int, etc. It may be necessary to include
- * <sys/types.h> to get any typedef'ed information.
- */
-#define Size_t $sizetype /* length paramater for string functions */
-
-/* VOIDFLAGS:
- * This symbol indicates how much support of the void type is given by this
- * compiler. What various bits mean:
- *
- * 1 = supports declaration of void
- * 2 = supports arrays of pointers to functions returning void
- * 4 = supports comparisons between pointers to void functions and
- * addresses of void functions
- * 8 = suports declaration of generic void pointers
- *
- * The package designer should define VOIDUSED to indicate the requirements
- * of the package. This can be done either by #defining VOIDUSED before
- * including config.h, or by defining defvoidused in Myinit.U. If the
- * latter approach is taken, only those flags will be tested. If the
- * level of void support necessary is not present, defines void to int.
- */
-#ifndef VOIDUSED
-#define VOIDUSED $defvoidused
-#endif
-#define VOIDFLAGS $voidflags
-#if (VOIDFLAGS & VOIDUSED) != VOIDUSED
-#define void int /* is void to be avoided? */
-#define M_VOID /* Xenix strikes again */
-#endif
-
-/* WIN32_CDECL:
- * Defined as __cdecl if the compiler can handle that keyword to specify
- * C-style argument passing conventions. This allows MS VC++
- * on Win32 to use the __fastcall convention for everything else
- * and get a performance boost. Any compiler with a brain (read:
- * not MS VC) handles this optimization automatically without such a
- * kludge. On these systems, this is defined as nothing.
- */
-#define WIN32_CDECL $cdecl
-
-/* CAN_TAKE_ARGS_IN_FP:
- * Defined if the compiler prefers that function pointer parameters
- * in prototypes include the function's arguments, rather than
- * nothing (that is, int (*fun)(int) rather than int(*fun)().
- */
-#$d_argsinfp CAN_TAKE_ARGS_IN_FP /**/
-
-/* HAS_ASSERT:
- * If defined, this system has the assert() macro.
- */
-#$d_assert HAS_ASSERT /**/
-
-/* HASATTRIBUTE:
- * This symbol indicates the C compiler can check for function attributes,
- * such as printf formats. This is normally only supported by GNU cc.
- */
-#$d_attribut HASATTRIBUTE /**/
-#ifndef HASATTRIBUTE
-#define __attribute__(_arg_)
-#endif
-
-/* HAS_BINDTEXTDOMAIN:
- * Defined if bindtextdomain is available().
- */
-#$d_bindtextdomain HAS_BINDTEXTDOMAIN /**/
-
-/* HAS_CRYPT:
- * This symbol, if defined, indicates that the crypt routine is available
- * to encrypt passwords and the like.
- */
-/* I_CRYPT:
- * This symbol, if defined, indicates that <crypt.h> can be included.
- */
-#$d_crypt HAS_CRYPT /**/
-
-#$i_crypt I_CRYPT /**/
-
-/* FORCE_IPV4:
- * If defined, this system will not use IPv6. Necessary for Openbsd.
- */
-#$d_force_ipv4 FORCE_IPV4 /**/
-
-/* HAS_FPSETROUND:
- * This symbol, if defined, indicates that the crypt routine is available
- * to encrypt passwords and the like.
- */
-/* I_FLOATINGPOINT:
- * This symbol, if defined, indicates that <crypt.h> can be included.
- */
-#$d_fpsetround HAS_FPSETROUND /**/
-
-#$d_fpsetmask HAS_FPSETMASK /**/
-
-#$i_floatingpoint I_FLOATINGPOINT /**/
-
-/* HAS_GAI_STRERROR:
- * This symbol, if defined, indicates that getaddrinfo()'s error cores
- * can be converted to strings for printing.
- */
-#$d_gaistr HAS_GAI_STRERROR /**/
-
-/* HAS_GETADDRINFO:
- * This symbol, if defined, indicates that the getaddrinfo() routine is
- * available to lookup internet addresses in some data base or other.
- */
-#$d_getadinf HAS_GETADDRINFO /**/
-
-/* HAS_GETDATE:
- * This symbol, if defined, indicates that the getdate() routine is
- * available to convert date strings into struct tm's.
- */
-#$d_getdate HAS_GETDATE /**/
-
-/* HAS_GETHOSTBYNAME2:
- * This symbol, if defined, indicates that the gethostbyname2()
- * function is available to resolve hostnames.
- */
-#$d_gethbynm2 HAS_GETHOSTBYNAME2 /**/
-
-/* HAS_GETNAMEINFO:
- * This symbol, if defined, indicates that the getnameinfo() routine is
- * available to lookup host names in some data base or other.
- */
-#$d_getnminf HAS_GETNAMEINFO /**/
-
-/* HAS_GETPAGESIZE:
- * This symbol, if defined, indicates that the getpagesize system call
- * is available to get system page size, which is the granularity of
- * many memory management calls.
- */
-/* PAGESIZE_VALUE:
- * This symbol holds the size in bytes of a system page (obtained via
- * the getpagesize() system call at configuration time or asked to the
- * user if the system call is not available).
- */
-#$d_getpagsz HAS_GETPAGESIZE /**/
-#define PAGESIZE_VALUE $pagesize /* System page size, in bytes */
-
-/* HAS_GETTEXT:
- * Defined if gettext is available().
- */
-#$d_gettext HAS_GETTEXT /**/
-
-/* HAS_HUGE_VAL:
- * If defined, this system has the HUGE_VAL constant. We like this,
- * and don't bother defining the other floats below if we find it.
- */
-/* HAS_HUGE:
- * If defined, this system has the HUGE constant. We like this, and
- * don't bother defining the other floats below if we find it.
- */
-/* HAS_INT_MAX:
- * If defined, this system has the INT_MAX constant.
- */
-/* HAS_MAXINT:
- * If defined, this system has the MAXINT constant.
- */
-/* HAS_MAXDOUBLE:
- * If defined, this system has the MAXDOUBLE constant.
- */
-#$d_huge_val HAS_HUGE_VAL /**/
-
-#$d_huge HAS_HUGE /**/
-
-#$d_int_max HAS_INT_MAX /**/
-
-#$d_maxint HAS_MAXINT /**/
-
-#$d_maxdouble HAS_MAXDOUBLE /**/
-
-/* HAS_IEEE_MATH:
- * Defined if the machine supports IEEE math - that is, can safely
- * return NaN or Inf rather than crash on bad math.
- */
-#$d_ieee HAS_IEEE_MATH /**/
-
-/* HAS_INET_PTON:
- * This symbol, if defined, indicates that the inet_pton() and
- * inet_ntop() routines are available to convert IP addresses..
- */
-#$d_in2p HAS_INET_PTON /**/
-
-/* HAS_IPV6:
- * If defined, this system has the sockaddr_in6 struct and AF_INET6.
- * We can't rely on just AF_INET6 being defined.
- */
-#$d_ipv6 HAS_IPV6 /**/
-
-/* SIGNALS_KEPT:
- * This symbol is defined if signal handlers needn't be reinstated after
- * receipt of a signal.
- */
-#$d_keepsig SIGNALS_KEPT /**/
-
-/* HAS_MEMCPY:
- * This symbol, if defined, indicates that the memcpy routine is available
- * to copy blocks of memory. If not, it will be mapped to bcopy
- * in confmagic.h
- */
-/* HAS_MEMMOVE:
- * This symbol, if defined, indicates that the memmove routine is available
- * to copy blocks of memory. If not, it will be mapped to bcopy
- */
-#$d_memcpy HAS_MEMCPY /**/
-
-#$d_memmove HAS_MEMMOVE /**/
-
-/* CAN_NEWSTYLE:
- * Defined if new-style function definitions are allowable.
- * If they are, we can avoid some warnings that you get if
- * you declare char arguments in a prototype and use old-style
- * function definitions, which implicitly promote them to ints.
- */
-#$d_newstyle CAN_NEWSTYLE /**/
-
-/* HAS_RANDOM:
- * Have we got random(), our first choice for number generation?
- */
-/* HAS_LRAND48:
- * Have we got lrand48(), our second choice?
- */
-/* HAS_RAND:
- * Have we got rand(), our last choice?
- */
-#$d_random HAS_RANDOM /**/
-#$d_lrand48 HAS_LRAND48 /**/
-#$d_rand HAS_RAND /**/
-
-/* HAS_GETRLIMIT:
- * This symbol, if defined, indicates that the getrlimit() routine is
- * available to get resource limits. Probably means setrlimit too.
- * Inclusion of <sys/resource.h> and <sys/time.h> may be necessary.
- */
-#$d_rlimit HAS_GETRLIMIT /**/
-
-/* SENDMAIL:
- * This symbol contains the full pathname to sendmail.
- */
-/* HAS_SENDMAIL:
- * If defined, we have sendmail.
- */
-#$d_sendmail HAS_SENDMAIL /**/
-#define SENDMAIL "$sendmail"
-
-/* HAS_SIGCHLD:
- * If defined, this system has the SIGCHLD constant.
- */
-/* HAS_SIGCLD:
- * If defined, this system has the SIGCLD constant (SysVish SIGCHLD).
- */
-#$d_sigchld HAS_SIGCHLD /**/
-
-#$d_sigcld HAS_SIGCLD /**/
-
-/* CAN_PROTOTYPE_SIGNAL:
- * This symbol is defined if we can safely prototype our rewritten
- * signal() function as:
- * Signal_t(*Sigfunc) _((int));
- * extern Sigfunc signal _((int signo, Sigfunc func));
- */
-#$d_signalproto CAN_PROTOTYPE_SIGNAL /**/
-
-/* HAS_SIGPROCMASK:
- * This symbol, if defined, indicates that POSIX's sigprocmask() routine
- * is available.
- */
-#$d_sigprocmask HAS_SIGPROCMASK /**/
-
-/* HAS_SNPRINTF:
- * This symbol, if defined, indicates that the snprintf routine is
- * available. If not, we use sprintf, which is less safe.
- */
-#$d_snprintf HAS_SNPRINTF /**/
-
-/* HAS_SOCKLEN_T:
- * If defined, this system has the socklen_t type.
- */
-#$d_socklen HAS_SOCKLEN_T /**/
-
-/* HAS_STRCHR:
- * This symbol is defined to indicate that the strchr()/strrchr()
- * functions are available for string searching. If not, try the
- * index()/rindex() pair.
- */
-/* HAS_INDEX:
- * This symbol is defined to indicate that the index()/rindex()
- * functions are available for string searching.
- */
-#$d_strchr HAS_STRCHR /**/
-#$d_index HAS_INDEX /**/
-
-/* HAS_STRCOLL:
- * This symbol, if defined, indicates that the strcoll routine is
- * available to compare strings using collating information.
- */
-#$d_strcoll HAS_STRCOLL /**/
-
-/* HAS_STRXFRM:
- * This symbol, if defined, indicates that the strxfrm routine is
- * available to transform strings using collating information.
- */
-#$d_strxfrm HAS_STRXFRM /**/
-
-/* HAS_TCL:
- * This symbol, if defined, indicates that the tcl library is available
- */
-/* I_TCL:
- * This symbol, if defined, indicates that <tcl.h> can be included.
- */
-/* HAS_TCL:
- * This symbol, if defined, means we have the tcl library
- */
-#$d_tcl HAS_TCL /**/
-
-/* I_TCL:
- * This symbol, if defined, means we have the <tcl.h> include file
- */
-#$i_tcl I_TCL /**/
-
-/* HAS_TEXTDOMAIN:
- * Defined if textdomain is available().
- */
-#$d_textdomain HAS_TEXTDOMAIN /**/
-
-/* HAS_TIMELOCAL:
- * This symbol, if defined, indicates that the timelocal() routine is
- * available.
- */
-#$d_timelocal HAS_TIMELOCAL /**/
-
-/* HAS_SAFE_TOUPPER:
- * Defined if toupper() can operate safely on any ascii character.
- * Some systems only allow toupper() on lower-case ascii chars.
- */
-#$d_toupper HAS_SAFE_TOUPPER /**/
-
-/* HAS_UINT32_T:
- * If defined, this system has the uint32_t type.
- */
-#$d_uint32_t HAS_UINT32_T /**/
-
-/* UPTIME_PATH:
- * This symbol gives the full path to the uptime(1) program if
- * it exists on the system. If not, this symbol is undefined.
- */
-/* HAS_UPTIME:
- * This symbol is defined if uptime(1) is available.
- */
-#$d_uptime HAS_UPTIME /**/
-#define UPTIME_PATH "$uptime"
-
-/* HAS_DEV_URANDOM:
- * This symbol is defined if /dev/urandom is available.
- */
-#$d_urandom HAS_DEV_URANDOM /**/
-
-/* UNION_WAIT:
- * This symbol if defined indicates to the C program that the argument
- * for the wait() system call should be declared as 'union wait status'
- * instead of 'int status'. You probably need to include <sys/wait.h>
- * in the former case (see I_SYSWAIT).
- */
-#$d_uwait UNION_WAIT /**/
-
-/* HAS_VSNPRINTF:
- * This symbol, if defined, indicates that the vsnprintf routine is
- * available to printf with a pointer to an argument list. If not, you
- * may need to write your own, probably in terms of _doprnt().
- */
-#$d_vsnprintf HAS_VSNPRINTF /**/
-
-/* I_ARPA_NAMESER:
- * This symbol, if defined, indicates to the C program that it should
- * include <arpa/nameser.h> to get nameser_addr and friends declarations.
- */
-#$i_arpanameser I_ARPA_NAMESER /**/
-
-/* I_ERRNO:
- * This symbol, if defined, indicates to the C program that it can
- * include <errno.h>.
- */
-/* I_SYS_ERRNO:
- * This symbol, if defined, indicates to the C program that it can
- * include <sys/errno.h>.
- */
-#$i_errno I_ERRNO /**/
-
-#$i_syserrno I_SYS_ERRNO /**/
-
-/* I_LIBINTL:
- * This symbol, if defined, indicates to the C program that it can
- * include <libintl.h>.
- */
-#$i_libintl I_LIBINTL /**/
-
-/* I_MEMORY:
- * This symbol, if defined, indicates to the C program that it should
- * include <memory.h>.
- */
-#$i_memory I_MEMORY /**/
-
-/* I_NETDB:
- * This symbol, if defined, indicates to the C program that it can
- * include <errno.h>.
- */
-#$i_netdb I_NETDB /**/
-
-/* I_NETINET_TCP:
- * This symbol, if defined, indicates to the C program that it should
- * include <netinet/tcp.h>.
- */
-#$i_nitcp I_NETINET_TCP /**/
-
-/* I_SETJMP:
- * This symbol, if defined, indicates to the C program that it can
- * include <setjmp.h> and have things work right.
- */
-#$i_setjmp I_SETJMP /**/
-
-/* I_STDINT:
- * This symbol, if defined, indicates that the program should include
- * <stdint.h>.
- */
-#$i_stdint I_STDINT /**/
-
-/* USE_TIOCNOTTY:
- * This symbol, if defined indicate to the C program that the ioctl()
- * call with TIOCNOTTY should be used to void tty association.
- * Otherwise (on USG probably), it is enough to close the standard file
- * decriptors and do a setpgrp().
- */
-#$d_voidtty USE_TIOCNOTTY /**/
-
-/* I_SYS_PAGE:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/page.h>.
- */
-#$i_syspage I_SYS_PAGE /**/
-
-/* I_SYS_VLIMIT:
- * This symbol, if defined, indicates to the C program that it should
- * include <sys/vlimit.h>.
- */
-#$i_sysvlimit I_SYS_VLIMIT /**/
-
-/* I_STDARG:
- * This symbol, if defined, indicates that <stdarg.h> exists and should
- * be included.
- */
-#$i_stdarg I_STDARG /**/
-
-/* HAS_MYSQL:
- * Defined if mysql client libraries are available.
- */
-#$d_mysql HAS_MYSQL /**/
-
-/* HAS_OPENSSL:
- * Defined if openssl 0.9.6+ is available.
- */
-#$d_openssl HAS_OPENSSL /**/
-
-/* CAN_KEEPALIVE:
- * This symbol if defined indicates to the C program that the SO_KEEPALIVE
- * option of setsockopt() will work as advertised in the manual.
- */
-/* CAN_KEEPIDLE:
- * This symbol if defined indicates to the C program that the TCP_KEEPIDLE
- * option of setsockopt() will work as advertised in the manual.
- */
-#$d_keepalive CAN_KEEPALIVE /**/
-
-#$d_keepidle CAN_KEEPIDLE /**/
-
-#endif
-!GROK!THIS!
+++ /dev/null
-
-& Entries
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-
-& &Entries
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+++ /dev/null
-
-& Entries
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- ^ ; :
- " ] @@
- @@() \ %
- %~ %: %!
- %# + 1.50p6
- 1.50p7 1.50p8 1.50p9
- 1.50p10 1.50p11 1.50p12
- 1.50p13 1.50p14 1.50pdune1
- 1.50pdune2 1.6.0p0 1.6.0p3
- 1.6.0p4 1.6.0p5 1.6.1p0
- 1.6.1p1 1.6.10p0 1.6.10p1
- 1.6.10p2 1.6.10p3 1.6.10p4
- 1.6.10p5 1.6.10p6 1.6.2p0
- 1.6.2p1 1.6.3p0 1.6.3p1
- 1.6.3p2 1.6.3p3 1.6.3p4
- 1.6.3p5 1.6.3p6 1.6.3p7
-
-For more, see Entries-2
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-2
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- 1.6.4p0 1.6.4p1 1.6.4p2
- 1.6.5p0 1.6.5p1 1.6.5p2
- 1.6.5p3 1.6.5p4 1.6.6p0
- 1.6.7p0 1.6.7p1 1.6.7p2
- 1.6.7p3 1.6.7p4 1.6.7p5
- 1.6.7p6 1.6.8p0 1.6.8p1
- 1.6.9p0 1.6.9p1 1.6.9p2
- 1.6.9p3 1.6.9p4 1.6.9p5
- 1.6.9p6 1.6.9p7 1.6.9p8
- 1.6.9p9 1.7.0p0 1.7.0p1
- 1.7.0p2 1.7.0p3 1.7.0p4
- 1.7.0p5 1.7.0p6 1.7.0p7
- 1.7.0p8 1.7.0p9 1.7.0p10
- 1.7.0p11 1.7.1p0 1.7.1p1
- 1.7.1p2 1.7.1p3 1.7.2p0
- 1.7.2p1 1.7.2p2 1.7.2p3
-
-For more, see Entries-3
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-3
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- 1.7.2p4 1.7.2p5 1.7.2p6
- 1.7.2p7 1.7.2p8 1.7.2p9
- 1.7.2p10 1.7.2p11 1.7.2p12
- 1.7.2p13 1.7.2p14 1.7.2p15
- 1.7.2p16 1.7.2p17 1.7.2p18
- 1.7.2p19 1.7.2p20 1.7.2p21
- 1.7.2p22 1.7.2p23 1.7.2p24
- 1.7.2p25 1.7.2p26 1.7.2p27
- 1.7.2p28 1.7.2p29 1.7.2p30
- 1.7.2p31 1.7.2p32 1.7.2p33
- 1.7.2p34 1.7.2p35 1.7.3p0
- 1.7.3p1 1.7.3p2 1.7.3p3
- 1.7.3p4 1.7.3p5 1.7.3p6
- 1.7.3p7 1.7.3p8 1.7.3p9
- 1.7.3p10 1.7.3p11 1.7.3p12
- 1.7.3p13 1.7.3p14 1.7.4p0
-
-For more, see Entries-4
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-4
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- 1.7.4p1 1.7.4p2 1.7.4p3
- 1.7.4p4 1.7.4p5 1.7.4p6
- 1.7.4p7 1.7.4p8 1.7.4p9
- 1.7.4p10 1.7.4p11 1.7.4p12
- 1.7.4p13 1.7.4p14 1.7.4p15
- 1.7.4p16 1.7.4p17 1.7.4p18
- 1.7.4p19 1.7.4p20 1.7.5p0
- 1.7.5p1 1.7.5p2 1.7.5p3
- 1.7.5p4 1.7.5p5 1.7.5p6
- 1.7.5p7 1.7.5p8 1.7.5p9
- 1.7.5p10 1.7.5p11 1.7.5p12
- 1.7.6p0 1.7.6p1 1.7.6p2
- 1.7.6p3 1.7.6p4 1.7.6p5
- 1.7.6p6 1.7.6p7 1.7.6p8
- 1.7.6p9 1.7.6p10 1.7.6p11
- 1.7.6p12 1.7.6p13 1.7.6p14
-
-For more, see Entries-5
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-5
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- 1.7.6p15 1.7.6p16 1.7.7p0
- 1.7.7p1 1.7.7p2 1.7.7p3
- 1.7.7p4 1.7.7p5 1.7.7p6
- 1.7.7p7 1.7.7p8 1.7.7p9
- 1.7.7p10 1.7.7p11 1.7.7p12
- 1.7.7p13 1.7.7p14 1.7.7p15
- 1.7.7p16 1.7.7p17 1.7.7p18
- 1.7.7p19 1.7.7p20 1.7.7p21
- 1.7.7p22 1.7.7p23 1.7.7p24
- 1.7.7p25 1.7.7p26 1.7.7p26
- 1.7.7p27 1.7.7p28 1.7.7p29
- 1.7.7p30 1.7.7p31 1.8.0p0
- 1.8.0p1 1.8.0p2 1.8.0p3
- 1.8.0p4 1.8.0p5 1.8.0p6
- 1.8.0p7 1.8.0p8 1.8.0p9
- 1.8.0p10 1.8.0p11 1.8.0p12
-
-For more, see Entries-6
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-6
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- 1.8.0p13 %2 %3
- %4 @aahear abode
- abs() @abuy accent()
- accent2 accent3 accent4
- accname() @aclone @aconnect
- acos() action2 action lists
- add() @adescribe @adestroy
- @adisconnect @adrop @aefail
- @aenter @afailure @afollow
- after() agenda @agive
- @ahear ahelp @aidescribe
- @aleave @alfail @alias
- alias() align() align2
- @allhalt allof() @allquota
- alphamax() alphamin() @amhear
- @amove ancestors and()
-
-For more, see Entries-7
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-7
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- andflags() andlflags() anews
- @announce anonymous2 anonymous3
- anonymous4 anonymous attributes ansi
- ansi() @apayment aposs()
- @areceive art() @asdin
- @asdout asin() @assert
- @asuccess atan() atan2()
- @atport @atrchown @atrlock
- atrlock() attrcnt() attrib-ownership
- attrib_set() @attribute attribute flags
- attribute functions attribute list @-attributes
- attributes attributes2 attributes3
- attributes4 attributes list attribute trees
- attribute trees2 attribute trees3 attribute trees4
- attr trees attr trees2 attr trees3
- attr trees4 audible audible2
-
-For more, see Entries-8
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-8
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @aufail @aunfollow @aunidle
- @ause auth_parent @away
- @azenter @azleave band()
- baseconv() beep() before()
- bitwise functions bnand() bnot()
- boolean2 boolean3 boolean functions
- boolean values @boot bor()
- bound() brackets() @break
- break() brief builder
- @-building @buy buy
- bxor() cand() capstr()
- case() caseall() cat()
- cbuffer() cd cdesc()
- ceil() @cemit cemit()
- center() cflags() ch
- changes @channel @channel2
-
-For more, see Entries-9
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-9
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @channel3 @channel4 @channel5
- channel functions channel-list channels()
- @charges @chat chat
- checkpass() children() @chown
- @chownall chown_ok chr()
- @chzone @chzone2 @chzoneall
- clflags() clients @clock
- clock() @clock2 @clone
- clone() cloudy cmds()
- cmsgs() cobramush code
- color @command @command2
- @command3 $-commands commands
- $-commands2 @comment communication functions
- comp() comsys con()
- @config config() @config attribs
- @config chat @config cmds @config cosmetic
-
-For more, see Entries-10
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-10
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @config cosmetic2 @config costs @config db
- @config dump @config funcs @config limits
- @config limits2 @config limits3 @config log
- @config net @config parameters @config tiny
- @conformat conn() connected
- connection functions contact control
- controls() convsecs() convtime()
- convutcsecs() copyright copyrite
- cor() cos() @cost
- costs cowner() @cpattr
- @create create() credits
- @cron @cron2 @cron3
- cstatus() ctime() ctitle()
- ctu() cusers() cv
- cwho() @dannounce dark
- dark2 database @dbck
-
-For more, see Entries-11
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-11
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- dbref # dbref2 dbref functions
- dbref number dbrefs debug
- debug2 @debugforwardlist dec()
- @decompile @decompile2 @decompile3
- decompose() decrypt() default()
- delete() @descformat @describe
- desert @destroy @destroy2
- destroy_ok die() @dig
- dig() @dig2 digest()
- @-director @disable dismiss
- dist2d() dist3d() div()
- @division division division()
- division commands division credits division functions
- division powers division powers2 division powers3
- division system division tutorial division tutorial2
- division tutorial3 divscope divscope()
-
-For more, see Entries-12
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-12
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @doing doing doing()
- @dolist downdiv() download
- @drain @drop drop
- drop-tos @dump dynhelp()
- e() @ealias edefault()
- @edit edit() @efail
- element() elements() elist()
- @elock elock() @emit
- emit() empire() empire objects
- @empower empty @enable
- enactor encrypt() endtag()
- @enter enter enter_ok
- @entrances entrances() eq()
- escape() etimefmt() etimefmt2
- etimefmt3 @eunlock eval()
- evaluation2 evaluation order events
-
-For more, see Entries-13
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-13
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- examine executor exit()
- @exitformat exits exits2
- exp() extract() @failure
- failure fdiv() @filter
- filter() @filter2 filterbool()
- @find findable() first()
- @firstexit firstof() fixed
- @flag @flag2 flag list
- flag permissions flags flags()
- flags2 flags list flip()
- floating floor() floordiv()
- fmod() fold() fold2
- folderstats() @follow follow
- followers() following() @force
- @force2 foreach() foreach2
- @forwardlist fraction() fullalias()
-
-For more, see Entries-14
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-14
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- fullname() @function @function2
- @function3 @function4 function list
- functions functions() functions2
- gagged @gedit gender
- @-general get get()
- get_eval() @give give
- global commands globals go
- going goto grab()
- graball() @grep2 @grep
- grep() gt() gte()
- guests @halt halt
- hasattr() hasattrp() hasattrpval()
- hasattrval() hasdivpower() hasflag()
- haspower() haspowergroup() hastype()
- @haven haven height()
- here hidden() @hide
-
-For more, see Entries-15
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-15
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- home home() homes
- @hook @hook2 host()
- hostname() html html()
- html functions i18n icfuncs
- @idescformat @idescribe @idle
- idle idle() idle_average()
- idlesecs() idle_total() if()
- ifelse() ilev() iname()
- inc() index index()
- indiv() indivall() @infilter
- info information functions informative topics
- inherit inheritable @inprefix
- insert() interiors interiors2
- internationalization inum() inventory
- @invformat ipaddr() isdaylight()
- isdbref() isint() isnum()
-
-For more, see Entries-16
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-16
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- isword() itemize() items()
- iter() iter2 itext()
- join jump_ok jury_ok
- @kick kickass kickass credits
- @lalias #lambda lambda
- last() @lastactivity lastip
- last & lastlogout lastsite lattr()
- lcon() lcstr() ldelete()
- @leave leave left()
- @lemit lemit() @level
- level() lexits() @lfail
- lflags() license light
- @link link() linking
- link_ok @list list()
- @listen @listen2 listening
- listening2 listening3 listen_parent
-
-For more, see Entries-17
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-17
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- list functions @listmotd lists
- lit() ljust() lmath()
- ln() lnum() loc()
- locale localize() locate()
- locate2 @lock lock()
- @lock2 @lock3 @lock4
- @lock5 @lock6 @lock7
- @lock8 @lock9 locking
- lock list locklist locks
- lock types locktypes lock types2
- locktypes2 @log log()
- logout @logwipe look
- look2 looping lparent()
- lplayers() lports() lpos()
- lsearch() lsearch2 lsearchr()
- @lset lstats() lt()
-
-For more, see Entries-18
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-18
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- lte() lvcon() lvexits()
- lvplayers() lwho() @map2
- macros macros2 @mail
- mail mail() mail-admin
- maildstats() @mailfilter mailfilter
- mail-folders mail-forward @mailforwardlist
- mailfrom() mailfstats() mail functions
- mail-other mail-reading mail-sending
- mailstats() mailstatus() mailsubject()
- mailtime() @malias @malias2
- @malias3 @malias4 @malias5
- @map map() mapsql()
- mapsql2 master room match()
- matchall() matching math functions
- max() me mean()
- median() member() merge()
-
-For more, see Entries-19
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-19
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- mid() min() mistrust
- mix() mix2 mod()
- modulo() modulus() money
- money() monitor mortal
- @motd @move move
- mtime() mudname() mul()
- multi-guests munge() munge2
- munge3 mushcode mushcode2
- mushcode topics @mvattr mwho()
- myopic %n @name
- name() @nameaccent @nameformat
- namegrab() namegraball() nand()
- nattr() nchildren() nearby()
- neq() newbie newbie2
- newbie3 new locks @newpassword
- news next() nlsearch()
-
-For more, see Entries-20
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-20
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- noaccents no_command no_leave
- noleave non-standard attributes nor()
- nospoof not() no_tel
- @notify no_warn nowarn
- nsearch() @nsemit @nslemit
- @nsoemit @nspemit @nsremit
- @nszemit @nuke null()
- num() obj() object parents
- objeval() objid() objmem()
- @obuy @odescribe @odrop
- @oefail @oemit oemit()
- @oenter @ofailure @ofollow
- @ogive @oidescribe @oleave
- @olfail @omove on-vacation
- opaque @opayment @open
- open() or() ord()
-
-For more, see Entries-21
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-21
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- ordinal() @oreceive orflags()
- orlflags() orphan @osuccess
- @otport @oufail @ounfollow
- @ouse outputprefix outputsuffix
- owner() @oxenter @oxleave
- @oxmove @oxtport @ozenter
- @ozleave page page2
- paranoid @parent parent
- parent() parents parents2
- parents3 parents4 parents5
- parse() @password patchlevels
- @payment @pcreate pcreate()
- @pemit pemit() @pemit2
- pennmush changes pennmush credits pghaspower()
- pgpowers() pi() pickrand()
- player playermem() pmatch()
-
-For more, see Entries-22
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-22
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @poll poll() @poor
- ports() pos() pose
- pose2 poss() @power
- power() @powergroup2 @powergroup3
- @powergroup powergroups() powers()
- powers2 powers3 powers list
- powers list2 powers list3 power types
- power yescodes pow_inherit powover()
- @prefix @pricelist privilege
- @program program() @program2
- @program3 @prompt prompt()
- @ps pueblo pueblo()
- pueblo features puppet puppets
- puppets2 @purge %q0
- %q1 %q2 %q3
- %q4 %q5 %q6
-
-For more, see Entries-23
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-23
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- %q7 %q8 %q9
- %qa %qb %qc
- %qd %qe %qf
- %qg %qh %qi
- %qj %qk %ql
- %qm %qn %qo
- %qp %qq %qr
- %qs %qt %qu
- queue quiet quit
- quitprog() @quota quota()
- %qv %qw %qx
- %qy %qz r()
- rand() randword() read
- @readcache @receive @reclass
- recv() @recycle regedit()
- regeditall() regeditalli() regediti()
-
-For more, see Entries-24
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-24
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- regexp regexp classes regexp classes2
- regexp examples regexps regexps2
- regexp syntax regexp syntax2 regexp syntax3
- regexp syntax4 regexp syntax5 regexp syntax6
- regexp syntax7 regexp syntax8 registers
- registers2 regmatch() regmatchi()
- regrab() regraball() regraballi()
- regrabi() regrep()
- regular expression functions @rejectmotd
- remainder() @remit remit()
- remove() repeat() replace()
- rest() @restart restarts()
- restarttime() restrict restrict2
- restrict3 reswitch() reswitchall()
- reswitchalli() reswitchi() reverse()
- revwords() r-function right()
-
-For more, see Entries-25
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-25
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- rjust() rloc() rnum()
- room room() root()
- round() royalty rquota
- rules @runout @rwall
- s() safe s-@announce
- say @scan scan()
- score scramble() screenheight
- screenwidth @sd s-@dannounce
- @sdin @sdout @search
- search() @search2 search2
- @search3 secs() secure()
- @select semaphores semaphores2
- semaphores3 semaphores4 semaphores5
- semaphores6 semipose sent()
- session @set set()
- setdiff() setinter() setq()
-
-For more, see Entries-26
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-26
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- setq2 setq3 setr()
- setting-attributes setunion() @sex
- sex s-function sha0()
- shared shared players shared players2
- shl() shr() shuffle()
- @shutdown sign() signal()
- sin() @sitelock @sitelock2
- @sitelock3 s-join softcode
- sort() sortby() sortkey()
- soundex() soundex2 soundlike()
- soundslike() space() spellnum()
- splice() spoofing @sql
- sql() sqlescape() sql functions
- sqrt() squish() @squota
- s-@reclass ssl() s-summon
- stack starttime() @startup
-
-For more, see Entries-27
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-27
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @stats stats() stddev()
- step2 step() sticky
- strcat() string functions strings
- strinsert() stripaccents() stripansi()
- strlen() strmatch() strreplace()
- @su sub() subj()
- substitutions substitutions2 substitutions3
- substitutions4 @success success
- summon suspect @sweep
- @switch switch() @switch2
- switch2 switchall() switches
- switch wildcards t() table()
- tag() tagwrap() take
- tan() teach tel()
- @teleport tel_ok temple
- terminfo() terse textfile()
-
-For more, see Entries-28
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-28
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- think time() timefmt()
- timefmt2 time functions timestring()
- topics2 topicszq @tport
- tr() track_money translation
- transparent transparent2 @trigger
- trigger() @trigger2 trim()
- trimpenn() trimtiny() trunc()
- trust type() types2
- types of objects u() u2
- ucstr() udefault() @ufail
- ufun() ufun2 uldefault()
- ulocal() ulocal2 @ulock
- @undestroy unfindable @unfollow
- unfollow unidle_times() uninspected
- @unlink @unlock @unrecycle
- unregistered updiv() @uptime
-
-For more, see Entries-29
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-29
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- @uptime2 @use use
- user-defined2 user-defined commands utctime()
- utility functions @uunlock v()
- vadd() val() valid()
- vcross() vdim() vdot()
- @verb @verb2 @verb3
- @verb4 verbose verbs
- @version version() v-function
- visible() visual vmag()
- vmax() vmin() vmul()
- vrml @vrml_url vsub()
- vtattr() vtcount vtcount()
- vtcreate() vtdestroy vtlcon()
- vtloc() vtlocate() vtm
- vtmaster() vtname() @vtplural
- vtref vtref() @vts
-
-For more, see Entries-30
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-30
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- vts vts functions vttel()
- vunit() @wait wait()
- @wait2 @wall @warnings
- warnings @warnings2 @warnings3
- warnings list warnings list2 @wcheck
- where() @whereis whisper
- whisper2 who width()
- wildcards @wipe wipe()
- with wizard @wizmotd
- @wizwall wordpos() words()
- wrap() xget() xor()
- @zclone zclone_ok @zemit
- zemit() @zenter zfun()
- @zleave zmo zmp
- zmr zone zone()
- zone master objects zone master rooms zone masters
-
-For more, see Entries-31
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-& Entries-31
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- zone objects zones zones2
- z_tel
-
-& &Entries
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- &help
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
--- /dev/null
+#!/bin/sh
+
+SELF=`which "$0"`
+DIR=`dirname "$SELF"`
+cd "$DIR"
+cd ..
+
+# Step 1: make it distribution-ready
+echo "Preparing distribution..."
+. ./scripts/preparedist.sh
+
+# Step 2: determine version
+echo "Determining version..."
+VERSION=`grep VERSION hdrs/version.h | sed 's/^.*"\(.*\)".*$/\1/'`
+echo "Version is $VERSION"
+
+# Step 3: make tarball
+echo "Making tarball..."
+TARBALL="cobramush-$VERSION.tar.gz"
+tar -czf "$TARBALL" `cat MANIFEST`
+
+echo "Tarball $TARBALL created"
+
--- /dev/null
+#!/bin/sh
+
+SELF=`which "$0"`
+DIR=`dirname "$SELF"`
+cd "$DIR"
+cd ..
+
+# Step 1: run metaconfig
+echo "Running metaconfig to generate Configure and config_h.SH..."
+metaconfig
+
+# Step 2: generate changes.txt
+echo "Generating changes.txt..."
+( cd game/txt && ruby genchanges.rb )
+
+# Step 3: index help files
+echo "Indexing help, news, and events..."
+cd game/txt
+for i in hlp nws evt ; do
+ cd $i
+ rm -f index.$i
+ cat *.$i | perl ../index-files.pl > index.$i
+ cd ..
+done
+
+cd ../..
+