mirror of
https://github.com/postgres/postgres.git
synced 2025-05-05 09:19:17 +03:00
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
This commit is contained in:
parent
310907aaf0
commit
0f7c0fb59c
@ -3375,6 +3375,8 @@ test_initdb_template = meson.build_root() / 'tmp_install' / 'initdb-template'
|
||||
test_env.set('PG_REGRESS', pg_regress.full_path())
|
||||
test_env.set('REGRESS_SHLIB', regress_module.full_path())
|
||||
test_env.set('INITDB_TEMPLATE', test_initdb_template)
|
||||
# for Cluster.pm's portlock logic
|
||||
test_env.set('top_builddir', meson.build_root())
|
||||
|
||||
# Test suites that are not safe by default but can be run if selected
|
||||
# by the user via the whitespace-separated list in variable PG_TEST_EXTRA.
|
||||
|
@ -167,9 +167,7 @@ INIT
|
||||
$portdir = $ENV{PG_TEST_PORT_DIR};
|
||||
# Otherwise, try to use a directory at the top of the build tree
|
||||
# or as a last resort use the tmp_check directory
|
||||
my $build_dir =
|
||||
$ENV{MESON_BUILD_ROOT}
|
||||
|| $ENV{top_builddir}
|
||||
my $build_dir = $ENV{top_builddir}
|
||||
|| $PostgreSQL::Test::Utils::tmp_check;
|
||||
$portdir ||= "$build_dir/portlock";
|
||||
$portdir =~ s!\\!/!g;
|
||||
|
Loading…
x
Reference in New Issue
Block a user