提交 f8bbcf3a 编写于 作者: A Andy Polyakov

Avoid GNU C assembler templates under Solaris x86.

上级 89cee61b
...@@ -107,12 +107,17 @@ my %table=( ...@@ -107,12 +107,17 @@ my %table=(
"debug-levitte-linux-elf","gcc:-DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:::", "debug-levitte-linux-elf","gcc:-DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:::",
"dist", "cc:-O::(unknown):::::", "dist", "cc:-O::(unknown):::::",
# Basic configs that should work on any box # Basic configs that should work on any (32 and less bit) box
"gcc", "gcc:-O3::(unknown)::BN_LLONG:::", "gcc", "gcc:-O3::(unknown)::BN_LLONG:::",
"cc", "cc:-O::(unknown):::::", "cc", "cc:-O::(unknown):::::",
#### Solaris x86 setups #### Solaris x86 setups
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN::-D_REENTRANT:-lsocket -lnsl:BN_LLONG $x86_gcc_des $x86_gcc_opts:$x86_sol_asm", # -DNO_INLINE_ASM switches off inline assembler. We have to do it
# here because whenever GNU C instantiates an assembler template it
# surrounds it with #APP #NO_APP comment pair which (at least Solaris
# 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
# error message.
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl:BN_LLONG $x86_gcc_des $x86_gcc_opts:$x86_sol_asm",
#### SPARC Solaris with GNU C setups #### SPARC Solaris with GNU C setups
"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::", "solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::",
...@@ -176,16 +181,16 @@ my %table=( ...@@ -176,16 +181,16 @@ my %table=(
# procedural analysis. As it has to be performed during the link # procedural analysis. As it has to be performed during the link
# stage the compiler leaves behind certain pseudo-code in lib*.a # stage the compiler leaves behind certain pseudo-code in lib*.a
# which might be release or even patch level specific. Generating # which might be release or even patch level specific. Generating
# the machine code and analyzing the *whole* program appears to be # the machine code for and analyzing the *whole* program appears
# *extremely* memory demanding while the performance gain is # to be *extremely* memory demanding while the performance gain is
# actually questionable. The situation is intensified by the default # actually questionable. The situation is intensified by the default
# HP-UX data set size limit (infamous 'maxdsiz' tunable) of 64MB # HP-UX data set size limit (infamous 'maxdsiz' tunable) of 64MB
# which is way too low for +O4. In other words, doesn't +O3 make # which is way too low for +O4. In other words, doesn't +O3 make
# more sense? # more sense?
# - Keep in mind that the compiler by default generates code suitable # - Keep in mind that the HP compiler by default generates code
# for execution on the host you're currently compiling at. If you # suitable for execution on the host you're currently compiling at.
# intend to use it across various PA-RISC processors consider adding # If the toolkit is ment to be used on various PA-RISC processors
# +Dportable. # consider './config +Dportable'.
# - +DD64 is chosen in favour of +DA2.0W because it's ment to be # - +DD64 is chosen in favour of +DA2.0W because it's ment to be
# compatible with *future* releases. # compatible with *future* releases.
# - If you run ./Configure hpux-parisc-[g]cc manually don't forget to # - If you run ./Configure hpux-parisc-[g]cc manually don't forget to
...@@ -239,6 +244,18 @@ my %table=( ...@@ -239,6 +244,18 @@ my %table=(
"FreeBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2:::", "FreeBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2:::",
#### Alpha Linux with GNU C and Compaq C setups #### Alpha Linux with GNU C and Compaq C setups
# Special notes:
# - linux-alpha+bwx-gcc is ment to be used from ./config only. If you
# ought to run './Configure linux-alpha+bwx-gcc' manually, do
# complement the command line with -mcpu=ev56, -mcpu=ev6 or whatever
# which is appropriate.
# - If you use ccc keep in mind that -fast implies -arch host and the
# compiler is free to issue instructions which gonna make elder CPU
# choke. If you wish to build "blended" toolkit, add -arch generic
# *after* -fast and invoke './Configure linux-alpha-ccc' manually.
#
# <appro@fy.chalmers.se>
#
"linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::",
"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::",
"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
......
...@@ -1634,7 +1634,7 @@ $rc5_obj = ...@@ -1634,7 +1634,7 @@ $rc5_obj =
*** solaris-x86-gcc *** solaris-x86-gcc
$cc = gcc $cc = gcc
$cflags = -O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN $cflags = -O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM
$unistd = $unistd =
$thread_cflag = -D_REENTRANT $thread_cflag = -D_REENTRANT
$lflags = -lsocket -lnsl $lflags = -lsocket -lnsl
......
...@@ -472,14 +472,17 @@ then ...@@ -472,14 +472,17 @@ then
sleep 5 sleep 5
OUT=linux-sparcv8 OUT=linux-sparcv8
fi fi
if [ "$OUT" = "i86pc-sun-solaris2" ] # To start with $OUT is never i86pc-sun-solaris2. Secondly why
then # ban *all* assembler implementation if it can't stand only one,
ASM=`as -V /dev/null 2>&1` # SHA-0 implementation.
case "$ASM" in #if [ "$OUT" = "i86pc-sun-solaris2" ]
GNU*) ;; #then
*) options="$options no-asm" ; echo "WARNING: You need the GNU assembler to use OpenSSL assembler code." ; echo "Sun as is not supported on Solaris x86." ;; # ASM=`as -V /dev/null 2>&1`
esac # case "$ASM" in
fi # GNU*) ;;
# *) options="$options no-asm" ; echo "WARNING: You need the GNU assembler to use OpenSSL assembler code." ; echo "Sun as is not supported on Solaris x86." ;;
# esac
#fi
case "$GUESSOS" in case "$GUESSOS" in
i386-*) options="$options 386" ;; i386-*) options="$options 386" ;;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册