OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright 2014 The Chromium Authors. All rights reserved. | 2 # Copyright 2014 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 """Helper script to repack paks for a list of locales. | 6 """Helper script to repack paks for a list of locales. |
7 | 7 |
8 Gyp doesn't have any built-in looping capability, so this just provides a way to | 8 Gyp doesn't have any built-in looping capability, so this just provides a way to |
9 loop over a list of locales when repacking pak files, thus avoiding a | 9 loop over a list of locales when repacking pak files, thus avoiding a |
10 proliferation of mostly duplicate, cut-n-paste gyp actions. | 10 proliferation of mostly duplicate, cut-n-paste gyp actions. |
(...skipping 23 matching lines...) Expand all Loading... |
34 # For Fake Bidi, generate it at a fixed path so that tests can safely | 34 # For Fake Bidi, generate it at a fixed path so that tests can safely |
35 # reference it. | 35 # reference it. |
36 if locale == 'fake-bidi': | 36 if locale == 'fake-bidi': |
37 return '%s/%s.pak' % (INT_DIR, locale) | 37 return '%s/%s.pak' % (INT_DIR, locale) |
38 return os.path.join(INT_DIR, locale + '.pak') | 38 return os.path.join(INT_DIR, locale + '.pak') |
39 | 39 |
40 | 40 |
41 def calc_inputs(locale): | 41 def calc_inputs(locale): |
42 """Determine the files that need processing for the given locale.""" | 42 """Determine the files that need processing for the given locale.""" |
43 inputs = [] | 43 inputs = [] |
44 if CHROMECAST_BRANDING == 'Chrome': | 44 if CHROMECAST_BRANDING != 'public': |
45 inputs.append(os.path.join(GRIT_DIR, 'app_strings_%s.pak' % locale)) | 45 inputs.append(os.path.join(GRIT_DIR, 'app_strings_%s.pak' % locale)) |
46 inputs.append(os.path.join(GRIT_DIR, 'chromecast_settings_%s.pak' % locale)) | 46 inputs.append(os.path.join(GRIT_DIR, 'chromecast_settings_%s.pak' % locale)) |
47 return inputs | 47 return inputs |
48 | 48 |
49 | 49 |
50 def list_outputs(locales): | 50 def list_outputs(locales): |
51 """Returns the names of files that will be generated for the given locales. | 51 """Returns the names of files that will be generated for the given locales. |
52 | 52 |
53 This is to provide gyp the list of output files, so build targets can | 53 This is to provide gyp the list of output files, so build targets can |
54 properly track what needs to be built. | 54 properly track what needs to be built. |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 parser = optparse.OptionParser("usage: %prog [options] locales") | 92 parser = optparse.OptionParser("usage: %prog [options] locales") |
93 parser.add_option("-i", action="store_true", dest="inputs", default=False, | 93 parser.add_option("-i", action="store_true", dest="inputs", default=False, |
94 help="Print the expected input file list, then exit.") | 94 help="Print the expected input file list, then exit.") |
95 parser.add_option("-o", action="store_true", dest="outputs", default=False, | 95 parser.add_option("-o", action="store_true", dest="outputs", default=False, |
96 help="Print the expected output file list, then exit.") | 96 help="Print the expected output file list, then exit.") |
97 parser.add_option("-g", action="store", dest="grit_dir", | 97 parser.add_option("-g", action="store", dest="grit_dir", |
98 help="GRIT build files output directory.") | 98 help="GRIT build files output directory.") |
99 parser.add_option("-x", action="store", dest="int_dir", | 99 parser.add_option("-x", action="store", dest="int_dir", |
100 help="Intermediate build files output directory.") | 100 help="Intermediate build files output directory.") |
101 parser.add_option("-b", action="store", dest="chromecast_branding", | 101 parser.add_option("-b", action="store", dest="chromecast_branding", |
102 help="Chromecast branding ('Chrome' or 'Chromium').") | 102 help="Chromecast branding " + |
| 103 "('public', 'internal' or 'google').") |
103 options, locales = parser.parse_args(argv) | 104 options, locales = parser.parse_args(argv) |
104 | 105 |
105 if not locales: | 106 if not locales: |
106 parser.error('Please specificy at least one locale to process.\n') | 107 parser.error('Please specificy at least one locale to process.\n') |
107 | 108 |
108 print_inputs = options.inputs | 109 print_inputs = options.inputs |
109 print_outputs = options.outputs | 110 print_outputs = options.outputs |
110 GRIT_DIR = options.grit_dir | 111 GRIT_DIR = options.grit_dir |
111 INT_DIR = options.int_dir | 112 INT_DIR = options.int_dir |
112 CHROMECAST_BRANDING = options.chromecast_branding | 113 CHROMECAST_BRANDING = options.chromecast_branding |
113 | 114 |
114 if CHROMECAST_BRANDING != "Chrome" and CHROMECAST_BRANDING != "Chromium": | 115 if (CHROMECAST_BRANDING != 'public' and |
115 parser.error('Chromecast branding (-b) must be "Chrome" or "Chromium".\n') | 116 CHROMECAST_BRANDING != 'internal' and |
| 117 CHROMECAST_BRANDING != 'google'): |
| 118 parser.error('Chromecast branding (-b) must be ' + |
| 119 '"public", "internal" or "google".\n') |
116 if not (GRIT_DIR and INT_DIR): | 120 if not (GRIT_DIR and INT_DIR): |
117 parser.error('Please specify all of "-g" and "-x".\n') | 121 parser.error('Please specify all of "-g" and "-x".\n') |
118 if print_inputs and print_outputs: | 122 if print_inputs and print_outputs: |
119 parser.error('Please specify only one of "-i" or "-o".\n') | 123 parser.error('Please specify only one of "-i" or "-o".\n') |
120 | 124 |
121 if print_inputs: | 125 if print_inputs: |
122 return list_inputs(locales) | 126 return list_inputs(locales) |
123 | 127 |
124 if print_outputs: | 128 if print_outputs: |
125 return list_outputs(locales) | 129 return list_outputs(locales) |
126 | 130 |
127 return repack_locales(locales) | 131 return repack_locales(locales) |
128 | 132 |
129 if __name__ == '__main__': | 133 if __name__ == '__main__': |
130 results = DoMain(sys.argv[1:]) | 134 results = DoMain(sys.argv[1:]) |
131 if results: | 135 if results: |
132 print results | 136 print results |
OLD | NEW |