OLD | NEW |
---|---|
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 """Writes C++ header/cc source files for embedding resources into C++.""" | 5 """Writes C++ header/cc source files for embedding resources into C++.""" |
6 | 6 |
7 import datetime | 7 import datetime |
8 import os | 8 import os |
9 import sys | |
9 | 10 |
10 | 11 |
11 def WriteSource(base_name, | 12 def WriteSource(base_name, |
12 dir_from_src, | 13 dir_from_src, |
13 output_dir, | 14 output_dir, |
14 global_string_map): | 15 global_string_map): |
15 """Writes C++ header/cc source files for the given map of string variables. | 16 """Writes C++ header/cc source files for the given map of string variables. |
16 | 17 |
17 Args: | 18 Args: |
18 base_name: The basename of the file, without the extension. | 19 base_name: The basename of the file, without the extension. |
19 dir_from_src: Path from src to the directory that will contain the file, | 20 dir_from_src: Path from src to the directory that will contain the file, |
20 using forward slashes. | 21 using forward slashes. |
21 output_dir: Directory to output the sources to. | 22 output_dir: Directory to output the sources to. |
22 global_string_map: Map of variable names to their string values. These | 23 global_string_map: Map of variable names to their string values. These |
23 variables will be available as globals. | 24 variables will be available as globals. |
24 """ | 25 """ |
25 copyright = '\n'.join([ | 26 copyright = '\n'.join([ |
26 '// Copyright %s The Chromium Authors. All rights reserved.', | 27 '// Copyright %s The Chromium Authors. All rights reserved.', |
27 '// Use of this source code is governed by a BSD-style license that ' | 28 '// Use of this source code is governed by a BSD-style license that ' |
28 'can be', | 29 'can be', |
29 '// found in the LICENSE file.']) % datetime.date.today().year | 30 '// found in the LICENSE file.', |
samuong
2015/01/20 22:02:33
nit: can we add one blank line between the copyrig
srawlins
2015/01/22 20:15:58
Done.
| |
31 '// This file was generated at (%s) by running:', | |
32 '// %s']) % ( | |
33 datetime.date.today().year, | |
34 datetime.datetime.now().isoformat(' '), | |
35 ' '.join(sys.argv)) | |
30 | 36 |
31 # Write header file. | 37 # Write header file. |
32 externs = [] | 38 externs = [] |
33 for name in global_string_map.iterkeys(): | 39 for name in global_string_map.iterkeys(): |
34 externs += ['extern const char %s[];' % name] | 40 externs += ['extern const char %s[];' % name] |
35 | 41 |
36 temp = '_'.join(dir_from_src.split('/') + [base_name]) | 42 temp = '_'.join(dir_from_src.split('/') + [base_name]) |
37 define = temp.upper() + '_H_' | 43 define = temp.upper() + '_H_' |
38 header = '\n'.join([ | 44 header = '\n'.join([ |
39 copyright, | 45 copyright, |
(...skipping 26 matching lines...) Expand all Loading... | |
66 cc = '\n'.join([ | 72 cc = '\n'.join([ |
67 copyright, | 73 copyright, |
68 '', | 74 '', |
69 '#include "%s"' % (dir_from_src + '/' + base_name + '.h'), | 75 '#include "%s"' % (dir_from_src + '/' + base_name + '.h'), |
70 '', | 76 '', |
71 '\n'.join(definitions)]) | 77 '\n'.join(definitions)]) |
72 cc += '\n' | 78 cc += '\n' |
73 | 79 |
74 with open(os.path.join(output_dir, base_name + '.cc'), 'w') as f: | 80 with open(os.path.join(output_dir, base_name + '.cc'), 'w') as f: |
75 f.write(cc) | 81 f.write(cc) |
OLD | NEW |