From 6aeec808367f05463394e30a8d40834e97c7afc0 Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Mon, 9 Jan 2023 11:12:15 -0800 Subject: backends: Stop passing generator exes to ExecutableSerialisation as strings The code below this already handles being passed an Executable or ExternalProgram, and it does it correctly, since it handles host binaries that need an exe_wrapper correctly, while the code in the generator paths doesn't. The xcode backend is, like always, problematic, it doesn't handle things the same way as the ninja and vscode backends, and generates a shell script instead of using meson as a wrapper when needed (it seems likely that just forcing the meson path for xcode would be better). I don't have a working mac to develop a fix for, so I've left a todo comment there. Fixes: #11264 --- mesonbuild/backend/xcodebackend.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'mesonbuild/backend/xcodebackend.py') diff --git a/mesonbuild/backend/xcodebackend.py b/mesonbuild/backend/xcodebackend.py index c56036b..605ee22 100644 --- a/mesonbuild/backend/xcodebackend.py +++ b/mesonbuild/backend/xcodebackend.py @@ -1219,6 +1219,8 @@ class XCodeBackend(backends.Backend): generator_id += 1 def generate_single_generator_phase(self, tname, t, genlist, generator_id, objects_dict): + # TODO: this should be rewritten to use the meson wrapper, like the other generators do + # Currently it doesn't handle a host binary that requires an exe wrapper correctly. generator = genlist.get_generator() exe = generator.get_exe() exe_arr = self.build_target_to_cmd_array(exe) -- cgit v1.1