diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2022-03-29 13:43:59 +0200 |
---|---|---|
committer | Eli Schwartz <eschwartz93@gmail.com> | 2022-05-03 02:00:29 -0400 |
commit | 06b76f7c9d7bbe74450ed49316eaeae28dccda7d (patch) | |
tree | 9d5f4f60bb0173bce1542a0f93137773a09d5c4e /mesonbuild/interpreter | |
parent | d413dedf2a6a6f893e110f7a03d9e3468fdf1fc3 (diff) | |
download | meson-06b76f7c9d7bbe74450ed49316eaeae28dccda7d.zip meson-06b76f7c9d7bbe74450ed49316eaeae28dccda7d.tar.gz meson-06b76f7c9d7bbe74450ed49316eaeae28dccda7d.tar.bz2 |
dependencies: extract code to get all leaf dependencies
Extract to a separate function the code that resolves dependencies
for compiler methods. We will reuse it for add_project_dependencies().
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'mesonbuild/interpreter')
-rw-r--r-- | mesonbuild/interpreter/compiler.py | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py index 9dc6544..185d151 100644 --- a/mesonbuild/interpreter/compiler.py +++ b/mesonbuild/interpreter/compiler.py @@ -239,20 +239,7 @@ class CompilerHolder(ObjectHolder['Compiler']): return args def _determine_dependencies(self, deps: T.List['dependencies.Dependency'], endl: str = ':') -> T.Tuple[T.List['dependencies.Dependency'], str]: - if deps: - final_deps = [] - while deps: - next_deps = [] - for d in mesonlib.listify(deps): - if not isinstance(d, dependencies.Dependency) or d.is_built(): - raise InterpreterException('Dependencies must be external dependencies') - final_deps.append(d) - next_deps.extend(d.ext_deps) - deps = next_deps - deps = final_deps - else: - # Ensure that we always return a new instance - deps = deps.copy() + deps = dependencies.get_leaf_external_dependencies(deps) return deps, self._dep_msg(deps, endl) @typed_pos_args('compiler.alignment', str) |