leading (.*) should not be implicitly ^'d
[p5sagit/p5-mst-13.2.git] / Configure
index aba0b38..c69d35a 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
 
 # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
 #
-# Generated on Sat Dec 22 19:52:24 EET 2001 [metaconfig 3.0 PL70]
+# Generated on Sun Dec 30 19:31:52 EET 2001 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -165,11 +165,6 @@ esac
 test -d UU || mkdir UU
 cd UU && rm -f ./*
 
-if test -f "/system/gnu_library/bin/ar.pm"; then
-     _exe=".pm"
-else
-     _exe=""
-fi
 
 ccname=''
 ccversion=''
@@ -1041,6 +1036,10 @@ if test -f /etc/unixtovms.exe; then
        eunicefix=/etc/unixtovms.exe
 fi
 
+if test -f "/system/gnu_library/bin/ar.pm"; then
+     _exe=".pm"
+fi
+
 i_whoami=''
 ccname=''
 ccversion=''
@@ -1160,14 +1159,14 @@ if `$sh -c '#' >/dev/null 2>&1`; then
        xcat=/bin/cat
        test -f $xcat$_exe || xcat=/usr/bin/cat
        if test ! -f $xcat$_exe; then
-               for p in $paths; do
+               for p in `echo $PATH | sed -e "s/$p_/ /g"` $paths; do
                        if test -f $p/cat$_exe; then
-                               xcat=$p/cat$_exe
+                               xcat=$p/cat
                                break
                        fi
                done
-               if test ! -f $xcat; then
-                       echo "Can't find cat anywhere!" >&4
+               if test ! -f $xcat$_exe; then
+                       echo "Can't find cat anywhere!"
                        exit 1
                fi
        fi
@@ -2161,12 +2160,14 @@ case "$egrep" in
 egrep)
        echo "Substituting grep for egrep."
        egrep=$grep
+       _egrep=$grep
        ;;
 esac
 case "$ln" in
 ln)
        echo "Substituting cp for ln."
        ln=$cp
+       _ln=$cp
        ;;
 esac
 case "$make" in
@@ -2188,6 +2189,7 @@ gmake)    ;;
                # and prefer it over the system make.
                echo "Substituting gmake for make."
                make=$gmake
+               _make=$gmake
        fi
        ;;
 esac
@@ -2810,7 +2812,7 @@ EOM
        $test -d /usr/apollo/bin && osname=apollo
        $test -f /etc/saf/_sactab && osname=svr4
        $test -d /usr/include/minix && osname=minix
-       $test -d /system && osname=vos
+       $test -f /system/gnu_library/bin/ar.pm && osname=vos
        if $test -d /MachTen -o -d /MachTen_Folder; then
                osname=machten
                if $test -x /sbin/version; then
@@ -9988,6 +9990,10 @@ case "$eagain" in
 #include <signal.h>
 #include <stdio.h> 
 #include <stdlib.h> 
+#$i_fcntl I_FCNTL
+#ifdef I_FCNTL
+#include <fcntl.h>
+#endif
 #define MY_O_NONBLOCK $o_nonblock
 #ifndef errno  /* XXX need better Configure test */
 extern int errno;
@@ -10048,7 +10054,7 @@ int main()
                ret = read(pd[0], buf, 1);      /* Should read EOF */
                alarm(0);
                sprintf(string, "%d\n", ret);
-               write(3, string, strlen(string));
+               write(4, string, strlen(string));
                exit(0);
        }
 
@@ -10062,7 +10068,7 @@ EOCP
        set try
        if eval $compile_ok; then
                echo "$startsh" >mtry
-               echo "$run ./try >try.out 2>try.ret 3>try.err || exit 4" >>mtry
+               echo "$run ./try >try.out 2>try.ret 4>try.err || exit 4" >>mtry
                chmod +x mtry
                ./mtry >/dev/null 2>&1
                case $? in
@@ -13471,7 +13477,12 @@ EOM
 $cat >try.c <<EOCP
 #include <stdio.h>
 #define U32 $u32type
-#define BYTEORDER $byteorder
+#define BYTEORDER 0x$byteorder
+#define U8 $u8type
+#include <signal.h>
+#ifdef SIGBUS
+$signal_t bletch(s) int s; { exit(4); }
+#endif
 int main() {
 #if BYTEORDER == 0x1234 || BYTEORDER == 0x4321
     U8 buf[] = "\0\0\0\1\0\0\0\0";
@@ -13485,6 +13496,10 @@ int main() {
 
     fflush(stdout);
 
+#ifdef SIGBUS
+    signal(SIGBUS, bletch);
+#endif
+
     for (i = 0; i < 4; i++) {
        up = (U32*)(buf + i);
        if (! ((*up == 1 << (8*i)) ||   /* big-endian */
@@ -13517,7 +13532,7 @@ int main() {
 EOCP
 set try
 if eval $compile_ok; then
-       echo "(Testing for character data alignment may dump core.)" >&4
+       echo "(Testing for character data alignment may crash the test.  That's okay.)" >&4
        $run ./try 2>&1 >/dev/null
        case "$?" in
        0)      cat >&4 <<EOM
@@ -13531,7 +13546,6 @@ EOM
                d_u32align="$define"
                ;;
        esac
-       $rm -f core core.try.* try.core
 else
        rp='Can you access character data at unaligned addresses?'
        dflt='n'
@@ -13541,6 +13555,7 @@ else
        *)      d_u32align="$define" ;;
        esac
 fi
+$rm -f core core.try.* try.core
 
 : see if ualarm exists
 set ualarm d_ualarm