perl 3.0 patch #22 patch #19, continued
[p5sagit/p5-mst-13.2.git] / Configure
index fdf3428..41ad39c 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -8,7 +8,7 @@
 # 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.)
 #
-# $Header: Configure,v 3.0.1.6 90/03/12 16:10:23 lwall Locked $
+# $Header: Configure,v 3.0.1.8 90/08/09 01:47:24 lwall Locked $
 #
 # Yes, you may rip this off to use in other distribution packages.
 # (Note: this Configure script was generated automatically.  Rather than
@@ -102,7 +102,9 @@ cppminus=''
 d_bcmp=''
 d_bcopy=''
 d_bzero=''
+d_castneg=''
 d_charsprf=''
+d_chsize=''
 d_crypt=''
 cryptlib=''
 d_csh=''
@@ -130,6 +132,7 @@ d_odbm=''
 d_readdir=''
 d_rename=''
 d_rmdir=''
+d_select=''
 d_setegid=''
 d_seteuid=''
 d_setpgrp=''
@@ -151,6 +154,7 @@ d_strctcpy=''
 d_strerror=''
 d_symlink=''
 d_syscall=''
+d_truncate=''
 d_varargs=''
 d_vfork=''
 d_voidsig=''
@@ -202,6 +206,7 @@ n=''
 c=''
 package=''
 randbits=''
+scriptdir=''
 sig_name=''
 spitshell=''
 shsharp=''
@@ -1110,6 +1115,7 @@ rmlist="$rmlist pdp11"
 
 echo " "
 echo "Checking for optional libraries..."
+dflt=''
 case "$libswanted" in
 '') libswanted='c_s';;
 esac
@@ -1153,6 +1159,7 @@ set X $dflt
 shift
 dflt="$*"
 case "$libs" in
+'') dflt="$dflt";;
 *) dflt="$libs";;
 esac
 case "$dflt" in
@@ -1394,19 +1401,21 @@ elif test -f /lib/libc.a; then
 else
     ans=`loc libc.a blurfl/dyick $libpth`
     if test ! -f "$ans"; then
-       ans=`loc libc blurfl/dyick $libpth`
+       ans=`loc Slibc.a blurfl/dyick $xlibpth`
     fi
     if test ! -f "$ans"; then
-       ans=`loc clib blurfl/dyick $libpth`
+       ans=`loc Mlibc.a blurfl/dyick $xlibpth`
     fi
     if test ! -f "$ans"; then
-       ans=`loc Slibc.a blurfl/dyick $xlibpth`
+       ans=`loc Llibc.a blurfl/dyick $xlibpth`
     fi
     if test ! -f "$ans"; then
-       ans=`loc Mlibc.a blurfl/dyick $xlibpth`
+       ans=`loc libc blurfl/dyick $libpth`
     fi
     if test ! -f "$ans"; then
-       ans=`loc Llibc.a blurfl/dyick $xlibpth`
+       ans=`loc clib blurfl/dyick $libpth`
+    else
+       libnames="$libnames "`loc clib blurfl/dyick $libpth`
     fi
     if test -f "$ans"; then
        echo "Your C library is in $ans, of all places."
@@ -1437,6 +1446,8 @@ if $contains '^printf$' libc.list >/dev/null 2>&1; then
 else
     $sed -n -e 's/^__*//' -e 's/^\([a-zA-Z_0-9$]*\).*xtern.*/\1/p' <libc.tmp >libc.list
     $contains '^printf$' libc.list >/dev/null 2>&1 || \
+       $sed -n -e '/|UNDEF/d' -e '/FUNC..GL/s/^.*|__*//p' <libc.tmp >libc.list
+    $contains '^printf$' libc.list >/dev/null 2>&1 || \
        $sed -n -e 's/^.* D __*//p' -e 's/^.* D //p' <libc.tmp >libc.list
     $contains '^printf$' libc.list >/dev/null 2>&1 || \
        $sed -n -e 's/^_//' \
@@ -1492,6 +1503,35 @@ eval $inlibc
 set bzero d_bzero
 eval $inlibc
 
+: check for ability to cast negative floats to unsigned
+echo " "
+echo 'Checking to see if your C compiler can cast negative float to unsigned'
+$cat >try.c <<'EOCP'
+main()
+{
+       double f = -123;
+       unsigned long along;
+       unsigned int aint;
+       unsigned short ashort;
+
+       along = (unsigned long)f;
+       aint = (unsigned int)f;
+       ashort = (unsigned short)f;
+       if (along == 0L || aint == 0 || ashort == 0)
+           exit(1);
+       else
+           exit(0);
+}
+EOCP
+if $cc -o try $ccflags try.c >/dev/null 2>&1 && ./try; then
+    d_castneg="$define"
+    echo "Yup, it does."
+else
+    d_castneg="$undef"
+    echo "Nope, it doesn't."
+fi
+$rm -f try.*
+
 : see if sprintf is declared as int or pointer to char
 echo " "
 cat >.ucbsprf.c <<'EOF'
@@ -1541,6 +1581,10 @@ else
     d_charvspr="$undef"
 fi
 
+: see if chsize exists
+set chsize d_chsize
+eval $inlibc
+
 : see if crypt exists
 echo " "
 if $contains '^crypt$' libc.list >/dev/null 2>&1; then
@@ -1756,6 +1800,61 @@ else
     echo "dbm.h not found."
 fi
 
+socketlib=''
+: see whether socket exists
+echo " "
+if $contains socket libc.list >/dev/null 2>&1; then
+    echo "Looks like you have Berkeley networking support."
+    d_socket="$define"
+    : now check for advanced features
+    if $contains setsockopt libc.list >/dev/null 2>&1; then
+       d_oldsock="$undef"
+    else
+       echo "...but it uses the old 4.1c interface, rather than 4.2"
+       d_oldsock="$define"
+    fi
+else
+    : hpux, for one, puts all the socket stuff in socklib.o
+    if $contains socklib libc.list >/dev/null 2>&1; then
+       echo "Looks like you have Berkeley networking support."
+       d_socket="$define"
+       : we will have to assume that it supports the 4.2 BSD interface
+       d_oldsock="$undef"
+    else
+       echo "Hmmm...you don't have Berkeley networking in libc.a..."
+       : look for an optional networking library
+       if test -f /usr/lib/libnet.a; then
+           (ar t /usr/lib/libnet.a ||
+               nm -g /usr/lib/libnet.a) 2>/dev/null >> libc.list
+           if $contains socket libc.list >/dev/null 2>&1; then
+               echo "but the Wollongong group seems to have hacked it in."
+               socketlib="-lnet"
+               d_socket="$define"
+               : now check for advanced features
+               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"
+                   d_oldsock="$define"
+               fi
+           else
+               echo "or even in libnet.a, which is peculiar."
+               d_socket="$undef"
+               d_oldsock="$undef"
+           fi
+       else
+           echo "or anywhere else I see."
+           d_socket="$undef"
+           d_oldsock="$undef"
+       fi
+    fi
+fi
+if $contains socketpair libc.list >/dev/null 2>&1; then
+    d_sockpair="$define"
+else
+    d_sockpair="$undef"
+fi
+
 : see if this is a pwd system
 echo " "
 if $test -r /usr/include/pwd.h ; then
@@ -1810,6 +1909,10 @@ eval $inlibc
 set rmdir d_rmdir
 eval $inlibc
 
+: see if select exists
+set select d_select
+eval $inlibc
+
 : see if setegid exists
 set setegid d_setegid
 eval $inlibc
@@ -1850,61 +1953,6 @@ eval $inlibc
 set setruid d_setruid
 eval $inlibc
 
-socketlib=''
-: see whether socket exists
-echo " "
-if $contains socket libc.list >/dev/null 2>&1; then
-    echo "Looks like you have Berkeley networking support."
-    d_socket="$define"
-    : now check for advanced features
-    if $contains setsockopt libc.list >/dev/null 2>&1; then
-       d_oldsock="$undef"
-    else
-       echo "...but it uses the old 4.1c interface, rather than 4.2"
-       d_oldsock="$define"
-    fi
-else
-    : hpux, for one, puts all the socket stuff in socklib.o
-    if $contains socklib libc.list >/dev/null 2>&1; then
-       echo "Looks like you have Berkeley networking support."
-       d_socket="$define"
-       : we will have to assume that it supports the 4.2 BSD interface
-       d_oldsock="$undef"
-    else
-       echo "Hmmm...you don't have Berkeley networking in libc.a..."
-       : look for an optional networking library
-       if test -f /usr/lib/libnet.a; then
-           (ar t /usr/lib/libnet.a ||
-               nm -g /usr/lib/libnet.a) 2>/dev/null >> libc.list
-           if $contains socket libc.list >/dev/null 2>&1; then
-               echo "but the Wollongong group seems to have hacked it in."
-               socketlib="-lnet"
-               d_socket="$define"
-               : now check for advanced features
-               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"
-                   d_oldsock="$define"
-               fi
-           else
-               echo "or even in libnet.a, which is peculiar."
-               d_socket="$undef"
-               d_oldsock="$undef"
-           fi
-       else
-           echo "or anywhere else I see."
-           d_socket="$undef"
-           d_oldsock="$undef"
-       fi
-    fi
-fi
-if $contains socketpair libc.list >/dev/null 2>&1; then
-    d_sockpair="$define"
-else
-    d_sockpair="$undef"
-fi
-
 : see if stat knows about block sizes
 echo " "
 if $contains 'st_blocks;' /usr/include/sys/stat.h >/dev/null 2>&1 ; then
@@ -2035,6 +2083,10 @@ case "$flags" in
 esac
 $rm -f try.c try
 
+: see if truncate exists
+set truncate d_truncate
+eval $inlibc
+
 : see if this is a varargs system
 echo " "
 if $test -r /usr/include/varargs.h ; then
@@ -2067,8 +2119,10 @@ echo 'Checking to see if your C compiler knows about "volatile"...'
 $cat >try.c <<'EOCP'
 main()
 {
+       typedef unsigned short foo_t;
        char *volatile foo;
        volatile int bar;
+       volatile foo_t blech;
        foo = foo;
 }
 EOCP
@@ -2466,6 +2520,49 @@ y*) mallocsrc='malloc.c'; mallocobj='malloc.o';;
 *) mallocsrc=''; mallocobj='';;
 esac
 
+: determine where public executables go
+case "$scriptdir" in
+'')
+    dflt="$bin"
+    : guess some guesses
+    test -d /usr/share/scripts && dflt=/usr/share/scripts
+    test -d /usr/share/bin && dflt=/usr/share/bin
+    ;;
+*)  dflt="$scriptdir"
+    ;;
+esac
+cont=true
+$cat <<EOM
+Some installations have a separate directory just for executable scripts so
+that they can mount it across multiple architectures but keep the scripts in
+one spot.  You might, for example, have a subdirectory of /usr/share for this.
+Or you might just lump your scripts in with all your other executables.
+EOM
+while $test "$cont" ; do
+    rp="Where do you keep publicly executable scripts? (~name ok) [$dflt]"
+    $echo $n "$rp $c"
+    . myread
+    scriptdir="$ans"
+    scriptdir=`./filexp "$scriptdir"`
+    if test -d $scriptdir; then
+       cont=''
+    else
+       case "$fastread" in
+       yes) dflt=y;;
+       *) dflt=n;;
+       esac
+       rp="Directory $scriptdir doesn't exist.  Use that name anyway? [$dflt]"
+       $echo $n "$rp $c"
+       . myread
+       dflt=''
+       case "$ans" in
+       y*) cont='';;
+       esac
+    fi
+done
+
 : determine compiler compiler
 case "$yacc" in
 '') dflt=yacc;;
@@ -2560,7 +2657,9 @@ cppminus='$cppminus'
 d_bcmp='$d_bcmp'
 d_bcopy='$d_bcopy'
 d_bzero='$d_bzero'
+d_castneg='$d_castneg'
 d_charsprf='$d_charsprf'
+d_chsize='$d_chsize'
 d_crypt='$d_crypt'
 cryptlib='$cryptlib'
 d_csh='$d_csh'
@@ -2588,6 +2687,7 @@ d_odbm='$d_odbm'
 d_readdir='$d_readdir'
 d_rename='$d_rename'
 d_rmdir='$d_rmdir'
+d_select='$d_select'
 d_setegid='$d_setegid'
 d_seteuid='$d_seteuid'
 d_setpgrp='$d_setpgrp'
@@ -2609,6 +2709,7 @@ d_strctcpy='$d_strctcpy'
 d_strerror='$d_strerror'
 d_symlink='$d_symlink'
 d_syscall='$d_syscall'
+d_truncate='$d_truncate'
 d_varargs='$d_varargs'
 d_vfork='$d_vfork'
 d_voidsig='$d_voidsig'
@@ -2660,6 +2761,7 @@ n='$n'
 c='$c'
 package='$package'
 randbits='$randbits'
+scriptdir='$scriptdir'
 sig_name='$sig_name'
 spitshell='$spitshell'
 shsharp='$shsharp'