summaryrefslogtreecommitdiffstats
path: root/tools/licenses.py
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-07 13:32:13 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-07 13:32:13 +0000
commit284f26f27f038b8e2e2917c86cdb24ed2384f484 (patch)
tree4e04532b6a4154b83d2bde3be0ac06e16ab0d959 /tools/licenses.py
parent59e6b80fe7242316d3abb6455d7cf0dc523c18f2 (diff)
downloadchromium_src-284f26f27f038b8e2e2917c86cdb24ed2384f484.zip
chromium_src-284f26f27f038b8e2e2917c86cdb24ed2384f484.tar.gz
chromium_src-284f26f27f038b8e2e2917c86cdb24ed2384f484.tar.bz2
Generate about:credits page automatically at build time.
This uses tools/licenses.py internally. BUG=160424 Review URL: https://codereview.chromium.org/12177010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181293 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/licenses.py')
-rwxr-xr-xtools/licenses.py26
1 files changed, 19 insertions, 7 deletions
diff --git a/tools/licenses.py b/tools/licenses.py
index 10a8d33..da650f6 100755
--- a/tools/licenses.py
+++ b/tools/licenses.py
@@ -401,8 +401,12 @@ def ScanThirdPartyDirs(root=None):
return len(errors) == 0
-def GenerateCredits(root=None):
- """Generate about:credits, dumping the result to stdout."""
+def GenerateCredits():
+ """Generate about:credits."""
+
+ if len(sys.argv) not in (2, 3):
+ print 'usage: licenses.py credits [output_file]'
+ return False
def EvaluateTemplate(template, env, escape=True):
"""Expand a template with variables like {{foo}} using a
@@ -413,8 +417,7 @@ def GenerateCredits(root=None):
template = template.replace('{{%s}}' % key, val)
return template
- if root is None:
- root = os.getcwd()
+ root = os.path.join(os.path.dirname(__file__), '..')
third_party_dirs = FindThirdPartyDirs(PRUNE_PATHS, root)
entry_template = open(os.path.join(root, 'chrome', 'browser', 'resources',
@@ -444,9 +447,18 @@ def GenerateCredits(root=None):
file_template = open(os.path.join(root, 'chrome', 'browser', 'resources',
'about_credits.tmpl'), 'rb').read()
- print "<!-- Generated by licenses.py; do not edit. -->"
- print EvaluateTemplate(file_template, {'entries': '\n'.join(entries)},
- escape=False)
+ template_contents = "<!-- Generated by licenses.py; do not edit. -->"
+ template_contents += EvaluateTemplate(file_template,
+ {'entries': '\n'.join(entries)},
+ escape=False)
+
+ if len(sys.argv) == 3:
+ with open(sys.argv[2], 'w') as output_file:
+ output_file.write(template_contents)
+ elif len(sys.argv) == 2:
+ print template_contents
+
+ return True
def main():