linux64-sparcv9 support finally debugged and tested.
authorAndy Polyakov <appro@openssl.org>
Thu, 5 Dec 2002 13:17:52 +0000 (13:17 +0000)
committerAndy Polyakov <appro@openssl.org>
Thu, 5 Dec 2002 13:17:52 +0000 (13:17 +0000)
Submitted by:
Reviewed by:
PR:

Configure
TABLE
config

index f5f8ecd..6eff4d6 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -203,9 +203,8 @@ my %table=(
 # it's a real mess with -mcpu=ultrasparc option under Linux, but
 # -Wa,-Av8plus should do the trick no matter what.
 "linux-sparcv9","gcc:-mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -Wa,-Av8plus -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-# !!!Folowing can't be even tested yet!!!
-#    We have to wait till 64-bit glibc for SPARC is operational!!!
-#"linux64-sparcv9","sparc64-linux-gcc:-m64 -mcpu=v9 -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DBN_DIV2W::-D_REENTRANT:ULTRASPARC::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::asm/md5-sparcv9.o:",
+# GCC 3.1 is a requirement
+"linux64-sparcv9","gcc:-m64 -mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:ULTRASPARC:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 
 # Sunos configs, assuming sparc for the gcc one.
 ##"sunos-cc", "cc:-O4 -DNOPROTO -DNOCONST::(unknown):SUNOS::DES_UNROLL:::",
diff --git a/TABLE b/TABLE
index 0de3094..74121b9 100644 (file)
--- a/TABLE
+++ b/TABLE
@@ -3400,6 +3400,31 @@ $shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
 $ranlib       = 
 $arflags      = 
 
+*** linux64-sparcv9
+$cc           = gcc
+$cflags       = -m64 -mcpu=ultrasparc -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall
+$unistd       = 
+$thread_cflag = -D_REENTRANT
+$sys_id       = ULTRASPARC
+$lflags       = -ldl
+$bn_ops       = SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR
+$bn_obj       = 
+$des_obj      = 
+$bf_obj       = 
+$md5_obj      = asm/md5-sparcv9.o
+$sha1_obj     = 
+$cast_obj     = 
+$rc4_obj      = 
+$rmd160_obj   = 
+$rc5_obj      = 
+$dso_scheme   = dlfcn
+$shared_target= linux-shared
+$shared_cflag = -fPIC
+$shared_ldflag = -m64
+$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
+$ranlib       = 
+$arflags      = 
+
 *** ncr-scde
 $cc           = cc
 $cflags       = -O6 -Xa -Hoff=BEHAVED -686 -Hwide -Hiw
diff --git a/config b/config
index 0128345..8988f66 100755 (executable)
--- a/config
+++ b/config
@@ -547,12 +547,13 @@ EOF
   ppc-apple-darwin*) OUT="darwin-ppc-cc" ;;
   i386-apple-darwin*) OUT="darwin-i386-cc" ;;
   sparc64-*-linux2)
-       #Before we can uncomment following lines we have to wait at least
-       #till 64-bit glibc for SPARC is operational:-(
-       #echo "WARNING! If you wish to build 64-bit library, then you have to"
-       #echo "         invoke './Configure linux64-sparcv9' *manually*."
-       #echo "         Type return if you want to continue, Ctrl-C to abort."
-       #read waste < /dev/tty
+       echo "WARNING! If *know* that your GNU C supports 64-bit/V9 ABI"
+       echo "         and wish to build 64-bit library, then you have to"
+       echo "         invoke './Configure linux64-sparcv9' *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
+       fi
        OUT="linux-sparcv9" ;;
   sparc-*-linux2)
        KARCH=`awk '/^type/{print$3}' /proc/cpuinfo`