mirror of
https://github.com/postgres/postgres.git
synced 2025-06-27 23:21:58 +03:00
Use exported symbols list on macOS for loadable modules as well
On macOS, when building with the make system, the exported symbols list $(SHLIB_EXPORTS) was ignored. This was probably not intentional, it was probably just forgotten, since that combination has never actually been used until now (for libpq-oauth). The meson build system handles this correctly. Also, other platforms have been doing this correctly. This fixes it. It also does a bit of refactoring to make the code match the layout for other platforms. Reviewed-by: Jacob Champion <jacob.champion@enterprisedb.com> Discussion: https://www.postgresql.org/message-id/flat/c70ca32e-b109-460d-9810-6e23ebb4473f%40eisentraut.org
This commit is contained in:
@ -112,7 +112,7 @@ ifeq ($(PORTNAME), darwin)
|
||||
ifneq ($(SO_MAJOR_VERSION), 0)
|
||||
version_link = -compatibility_version $(SO_MAJOR_VERSION) -current_version $(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
|
||||
endif
|
||||
LINK.shared = $(COMPILER) -dynamiclib -install_name '$(libdir)/lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX)' $(version_link) $(exported_symbols_list)
|
||||
LINK.shared = $(COMPILER) -dynamiclib -install_name '$(libdir)/lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX)' $(version_link)
|
||||
shlib = lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX)
|
||||
shlib_major = lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX)
|
||||
else
|
||||
@ -122,7 +122,7 @@ ifeq ($(PORTNAME), darwin)
|
||||
BUILD.exports = $(AWK) '/^[^\#]/ {printf "_%s\n",$$1}' $< >$@
|
||||
exports_file = $(SHLIB_EXPORTS:%.txt=%.list)
|
||||
ifneq (,$(exports_file))
|
||||
exported_symbols_list = -exported_symbols_list $(exports_file)
|
||||
LINK.shared += -exported_symbols_list $(exports_file)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
Reference in New Issue
Block a user