From 2baf8033ab0213f1806af923fb08206503b2abf6 Mon Sep 17 00:00:00 2001 From: Matt Caswell Date: Wed, 16 Dec 2015 11:17:17 +0000 Subject: [PATCH] Don't export local symbols on Solaris Following on from earlier commits to prevent local symbols from being exported in the shared libraries on Linux, this makes the equivalent changes for Solaris. Reviewed-by: Richard Levitte --- Makefile.shared | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Makefile.shared b/Makefile.shared index 0ff1a76534..70980ade08 100644 --- a/Makefile.shared +++ b/Makefile.shared @@ -171,7 +171,7 @@ link_app.gnu: @ $(DO_GNU_APP); $(LINK_APP) link_a.linux-shared: - @if [ $(LIBNAME) != "crypto" -a $(LIBNAME) != "ssl" ]; then echo libname is $(LIBNAME); sleep 2; $(DO_GNU_SO); else \ + @if [ $(LIBNAME) != "crypto" -a $(LIBNAME) != "ssl" ]; then $(DO_GNU_SO); else \ $(PERL) util/mkdef.pl $(LIBNAME) linux >$(LIBNAME).map; \ $(CALC_VERSIONS); \ SHLIB=lib$(LIBNAME).so; \ @@ -384,7 +384,12 @@ link_a.solaris: ($(CC) -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \ SHLIB=lib$(LIBNAME).so; \ SHLIB_SUFFIX=;\ - ALLSYMSFLAGS="$${MINUSZ}allextract"; \ + if [ $(LIBNAME) != "crypto" -a $(LIBNAME) != "ssl" ]; then \ + ALLSYMSFLAGS="$${MINUSZ}allextract"; \ + else \ + $(PERL) util/mkdef.pl $(LIBNAME) linux >$(LIBNAME).map; \ + ALLSYMSFLAGS="$${MINUSZ}allextract,-M,$(LIBNAME).map"; \ + fi; \ NOALLSYMSFLAGS="$${MINUSZ}defaultextract"; \ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX -Wl,-Bsymbolic"; \ fi; \ -- 2.34.1