# If these # comments don't work, trim them. Don't worry about the other
# shell scripts, Configure will trim # comments from them for you.
# $Header: Configure,v 4.3.1.5 85/05/23 11:23:22 lwall Exp $
# Revision 4.3.1.5 85/05/23 11:23:22 lwall
# filexp flubs sed command.
# Revision 4.3.1.4 85/05/20 17:13:11 lwall
# Makes sure -lcurses is really a terminfo library.
# Puts single instead of double quotes around defs in config.sh.
# Revision 4.3.1.3 85/05/16 16:48:48 lwall
# Took space from end of filexp output.
# Revision 4.3.1.2 85/05/13 15:54:35 lwall
# Libraries in /usr/local/lib shouldn't use -l switch.
# Revision 4.3.1.1 85/05/10 11:29:20 lwall
# Revision 4.3 85/05/01 11:31:23 lwall
# Baseline for release with 4.3bsd.
# Yes, you may rip this off to use in other distribution packages.
echo "Beginning of configuration questions for rn kit."
: Eunice requires
" " instead of
"", can you believe it
PATH
='.:/bin:/usr/bin:/usr/local/bin:/usr/ucb:/usr/local:/usr/lbin:/etc'
export PATH ||
(echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh
$0; kill $$
)
echo "Say 'sh Configure', not 'sh <Configure'"
: some greps
do not
return status
, grrr.
echo "grimblepritz" >grimble
if grep blurfldyick grimble
>/dev
/null
2>&1 ; then
if grep grimblepritz grimble
>/dev
/null
2>&1 ; then
: the following should work
in any shell
echo "AGH! Grep doesn't return a status. Attempting remedial action."
grep "$1" "$2" >.greptmp && cat .greptmp && test -s .greptmp
: first determine how to suppress newline on
echo command
echo "Checking echo to see how to suppress newlines..."
(echo "hi there\c" ; echo " ") >.echotmp
if $contains c .echotmp
>/dev
/null
2>&1 ; then
echo $n "Type carriage return to continue. Your cursor should be here-->$c"
: now
set up to
do reads with possible shell escape
: if this does not work on your machine
, 1,$s/. myread
/read ans
/
while expr "X\$ans" : "X!" >/dev/null; do
echo $n "Your answer: $c"
set \`expr "X\$ans" : "X!\(.*\)\$"\`
echo $n "Your answer: $c"
This installation shell script will examine your system and ask you questions
to determine how rn and its auxiliary files 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)".
Much effort has been expended to ensure that this shell script will run
on any Unix system. If despite that it blows up on you, your best bet is
to edit Configure and run it again. (Trying to install rn without having run
Configure is well nigh impossible.) Also, let me (lwall@sdcrdcf.UUCP) know
This installation script affects things in two ways: 1) it does direct
variable substitutions on some of the files included in this kit, and
2) it builds a config.h file for inclusion in C programs. You may edit
any of these files as the need arises after running this script.
echo $n "[Type carriage return to continue] $c"
: get old answers
, if there is a config
file out there
if test -f config.sh
; then
echo "(Fetching default answers from your old config.sh file...)"
: get list of predefined functions
in a handy place
if test -f /lib
/libc.a
; then
echo "Your C library is in /lib/libc.a. You're normal."
if test -f /usr
/lib
/libc.a
; then
echo "Your C library is in /usr/lib/libc.a, of all places."
echo "Your C library is in $libc, like you said before."
I can't seem to find your C library. I've looked for /lib/libc.a and
/usr/lib/libc.a, but neither of those are there. What is the full name
echo $n "of your C library? $c"
echo $n "Extracting names from $libc for later perusal...$c"
if ar t
$libc > libc.list
; then
echo "The archiver doesn't think $libc is a reasonable library."
: make some quick guesses about what we are up against
if $contains SIGTSTP
/usr
/include
/signal.h
>/dev
/null
2>&1 ; then
echo "Looks kind of like a BSD system, but we'll see..."
if $contains fcntl.o libc.list
>/dev
/null
2>&1 ; then
echo "Looks kind of like a USG system, but we'll see..."
echo "Looks kind of like a version 7 system, but we'll see..."
if $contains vmssystem.o libc.list
>/dev
/null
2>&1 ; then
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.
: it so happens the Eunice I know will not run shell scripts
in Unix format
echo "Congratulations. You aren't running Eunice."
chmod 755 bsd usg v7 eunice
$eunicefix bsd usg v7 eunice
: see how we invoke the C preprocessor
echo "Checking to see how your C preprocessor is invoked..."
echo 'Maybe "cc -E" will work...'
cc
-E testcpp.c
>testcpp.out
2>&1
if $contains 'abc+xyz' testcpp.out
>/dev
/null
2>&1 ; then
echo 'Nope...maybe "cc -P" will work...'
cc
-P testcpp.c
>testcpp.out
2>&1
if $contains 'abc+xyz' testcpp.out
>/dev
/null
2>&1 ; then
echo 'Nixed again...maybe "/lib/cpp" will work...'
/lib
/cpp testcpp.c
>testcpp.out
2>&1
if $contains 'abc+xyz' testcpp.out
>/dev
/null
2>&1 ; then
echo "Hooray, it works! I was beginning to wonder."
echo 'Hmm...maybe you already told me...'
*) $cpp testcpp.c
>testcpp.out
2>&1;;
if $contains 'abc+xyz' testcpp.out
>/dev
/null
2>&1 ; then
echo "Hooray, you did! I was beginning to wonder."
echo "Nope. I can't find a C preprocessor. Name one: $c"
$cpp testcpp.c
>testcpp.out
2>&1
if $contains 'abc+xyz' testcpp.out
>/dev
/null
2>&1 ; then
echo "Sorry, I can't get that to work. Go find one."
rm -f testcpp.c testcpp.out
: pdp11 is already defined
$cpp pdp11.c |
grep exit >pdp11
echo "This looks like a pdp11 to me."
echo "This doesn't look like a pdp11 to me."
: see
if sh knows
# comments
echo "Checking your sh to see if it knows about # comments..."
if sh
-c '#' >/dev
/null
2>&1 ; then
echo "Your sh handles # comments correctly."
echo "Okay, let's see if #! works on this system..."
echo "#!/bin/echo hi" > try
echo "#! /bin/echo hi" > try
echo "Your sh doesn't grok # comments--I will strip them later on."
echo "exec grep -v '^#'" >spitshell
spitshell
=`pwd`/spitshell
echo "I presume that if # doesn't work, #! won't work either!"
: figure out how to guarantee sh startup
echo "Checking out how to guarantee sh startup..."
startsh
=$sharpbang'/bin/sh'
echo "Let's see if '$startsh' works..."
echo "Nope. You may have to fix up the shell scripts to make sure sh runs them."
: find out where common programs are
echo "Locating common programs..."
pth
="/usr/ucb /bin /usr/bin /usr/local /usr/local/bin /usr/lbin /etc /usr/lib"
if test -d \$dir/\$thing; then
if test -f \$dir/\$thing; then
loclist
="expr sed echo cat rm mv cp tail tr mkdir sort uniq grep"
trylist
="test inews egrep more pg Mcc"
xxx
=`loc $file $file $pth`
echo "I don't know where $file is. I hope it's in everyone's PATH."
echo "Don't worry if any of the following aren't found..."
xxx
=`loc $file $file $pth`
echo "I don't see $file out there, offhand."
echo "Substituting grep for egrep."
echo "Hopefully test is built into your sh."
echo $n 'Is your "test" built into sh? [n] (OK to guess) '"$c"
echo "Hopefully echo is built into your sh."
echo "Checking compatibility between /bin/echo and builtin echo (if any)..."
$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."
echo "They are not compatible--the echo builtin will be used."
: decide how portable to be
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
2) ~username interpretations will be done at run time rather than
3) the system name will be determined at run time, if at all possible.
$echo $n "Do you expect to run these scripts and binaries on multiple machines? [$dflt] $c"
: set up shell
script to
do ~ expansion
$echo \$1 | $sed "s|~|\${HOME-\$LOGDIR}|"
if $test -f /bin/csh; then
/bin/csh -f -c "glob \$1"
name=\`$expr x\$1 : '..\([^/]*\)'\`
dir=\`$sed </etc/passwd -n -e "/^\${name}:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\).*"'\$'"/\1/" -e p -e q -e '}'\`
if $test ! -d "\$dir"; then
$echo "\$me: can't locate home directory for: \$name" >&2
$echo \$dir/\`$expr x\$1 : '..[^/]*/\(.*\)'\`
$echo "Figuring out site name..."
$echo 'Maybe "hostname" will work...'
if ans
=`sh -c hostname 2>&1` ; then
$echo 'No, maybe "uuname -l" will work...'
if ans
=`sh -c 'uuname -l' 2>&1` ; then
$echo 'Strange. Maybe "uname -n" will work...'
if ans
=`sh -c 'uname -n' 2>&1` ; then
$echo 'Oh well, maybe I can mine it out of whoami.h...'
if ans
=`sh -c $contains' sysname /usr/include/whoami.h' 2>&1` ; then
sitename
=`$echo "$ans" | $sed 's/^.*"\(.*\)"/\1/'`
hostcmd
="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' </usr/include/whoami.h"
'') echo "Does this machine have an identity crisis or something?"
*) echo "Well, you said $sitename before...";;
: you
do not want to know about this
: translate upper to lower
if necessary
sitename
=`$echo $sitename | tr '[A-Z]' '[a-z]'`
$echo "(Normalizing case in your site name)"
if $test "$sitename" ; then
$echo 'Your site name appears to be "'$sitename'".'
$echo $n "Is this correct? [y] $c"
while $test "X$sitename" = X
; do
$echo $n "Please type the (one word) name of your site: $c"
$echo "(That doesn't agree with your whoami.h file, by the way.)"
$echo "(That doesn't agree with your $hostcmd command, by the way.)"
longshots
='/usr/src/new /usr/src/local /usr/local/src'
'') if xxx
=`loc news/src/defs.h x $longshots`; then
dflt
=`$sed -n 's/^.*MYORG[ ]*"\(.*\)".*$/\1/p' $xxx`
Please
type the name of your organization as you want it to appear on the
Organization line of outgoing articles.
(It
's nice if this also specifies
your location. Your city name is probably sufficient if well known.)
University of Southern North Dakota, Hoople
You may also put the name of a file, as long as it begins with a slash.
while test "X$orgname" = "Xno default"; do
$echo $n "Organization: [$dflt] $c"
: get news administrator name
if $contains "^news:" /etc/passwd >/dev/null 2>&1 ; then
if $contains "^usenet:" /etc/passwd >/dev/null 2>&1 ; then
Many systems keep their news in a private directory, or have a non-superuser
in charge of administering news. (If you don't have such a user
, take the
default answer.
) What is the login name
(not directory
) that is used
for news
echo $n "administration? [$dflt] $c"
: figure out news library
while $test ! -d "$libexp"; do
*) $echo "Directory $libexp not found";;
echo $n "Where is your news library (~name okay)? [$dflt] $c"
echo "(That is $libexp on this particular system.)"
if $test -f $libexp/inews
; then
echo "Aha! Inews is really in $libexp! Maybe this is 2.10.2..."
echo "(Make sure $inews isn't an old version.)"
: determine where manual pages go
dflt
=`loc . /usr/man/man1 /usr/man/mann /usr/man/local/man1 /usr/man/u_man/man1 /usr/man/man1`
while $test ! -d "$mansrc" ; do
*) $echo "$mansrc does not appear to exist." ;;
$echo $n "Where do the manual pages (source) go? [$dflt] $c"
: determine where
mail is spooled
dflt
=`loc . /usr/spool/mail /usr/spool/mail /usr/mail`
while $test ! -d "$maildir" ; do
*) $echo "$maildir does not appear to exist." ;;
$echo $n "Where is yet-to-be-read mail spooled? [$dflt] $c"
: find out how to
find out full name
$echo "Does your /etc/passwd file keep full names in Berkeley/V7 format (name first"
$echo $n "thing after ':' in GCOS field)? [$dflt] $c"
$echo "Does your passwd file keep full names in USG format (name sandwiched"
$echo $n "between a '-' and a '(')? [$dflt] $c"
$echo "Full name will be taken from ~/.fullname"
: see
if we need a special compiler
if $contains '\-M' $mansrc/cc
.1 >/dev
/null
2>&1 ; then
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. What command will force resolution on
$echo $n "this system? [$dflt] $c"
$echo "Not a USG system--assuming cc can resolve multiple definitions."
: see
if we should throw a
-i into the Makefile
if $contains '\-i' $mansrc/cc
.1 >/dev
/null
2>&1 ; then
$echo $n "Your system appears to have separate I and D space. Is this true? [y] $c"
$echo "Your system appears to NOT have separate I and D space."
$echo $n "Is this correct? [y] $c"
$echo "Not a pdp11--assuming no separate I and D."
if $contains index.o libc.list
>/dev
/null
2>&1 ; then
$echo "Your system appears to use index() and rindex() rather than strchr()"
$echo $n "and strrchr(). Is this correct? [y] $c"
n
*|f
*) strchr
='define' ;;
$echo "Your system appears to use strchr() and strrchr() rather than index()"
$echo $n "and rindex(). Is this correct? [y] $c"
: determine how to determine when a
file is a mailbox
In saving articles, rn wants to differentiate between saving to mailbox
format files and normal files. It does this by examining the first character
of the file in question. On most systems the first line starts "From...",
so the first character is F. On other systems there are magic cookies like
control codes between articles, so one of those would be first. On your
system, if a file is in mailbox format, what is the first character of
echo $n "that file? [$dflt] $c"
You will need to edit the shell script mbox.saver to properly append an
article to a mailbox. The arguments to the script are documented in
echo "comments in mbox.saver.std."
echo "comments in the shell script itself."
: where
do we get termlib routines from
ans
=`loc libcurses.a x /usr/lib /usr/local/lib /lib`
if $contains tputs.o grimble
>/dev
/null
2>&1; then
$echo "Terminfo library found."
ans
=`loc libtermlib.a x /usr/lib /usr/local/lib /lib`
$echo "Termlib library found."
$echo "Termlib library found."
ans
=`loc libtermcap.a x /usr/lib /usr/local/lib /lib`
$echo "Termcap library found."
$echo "Termcap library found."
$echo $n "Your system appears to NOT have termlib-style routines. Is this true? [y] $c"
$echo "Then where are the termlib-style routines kept (specify either -llibname"
$echo $n " or full pathname (~name ok))? $c"
$echo "You will have to play around with term.c then."
*) $echo "You said termlib was $termlib before."
: see
if there is a whoami
file
if $test -r /usr
/include
/whoami.h
; then
: see
if this is a termio system
if $test -r /usr
/include
/termio.h
; then
if $test -r /usr
/include
/sgtty.h
; then
$echo "Neither termio.h nor sgtty.h found--you could have problems."
: see
if this is a termio system
if $test -r /usr
/include
/fcntl.h
; then
$echo "No fcntl.h found, but that's ok."
: see
if ioctl defs are
in sgtty
/termio or sys
/ioctl
if $test -r /usr
/include
/sys
/ioctl.h
; then
$echo "sys/ioctl.h found."
$echo "sys/ioctl.h not found, assuming ioctl args are defined in sgtty.h."
: see
if there is a vfork
if $contains vfork.o libc.list
>/dev
/null
2>&1 ; then
$echo "No vfork() found--will use fork() instead."
: see
if there is a getpw
if $contains getpw.o libc.list
>/dev
/null
2>&1 ; then
$echo "No getpw() found--will use getpwent() instead."
: see how we will
look up site name
if $contains gethostname.o libc.list
>/dev
/null
2>&1 ; then
$echo "gethostname() found."
if $contains uname.o libc.list
>/dev
/null
2>&1 ; then
There is no gethostname() or uname() on this system. You have two
possibilites at this point:
1) You can have your site name ($sitename) compiled into rn, which lets rn
start up faster, but makes your binaries non-portable, or
which will start slower but be more portable.
Option 1 will use whoami.h if you have one. If you want option 2 but with
a different command, you can edit config.h after this shell script is done.
$echo $n "Do you want your site name compiled in? [$dflt] $c"
*) hostcmd
='' phostname
=undef
;;
$echo 'No hostname function--using whoami.h.'
$echo 'No hostname function--hardwiring "'$sitename'".'
: see
if we need
-ljobs and
if we have sigset
, etc.
if $test -r /usr
/lib
/libjobs.a ||
$test -r /usr
/local
/lib
/libjobs.a
; then
$echo "Jobs library found."
$echo "No jobs library found. (I suppose this is at least 4.2...)"
$echo "No jobs library found. (That's okay, we all have our faults.)"
: see
if there are directory access routines out there
if $test -r /usr
/lib
/libndir.a ||
$test -r /usr
/local
/lib
/libndir.a
; then
$echo "Ndir library found."
if $test -r /usr
/lib
/libndir.a
; then
ndirlib
="/usr/local/lib/libndir.a"
if $contains readdir.o libc.list
>/dev
/null
2>&1 ; then
$echo "No ndir library found, but you have readdir() so we'll use that."
$echo "No ndir library found and no readdir() found--using ./ndir.c."
while $test ! -d $ans; do
*) echo "Directory $ans not found.";;
$echo $n "Where is news spooled (~name ok)? [$dflt] $c"
echo "(That is $ans on this particular system.)"
while $test ! -f "$myactive"; do
*) "File $myactive not found.";;
$echo $n "Where is the active file (~name ok)? [$dflt] $c"
myactive
=`filexp $active`
echo "(That is $myactive on this particular system.)"
undef
) active
=$myactive ;;
if $test -d $myactive ; then
myactive
=$myactive/active
: check
for 2.10.2 and above
if $contains ' [0-9][0-9]* [0-9]' "$myactive" >/dev
/null
2>&1; then
$echo $n "Are you running 2.10.3 or above? [${dflt}] $c"
echo "Looks like you are running at least 2.10.2 news."
echo "It doesn't look like you are running 2.10.2 news yet. Are you planning"
echo $n "to install it in the near future? [y] $c"
$echo "Checking to see if your C compiler groks the void type..."
if cc
-c try.c
>/dev
/null
2>&1 ; then
$echo "Nope, it doesn't (boo hiss). I will substitute int."
: find out
which shell people like to use most
while $test ! -f "$ans" ; do
*) $echo "$ans does not appear to exist." ;;
if $test -f /bin
/ksh
; then
if $test -f /bin
/csh
; then
$echo "Give the full path name of the shell most people like to use on your"
$echo $n "system: [$dflt] $c"
: locate the preferred pager
for this system
while $test ! -f "$pager" ; do
$echo "(If your kernel does terminal paging then you may answer this with '/bin/cat'.)"
/*) $echo "$pager does not appear to exist."
*) $echo "Please give the full path name."
$echo $n "What pager is used on your system? [$dflt] $c"
: determine default editor
while $test ! -f "$defeditor" ; do
*) $echo "$defeditor does not appear to exist." ;;
$echo $n "What is the default editor on your system? [$dflt] $c"
: determine mailer
for Rnmail to use
if $test -f /usr
/lib
/sendmail
; then
if usg
&& $test -f $libexp/recmail
; then
echo "Mail sender is $mailer"
: check
for internet mailer
Some newer mailers can deliver mail to addresses of the INTERNET persuasion,
such as user@host.UUCP. Other older mailers require the complete path to
the destination to be specified in the address. Does your mailer understand
$echo $n "INTERNET addresses? [$dflt] $c"
: determine where public executables go
dflt
=`loc . /bin /usr/local/bin /usr/lbin /usr/local /usr/bin`
while $test ! -d "$rnbin" ; do
*) $echo "$rnbin does not appear to exist." ;;
$echo $n "Where do you want to put the public executables? [$dflt] $c"
: determine where private executables go
$echo "Rn has a number of auxiliary programs that need not be visible to the"
$echo "whole world. Where do you want to put these private executables?"
$echo $n "[$dflt] (~name ok) $c"
: must not allow self reference
: get the
local distribution prefixes
if $test -f $libexp/sys
; then
$sed <$libexp/sys
-n -e "s/^$sitename://p" | \
$sed -e "s/:.*//" -e "s/,/ /g" |
tr ' ' '\012' | \
$sed -e "/^to./d" -e "/^net$/d" -e "/^fa$/d" -e "/^mod$/d" > .distlist
Distribution groups are the things you use on the Distribution line to limit
where an article will go to. You are likely to be a member of several
distribution groups, such as organization, city, state, province, country,
continent, etc. For example, Los Angeles has the distribution prefix "la",
New Jersey has the prefix "nj", and Europe has the prefix "eunet".
The categories you will be asked are:
local organization (Could be just one machine or a cluster or an office)
organization att, dec, kgb, ...
state/province ca, nj, bc, ...
country usa, can, rok, whatever
continent na (North America, not "Not Applicable"), asia, etc.
(If you don't have a distribution prefix in any of these categories then
if $test -f .distlist
; then
distlist
=`tr '\012' ' ' <.distlist`
if $test "$distlist" ; then
$echo "(These are the distributions in your sys file: $distlist)"
$echo $n "What is the distribution prefix for your local organization? $dflt$c"
$echo $n "What is the distribution prefix for your organization? $dflt$c"
$echo $n "What is the distribution prefix for your city? $dflt$c"
*) dflt
="[$statepref] ";;
$echo $n "What is the distribution prefix for your state/province? $dflt$c"
*) dflt
="[$cntrypref] ";;
$echo $n "What is the distribution prefix for your country? $dflt$c"
$echo $n "What is the distribution prefix for your continent? $dflt$c"
$echo "If you have any other distribution groups you will need to edit Pnews"
$echo "and newsetup to add them."
rootid
=`$sed </etc/passwd -e "/^root:/{s/^[^:]*:[^:]*:\([^:]*\).*"'$'"/\1/" -e "q" -e "}" -e "d"`
*) $echo "Root uid = $rootid" ;;
: weed out incompatibilities
: preserve RCS keywords
in files with variable substitution
, grrr
NOTE: the V7 compiler may ignore some #undefs that rn uses. If so, you will
get messages about redefining EXT. Some V7 compilers also have difficulties
with #defines near buffer boundaries, so beware. You may have to play with
NOTE: the PDP-11 does not have enough data space to do subject caching
reliably. That feature will be disabled automatically. Subject searching
$echo "End of configuration questions."
$echo "Creating config.sh..."
$spitshell <<EOT >config.sh
# This file was produced by running the Configure script.
gethostname='$gethostname'
$echo "Creating config.h..."
* This file was produced by running the Configure script.
* Feel free to modify any of this as the need arises.
/* name of the site. May be overridden by gethostname, uname, etc. */
#define SITENAME "$sitename"
/* name of the organization, may be a file name */
#define ORGNAME "$orgname"
/* login name of news administrator, if any. */
#$isadmin NEWSADMIN "$newsadmin"
/* news library, may use only ~ and %l expansion */
/* rn private library, may use ~ expansion, %x and %l */
/* location of the news spool directory, may use ~ expansion, %x and %l */
/* location of the active file, may use ~ expansion, %x and %l */
/* location of spooled mail */
#define MAILFILE "$maildir/%L"
/* default shell--ok to be a slow shell like csh */
#define PREFSHELL "$pref"
#define DEFEDITOR "$defeditor"
/* what is the first character of a mailbox? */
#define MBOXCHAR '$mboxchar'
/* how to cancel an article */
#define CANCEL "$inews -h <%h"
/* distribution groups */
#define LOCDIST "$locpref"
#define ORGDIST "$orgpref"
#define CITYDIST "$citypref"
#define STATEDIST "$statepref"
#define CNTRYDIST "$cntrypref"
#define CONTDIST "$contpref"
#$strchr index strchr /* cultural */
#$strchr rindex strrchr /* differences? */
#$novoid void int /* is void to be avoided? */
#$novfork vfork fork /* is vfork too virtual? */
#$eunice EUNICE /* no linking? */
#$eunice VMS /* not currently used, here just in case */
#$usendir USENDIR /* include ndir.c? */
#$libndir LIBNDIR /* include /usr/include/ndir.h? */
#$mininact MININACT /* include 2.10.2 optimization? */
#$portable PORTABLE /* do we do extra lookups to start up? */
#$passnam PASSNAMES /* do names come from the passwd file? */
/* (undef to take name from ~/.fullname) */
#$berknam BERKNAMES /* if so, are they Berkeley format? */
/* (that is, ":name,stuff:") */
#$usgnam USGNAMES /* or are they USG format? */
/* (that is, ":stuff-name(stuff):") */
#$whoami WHOAMI /* should we include whoami.h? */
#$termio TERMIO /* is this a termio system? */
#$fcntl FCNTL /* should we include fcntl.h? */
#$ioctl IOCTL /* are ioctl args all defined in one place? */
#$normsig NORMSIG /* use signal rather than sigset? */
#$havetlib HAVETERMLIB /* do we have termlib-style routines? */
#$getpwent GETPWENT /* need we include slow getpwent? */
#$internet INTERNET /* does our mailer do INTERNET addressing? */
#$gethostname GETHOSTNAME /* do we have a gethostname function? */
#$douname DOUNAME /* do we have a uname function? */
#$phostname PHOSTNAME "$hostcmd" /* how to get host name with popen */
#$norelay NORELAY /* 2.10.3 doesn't have Relay-Version line */
$rm -f libc.list .distlist kit
*isdone
echo "Doing variable substitutions on various files..."
set `$grep <MANIFEST '\.SH' | awk '{print $1}'`
echo 'Now you need to generate make dependencies by running "makedepend".'
echo 'You might prefer to run it in background: "makedepend > makedepend.out &"'
echo $n "Would you like me to run it for you (it takes quite a while)? [n] $c"