mirror of
https://github.com/facebook/proxygen.git
synced 2025-08-05 19:55:47 +03:00
extract get_dependencies method
Summary: A number of places were extracting dependencies from manifests, but only one was adding in the implicit dependencies for build tools. Extract the logic to one place and use so that a change in a tool like cmake will now correctly affect all tools using cmake, as it will be taken into account as a dependency hash when the manifest's hash is computed. Tests for this change revealed that install_dirs needed to be populated in reverse order from the manifest topo-sort, so have also addressed that Reviewed By: wittgenst Differential Revision: D32730717 fbshipit-source-id: 1b2a25e460de6085d274c99acfd391b3bd259264
This commit is contained in:
committed by
Facebook GitHub Bot
parent
c62be75fd3
commit
88f96e63cb
@@ -1359,12 +1359,12 @@ incremental = false
|
||||
is also cargo-builded and if yes then extract it's git configs and
|
||||
install dir
|
||||
"""
|
||||
dependencies = self.manifest.get_section_as_dict("dependencies", ctx=self.ctx)
|
||||
dependencies = self.manifest.get_dependencies(self.ctx)
|
||||
if not dependencies:
|
||||
return []
|
||||
|
||||
dep_to_git = {}
|
||||
for dep in dependencies.keys():
|
||||
for dep in dependencies:
|
||||
dep_manifest = self.loader.load_manifest(dep)
|
||||
dep_builder = dep_manifest.get("build", "builder", ctx=self.ctx)
|
||||
if dep_builder not in ["cargo", "nop"] or dep == "rust":
|
||||
@@ -1374,7 +1374,7 @@ incremental = false
|
||||
# toolchain.
|
||||
continue
|
||||
|
||||
git_conf = dep_manifest.get_section_as_dict("git", ctx=self.ctx)
|
||||
git_conf = dep_manifest.get_section_as_dict("git", self.ctx)
|
||||
if "repo_url" not in git_conf:
|
||||
raise Exception(
|
||||
"A cargo dependency requires git.repo_url to be defined."
|
||||
|
Reference in New Issue
Block a user