| #!/usr/bin/env python | |
| # Copyright (c) 2014 The Chromium Authors. All rights reserved. | |
| # Use of this source code is governed by a BSD-style license that can be | |
| # found in the LICENSE file. | |
| """Replace instances of INSERTFILE(filename) with contents of 'filename'.""" | |
| import os | |
| import re | |
| import sys | |
| INSERT_FILE_PATTERN = r'INSERTFILE\((.+)\)' | |
| def insert_file(match): | |
| file_to_insert = match.group(1) | |
| with open(os.path.expanduser(file_to_insert)) as f: | |
| return f.read() | |
| def main(input_file, output_file): | |
| with open(input_file) as f: | |
| contents = f.read() | |
| new_contents = re.sub(INSERT_FILE_PATTERN, insert_file, contents) | |
| with open(output_file, 'w') as f: | |
| f.write(new_contents) | |
| if __name__ == '__main__': | |
| if len(sys.argv) != 3: | |
| print >> sys.stderr, 'USAGE: %s inputfile outputfile' % sys.argv[0] | |
| sys.exit(1) | |
| main(*sys.argv[1:]) | |