meson: Improve dependencies for tmp_install test target
authorAndres Freund <andres@anarazel.de>
Tue, 4 Feb 2025 22:45:55 +0000 (17:45 -0500)
committerAndres Freund <andres@anarazel.de>
Tue, 4 Feb 2025 22:56:19 +0000 (17:56 -0500)
The missing dependency was, e.g., visible when doing
  ninja clean && ninja meson-test-prereq && meson test --no-rebuild --suite setup --suite cube
because meson (and thus its internal meson-test-prereq target) did not know
about a lot of the required targets.

Previously tmp_install did not actually depend on the relevant files being
built. That was mostly not visible, because "meson test" currently uses the
'default' targets as a test's dependency if no dependency is specified.
However, there are plans to narrow that on the meson side, to make it quicker
to run tests.

Apply this to all branches with meson support, as part of an effort to fix
incorrect test dependencies that can lead to test failures.

Discussion: https://postgr.es/m/CAGECzQSvM3iSDmjF+=Kof5an6jN8UbkP_4cKKT9w6GZavmb5yQ@mail.gmail.com
Discussion: https://postgr.es/m/bdba588f-69a9-4f3e-9b95-62d07210a32e@eisentraut.org
Backpatch: 16-, where meson support was added

meson.build

index aa3226dc2bf4f4a529bf50673c6a1cfde19cdc65..e9142f72e3b7c140287082f2ab6c9c3156c5aab2 100644 (file)
@@ -3267,6 +3267,7 @@ test('tmp_install',
     priority: setup_tests_priority,
     timeout: 300,
     is_parallel: false,
+    depends: installed_targets,
     suite: ['setup'])
 
 test('install_test_files',