Configure and hints/dec_osf.sh changes for Digital UNIX:
authorSpider Boardman <spider@orb.nashua.nh.us>
Sat, 20 Dec 1997 02:30:01 +0000 (21:30 -0500)
committerMalcolm Beattie <mbeattie@sable.ox.ac.uk>
Thu, 8 Jan 1998 15:56:02 +0000 (15:56 +0000)
Subject: [PATCH] perl5.004_56 NOT OK on alpha-dec_osf-thread (Digital UNIX X5.0-13)

p4raw-id: //depot/perl@406

Configure
hints/dec_osf.sh

index b338c49..6dcb640 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1825,7 +1825,7 @@ EOM
                osf1|mls+)      case "$5" in
                                alpha)
                                        osname=dec_osf
-                                       osvers=`echo "$3" | sed 's/^[vt]//'`
+                                       osvers=`echo "$3" | sed 's/^[xvt]//'`
                                        ;;
                        hp*)    osname=hp_osf1  ;;
                        mips)   osname=mips_osf1 ;;
index 2f93f1f..a1efc11 100644 (file)
@@ -102,7 +102,9 @@ case "$optimize" in
        *gcc*)  
                optimize='-O3'                          ;;
        *)      case "$_DEC_cc_style" in
-               new)    optimize='-O4'                  ;;
+               new)    optimize='-O4'
+                       ccflags="$ccflags -fprm d -ieee"
+                       ;;
                old)    optimize='-O2 -Olimit 3200'     ;;
                esac
                ccflags="$ccflags -D_INTRINSICS"
@@ -111,6 +113,17 @@ case "$optimize" in
        ;;
 esac
 
+# Make glibpth agree with the compiler suite.  Note that /shlib
+# is not here.  That's on purpose.  Even though that's where libc
+# really lives from V4.0 on, the linker (and /sbin/loader) won't
+# look there by default.  The sharable /sbin utilities were all
+# built with "-Wl,-rpath,/shlib" to get around that.  This makes
+# no attempt to figure out the additional location(s) searched by
+# gcc, since not all versions of gcc are easily coerced into
+# revealing that information.
+glibpth="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc"
+glibpth="$glibpth /usr/lib /usr/local/lib /var/shlib"
+
 # dlopen() is in libc
 libswanted="`echo $libswanted | sed -e 's/ dl / /'`"
 
@@ -165,15 +178,28 @@ case "$optimize" in
 esac
 
 if [ "X$usethreads" != "X" ]; then
-    ccflags="-DUSE_THREADS $ccflags"
-    optimize="-pthread $optimize"
-    ldflags="-pthread $ldflags"
-    set `echo X "$libswanted "| sed -e 's/ c / pthread c_r /'`
-    shift
-    libswanted="$*"
+    # Threads interfaces changed with V4.0.
+    case "$_DEC_uname_r" in
+    *[123].*)  libswanted="$libswanted pthreads mach exc c_r"
+               ccflags="-DUSE_THREADS -threads $ccflags"
+               ;;
+    *)         libswanted="$libswanted pthread exc"
+               ccflags="-DUSE_THREADS -pthread $ccflags"
+               ;;
+    esac
     usemymalloc='n'
 fi
 
+#
+# Make embedding in things like INN and Apache more memory friendly.
+# Keep it overridable on the Configure command line, though, so that
+# "-Uuseshrplib" prevents this default.
+#
+
+case "$_DEC_cc_style.$useshrplib" in
+       new.)   useshrplib="$define"    ;;
+esac
+
 #
 # Unset temporary variables no more needed.
 #
@@ -184,6 +210,22 @@ unset _DEC_uname_r
 #
 # History:
 #
+# perl5.004_57:
+#
+#      19-Dec-1997 Spider Boardman <spider@Orb.Nashua.NH.US>
+#
+#      * Newer Digial UNIX compilers enforce signaling for NaN without
+#        -ieee.  Added -fprm d at the same time since it's friendlier for
+#        embedding.
+#
+#      * Fixed the library search path to match cc, ld, and /sbin/loader.
+#
+#      * Default to building -Duseshrplib on newer systems.  -Uuseshrplib
+#        still overrides.
+#
+#      * Fix -pthread additions for useshrplib.  ld has no -pthread option.
+#
+#
 # perl5.004_04:
 #
 #       19-Sep-1997 Spider Boardman <spider@Orb.Nashua.NH.US>