Home | History | Annotate | Download | only in build
      1 #!/usr/bin/env python
      2 # Copyright (c) 2009 The Chromium Authors. All rights reserved.
      3 # Use of this source code is governed by a BSD-style license that can be
      4 # found in the LICENSE file.
      5 
      6 # TODO: remove this script when GYP has for loops
      7 
      8 import sys
      9 import optparse
     10 
     11 def main(argv):
     12 
     13   parser = optparse.OptionParser()
     14   usage = 'usage: %s [options ...] format_string locale_list'
     15   parser.set_usage(usage.replace('%s', '%prog'))
     16   parser.add_option('-d', dest='dash_to_underscore', action="store_true",
     17                     default=False,
     18                     help='map "en-US" to "en" and "-" to "_" in locales')
     19 
     20   (options, arglist) = parser.parse_args(argv)
     21 
     22   if len(arglist) < 3:
     23     print 'ERROR: need string and list of locales'
     24     return 1
     25 
     26   str_template = arglist[1]
     27   locales = arglist[2:]
     28 
     29   results = []
     30   for locale in locales:
     31     # For Cocoa to find the locale at runtime, it needs to use '_' instead
     32     # of '-' (http://crbug.com/20441).  Also, 'en-US' should be represented
     33     # simply as 'en' (http://crbug.com/19165, http://crbug.com/25578).
     34     if options.dash_to_underscore:
     35       if locale == 'en-US':
     36         locale = 'en'
     37       locale = locale.replace('-', '_')
     38     results.append(str_template.replace('ZZLOCALE', locale))
     39 
     40   # Quote each element so filename spaces don't mess up GYP's attempt to parse
     41   # it into a list.
     42   print ' '.join(["'%s'" % x for x in results])
     43 
     44 if __name__ == '__main__':
     45   sys.exit(main(sys.argv))
     46