Minimise the amount of -L. when linking the shared libraries. It
seems like some Unixen (SCO) have opinions about too many -L.
This commit is contained in:
parent
9f56705f96
commit
d5864a1dcb
1 changed files with 7 additions and 7 deletions
14
Makefile.org
14
Makefile.org
|
@ -220,7 +220,7 @@ libcrypto$(SHLIB_EXT): libcrypto.a
|
||||||
fi
|
fi
|
||||||
libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
|
libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
|
||||||
@if [ "$(SHLIB_TARGET)" != "" ]; then \
|
@if [ "$(SHLIB_TARGET)" != "" ]; then \
|
||||||
$(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-L. -lcrypto' build-shared; \
|
$(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
|
||||||
else \
|
else \
|
||||||
echo "There's no support for shared libraries on this platform" >&2; \
|
echo "There's no support for shared libraries on this platform" >&2; \
|
||||||
fi
|
fi
|
||||||
|
@ -252,30 +252,30 @@ build-shared: clean-shared do_$(SHLIB_TARGET) link-shared
|
||||||
|
|
||||||
do_bsd-gcc-shared: linux-shared
|
do_bsd-gcc-shared: linux-shared
|
||||||
do_linux-shared:
|
do_linux-shared:
|
||||||
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
|
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
|
||||||
( set -x; ${CC} -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
|
( set -x; ${CC} -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
|
||||||
-Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \
|
-Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \
|
||||||
-Wl,--whole-archive lib$$i.a \
|
-Wl,--whole-archive lib$$i.a \
|
||||||
-Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
|
-Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
|
||||||
libs="$$libs -L. -l$$i"; \
|
libs="$$libs -l$$i"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
# This assumes that GNU utilities are *not* used
|
# This assumes that GNU utilities are *not* used
|
||||||
do_true64-shared:
|
do_true64-shared:
|
||||||
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
|
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
|
||||||
( set -x; ${CC} -shared -no_archive -o lib$$i.so \
|
( set -x; ${CC} -shared -no_archive -o lib$$i.so \
|
||||||
-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
|
-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
|
||||||
-all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
|
-all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
|
||||||
libs="$$libs -L. -l$$i"; \
|
libs="$$libs -l$$i"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
# This assumes that GNU utilities are *not* used
|
# This assumes that GNU utilities are *not* used
|
||||||
do_solaris-shared:
|
do_solaris-shared:
|
||||||
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
|
libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
|
||||||
( set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
|
( set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
|
||||||
-h lib$$i.so.${SHLIB_MAJOR} \
|
-h lib$$i.so.${SHLIB_MAJOR} \
|
||||||
-z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
|
-z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
|
||||||
libs="$$libs -L. -l$$i"; \
|
libs="$$libs -l$$i"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
Makefile.ssl: Makefile.org
|
Makefile.ssl: Makefile.org
|
||||||
|
|
Loading…
Reference in a new issue