aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2018-09-10 22:22:12 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2018-09-10 22:22:12 -0400
commit4fa3741d1cfb3898c3ff7b01fa873383108e1fe3 (patch)
treeabd343b1bcedb26e24f55725e951ba517a86c058 /src
parent14ea36520389dbb1b48524223cf09389154a0f2e (diff)
downloadpostgresql-4fa3741d1cfb3898c3ff7b01fa873383108e1fe3.tar.gz
postgresql-4fa3741d1cfb3898c3ff7b01fa873383108e1fe3.zip
Use -Bsymbolic for shared libraries on HP-UX and Solaris.
These platforms are also subject to the mis-linking problem addressed in commit e3d77ea6b. It's not clear whether we could solve it with a solution equivalent to GNU ld's version scripts, but -Bsymbolic appears to fix it, so let's use that. Like the previous commit, back-patch as far as v10. Discussion: https://postgr.es/m/153626613985.23143.4743626885618266803@wrigleys.postgresql.org
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.shlib8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/Makefile.shlib b/src/Makefile.shlib
index 9cfe49749eb..63d5d9e8ee4 100644
--- a/src/Makefile.shlib
+++ b/src/Makefile.shlib
@@ -198,12 +198,12 @@ ifeq ($(PORTNAME), hpux)
shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
endif
ifeq ($(with_gnu_ld), yes)
- LINK.shared = $(CC) -shared
+ LINK.shared = $(CC) -shared -Wl,-Bsymbolic
ifdef soname
LINK.shared += -Wl,-h -Wl,$(soname)
endif
else
- LINK.shared = $(LD) -b
+ LINK.shared = $(LD) -b -Bsymbolic
ifdef soname
LINK.shared += +h $(soname)
endif
@@ -240,9 +240,9 @@ endif
ifeq ($(PORTNAME), solaris)
ifeq ($(GCC), yes)
- LINK.shared = $(COMPILER) -shared
+ LINK.shared = $(COMPILER) -shared -Wl,-Bsymbolic
else
- LINK.shared = $(COMPILER) -G
+ LINK.shared = $(COMPILER) -G -Bsymbolic
endif
ifdef soname
ifeq ($(with_gnu_ld), yes)