Proper support for HP-UX64 gcc build.
authorAndy Polyakov <appro@openssl.org>
Wed, 21 Jan 2004 09:58:18 +0000 (09:58 +0000)
committerAndy Polyakov <appro@openssl.org>
Wed, 21 Jan 2004 09:58:18 +0000 (09:58 +0000)
PR: 772

Configure
config
crypto/bn/Makefile.ssl

index 61331dbb517f0188875b9c4449dd8f57e258e263..b606ca97367901d9fccd2b958f3b9fc25d517bb4 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -260,6 +260,7 @@ my %table=(
 # 64bit PARISC for GCC without optimization, which seems to make problems.
 # Submitted by <ross.alexander@uk.neceur.com>
 "hpux64-parisc-gcc","gcc:-DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dlfcn:hpux64-shared:-fpic::.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+"hpux64-parisc2-gcc","gcc:-O3 -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2W.o:::::::::dlfcn:hpux64-shared:-fpic::.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 
 # IA-64 targets
 "hpux-ia64-cc","cc:-Ae +DD32 +O3 +Olit=all -z -DB_ENDIAN::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/ia64-cpp.o:::::::::dlfcn:hpux-shared:+Z::.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
diff --git a/config b/config
index b3bd96bbfcb674da1fa97ae0286b554d1c437c93..25a3703c1fe0d42d2dcd6e6ecb0012a07d4a3d32 100755 (executable)
--- a/config
+++ b/config
@@ -134,7 +134,7 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
        HPUXVER=`echo ${RELEASE}|sed -e 's/[^.]*.[0B]*//'`
        case "$HPUXVER" in
            1[0-9].*)   # HPUX 10 and 11 targets are unified
-               echo "${MACHINE}-hp-hpux10"; exit 0
+               echo "${MACHINE}-hp-hpux1x"; exit 0
                ;;
            *)
                echo "${MACHINE}-hp-hpux"; exit 0
@@ -410,9 +410,10 @@ if [ "$SYSTEM" = "HP-UX" ];then
   GCC_BITS="32"
   if [ $GCCVER -ge 30 ]; then
     # PA64 support only came in with gcc 3.0.x.
-    # We look for the preprocessor symbol __LP64__ indicating
-    # 64bit bit long and pointer.  sizeof(int) == 32 on HPUX64.
-    if gcc -v -E -x c /dev/null 2>&1 | grep __LP64__ > /dev/null; then
+    # We check if the preprocessor symbol __LP64__ is defined...
+    if echo "__LP64__" | gcc -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then
+      : # __LP64__ has slipped through, it therefore is not defined
+    else
       GCC_BITS="64"
     fi
   fi
@@ -685,7 +686,7 @@ EOF
        if [ $CC = "gcc" ];
        then
          if [ $GCC_BITS = "64" ]; then
-           OUT="hpux64-parisc-gcc"
+           OUT="hpux64-parisc2-gcc"
          else
            OUT="hpux-parisc-gcc"
          fi
@@ -700,7 +701,7 @@ EOF
        if   [ $CPU_VERSION -ge 768 ]; then     # IA-64 CPU
             echo "WARNING! 64-bit ABI is the default configured ABI on HP-UXi."
             echo "         If you wish to build 32-bit library, the you have to"
-            echo "         invoke './Configure hpux-ia32-cc' *manually*."
+            echo "         invoke './Configure hpux-ia64-cc' *manually*."
             if [ "$TEST" = "false" ]; then
                echo "         You have about 5 seconds to press Ctrl-C to abort."
                (stty -icanon min 0 time 50; read waste) < /dev/tty
index 0c6e796d17adeb7a24cdaf238b8ee81dae5a0616..50892ef44c6b639c2e643d7291f50b2187709800 100644 (file)
@@ -120,6 +120,9 @@ asm/ia64-cpp.o:     asm/ia64.S
 
 asm/x86_64-gcc.o: asm/x86_64-gcc.c
 
+asm/pa-risc2W.o: asm/pa-risc2W.s
+       /usr/ccs/bin/as -o asm/pa-rics2W.o asm/pa-risc2W.s
+
 files:
        $(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO