mirror of
https://github.com/openssl/openssl.git
synced 2024-11-25 11:03:37 +08:00
Linux shared libraries.
This commit is contained in:
parent
73bfb9ad6a
commit
0973910fbb
3
CHANGES
3
CHANGES
@ -5,6 +5,9 @@
|
||||
|
||||
Changes between 0.9.2b and 0.9.3
|
||||
|
||||
*) "make linux-shared" to build shared libraries.
|
||||
[Niels Poppe <niels@netbox.org>]
|
||||
|
||||
*) New Configure option no-<cipher> (rsa, idea, rc5, ...).
|
||||
[Ulf Möller]
|
||||
|
||||
|
24
Configure
24
Configure
@ -229,8 +229,8 @@ my %table=(
|
||||
"CygWin32", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::BN_LLONG $x86_gcc_des $x86_gcc_opts:",
|
||||
|
||||
# Ultrix from Bernhard Simon <simon@zid.tuwien.ac.at>
|
||||
"ultrix","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::::::",
|
||||
"ultrix-gcc","cc:-O3 -DL_ENDIAN::::::",
|
||||
"ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::::::",
|
||||
"ultrix-gcc","gcc:-O3 -DL_ENDIAN::::::",
|
||||
# K&R C is no longer supported; you need gcc on old Ultrix installations
|
||||
##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::::::",
|
||||
|
||||
@ -391,6 +391,23 @@ if ($rmd160_obj =~ /\.o$/)
|
||||
$cflags.=" -DRMD160_ASM";
|
||||
}
|
||||
|
||||
my $version = "unknown";
|
||||
my $major = "unknown";
|
||||
my $minor = "unknown";
|
||||
|
||||
open(IN,'<crypto/opensslv.h') || die "unable to read opensslv.h:$!\n";
|
||||
while (<IN>)
|
||||
{
|
||||
$version=$1 if /OPENSSL.VERSION.TEXT.*OpenSSL (\S+) /;
|
||||
}
|
||||
close(IN);
|
||||
|
||||
if ($version =~ /(^[0-9]*)\.([\0-9\.]*)/)
|
||||
{
|
||||
$major=$1;
|
||||
$minor=$2;
|
||||
}
|
||||
|
||||
open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
|
||||
open(OUT,">$Makefile") || die "unable to create $Makefile:$!\n";
|
||||
my $sdirs=0;
|
||||
@ -405,6 +422,9 @@ while (<IN>)
|
||||
s/$dir//;
|
||||
}
|
||||
}
|
||||
s/^VERSION=.*/VERSION=$version/;
|
||||
s/^MAJOR=.*/MAJOR=$major/;
|
||||
s/^MINOR=.*/MINOR=$minor/;
|
||||
s/^INSTALLTOP=.*$/INSTALLTOP=$installprefix/;
|
||||
s/^OPENSSLDIR=.*$/OPENSSLDIR=$openssldir/;
|
||||
s/^PLATFORM=.*$/PLATFORM=$target/;
|
||||
|
23
Makefile.org
23
Makefile.org
@ -2,7 +2,9 @@
|
||||
## Makefile for OpenSSL
|
||||
##
|
||||
|
||||
VERSION = 0.9.2b
|
||||
VERSION=
|
||||
MAJOR=
|
||||
MINOR=
|
||||
PLATFORM=dist
|
||||
INSTALLTOP=/usr/local/ssl
|
||||
|
||||
@ -136,6 +138,8 @@ RMD160_ASM_OBJ= asm/rm86-out.o
|
||||
#RMD160_ASM_OBJ= asm/rm86bsdi.o # bsdi
|
||||
|
||||
DIRS= crypto ssl rsaref apps test tools
|
||||
SHLIBDIRS= crypto ssl
|
||||
|
||||
# dirs in crypto to build
|
||||
SDIRS= \
|
||||
md2 md5 sha mdc2 hmac ripemd \
|
||||
@ -179,6 +183,23 @@ sub_all:
|
||||
$(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \
|
||||
done;
|
||||
|
||||
linux-shared:
|
||||
for i in ${SHLIBDIRS}; do \
|
||||
rm -f lib$$i.a lib$$i.so \
|
||||
lib$$i.so.${MAJOR} lib$$i.so.${MAJOR}.${MINOR}; \
|
||||
${MAKE} CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='-fPIC ${CFLAG}' SDIRS='${SDIRS}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' DIRS=$$i clean all || exit 1; \
|
||||
( set -x; ${CC} -shared -o lib$$i.so.${MAJOR}.${MINOR} \
|
||||
-Wl,-S,-soname=lib$$i.so.${MAJOR} \
|
||||
-Wl,--whole-archive lib$$i.a \
|
||||
-Wl,--no-whole-archive -lc ) || exit 1; \
|
||||
rm -f lib$$i.a; make -C $$i clean || exit 1 ;\
|
||||
done;
|
||||
@set -x; \
|
||||
for i in ${SHLIBDIRS}; do \
|
||||
ln -s lib$$i.so.${MAJOR}.${MINOR} lib$$i.so.${MAJOR}; \
|
||||
ln -s lib$$i.so.${MAJOR} lib$$i.so; \
|
||||
done;
|
||||
|
||||
Makefile.ssl: Makefile.org
|
||||
@echo "Makefile.ssl is older than Makefile.org."
|
||||
@echo "Reconfigure the source tree (via 'perl Configure' or 'sh config')"
|
||||
|
Loading…
Reference in New Issue
Block a user