Remove -Wl,-undefined,dynamic_lookup in macOS build.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 6 Oct 2016 03:03:55 +0000 (23:03 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 6 Oct 2016 03:03:55 +0000 (23:03 -0400)
We don't need this anymore, and it prevents build-time error checking
that's usually good to have, so remove it.  Undoes one change of commit
cac765820.

Unfortunately, it's much harder to get a similar effect on other common
platforms, because we don't want the linker to throw errors for symbols
that will be resolved in the core backend.  Only macOS and AIX expect the
core backend executable to be available while linking loadable modules,
so only these platforms can usefully throw errors for unresolved symbols
at link time.

Discussion: <2652.1475512158@sss.pgh.pa.us>

src/Makefile.shlib

index f64eb4d9c5287909722d77afc7493e727923ec0d..87c80c5d01bc2ece77f42909440e8e2ea3afcc77 100644 (file)
@@ -127,7 +127,7 @@ ifeq ($(PORTNAME), darwin)
   else
     # loadable module
     DLSUFFIX           = .so
-    LINK.shared                = $(COMPILER) -bundle -multiply_defined suppress -Wl,-undefined,dynamic_lookup
+    LINK.shared                = $(COMPILER) -bundle -multiply_defined suppress
   endif
   BUILD.exports                = $(AWK) '/^[^\#]/ {printf "_%s\n",$$1}' $< >$@
   exports_file         = $(SHLIB_EXPORTS:%.txt=%.list)