solaris: Use versioning scripts instead of -Bsymbolic

-Bsymbolic causes a lot of "ld: warning: symbol referencing errors"
warnings. It's quite easy to add the symbol versioning script, we just need a
slightly different parameter name.

Reviewed-by: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Discussion: https://postgr.es/m/20220823083436.whtntk3bn3qpnvmb@awork3.anarazel.de
Discussion: https://postgr.es/m/7dae5979-c6c0-cec5-7a36-76a85aa8053d@enterprisedb.com
This commit is contained in:
Andres Freund 2022-08-24 20:37:54 -07:00
parent 82ac34db20
commit 3fb0687d32
1 changed files with 6 additions and 1 deletions

View File

@ -188,10 +188,15 @@ ifeq ($(PORTNAME), linux)
endif
ifeq ($(PORTNAME), solaris)
LINK.shared = $(COMPILER) -shared -Wl,-Bsymbolic
LINK.shared = $(COMPILER) -shared
ifdef soname
LINK.shared += -Wl,-soname,$(soname)
endif
BUILD.exports = ( echo '{ global:'; $(AWK) '/^[^\#]/ {printf "%s;\n",$$1}' $<; echo ' local: *; };' ) >$@
exports_file = $(SHLIB_EXPORTS:%.txt=%.list)
ifneq (,$(exports_file))
LINK.shared += -Wl,-M$(exports_file)
endif
endif
ifeq ($(PORTNAME), cygwin)