diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index b47cf0f3e7e8..4d10e3b13c44 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -2208,7 +2208,7 @@ def generate_swift_target(self, target): if reldir == '': reldir = '.' link_args += ['-L', os.path.normpath(os.path.join(self.environment.get_build_dir(), reldir))] - (rel_generated, _) = self.split_swift_generated_sources(target) + (rel_generated, other_generated) = self.split_swift_generated_sources(target) abs_generated = [os.path.join(self.environment.get_build_dir(), x) for x in rel_generated] # We need absolute paths because swiftc needs to be invoked in a subdir # and this is the easiest way about it. @@ -2224,13 +2224,13 @@ def generate_swift_target(self, target): # Swiftc does not seem to be able to emit objects and module files in one go. elem = NinjaBuildElement(self.all_outputs, rel_objects, rulename, abssrc) - elem.add_dep(in_module_files + rel_generated) + elem.add_dep(in_module_files + rel_generated + other_generated) elem.add_dep(abs_headers) elem.add_item('ARGS', compile_args + header_imports + abs_generated + module_includes) elem.add_item('RUNDIR', rundir) self.add_build(elem) elem = NinjaBuildElement(self.all_outputs, out_module_name, rulename, abssrc) - elem.add_dep(in_module_files + rel_generated) + elem.add_dep(in_module_files + rel_generated + other_generated) elem.add_item('ARGS', compile_args + abs_generated + module_includes + swiftc.get_mod_gen_args()) elem.add_item('RUNDIR', rundir) self.add_build(elem)