NetBSD hint update
[p5sagit/p5-mst-13.2.git] / hints / hpux.sh
index 2c3126d..2e8b16c 100644 (file)
@@ -1,34 +1,44 @@
+#! /local/gnu/bin/bash
 # hints/hpux.sh
-# Perl Configure hints file for Hewlett Packard HP/UX 9.x and 10.x
+# Perl Configure hints file for Hewlett Packard HP-UX 9.x and 10.x
 # This file is based on 
-# hints/hpux_9.sh, Perl Configure hints file for Hewlett Packard HP/UX 9.x
+# hints/hpux_9.sh, Perl Configure hints file for Hewlett Packard HP-UX 9.x
 # Use Configure -Dcc=gcc to use gcc.
-# From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
-# Date: Thu, 28 Sep 95 11:06:07 PDT
+# From: Jeff Okamoto <okamoto@corp.hp.com>
 # and
-# hints/hpux_10.sh, Perl Configure hints file for Hewlett Packard HP/UX 10.x
+# hints/hpux_10.sh, Perl Configure hints file for Hewlett Packard HP-UX 10.x
 # From: Giles Lean <giles@nemeton.com.au>
-# Date: Tue, 27 Jun 1995 08:17:45 +1000
 
+# This version: March 21, 1997
+# Current maintainer: Jeff Okamoto <okamoto@corp.hp.com>
+
+#--------------------------------------------------------------------
 # Use Configure -Dcc=gcc to use gcc.
 # Use Configure -Dprefix=/usr/local to install in /usr/local.
-
+#
 # Some users have reported problems with dynamic loading if the 
 # environment variable LDOPTS='-a archive' .
+#
+# If you get a message about "too much defining", you might have to
+# add the following to your ccflags: '-Wp,-H256000'
+#--------------------------------------------------------------------
 
 # Turn on the _HPUX_SOURCE flag to get many of the HP add-ons
 ccflags="$ccflags -D_HPUX_SOURCE"
-ldflags="$ldflags"
+
+# If you plan to use gcc, then you should uncomment the following line
+# so you get the HP math library and not the GCC math library.
+# ccflags="$ccflags -L/lib/pa1.1"
 
 # Check if you're using the bundled C compiler.  This compiler doesn't support
 # ANSI C (the -Aa flag) nor can it produce shared libraries.  Thus we have
 # to turn off dynamic loading.
 case "$cc" in
-'') if cc $ccflags -Aa 2>&1 | $contains 'Unknown option "A"' >/dev/null
+'') if cc $ccflags -Aa 2>&1 | $contains 'option' >/dev/null
     then
        case "$usedl" in
         '') usedl="$undef"
-            cat <<'EOM'
+            cat <<'EOM' >&4
 
 The bundled C compiler can not produce shared libraries, so you will
 not be able to use dynamic loading. 
@@ -44,39 +54,42 @@ EOM
 esac
 
 # Determine the architecture type of this system.
-xxuname=`uname -r`
-if echo $xxuname | $contains '10'
+# Keep leading tab below -- Configure Black Magic -- RAM, 03/02/97
+       xxuname=`uname -r`
+if echo $xxuname | $contains '10' >/dev/null 2>&1
 then
        # This system is running 10.0
-       xxcontext=`grep $(printf %#x $(getconf CPU_VERSION)) /usr/include/sys/unistd.h`
-       if echo "$xxcontext" | $contains 'PA-RISC1.1'
+       xxcpu1=`getconf CPU_VERSION`
+       xxcpu2=`printf %#x ${xxcpu1}`
+       xxcontext=`grep "$xxcpu2" /usr/include/sys/unistd.h`
+       if echo "$xxcontext" | $contains 'PA-RISC1.1' >/dev/null 2>&1
        then
                archname='PA-RISC1.1'
-       elif echo "$xxcontext" | $contains 'PA-RISC1.0'
+       elif echo "$xxcontext" | $contains 'PA-RISC1.0' >/dev/null 2>&1
        then
                archname='PA-RISC1.0'
-       elif echo "$xxcontext" | $contains 'PA-RISC2'
+       elif echo "$xxcontext" | $contains 'PA-RISC2' >/dev/null 2>&1
        then
                archname='PA-RISC2'
        else
-               echo "This 10.0 system is of a PA-RISC type I don't recognize."
+               echo "This 10.0 system is of a PA-RISC type I don't recognize." >&2
                echo "Debugging output: $xxcontext"
                archname=''
        fi
 else
        # This system is not running 10.0
        xxcontext=`/bin/getcontext`
-       if echo "$xxcontext" | $contains 'PA-RISC1.1'
+       if echo "$xxcontext" | $contains 'PA-RISC1.1' >/dev/null 2>&1
        then
                archname='PA-RISC1.1'
-       elif echo "$xxcontext" | $contains 'PA-RISC1.0'
+       elif echo "$xxcontext" | $contains 'PA-RISC1.0' >/dev/null 2>&1
        then
                archname='PA-RISC1.0'
-       elif echo "$xxcontext" | $contains 'HP-MC'
+       elif echo "$xxcontext" | $contains 'HP-MC' >/dev/null 2>&1
        then
                archname='HP-MC68K'
        else
-               echo "I cannot recognize what chip set this system is using."
+               echo "I cannot recognize what chip set this system is using." >&2
                echo "Debugging output: $xxcontext"
                archname=''
        fi
@@ -94,21 +107,21 @@ fi
 set `echo " $libswanted " | sed  -e 's@ ld @ @' -e 's@ dbm @ @' -e 's@ BSD @ @' -e 's@ PW @ @'`
 libswanted="$*"
 
-# If you copy the perl binaries to other systems and the dynamic loader
-# complains about missing libraries, you can either copy the shared libraries
-# or switch the comments to recompile perl to use archive libraries
-# ccdlflags="-Wl,-E -Wl,-a,archive $ccdlflags"
-ccdlflags="-Wl,-E $ccdlflags"
+# By setting the deferred flag below, this means that if you run perl on a
+# system that does not have the required shared library that you linked it
+# with, it will die when you try to access a symbol in the (missing) shared
+# library.  If you would rather know at perl startup time that you are
+# missing an important shared library, switch the comments so that immediate,
+# rather than deferred loading is performed.
+# ccdlflags="-Wl,-E $ccdlflags"
+ccdlflags="-Wl,-E -Wl,-B,deferred $ccdlflags"
 
 usemymalloc='y'
 alignbytes=8
-selecttype='int *' 
+selecttype='int *'
 
-# There are some lingering issues about whether g/setpgrp should be a part
-# of the perl core.  This setting should cause perl to conform to the Principle
-# of Least Astonishment.  The best thing is to use the g/setpgrp in the POSIX
-# module.
-d_bsdpgrp='define'
+# When HP-UX runs a script with "#!", it sets argv[0] to the script name.
+toke_cflags='ccflags="$ccflags -DARG_ZERO_IS_SCRIPT"'
 
 # If your compile complains about FLT_MIN, uncomment the next line
 # POSIX_cflags='ccflags="$ccflags -DFLT_MIN=1.17549435E-38"'
@@ -116,5 +129,13 @@ d_bsdpgrp='define'
 # Comment this out if you don't want to follow the SVR4 filesystem layout
 # that HP-UX 10.0 uses
 case "$prefix" in
-'') prefix='/opt/perl5' ;;
+'') prefix='/opt/perl5.003' ;;
 esac
+
+# Date: Fri, 6 Sep 96 23:15:31 CDT
+# From: "Daniel S. Lewart" <d-lewart@uiuc.edu>
+# I looked through the gcc.info and found this:
+#   * GNU CC compiled code sometimes emits warnings from the HP-UX
+#     assembler of the form:
+#          (warning) Use of GR3 when frame >= 8192 may cause conflict.
+#     These warnings are harmless and can be safely ignored.