|  | # Copyright (C) 2013 The Android Open Source Project | 
|  | # | 
|  | # Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | # you may not use this file except in compliance with the License. | 
|  | # You may obtain a copy of the License at | 
|  | # | 
|  | # http://www.apache.org/licenses/LICENSE-2.0 | 
|  | # | 
|  | # Unless required by applicable law or agreed to in writing, software | 
|  | # distributed under the License is distributed on an "AS IS" BASIS, | 
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | # See the License for the specific language governing permissions and | 
|  | # limitations under the License. | 
|  |  | 
|  | BROWSERS = [ | 
|  | 'chrome', | 
|  | 'firefox', | 
|  | 'gecko1_8', | 
|  | 'safari', | 
|  | 'msie', 'ie6', 'ie8', 'ie9', | 
|  | ] | 
|  | ALIASES = { | 
|  | 'chrome': 'safari', | 
|  | 'firefox': 'gecko1_8', | 
|  | 'msie': 'ie9', | 
|  | } | 
|  | MODULE = 'com.google.gerrit.GerritGwtUI' | 
|  |  | 
|  | DEBUG_OPTS = [ | 
|  | '-style', 'PRETTY', | 
|  | '-optimize', '0', | 
|  | ] | 
|  |  | 
|  | APP_DEPS = [':ui_module'] | 
|  |  | 
|  | def gwt_user_agent_permutations( | 
|  | name, | 
|  | module_name, | 
|  | module_target, | 
|  | compiler_opts = [], | 
|  | deps = [], | 
|  | browsers = [], | 
|  | visibility = []): | 
|  | for ua in browsers: | 
|  | impl = ua | 
|  | if ua in ALIASES: | 
|  | impl = ALIASES[ua] | 
|  | xml = ''.join([ | 
|  | "<module rename-to='%s'>" % module_name, | 
|  | "<inherits name='%s'/>" % module_target, | 
|  | "<set-property name='user.agent' value='%s'/>" % impl, | 
|  | "<set-property name='locale' value='default'/>", | 
|  | "</module>", | 
|  | ]) | 
|  | gwt = '%s_%s.gwt.xml' % (module_target.replace('.', '/'), ua) | 
|  | jar = '%s_%s.gwtxml.jar' % (name, ua) | 
|  | genrule( | 
|  | name = '%s_%s_gwtxml_gen' % (name, ua), | 
|  | cmd = 'cd $TMP;' + | 
|  | ('mkdir -p $(dirname %s);' % gwt) + | 
|  | ('echo "%s">%s;' % (xml, gwt)) + | 
|  | 'zip -qr $OUT .', | 
|  | out = jar, | 
|  | ) | 
|  | prebuilt_jar( | 
|  | name = '%s_%s_gwtxml_lib' % (name, ua), | 
|  | binary_jar = genfile(jar), | 
|  | deps = [':%s_%s_gwtxml_gen' % (name, ua)], | 
|  | ) | 
|  | gwt_application( | 
|  | name = '%s_%s' % (name, ua), | 
|  | module_target = module_target + '_' + ua, | 
|  | compiler_opts = compiler_opts, | 
|  | deps = deps + [':%s_%s_gwtxml_lib' % (name, ua)], | 
|  | visibility = visibility, | 
|  | ) | 
|  |  |