From 29c0fccba8d3fe92ecb10326e386e99cd395eb99 Mon Sep 17 00:00:00 2001 From: Ben Laurie Date: Fri, 12 Mar 1999 20:26:27 +0000 Subject: [PATCH] Solaris shared library support. --- CHANGES | 5 +++++ Configure | 2 ++ shlib/solaris-sc4.sh | 42 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100755 shlib/solaris-sc4.sh diff --git a/CHANGES b/CHANGES index be13cc1af6..8af4c3ce85 100644 --- a/CHANGES +++ b/CHANGES @@ -5,6 +5,11 @@ Changes between 0.9.1c and 0.9.2 + *) Add support for native Solaris shared libraries. Configure + solaris-sparc-sc4-pic, make, then run shlib/solaris-sc4.sh. It'd be nice + if someone would make that last step automatic. + [Matthias Loepfe ] + *) ctx_size was not built with the right compiler during "make links". Fixed. [Ben Laurie] diff --git a/Configure b/Configure index 6a3e5c893c..ceccae2acd 100755 --- a/Configure +++ b/Configure @@ -105,6 +105,8 @@ my %table=( "solaris-usparc-sc4","cc:-xtarget=ultra -xarch=v8plus -Xa -xO5 -DB_ENDIAN:\ -lsocket -lnsl:\ BN_LLONG RC4_CHAR DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparc.o::", +"solaris-sparc-sc4-pic","cc:-xO5 -Xa -DB_ENDIAN -KPIC:-lsocket -lnsl:\ + BN_LLONG RC4_CHAR DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparc.o::", # Sunos configs, assuming sparc for the gcc one. "sunos-cc", "cc:-O4 -DNOPROTO -DNOCONST::DES_UNROLL:::", diff --git a/shlib/solaris-sc4.sh b/shlib/solaris-sc4.sh new file mode 100755 index 0000000000..b0766b35f7 --- /dev/null +++ b/shlib/solaris-sc4.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +major="1" + +slib=libssl +sh_slib=$slib.so.$major + +clib=libcrypto +sh_clib=$clib.so.$major + +echo collecting all object files for $clib.so +OBJS= +find . -name \*.o -print > allobjs +for obj in `ar t libcrypto.a` +do + OBJS="$OBJS `grep $obj allobjs`" +done + +echo linking $clib.so +cc -G -o $sh_clib -h $sh_clib $OBJS -lnsl -lsocket + +rm -f $clib.so +ln -s $sh_clib $clib.so + +echo collecting all object files for $slib.so +OBJS= +for obj in `ar t libssl.a` +do + OBJS="$OBJS `grep $obj allobjs`" +done + +echo linking $slib.so +cc -G -o $sh_slib -h $sh_slib $OBJS -L. -lcrypto + +rm -f $slib.so +ln -s $sh_slib $slib.so + +rm -f allobjs + +mv libRSAglue.a libRSAglue.a.orig +mv libcrypto.a libcrypto.a.orig +mv libssl.a libssl.a.orig -- 2.40.0