summaryrefslogtreecommitdiffstats
path: root/Makefile.shared
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile.shared')
-rw-r--r--Makefile.shared12
1 files changed, 8 insertions, 4 deletions
diff --git a/Makefile.shared b/Makefile.shared
index 7e56204552..fad2fd15ef 100644
--- a/Makefile.shared
+++ b/Makefile.shared
@@ -333,11 +333,13 @@ link_o.solaris:
$(DO_GNU); \
else \
$(CALC_VERSIONS); \
+ MINUSZ='-z '; \
+ (${CC} -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \
SHLIB=lib$(LIBNAME).so \
SHLIB_SUFFIX= \
LIBDEPS="$(LIBDEPS) -lc" \
- ALLSYMSFLAGS='-z allextract' \
- NOALLSYMSFLAGS='' \
+ ALLSYMSFLAGS="$${MINUSZ}allextract" \
+ NOALLSYMSFLAGS="$${MINUSZ}defaultextract" \
SHAREDFLAGS='-G -dy -z text -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX' \
SHAREDCMD='$(CC)'; \
fi; \
@@ -347,11 +349,13 @@ link_a.solaris:
$(DO_GNU); \
else \
$(CALC_VERSIONS); \
+ MINUSZ='-z '; \
+ (${CC} -v 2>&1 | grep gcc) > /dev/null && MINUSZ='-Wl,-z,'; \
SHLIB=lib$(LIBNAME).so \
SHLIB_SUFFIX= \
LIBDEPS="$(LIBDEPS) -lc" \
- ALLSYMSFLAGS='-z allextract' \
- NOALLSYMSFLAGS='' \
+ ALLSYMSFLAGS="$${MINUSZ}allextract" \
+ NOALLSYMSFLAGS="$${MINUSZ}defaultextract" \
SHAREDFLAGS='-G -dy -z text -h $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX' \
SHAREDCMD='$(CC)'; \
fi; \