provisional MakeMaker patch for VMS
[p5sagit/p5-mst-13.2.git] / Configure
index aba0b38..856aa39 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 Fri Dec 28 04:17:47 EET 2001 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -1162,12 +1162,12 @@ if `$sh -c '#' >/dev/null 2>&1`; then
        if test ! -f $xcat$_exe; then
                for p in $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
@@ -2810,7 +2810,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 +9988,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;
@@ -13471,7 +13475,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 +13494,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 +13530,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 +13544,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 +13553,7 @@ else
        *)      d_u32align="$define" ;;
        esac
 fi
+$rm -f core core.try.* try.core
 
 : see if ualarm exists
 set ualarm d_ualarm