aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile.org
diff options
context:
space:
mode:
authorLutz Jänicke <jaenicke@openssl.org>2000-11-13 14:40:07 +0000
committerLutz Jänicke <jaenicke@openssl.org>2000-11-13 14:40:07 +0000
commit305db17b5f98d2a24eb3e959a041ee3333290bd6 (patch)
tree5aa2b03b64678727f80344a786ab4d4ff62c9434 /Makefile.org
parent6a8ba34f9d63fca67382a0b6764c4d29a4d7f3ca (diff)
downloadopenssl-305db17b5f98d2a24eb3e959a041ee3333290bd6.tar.gz
HP-UX shared libraries do not build any longer, as EX_LIBS contains
"-Wl,+s" instead of +s: * Hardcoded necessary references to -ldld/-ldl into the build rules and removed EX_LIBS. HP-UX records the pathnames of dependent libraries when the shared libs are built, so that ./libcrypto.sl... is recorded in libssl.sl..., with "./" not being resolvable when running an application linked against -lssl: * Build libssl without explicit reference to libcrypto, applications will be linked with "-lssl -lcrypto" anyway. Document these informations in Makefile.org.
Diffstat (limited to 'Makefile.org')
-rw-r--r--Makefile.org34
1 files changed, 26 insertions, 8 deletions
diff --git a/Makefile.org b/Makefile.org
index c73c5b3c1c..267cb3ad5d 100644
--- a/Makefile.org
+++ b/Makefile.org
@@ -291,22 +291,40 @@ do_irix-shared:
done
# This assumes that GNU utilities are *not* used
+# HP-UX includes the full pathname of libs we depend on, so we would get
+# ./libcrypto (with ./ as path information) compiled into libssl, hence
+# we omit the SHLIBDEPS. Applications must be linked with -lssl -lcrypto
+# anyway.
+# The object modules are loaded from lib$i.a using the undocumented -Fl
+# option.
+#
+# WARNING: Until DSO is fixed to support a search path, we support SHLIB_PATH
+# by temporarily specifying "+s"!
+#
do_hpux-shared:
- libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+ for i in ${SHLIBDIRS}; do \
( set -x; /usr/ccs/bin/ld +vnocompatwarnings \
- -b -z -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ -b -z +s \
+ -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
- -Fl lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
- libs="$$libs -L. -l$$i"; \
+ -Fl lib$$i.a -ldld -lc ) || exit 1; \
done
# This assumes that GNU utilities are *not* used
+# HP-UX includes the full pathname of libs we depend on, so we would get
+# ./libcrypto (with ./ as path information) compiled into libssl, hence
+# we omit the SHLIBDEPS. Applications must be linked with -lssl -lcrypto
+# anyway.
+#
+# HP-UX in 64bit mode has "+s" enabled by default; it will search for
+# shared libraries along LD_LIBRARY_PATH _and_ SHLIB_PATH.
+#
do_hpux64-shared:
- libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
- ( set -x; /usr/ccs/bin/ld -b -z -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ for i in ${SHLIBDIRS}; do \
+ ( set -x; /usr/ccs/bin/ld -b -z \
+ -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
- +forceload lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
- libs="$$libs -L. -l$$i"; \
+ +forceload lib$$i.a -ldl -lc ) || exit 1; \
done
Makefile.ssl: Makefile.org