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
@@ -581,7 +581,10 @@ class BuildCmd(ProjectCmdBase):
|
||||
elif args.verbose:
|
||||
print("found good %s" % built_marker)
|
||||
|
||||
install_dirs.append(inst_dir)
|
||||
# Paths are resolved from front. We prepend rather than append as
|
||||
# the last project in topo order is the project itself, which
|
||||
# should be first in the path, then its deps and so on.
|
||||
install_dirs.insert(0, inst_dir)
|
||||
|
||||
def compute_dep_change_status(self, m, built_marker, loader):
|
||||
reconfigure = False
|
||||
@@ -589,7 +592,7 @@ class BuildCmd(ProjectCmdBase):
|
||||
st = os.lstat(built_marker)
|
||||
|
||||
ctx = loader.ctx_gen.get_context(m.name)
|
||||
dep_list = sorted(m.get_section_as_dict("dependencies", ctx).keys())
|
||||
dep_list = m.get_dependencies(ctx)
|
||||
for dep in dep_list:
|
||||
if reconfigure and sources_changed:
|
||||
break
|
||||
|
Reference in New Issue
Block a user