Make test portlock logic work with meson
authorAndres Freund <andres@anarazel.de>
Fri, 21 Feb 2025 16:16:57 +0000 (11:16 -0500)
committerAndres Freund <andres@anarazel.de>
Fri, 21 Feb 2025 16:26:33 +0000 (11:26 -0500)
commit28fcaa6a2cc0d261ae23d56507ca52f928e54340
treef11f489911372792a23d4a9c2f65fd873b4c3db2
parent514d47dfb69caec14b62b294f899b2e953cc2baa
Make test portlock logic work with meson

Previously the portlock logic, added in 9b4eafcaf41, didn't actually work
properly when the tests were run via meson. 9b4eafcaf41 used the
MESON_BUILD_ROOT environment variable to determine the directory for the port
lock directory, but that's never set for running the tests.  That meant that
each test used its own portlock dir, unless the PG_TEST_PORT_DIR environment
variable was set.

Fix the problem by setting top_builddir for the environment. That's also used
for the autoconf/make build.

Backpatch back to 16, where meson support was added.

Reported-by: Zharkov Roman <r.zharkov@postgrespro.ru>
Reviewed-by: Andrew Dunstan <andrew@dunslane.net>
Backpatch-through: 16
meson.build
src/test/perl/PostgreSQL/Test/Cluster.pm