Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(194)

Unified Diff: grit/tool/build.py

Issue 99463008: Add a --depfile flag that explicitly names the generated depfile. (Closed) Base URL: http://grit-i18n.googlecode.com/svn/trunk/
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | grit/tool/build_unittest.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: grit/tool/build.py
===================================================================
--- grit/tool/build.py (revision 141)
+++ grit/tool/build.py (working copy)
@@ -98,8 +98,9 @@
first_ids_file = None
whitelist_filenames = []
target_platform = None
- dep_dir = None
- (own_opts, args) = getopt.getopt(args, 'o:D:E:f:w:t:', ('dep-dir=',))
+ depfile = None
+ depdir = None
+ (own_opts, args) = getopt.getopt(args, 'o:D:E:f:w:t:', ('depdir=','depfile='))
for (key, val) in own_opts:
if key == '-o':
self.output_directory = val
@@ -118,8 +119,10 @@
whitelist_filenames.append(val)
elif key == '-t':
target_platform = val
- elif key == '--dep-dir':
- dep_dir = val
+ elif key == '--depdir':
+ depdir = val
+ elif key == '--depfile':
+ depfile = val
if len(args):
print 'This tool takes no tool-specific arguments.'
@@ -151,8 +154,8 @@
self.res.RunGatherers()
self.Process()
- if dep_dir:
- self.GenerateDepfile(opts.input, dep_dir)
+ if depfile and depdir:
+ self.GenerateDepfile(opts.input, depfile, depdir)
return 0
@@ -310,11 +313,10 @@
print self.res.UberClique().missing_translations_
sys.exit(-1)
- def GenerateDepfile(self, input_filename, dep_dir):
+ def GenerateDepfile(self, input_filename, depfile, depdir):
'''Generate a depfile that contains the imlicit dependencies of the input
grd. The depfile will be in the same format as a makefile, and will contain
- references to files relative to |dep_dir|. It will be put in the same
- directory as the generated outputs.
+ references to files relative to |depdir|. It will be put in |depfile|.
For example, supposing we have three files in a directory src/
@@ -325,23 +327,21 @@
and we run
- grit -i blah.grd -o ../out/gen --dep-dir ../out
+ grit -i blah.grd -o ../out/gen --depdir ../out --depfile ../out/gen/blah.rd.d
from the directory src/ we will generate a depfile ../out/gen/blah.grd.d
that has the contents
gen/blah.grd.d: ../src/input1.xtb ../src/input2.xtb
- Note that all paths in the depfile are relative to ../out, the dep-dir.
+ Note that all paths in the depfile are relative to ../out, the depdir.
'''
- depsfile_basename = os.path.basename(input_filename + '.d')
- depfile = os.path.abspath(
- os.path.join(self.output_directory, depsfile_basename))
- dep_dir = os.path.abspath(dep_dir)
+ depfile = os.path.abspath(depfile)
+ depdir = os.path.abspath(depdir)
# The path prefix to prepend to dependencies in the depfile.
- prefix = os.path.relpath(os.getcwd(), dep_dir)
+ prefix = os.path.relpath(os.getcwd(), depdir)
# The path that the depfile refers to itself by.
- self_ref_depfile = os.path.relpath(depfile, dep_dir)
+ self_ref_depfile = os.path.relpath(depfile, depdir)
infiles = self.res.GetInputFiles()
deps_text = ' '.join([os.path.join(prefix, i) for i in infiles])
depfile_contents = self_ref_depfile + ': ' + deps_text
« no previous file with comments | « no previous file | grit/tool/build_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698