UNICOS/mk patches. Removing the _CRAYMPP test may be
Jarkko Hietaniemi [Tue, 25 Jan 2000 14:38:59 +0000 (14:38 +0000)]
rash but it's the best move I can think of right now.
Removing the _CRAYMPP test fixes a legion of pack/unpack
failures (hint: shortsize=4,intsize=8,longsize=8).
One subtest, t/lib/io_sock.t #14, is still failing.

p4raw-id: //depot/cfgperl@4888

Configure
config_h.SH
hints/unicosmk.sh
pp.c

index 902df5f..187403e 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 Mon Jan 24 08:41:05 EET 2000 [metaconfig 3.0 PL70]
+# Generated on Tue Jan 25 16:35:03 EET 2000 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.com)
 
 cat >/tmp/c1$$ <<EOF
@@ -2196,6 +2196,7 @@ EOM
        $test -f /dnix && osname=dnix
        $test -f /lynx.os && osname=lynxos
        $test -f /unicos && osname=unicos && osvers=`$uname -r`
+       $test -f /unicosmk && osname=unicosmk && osvers=`$uname -r`
        $test -f /unicosmk.ar && osname=unicosmk && osvers=`$uname -r`
        $test -f /bin/mips && /bin/mips && osname=mips
        $test -d /NextApps && set X `hostinfo | grep 'NeXT Mach.*:' | \
index 2b45b15..7c6fd5b 100644 (file)
@@ -1226,9 +1226,14 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     available directly to the user. Note that it may well be different from
  *     the preprocessor used to compile the C program.
  */
+/* CPPLAST:
+ *     This symbol is intended to be used along with CPPRUN in the same manner
+ *     symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
+ */
 #define CPPSTDIN "$cppstdin"
 #define CPPMINUS "$cppminus"
 #define CPPRUN "$cpprun"
+#define CPPLAST "$cpplast"
 
 /* HAS_ACCESS:
  *     This manifest constant lets the C program know that the access()
@@ -1420,6 +1425,11 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
  *     so that it is safe even if used by a process with super-user
  *     privileges.
  */
+/* HAS_PHOSTNAME:
+ *     This symbol, if defined, indicates that the C program may use the
+ *     contents of PHOSTNAME as a command to feed to the popen() routine
+ *     to derive the host name.
+ */
 #$d_gethname HAS_GETHOSTNAME   /**/
 #$d_uname HAS_UNAME            /**/
 #$d_phostname HAS_PHOSTNAME
@@ -2773,6 +2783,10 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 #$uselonglong  USE_LONG_LONG           /**/
 #endif
 
+/* USE_MORE_BITS:
+ *     This symbol, if defined, indicates that 64-bit interfaces and
+ *     long doubles should be used when available.
+ */
 #ifndef USE_MORE_BITS
 #$usemorebits  USE_MORE_BITS           /**/
 #endif
index f0b63cb..6113cc3 100644 (file)
@@ -8,3 +8,11 @@ case "$usemymalloc" in
     ccflags="$ccflags -DNO_RCHECK"
     ;;
 esac
+# If somebody ignores the Cray PATH.
+case ":$PATH:" in
+*:/opt/ctl/bin:*) ;;
+'') case "$cc" in
+    '') test -x /opt/ctl/bin/cc && cc=/opt/ctl/bin/cc ;;
+    esac
+    ;;
+esac
diff --git a/pp.c b/pp.c
index 267da99..b113526 100644 (file)
--- a/pp.c
+++ b/pp.c
@@ -47,7 +47,7 @@ typedef unsigned UBW;
  * have an integral type (except char) small enough to be represented
  * in a double without loss; that is, it has no 32-bit type.
  */
-#if LONGSIZE > 4  && defined(_CRAY) && !defined(_CRAYMPP)
+#if LONGSIZE > 4  && defined(_CRAY)
 #  define BW_BITS  32
 #  define BW_MASK  ((1 << BW_BITS) - 1)
 #  define BW_SIGN  (1 << (BW_BITS - 1))
@@ -86,7 +86,7 @@ typedef unsigned UBW;
 #   define PERL_NATINT_PACK
 #endif
 
-#if BYTEORDER > 0xFFFF && defined(_CRAY) && !defined(_CRAYMPP)
+#if LONGSIZE > 0xFFFF && defined(_CRAY)
 #  if BYTEORDER == 0x12345678
 #    define OFF16(p)   (char*)(p)
 #    define OFF32(p)   (char*)(p)