SGI IRIX config updates.
authorAndy Polyakov <appro@openssl.org>
Sun, 25 Jul 1999 20:40:58 +0000 (20:40 +0000)
committerAndy Polyakov <appro@openssl.org>
Sun, 25 Jul 1999 20:40:58 +0000 (20:40 +0000)
Configure
config

index d8c7eaf..bcd82ad 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -137,19 +137,19 @@ my %table=(
 ##"sunos-cc", "cc:-O4 -DNOPROTO -DNOCONST::(unknown)::DES_UNROLL:::",
 "sunos-gcc","gcc:-O3 -mv8::(unknown)::BN_LLONG RC4_CHAR DES_UNROLL DES_PTR DES_RISC1:::",
 
-# SGI configurations.  If the box is rather old (r3000 cpu), you will
-# probably have to remove the '-mips2' flag.  I've only been using
-# IRIX 5.[23].
-# I've recently done 32 and 64 bit mips assember, it make this RSA
-# 3 times faster, use if at all possible.
-#"irix-gcc","gcc:-O2 -mips2::SIXTY_FOUR_BIT BN_LLONG RC4_INDEX RC4_CHAR:::",
-"irix-gcc","gcc:-O2 -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::",
+#### IRIX 5.x configs
+# -mips2 flag is added by ./config when appropriate.
+"irix-gcc","gcc:-O3 -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::",
 "irix-cc", "cc:-O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG DES_PTR DES_RISC2 DES_UNROLL BF_PTR:::",
-"irix-mips3-gcc","gcc:-mips3 -O2 -DTERMIOS -DB_ENDIAN::(unknown)::MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:::",
-"irix-mips3-cc", "cc:-O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::DES_PTR DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
-"debug-irix-cc", "cc:-w2 -g -DCRYPTO_MDEBUG -DTERMIOS -DB_ENDIAN::(unknown):::::",
-# This is the n64 mode build.
-"irix64-mips4-cc", "cc:-64 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
+#### IRIX 6.x configs
+# Only N32 and N64 ABIs are supported. If you need O32 ABI build, invoke
+# './Configure irix-[g]cc' manually.
+# -mips4 flag is added by ./config when appropriate.
+"irix-mips3-gcc","gcc:-mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN::(unknown)::MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
+"irix-mips3-cc", "cc:-n32 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::DES_PTR DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
+# N64 ABI builds.
+"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN::(unknown)::DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
+"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
 
 # HPUX 9.X config.
 # Don't use the bundled cc.  It is broken.  Use HP ANSI C if possible, or
diff --git a/config b/config
index 6f36435..582a8b0 100755 (executable)
--- a/config
+++ b/config
@@ -94,12 +94,16 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
        esac
        ;;
 
-    IRIX:*)
-       echo "${MACHINE}-sgi-irix"; exit 0
+    IRIX:5.*)
+       echo "mips2-sgi-irix"; exit 0
+       ;;
+
+       IRIX:6.*)
+       echo "mips3-sgi-irix"; exit 0
        ;;
 
     IRIX64:*)
-       echo "${MACHINE}-sgi-irix64"; exit 0
+       echo "mips4-sgi-irix64"; exit 0
        ;;
 
     Linux:[2-9].*)
@@ -298,7 +302,7 @@ if [ "$GCCVER" != "" ]; then
   # then strip off whatever prefix Cygnus prepends the number with...
   GCCVER=`echo $GCCVER | sed 's/^[a-z]*\-//'`
   # peak only digits before and after first dot, e.g. 2.95.1 gives 29
-  GCCVER=`echo $GCCVER | sed '/\([0-9]\)\.\([0-9]\).*/\1\2/'`
+  GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'`
 else
   CC=cc
   if [ "$SYSTEM" = "SunOS" ]
@@ -311,6 +315,9 @@ else
   fi
 fi
 
+GCCVER=${GCCVER:-0}
+CCVER=${CCVER:-0}
+
 # read the output of the embedded GuessOS 
 read GUESSOS
 
@@ -323,6 +330,32 @@ case "$GUESSOS" in
   alpha-*-linux2) OUT="alpha-gcc" ;;
   ppc-*-linux2) OUT="linux-ppc" ;;
   mips-*-linux?) OUT="linux-mips" ;;
+  mips2-sgi-irix)
+       CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
+       CPU=${CPU:-0}
+       if [ $CPU -ge 4000 ]; then
+               options="$options -mips2"
+       fi
+       OUT="irix-$CC"
+       ;;
+  mips3-sgi-irix)
+       CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
+       CPU=${CPU:-0}
+       if [ $CPU -ge 5000 ]; then
+               options="$options -mips4"
+       else
+               options="$options -mips3"
+       fi
+       OUT="irix-mips3-$CC"
+       ;;
+  mips4-sgi-irix64)
+       echo "WARNING! If you wish to build 64-bit library, then you have to"
+       echo "         invoke './Configre irix64-mips4-$CC' *manually*."
+       echo "         Type Ctrl-C if you don't want to continue."
+       read waste < /dev/tty
+       options="$options -mips4"
+       OUT="irix-mips3-$CC"
+       ;;
   sparc64-*-linux2)
        #Before we uncomment following line we have to wait at least till
        #64-bit glibc for SPARC is available:-(
@@ -331,7 +364,7 @@ case "$GUESSOS" in
        #echo "         Type Ctrl-C if you don't want to continue."
        #read waste < /dev/tty
        OUT="linux-sparcv9" ;;
-  sparc-*-linux2) OUT="linux-sparc" ;;
+  sparc-*-linux2)
        KARCH=`awk '/type/{print$3}' /proc/cpuinfo`
        case ${KARCH:-sun4} in
        sun4u*) OUT="linux-sparcv9" ;;