	A log (edited down) of creating Perl 5.002 on UnixWare 2.03
machine netlab1.usu.edu.
	Notes:
- Use /opt as the installation base.
- Select() is not found by Perl so be sure to add it by hand, as shown in the
  log below.
- Stock cc compiler used.
- Accept use of library functions found but not in the hints list.
- Where choices are not included in this log the offered defaults were chosen.
	Joe Doupnik	April 1996
---------
# cd perl5.002
# pwd
/home/perl5.002
# LD_LIBRARY_PATH=/home/perl5.002
# export LD_LIBRARY_PATH
# Configure
 
Beginning of configuration questions for perl5.
 
Checking echo to see how to suppress newlines...
...using \c
The star should be here-->*
 
First let's make sure your kit is complete.  Checking...
Looks good...
	... 
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".

Which of these apply, if any? [svr4] 
	...
Operating system name? [svr4] 
 
What is your architecture name [i386-svr4] 
 	...
Installation prefix to use? (~name ok) [/usr/local] /opt

There are some auxiliary files for perl5 that need to be put into a
private library directory that is accessible by everyone.

Pathname where the private library files will reside? (~name ok)
[/opt/lib/perl5] /opt/lib/perl5.002
 
Getting the current patchlevel...
(You have perl5 5.0 PL2.)		<<< Yes, before preparing this trial
	... 
Pathname where the public executables will reside? (~name ok) [/opt/bin] 
	...
What command will force resolution on this system? [/bin/cc] 
 
Checking for GNU cc in disguise and/or its version number...
You are not using GNU cc.
	...
Directories to use for library searches?
[/usr/local/lib /usr/gnu/lib /lib /usr/lib /usr/ccs/lib /usr/ucblib] <break>
/lib /usr/lib /usr/ccs/lib /usr/ucblib
	...
What optimizer/debugger flag should be used? [-O] 
	...
Any additional cc flags?
[-I/usr/include -I/usr/ucbinclude -I/usr/local/include] <break>
-I/usr/include -I/usr/ucbinclude
	...
Checking for optional libraries...
No -lnet.
Found -lsocket (shared).
No -linet.
Found -lnsl (shared).
No -lnm.
No -lndbm.
No -lgdbm.
Found -ldbm.
No -ldb.
Found -ldl (shared).
No -ldld.
Found -lld.
No -lsun.
Found -lm.
Found -lc (shared).
No -lcposix.
No -lposix.
No -lndir.
No -ldir.
Found -lcrypt (shared).
Found -lucb.
No -lbsd.
No -lBSD.
No -lPW.
Found -lx.
	... 
Any additional libraries?
[-lsocket -lnsl -ldbm -ldl -lld -lm -lc -lcrypt -lucb -lx] 
	...
Extracting names from the following files for later perusal:
 
	/lib/libc.so.1.1
	/lib/libcrypt.so
	/lib/libdl.so.1
	/lib/libnsl.so.1
	/lib/libsocket.so.1
	/lib/libx.a
	/usr/ccs/lib/libld.a
	/usr/ccs/lib/libm.a
	/usr/ucblib/libdbm.a
	/usr/ucblib/libucb.a
 
This may take a while.....done
 
Checking for an efficient way to convert floats to strings.
Trying gconvert
gconvert found.
Good, gconvert drops a trailing decimal point.
I'll use gconvert to convert floats into a string.
 
Computing filename position in cpp output for #include directives...
Your cpp writes the filename in the third field of the line.
 
access() found.
 
<unistd.h> defines the *_OK access constants.
 
alarm() found.
 
Checking whether your compiler can handle __attribute__ ...
Your C compiler doesn't seem to understand __attribute__ at all.
 
bcmp() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_bcmp on this machine was "undef"!
    Keep the recommended value? [y] n
 
bcopy() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_bcopy on this machine was "undef"!
    Keep the recommended value? [y] n
 
setpgrp() found.
 
(I see you are running Configure as super-user...)
You have to use setpgrp() instead of setpgrp(pid, pgrp).
 
bzero() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_bzero on this machine was "undef"!
    Keep the recommended value? [y] n
 
Checking to see how big your integers are...
Your integers are 4 bytes long.
 
You have void (*signal())() instead of int.
 
Checking whether your C compiler can cast large floats to int32.
Yup, it can.
 
Checking whether your C compiler can cast negative float to unsigned.
Yup, it can.
 
vprintf() found.
Your vsprintf() returns (int).
 
chown() found.
 
chroot() found.
 
chsize() NOT found.
 
Checking to see if your C compiler knows about "const"...
Yup, it does.
 
crypt() found.
 
cuserid() found.
 
<limits.h> found.
 
<float.h> found.
 
DBL_DIG found.
 
difftime() found.
 
<dirent.h> found.
 
Your directory entries are struct dirent.
 
Your directory entry does not know about the d_namlen field.
 
dlerror() found.
 
<dld.h> NOT found.
 
dlopen() found.
 
Do you wish to use dynamic loading? [y] 
The following dynamic loading files are available:
ext/DynaLoader/dl_aix.xs     ext/DynaLoader/dl_next.xs
ext/DynaLoader/dl_dld.xs     ext/DynaLoader/dl_none.xs
ext/DynaLoader/dl_dlopen.xs  ext/DynaLoader/dl_os2.xs
ext/DynaLoader/dl_hpux.xs    ext/DynaLoader/dl_vms.xs
Source file to use for dynamic loading [ext/DynaLoader/dl_dlopen.xs] 
	...
What is the extension of dynamically loaded modules [so] 
 
Checking whether your dlsym() needs a leading underscore ...
dlsym doesn't need a leading underscore.
 
dup2() found.
 
<fcntl.h> defines the O_* constants...
and you have the 3 argument form of open().
 
Figuring out the flag used by open() for non-blocking I/O...
Seems like we can use O_NONBLOCK.
 
Let's see what value errno gets from read() on a O_NONBLOCK file...
A read() system call with no data present returns -1.
Your read() sets errno to EAGAIN when no data is available.
And it correctly returns 0 to signal EOF.
 
fchmod() found.
 
fchown() found.
 
fcntl() found.
 
fgetpos() found.
 
flock() NOT found.
 
fork() found.
 
pathconf() found.
 
fpathconf() found.
 
fsetpos() found.
 
gethostent() found.
 
getlogin() found.
 
getpgrp() found.
 
getpgrp2() NOT found.
 
getppid() found.
 
getpriority() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_getprior on this machine was "undef"!
    Keep the recommended value? [y] n
 
<netinet/in.h> found.
 
htonl() found.
 
Using <string.h> instead of <strings.h>.
 
strchr() found.
 
isascii() found.
 
killpg() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_killpg on this machine was "undef"!
    Keep the recommended value? [y] n
 
link() found.
 
localeconv() found.
 
lockf() found.
 
lstat() NOT found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_lstat on this machine was "define"!
    Keep the recommended value? [y] n
 
mblen() found.
 
mbstowcs() found.
 
mbtowc() found.
 
memcmp() found.
 
memcpy() found.
 
memmove() found.
 
memset() found.
 
mkdir() found.
 
mkfifo() found.
 
mktime() found.
 
msgctl() found.
 
msgget() found.
 
msgsnd() found.
 
msgrcv() found.
 
You have the full msg*(2) library.
 
<malloc.h> found.
 
<stdlib.h> found.
 
Do you wish to attempt to use the malloc that comes with perl5? [y] 
 
Your system wants malloc to return 'void *', it would seem.
Your system uses void free(), it would seem.
 
nice() found.
 
pause() found.
 
pipe() found.
 
poll() found.
 
<pwd.h> found.
 
readdir() found.
 
seekdir() found.
 
telldir() found.
 
rewinddir() found.
 
readlink() found.
 
rename() found.
 
rmdir() found.
 
Checking to see if your bcopy() can do overlapping copies...
Yes, it can.
 
*** WHOA THERE!!! ***
    The recommended value for $d_safebcpy on this machine was "undef"!
    Keep the recommended value? [y] n
 
Checking to see if your memcpy() can do overlapping copies...
It can't, sorry.
 
select() NOT found.	<<< BIG RED FLAG GOES HERE. Include SELECT later <<<
 
semctl() found.
 
semget() found.
 
semop() found.
 
You have the full sem*(2) library.
 
setegid() NOT found.
 
seteuid() NOT found.
 
setlinebuf() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_setlinebuf on this machine was "undef"!
    Keep the recommended value? [y] n
 
setlocale() found.
 
setpgid() found.
 
setpgrp2() NOT found.
 
setpriority() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_setprior on this machine was "undef"!
    Keep the recommended value? [y] n
 
setregid() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_setregid on this machine was "undef"!
    Keep the recommended value? [y] n
 
setresgid() NOT found.
 
setreuid() found.
 
*** WHOA THERE!!! ***
    The recommended value for $d_setreuid on this machine was "undef"!
    Keep the recommended value? [y] n
 
setresuid() NOT found.
 
setrgid() NOT found.
 
setruid() NOT found.
 
setsid() found.
 
shmctl() found.
 
shmget() found.
 
shmat() found.
and it returns (void *).
 
shmdt() found.
 
You have the full shm*(2) library.
 
sigvec() found.
 
sigaction() found.
 
POSIX sigsetjmp found.
 
Hmm... Looks like you have Berkeley networking support.
 
socketpair() found.
 
Your stat() knows about block sizes.
 
Checking how std your stdio is...
Your stdio acts pretty std.
But its _base field isn't std.
 
strcoll() found.
 
Checking to see if your C compiler can copy structs...
Yup, it can.
 
strerror() found.
(Since you don't have sys_errlist[], sterror() is welcome.)
 
strxfrm() found.
 
symlink() found.
 
syscall() NOT found.
 
sysconf() found.
 
system() found.
 
tcgetpgrp() found.
 
tcsetpgrp() found.
 
<sys/times.h> found.
 
times() found.
 
What type is returned by times() on this system? [clock_t] 
 
truncate() found.
 
tzname[] found.
 
umask() found.
 
uname() found.
 
vfork() NOT found.
 
<sys/dir.h> found.
 
<sys/ndir.h> NOT found.
 
closedir() found.
 
Checking whether closedir() returns a status...
Yes, it does.
 
Checking to see if your C compiler knows about "volatile"...
Yup, it does.
 
wait4() NOT found.
 
waitpid() found.
 
wcstombs() found.
 
wctomb() found.
 
Checking alignment constraints...
Doubles must be aligned on a how-many-byte boundary? [4] 
	...  
(The test program ran ok.)
byteorder=1234
 
Checking to see how your cpp does stuff like catenate tokens...
Oh!  Smells like ANSI's been here.
We can catify or stringify, separately or together!
 
<db.h> NOT found.
	... 
What pager is used on your system? [/usr/local/bin/less] /usr/bin/more
 
Checking out function prototypes...
Your C compiler appears to support function prototypes.
 
Checking to see how many bits your rand function produces...
How many bits does your rand() function produce? [15] 
 
Checking how to generate random libraries on your machine...
ar appears to generate random libraries itself.
 
<sys/select.h> found.
 
Testing to see if we should include <time.h>, <sys/time.h> or both.
I'm now running the test program.... 
Succeeded with -DI_SYSTIME -DS_TIMEVAL 
We'll include <sys/time.h>.

Checking to see how well your C compiler handles fd_set and friends ...
Well, your system knows about the normal fd_set typedef...
and you have the normal fd_set macros (just as I'd expect).
 
Generating a list of signal names and numbers...
The following signals are available:
 
SIGZERO SIGHUP SIGINT SIGQUIT SIGILL SIGTRAP SIGABRT SIGEMT SIGFPE 
SIGKILL SIGBUS SIGSEGV SIGSYS SIGPIPE SIGALRM SIGTERM SIGUSR1 SIGUSR2 
SIGCHLD SIGPWR SIGWINCH SIGURG SIGIO SIGSTOP SIGTSTP SIGCONT SIGTTIN 
SIGTTOU SIGVTALRM SIGPROF SIGXCPU SIGXFSZ SIGWAITING SIGLWP SIGAIO 
SIGIOT SIGCLD SIGPOLL 
 
What type is used for the length parameter for string functions? [size_t] 
 
I'll be using ssize_t for functions returning a byte count.
 
Your stdio uses unsigned chars.
 
time() found.
 
What type is returned by time() on this system? [time_t] 
 
What is the type for user ids returned by getuid()? [uid_t] 
 
dbmclose() found.
 
<dbm.h> found.
 
<sys/file.h> found.
 
We won't be including <sys/file.h>.
 
<fcntl.h> found.
 
We'll be including <fcntl.h>.
 
<grp.h> found.
 
<locale.h> found.
 
<math.h> found.
 
<memory.h> found.
 
We won't be including <memory.h>.
 
<ndbm.h> found.
 
dbm_open() found.
 
<net/errno.h> NOT found.
 
Hmm... Your C pre-processor defines the following symbols:
__STDC__
i386
unix
 
tcsetattr() found.
 
You have POSIX termios.h... good!
 
<stdarg.h> found.
 
<varargs.h> found.
 
We'll include <stdarg.h> to get va_dcl definition.
 
<stddef.h> found.
 
<sys/filio.h> found.
 
<sys/ioctl.h> found.
 
<sys/param.h> found.
 
<sys/stat.h> found.
 
<sys/types.h> found.
 
<sys/un.h> found.
 
<unistd.h> found.
 
<utime.h> found.
 
<gdbm.h> NOT found.
	... 
What extensions do you wish to load dynamically?
[Fcntl FileHandle NDBM_File ODBM_File POSIX SDBM_File Safe Socket] 
What extensions do you wish to load statically? [none] 
 
 
End of configuration questions.
 
Creating config.sh...

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).

Press return or use a shell escape to edit config.sh: !vi config.sh

	<editing config.sh to 'define' select>
###select='undef'
select='define'

Press return or use a shell escape to edit config.sh: 
 
Doing variable substitutions on .SH files...
Extracting Makefile (with variable substitutions)
Extracting cflags (with variable substitutions)
	...
	Everything is up to date.
# make test
	AutoSplitting perl library
base/cond......ok
base/if........ok
base/lex.......ok
base/pat.......ok
base/term......ok
comp/cmdopt....ok
comp/cpp.......ok
comp/decl......ok
comp/multiline.ok
comp/package...ok
comp/script....ok
comp/term......ok
cmd/elsif......ok
cmd/for........ok
cmd/mod........ok
cmd/subval.....ok
cmd/switch.....ok
cmd/while......ok
io/argv........ok
io/dup.........ok
io/fs..........ok
io/inplace.....ok
io/pipe........ok
io/print.......ok
io/tell........ok
op/append......ok
op/array.......ok
op/auto........ok
op/chop........ok
op/cond........ok
op/delete......ok
op/do..........ok
op/each........ok
op/eval........ok
op/exec........ok
op/exp.........ok
op/flip........ok
op/fork........ok
op/glob........ok
op/goto........ok
op/groups......ok
op/index.......ok
op/int.........ok
op/join........ok
op/list........ok
op/local.......ok
op/magic.......ok
op/misc........ok
op/mkdir.......ok
op/my..........ok
op/oct.........ok
op/ord.........ok
op/overload....ok
op/pack........ok
op/pat.........ok
op/push........ok
op/quotemeta...ok
op/rand........ok
op/range.......ok
op/read........ok
op/readdir.....ok
op/ref.........ok
op/regexp......ok
op/repeat......ok
op/sleep.......ok
op/sort........ok
op/split.......ok
op/sprintf.....ok
op/stat........FAILED on test 25
op/study.......ok
op/subst.......ok
op/substr......ok
op/time........ok
op/undef.......ok
op/unshift.....ok
op/vec.........ok
op/write.......ok
lib/anydbm.....ok
lib/bigint.....ok
lib/bigintpm...ok
lib/db-btree...ok
lib/db-hash....ok
lib/db-recno...ok
lib/dirhand....ok
lib/english....ok
lib/filehand...ok
lib/gdbm.......ok
lib/ndbm.......ok
lib/odbm.......ok
lib/posix......ok
lib/safe.......ok
lib/sdbm.......ok
lib/socket.....ok
lib/soundex....ok
Failed 1 test, 98.94% okay.
u=0.99  s=1.63  cu=15.54  cs=9.77  files=94  tests=1968
# make install
	AutoSplitting perl library
	...
  Installation complete

  <now add Perl's LD_LIBRARY_PATH item to that string>
# cd /etc
# vi profile
	...
PATH=.:$PATH:/usr/ucb:/usr/local/bin:/opt/bin:/usr/sbin:/etc    ## JRD
/usr/ucb/biff y
MANPATH=/usr/share/man:/opt/man; export MANPATH
PERLLIB=/opt/lib/netlab1-perl; export PERLLIB
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lib/perl5.002; export LD_LIBRARY_PATH
DT=no; export DT
# turn off graphical desktop default
# 
