diff options
Diffstat (limited to 'src/buildstream/element.py')
| -rw-r--r-- | src/buildstream/element.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/buildstream/element.py b/src/buildstream/element.py index 08326c6f3..3d8d01434 100644 --- a/src/buildstream/element.py +++ b/src/buildstream/element.py @@ -962,12 +962,13 @@ class Element(Plugin): # # Args: # meta (MetaElement): The meta element + # progress (Progress): An object to report progress to # # Returns: # (Element): A newly created Element instance # @classmethod - def _new_from_meta(cls, meta): + def _new_from_meta(cls, meta, progress=None): if not meta.first_pass: meta.project.ensure_fully_loaded() @@ -993,15 +994,18 @@ class Element(Plugin): # Instantiate dependencies for meta_dep in meta.dependencies: - dependency = Element._new_from_meta(meta_dep) + dependency = Element._new_from_meta(meta_dep, progress) element.__runtime_dependencies.append(dependency) dependency.__reverse_dependencies.add(element) for meta_dep in meta.build_dependencies: - dependency = Element._new_from_meta(meta_dep) + dependency = Element._new_from_meta(meta_dep, progress) element.__build_dependencies.append(dependency) dependency.__reverse_dependencies.add(element) + if progress: + progress.add_progress(1) + return element # _clear_meta_elements_cache() |
