diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py index ea4f255c8..2dbf1ec57 100644 --- a/mesonbuild/backend/backends.py +++ b/mesonbuild/backend/backends.py @@ -408,6 +408,9 @@ class Backend: # common cases. exe_cmd = [self.get_target_filename_abs(exe)] exe_for_machine = MachineChoice.BUILD + elif isinstance(exe, mesonlib.File): + exe_cmd = [exe.rel_to_builddir(self.environment.source_dir)] + exe_for_machine = MachineChoice.BUILD else: exe_cmd = [exe] exe_for_machine = MachineChoice.BUILD diff --git a/test cases/common/52 run target/meson.build b/test cases/common/52 run target/meson.build index 49e8d75b0..d1964e89f 100644 --- a/test cases/common/52 run target/meson.build +++ b/test cases/common/52 run target/meson.build @@ -65,11 +65,14 @@ conf = configure_file( configuration: configuration_data() ) - run_target('configure_script', command : conf ) +custom_target('configure_script_ct', + command: conf, + output: 'dummy.txt', + capture: true) # Target names that clash with potential builtin functionality. run_target('ctags',