[openssl-users] 1.1.1 pre1 tests failing on Solaris SPARC

Dennis Clarke dclarke at blastwave.org
Tue Feb 20 18:33:43 UTC 2018

On 20/02/18 01:11 PM, Norm Green wrote:
> Just download and build v1.1.1 pre alpha 1 on Solaris.  It's on 
> ftp.openssl.org.  That's all I did.  Configure using 
> solaris64-sparcv9-cc .  I'm using Solaris studio 12.3.

Let's have a look.

corv $ uname -a
SunOS corv 5.10 Generic_150400-59 sun4u sparc SUNW,SPARC-Enterprise

corv $ /opt/developerstudio12.6/bin/c99 -V
c99: Studio 12.6 Sun C 5.15 SunOS_sparc 2017/05/30

corv $ psrinfo -pv
The physical processor has 8 virtual processors (0-7)
   SPARC64-VII+ (portid 1024 impl 0x7 ver 0xa1 clock 2860 MHz)

corv $ pwd
corv $ cd ../build
corv $ gzip -dc ../src/openssl-1.1.1-pre1.tar.gz | tar -xf -
corv $ mv openssl-1.1.1-pre1 openssl-1.1.1-pre1_SunOS5.10_sparcv9.001
corv $ cd openssl-1.1.1-pre1_SunOS5.10_sparcv9.001
corv $ cp -p Configure Configure.backup
corv $ OPENSSL_SOURCE=`pwd`
corv $ export OPENSSL_SOURCE
corv $ echo $OPENSSL_SOURCE

OKay .. whats going on here ?

corv $ grep -i "sparc" Configure

Doesn't exist ... has to have been moved somewhere.

These two files make reference to solaris64 in some way :


Interesting comment :

#### Solaris x86 with Sun C setups
     # There used to be solaris-x86-cc target, but it was removed,
     # primarily because vendor assembler can't assemble our modules
     # with -KPIC flag. As result it, assembly support, was not even
     # available as option. But its lack means lack of side-channel
     # resistant code, which is incompatible with security by todays
     # standards. Fortunately gcc is readily available prepackaged
     # option, which we can firmly point at...
     # On related note, solaris64-x86_64-cc target won't compile code
     # paths utilizing AVX and post-Haswell instruction extensions.
     # Consider switching to solaris64-x86_64-gcc even here...

Pre-packaged? Really ... let's not go down the route of argument today.

     "solaris64-sparcv9-cc" => {
         inherit_from     => [ "solaris-sparcv7-cc", asm("sparcv9_asm") ],
         cflags           => add_before("-xarch=v9"),
         bn_ops           => "BN_LLONG RC4_CHAR",
         multilib         => "/64",

Actually xarch=v9 is wrong.  Should just say "sparc".

Well it looks like lots has changed ... so let me fish around in here
and find what is going on with Configure and its new sub-files and then
see if I can get a compile going as a debug build. Also I have gcc 7.2.0
here but there isn't any such thing as "pre-packaged".


More information about the openssl-users mailing list