From acd73ad1a17f7aed6a914dd9c331f1043d89988d Mon Sep 17 00:00:00 2001
From: Noah Misch <noah@leadboat.com>
Date: Thu, 2 Feb 2017 11:21:16 -0500
Subject: [PATCH] Code review for avoidance of direct cross-module links.

Remove $(pkglibdir) from $(rpathdir), since commits
d51924be886c2a05e691fa05b16cb6b30ab8370f and
eda04886c1e048d695728206504ab4198462168e removed direct linkage to
objects stored there.  Users are unlikely to notice the difference.
Accompany every $(python_libspec) with $(python_additional_libs); this
doesn't fix a demonstrated bug, but it might do so on rare Python
configurations.  With these changes, AIX ceases to be a special case.
---
 contrib/hstore_plperl/Makefile   | 5 -----
 contrib/hstore_plpython/Makefile | 7 +------
 contrib/ltree_plpython/Makefile  | 7 +------
 3 files changed, 2 insertions(+), 17 deletions(-)

diff --git a/contrib/hstore_plperl/Makefile b/contrib/hstore_plperl/Makefile
index 41d34357f9d..34e1e137f71 100644
--- a/contrib/hstore_plperl/Makefile
+++ b/contrib/hstore_plperl/Makefile
@@ -24,10 +24,6 @@ include $(top_srcdir)/contrib/contrib-global.mk
 endif
 
 # We must link libperl explicitly
-ifeq ($(PORTNAME), aix)
-rpathdir = $(pkglibdir):$(perl_archlibexp)/CORE
-SHLIB_LINK += $(perl_embed_ldflags)
-else
 ifeq ($(PORTNAME), win32)
 # these settings are the same as for plperl
 override CPPFLAGS += -DPLPERL_HAVE_UID_GID -Wno-comment
@@ -37,7 +33,6 @@ else
 rpathdir = $(perl_archlibexp)/CORE
 SHLIB_LINK += $(perl_embed_ldflags)
 endif
-endif
 
 # As with plperl we need to make sure that the CORE directory is included
 # last, probably because it sometimes contains some header files with names
diff --git a/contrib/hstore_plpython/Makefile b/contrib/hstore_plpython/Makefile
index a55c9a162cb..7ff787a22e4 100644
--- a/contrib/hstore_plpython/Makefile
+++ b/contrib/hstore_plpython/Makefile
@@ -24,17 +24,12 @@ include $(top_srcdir)/contrib/contrib-global.mk
 endif
 
 # We must link libpython explicitly
-ifeq ($(PORTNAME), aix)
-rpathdir = $(pkglibdir):$(python_libdir)
-SHLIB_LINK += $(python_libspec) $(python_additional_libs)
-else
 ifeq ($(PORTNAME), win32)
 # ... see silliness in plpython Makefile ...
 SHLIB_LINK += $(sort $(wildcard ../../src/pl/plpython/libpython*.a))
 else
 rpathdir = $(python_libdir)
-SHLIB_LINK += $(python_libspec)
-endif
+SHLIB_LINK += $(python_libspec) $(python_additional_libs)
 endif
 
 REGRESS_OPTS += --load-extension=hstore
diff --git a/contrib/ltree_plpython/Makefile b/contrib/ltree_plpython/Makefile
index c45b7c2b097..bc7502b8c32 100644
--- a/contrib/ltree_plpython/Makefile
+++ b/contrib/ltree_plpython/Makefile
@@ -24,17 +24,12 @@ include $(top_srcdir)/contrib/contrib-global.mk
 endif
 
 # We must link libpython explicitly
-ifeq ($(PORTNAME), aix)
-rpathdir = $(pkglibdir):$(python_libdir)
-SHLIB_LINK += $(python_libspec) $(python_additional_libs)
-else
 ifeq ($(PORTNAME), win32)
 # ... see silliness in plpython Makefile ...
 SHLIB_LINK += $(sort $(wildcard ../../src/pl/plpython/libpython*.a))
 else
 rpathdir = $(python_libdir)
-SHLIB_LINK += $(python_libspec)
-endif
+SHLIB_LINK += $(python_libspec) $(python_additional_libs)
 endif
 
 REGRESS_OPTS += --load-extension=ltree
-- 
GitLab