postgres.git / summary / log / commit / refs
commit d173a469922074778cbfecbebcb5020b10c03b0f
Author: Andrew Dunstan <andrew@dunslane.net>
Date: Thu Jul 01 12:48:24 2021 +0000
First released in: 15.0, 9.6.23, 10.18, 11.13, 12.8, 13.4, 14.0
Fix prove_installcheck to use correct paths when used with PGXS
The prove_installcheck recipe in src/Makefile.global.in was emitting
bogus paths for a couple of elements when used with PGXS. Here we create
a separate recipe for the PGXS case that does it correctly. We also take
the opportunity to make the make the file more readable by breaking up
the prove_installcheck and prove_check recipes across several lines, and
to remove the setting for REGRESS_SHLIB to src/test/recovery/Makefile,
which is the only set of tests that actually need it.
Backpatch to all live branches
Discussion: https://postgr.es/m/f2401388-936b-f4ef-a07c-a0bcc49b3300@dunslane.net
src/Makefile.global.in | 22 ++++++++++++++++++++--
src/test/recovery/Makefile | 4 ++++
2 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index fe9f0440c7d..014f9a1607e 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -370,14 +370,32 @@ with_temp_install = \
ifeq ($(enable_tap_tests),yes)
+ifndef PGXS
+define prove_installcheck
+rm -rf $(CURDIR)/tmp_check/log
+cd $(srcdir) && \
+ TESTDIR='$(CURDIR)' PATH="$(bindir):$$PATH" PGPORT='6$(DEF_PGPORT)' \
+ top_builddir='$(CURDIR)/$(top_builddir)' \
+ PG_REGRESS='$(CURDIR)/$(top_builddir)/src/test/regress/pg_regress' \
+ $(PROVE) $(PG_PROVE_FLAGS) $(PROVE_FLAGS) t/*.pl
+endef
+else # PGXS case
define prove_installcheck
rm -rf $(CURDIR)/tmp_check/log
-cd $(srcdir) && TESTDIR='$(CURDIR)' PATH="$(bindir):$$PATH" PGPORT='6$(DEF_PGPORT)' top_builddir='$(CURDIR)/$(top_builddir)' PG_REGRESS='$(CURDIR)/$(top_builddir)/src/test/regress/pg_regress' REGRESS_SHLIB='$(abs_top_builddir)/src/test/regress/regress$(DLSUFFIX)' $(PROVE) $(PG_PROVE_FLAGS) $(PROVE_FLAGS) t/*.pl
+cd $(srcdir) && \
+ TESTDIR='$(CURDIR)' PATH="$(bindir):$$PATH" PGPORT='6$(DEF_PGPORT)' \
+ top_builddir='$(top_builddir)' \
+ PG_REGRESS='$(top_builddir)/src/test/regress/pg_regress' \
+ $(PROVE) $(PG_PROVE_FLAGS) $(PROVE_FLAGS) t/*.pl
endef
+endif # PGXS
define prove_check
rm -rf $(CURDIR)/tmp_check/log
-cd $(srcdir) && TESTDIR='$(CURDIR)' $(with_temp_install) PGPORT='6$(DEF_PGPORT)' PG_REGRESS='$(CURDIR)/$(top_builddir)/src/test/regress/pg_regress' REGRESS_SHLIB='$(abs_top_builddir)/src/test/regress/regress$(DLSUFFIX)' $(PROVE) $(PG_PROVE_FLAGS) $(PROVE_FLAGS) t/*.pl
+cd $(srcdir) && \
+ TESTDIR='$(CURDIR)' $(with_temp_install) PGPORT='6$(DEF_PGPORT)' \
+ PG_REGRESS='$(CURDIR)/$(top_builddir)/src/test/regress/pg_regress' \
+ $(PROVE) $(PG_PROVE_FLAGS) $(PROVE_FLAGS) t/*.pl
endef
else
diff --git a/src/test/recovery/Makefile b/src/test/recovery/Makefile
index 929071909ad..552ca86f63d 100644
--- a/src/test/recovery/Makefile
+++ b/src/test/recovery/Makefile
@@ -13,6 +13,10 @@ subdir = src/test/recovery
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
+# required for 017_shm.pl
+REGRESS_SHLIB=$(abs_top_builddir)/src/test/regress/regress$(DLSUFFIX)
+export REGRESS_SHLIB
+
check:
$(prove_check)
[parent: 68bad2333f7a]