diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index 564224279..570b34f49 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -2580,26 +2580,22 @@ class Interpreter(InterpreterBase): if isinstance(v, (build.BuildTarget, build.CustomTarget, build.RunTarget)): self.add_target(v.name, v) elif isinstance(v, list): - self.module_method_callback(v) - elif isinstance(v, build.GeneratedList): - pass + self.process_new_values(v) elif isinstance(v, ExecutableSerialisation): v.subproject = self.subproject self.build.install_scripts.append(v) elif isinstance(v, build.Data): self.build.data.append(v) - elif isinstance(v, dependencies.ExternalProgram): - return ExternalProgramHolder(v, self.subproject) elif isinstance(v, dependencies.InternalDependency): # FIXME: This is special cased and not ideal: # The first source is our new VapiTarget, the rest are deps self.process_new_values(v.sources[0]) elif isinstance(v, build.InstallDir): self.build.install_dirs.append(v) - return InstallDirHolder(v) elif isinstance(v, Test): self.build.tests.append(v) - elif isinstance(v, (int, str, bool, Disabler, ObjectHolder)): + elif isinstance(v, (int, str, bool, Disabler, ObjectHolder, build.GeneratedList, + dependencies.ExternalProgram)): pass else: raise InterpreterException('Module returned a value of unknown type.')