diff --git a/gclient.py b/gclient.py index ad8915b54d..fcdc1b8ffb 100755 --- a/gclient.py +++ b/gclient.py @@ -1698,6 +1698,9 @@ def CMDflatten(parser, args): return 1 flattened_deps = '\n'.join( + _GNSettingsToLines( + client.dependencies[0]._gn_args_file, + client.dependencies[0]._gn_args) + _DepsToLines(deps) + _HooksToLines('hooks', hooks) + _HooksToLines('pre_deps_hooks', pre_deps_hooks) + @@ -1802,6 +1805,16 @@ def _AddDep(dep, deps, unpinned_deps): unpinned_deps[dep.name] = dep +def _GNSettingsToLines(gn_args_file, gn_args): + s = [] + if gn_args_file: + s.extend([ + 'gclient_gn_args_file = "%s"' % gn_args_file, + 'gclient_gn_args = %r' % gn_args, + ]) + return s + + def _DepsToLines(deps): """Converts |deps| dict to list of lines for output.""" s = ['deps = {'] diff --git a/testing_support/fake_repos.py b/testing_support/fake_repos.py index b2f13e695a..2c8440387f 100755 --- a/testing_support/fake_repos.py +++ b/testing_support/fake_repos.py @@ -456,6 +456,11 @@ pre_deps_hooks = [ self._commit_git('repo_6', { 'DEPS': """ +vars = { + 'DummyVariable': 'repo', +} +gclient_gn_args_file = 'src/gclient.args' +gclient_gn_args = ['DummyVariable'] deps = { 'src/repo2': { 'url': '%(git_base)srepo_2@%(hash)s', diff --git a/tests/gclient_smoketest.py b/tests/gclient_smoketest.py index 46b9b668b5..c394b36101 100755 --- a/tests/gclient_smoketest.py +++ b/tests/gclient_smoketest.py @@ -570,6 +570,8 @@ class GClientSmokeGIT(GClientSmokeBase): deps_contents = f.read() self.assertEqual([ + 'gclient_gn_args_file = "src/gclient.args"', + 'gclient_gn_args = [\'DummyVariable\']', 'deps = {', ' # src -> src/repo2 -> foo/bar', ' "foo/bar": {',