summaryrefslogtreecommitdiffstats
path: root/Makefile.org
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-01-02 10:30:07 +0000
committerRichard Levitte <levitte@openssl.org>2002-01-02 10:30:07 +0000
commita5595fde9a03b1189affa4de46d48c16fce6356f (patch)
tree1d2a4a0550f6ec3541a003c89dc8b1b566c10bce /Makefile.org
parent95f8c7195c13dfdeab64b99044e33af44ef37b79 (diff)
On Solaris64, cc needs the flag -xarch=v9 when linking shared
libraries. Make a general change to support shared library linking flags in general. Noted by Nick Briggs <briggs@parc.xerox.com>
Diffstat (limited to 'Makefile.org')
-rw-r--r--Makefile.org30
1 files changed, 20 insertions, 10 deletions
diff --git a/Makefile.org b/Makefile.org
index cf0d307001..db86db6633 100644
--- a/Makefile.org
+++ b/Makefile.org
@@ -191,6 +191,7 @@ SHARED_CRYPTO=libcrypto$(SHLIB_EXT)
SHARED_SSL=libssl$(SHLIB_EXT)
SHARED_LIBS=
SHARED_LIBS_LINK_EXTS=
+SHARED_LDFLAGS=
GENERAL= Makefile
BASENAME= openssl
@@ -258,7 +259,8 @@ do_bsd-gcc-shared: do_gnu-shared
do_linux-shared: do_gnu-shared
do_gnu-shared:
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
- ( set -x; ${CC} -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ ( set -x; ${CC} ${SHARED_LDFLAGS} \
+ -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-Wl,-soname=lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-Wl,--whole-archive lib$$i.a \
-Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
@@ -278,7 +280,8 @@ do_alpha-osf1-shared:
$(MAKE) do_gnu-shared; \
else \
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
- ( set -x; ${CC} -shared -o lib$$i.so \
+ ( set -x; ${CC} ${SHARED_LDFLAGS} \
+ -shared -o lib$$i.so \
-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
-all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -l$$i"; \
@@ -293,7 +296,8 @@ do_tru64-shared:
$(MAKE) do_gnu-shared; \
else \
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
- ( set -x; ${CC} -shared -msym -o lib$$i.so \
+ ( set -x; ${CC} ${SHARED_LDFLAGS} \
+ -shared -msym -o lib$$i.so \
-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
-all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -l$$i"; \
@@ -308,7 +312,8 @@ do_tru64-shared-rpath:
$(MAKE) do_gnu-shared; \
else \
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
- ( set -x; ${CC} -shared -msym -o lib$$i.so \
+ ( set -x; ${CC} ${SHARED_LDFLAGS} \
+ -shared -msym -o lib$$i.so \
-rpath ${INSTALLTOP}/lib \
-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
-all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
@@ -324,7 +329,8 @@ do_solaris-shared:
else \
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
( PATH=/usr/ccs/bin:$$PATH ; export PATH; \
- set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ set -x; ${CC} ${SHARED_LDFLAGS} \
+ -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -l$$i"; \
@@ -343,7 +349,8 @@ do_svr5-shared:
for obj in `ar t lib$$i.a` ; do \
OBJS="$${OBJS} `grep $$obj allobjs`" ; \
done ; \
- set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ set -x; ${CC} ${SHARED_LDFLAGS} \
+ -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
$${OBJS} $$libs ${EX_LIBS} ) || exit 1; \
libs="$$libs -l$$i"; \
@@ -356,7 +363,8 @@ do_irix-shared:
$(MAKE) do_gnu-shared; \
else \
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
- ( set -x; ${CC} -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ ( set -x; ${CC} ${SHARED_LDFLAGS} \
+ -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-Wl,-soname,lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-all lib$$i.a $$libs ${EX_LIBS} -lc) || exit 1; \
libs="$$libs -l$$i"; \
@@ -376,7 +384,8 @@ do_irix-shared:
#
do_hpux-shared:
for i in ${SHLIBDIRS}; do \
- ( set -x; /usr/ccs/bin/ld +vnocompatwarnings \
+ ( set -x; /usr/ccs/bin/ld ${SHARED_LDFLAGS} \
+ +vnocompatwarnings \
-b -z +s \
-o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
@@ -394,7 +403,8 @@ do_hpux-shared:
#
do_hpux64-shared:
for i in ${SHLIBDIRS}; do \
- ( set -x; /usr/ccs/bin/ld -b -z \
+ ( set -x; /usr/ccs/bin/ld ${SHARED_LDFLAGS} \
+ -b -z \
-o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+forceload lib$$i.a -ldl -lc ) || exit 1; \
@@ -430,7 +440,7 @@ do_hpux64-shared:
# HP/UX-64bit: /usr/ccs/bin/ld
# AIX: $(CC)
ALLSYMSFLAG=-bnogc
-SHAREDFLAGS=-G -bE:lib$$i.exp -bM:SRE
+SHAREDFLAGS=${SHARED_LDFLAGS} -G -bE:lib$$i.exp -bM:SRE
SHAREDCMD=$(CC)
do_aix-shared:
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \