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

Side by Side Diff: build/mac/tweak_info_plist.py

Issue 122713003: Merge trunk r242964 to the 33.0.1750 branch. (Closed) Base URL: svn://svn.chromium.org/chrome/branches/1750/src/
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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/mac/keystone_glue.mm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 2
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 # 7 #
8 # Xcode supports build variable substitutions and CPP; sadly, that doesn't work 8 # Xcode supports build variable substitutions and CPP; sadly, that doesn't work
9 # because: 9 # because:
10 # 10 #
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 _RemoveKeys(plist, 197 _RemoveKeys(plist,
198 'BreakpadURL', 198 'BreakpadURL',
199 'BreakpadReportInterval', 199 'BreakpadReportInterval',
200 'BreakpadProduct', 200 'BreakpadProduct',
201 'BreakpadProductDisplay', 201 'BreakpadProductDisplay',
202 'BreakpadVersion', 202 'BreakpadVersion',
203 'BreakpadSendAndExit', 203 'BreakpadSendAndExit',
204 'BreakpadSkipConfirm') 204 'BreakpadSkipConfirm')
205 205
206 206
207 def _TagSuffixes():
208 # Keep this list sorted in the order that tag suffix components are to
209 # appear in a tag value. That is to say, it should be sorted per ASCII.
210 components = ('32bit', 'full')
211 assert tuple(sorted(components)) == components
212
213 components_len = len(components)
214 combinations = 1 << components_len
215 tag_suffixes = []
216 for combination in xrange(0, combinations):
217 tag_suffix = ''
218 for component_index in xrange(0, components_len):
219 if combination & (1 << component_index):
220 tag_suffix += '-' + components[component_index]
221 tag_suffixes.append(tag_suffix)
222 return tag_suffixes
223
224
207 def _AddKeystoneKeys(plist, bundle_identifier): 225 def _AddKeystoneKeys(plist, bundle_identifier):
208 """Adds the Keystone keys. This must be called AFTER _AddVersionKeys() and 226 """Adds the Keystone keys. This must be called AFTER _AddVersionKeys() and
209 also requires the |bundle_identifier| argument (com.example.product).""" 227 also requires the |bundle_identifier| argument (com.example.product)."""
210 plist['KSVersion'] = plist['CFBundleShortVersionString'] 228 plist['KSVersion'] = plist['CFBundleShortVersionString']
211 plist['KSProductID'] = bundle_identifier 229 plist['KSProductID'] = bundle_identifier
212 plist['KSUpdateURL'] = 'https://tools.google.com/service/update2' 230 plist['KSUpdateURL'] = 'https://tools.google.com/service/update2'
213 231
232 _RemoveKeys(plist, 'KSChannelID')
233 for tag_suffix in _TagSuffixes():
234 if tag_suffix:
235 plist['KSChannelID' + tag_suffix] = tag_suffix
236
214 237
215 def _RemoveKeystoneKeys(plist): 238 def _RemoveKeystoneKeys(plist):
216 """Removes any set Keystone keys.""" 239 """Removes any set Keystone keys."""
217 _RemoveKeys(plist, 240 _RemoveKeys(plist,
218 'KSVersion', 241 'KSVersion',
219 'KSProductID', 242 'KSProductID',
220 'KSUpdateURL') 243 'KSUpdateURL')
221 244
245 tag_keys = []
246 for tag_suffix in _TagSuffixes():
247 tag_keys.append('KSChannelID' + tag_suffix)
248 _RemoveKeys(plist, *tag_keys)
249
222 250
223 def Main(argv): 251 def Main(argv):
224 parser = optparse.OptionParser('%prog [options]') 252 parser = optparse.OptionParser('%prog [options]')
225 parser.add_option('--breakpad', dest='use_breakpad', action='store', 253 parser.add_option('--breakpad', dest='use_breakpad', action='store',
226 type='int', default=False, help='Enable Breakpad [1 or 0]') 254 type='int', default=False, help='Enable Breakpad [1 or 0]')
227 parser.add_option('--breakpad_uploads', dest='breakpad_uploads', 255 parser.add_option('--breakpad_uploads', dest='breakpad_uploads',
228 action='store', type='int', default=False, 256 action='store', type='int', default=False,
229 help='Enable Breakpad\'s uploading of crash dumps [1 or 0]') 257 help='Enable Breakpad\'s uploading of crash dumps [1 or 0]')
230 parser.add_option('--keystone', dest='use_keystone', action='store', 258 parser.add_option('--keystone', dest='use_keystone', action='store',
231 type='int', default=False, help='Enable Keystone [1 or 0]') 259 type='int', default=False, help='Enable Keystone [1 or 0]')
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
296 # Info.plist will work perfectly well in any plist format, but traditionally 324 # Info.plist will work perfectly well in any plist format, but traditionally
297 # applications use xml1 for this, so convert it to ensure that it's valid. 325 # applications use xml1 for this, so convert it to ensure that it's valid.
298 proc = subprocess.Popen(['plutil', '-convert', 'xml1', '-o', DEST_INFO_PLIST, 326 proc = subprocess.Popen(['plutil', '-convert', 'xml1', '-o', DEST_INFO_PLIST,
299 temp_info_plist.name]) 327 temp_info_plist.name])
300 proc.wait() 328 proc.wait()
301 return proc.returncode 329 return proc.returncode
302 330
303 331
304 if __name__ == '__main__': 332 if __name__ == '__main__':
305 sys.exit(Main(sys.argv[1:])) 333 sys.exit(Main(sys.argv[1:]))
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/mac/keystone_glue.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698