|  | include_defs('//gerrit-gwtui/gwt.defs') | 
|  | include_defs('//tools/gwt-constants.defs') | 
|  | from multiprocessing import cpu_count | 
|  |  | 
|  | DEPS = [ | 
|  | '//gerrit-gwtexpui:CSS', | 
|  | '//lib:gwtjsonrpc', | 
|  | ] | 
|  |  | 
|  | genrule( | 
|  | name = 'ui_optdbg', | 
|  | cmd = 'cd $TMP;' + | 
|  | 'unzip -q $(location :ui_dbg);' + | 
|  | 'mv' + | 
|  | ' gerrit_ui/gerrit_ui.nocache.js' + | 
|  | ' gerrit_ui/dbg_gerrit_ui.nocache.js;' + | 
|  | 'unzip -qo $(location :ui_opt);' + | 
|  | 'mkdir -p $(dirname $OUT);' + | 
|  | 'zip -qr $OUT .', | 
|  | deps = [ | 
|  | ':ui_dbg', | 
|  | ':ui_opt', | 
|  | ], | 
|  | out = 'ui_optdbg.zip', | 
|  | visibility = ['PUBLIC'], | 
|  | ) | 
|  |  | 
|  | gwt_binary( | 
|  | name = 'ui_opt', | 
|  | modules = [MODULE], | 
|  | module_deps = [':ui_module'], | 
|  | deps = DEPS + [':ui_dbg'], | 
|  | local_workers = cpu_count(), | 
|  | strict = True, | 
|  | experimental_args = GWT_COMPILER_ARGS, | 
|  | vm_args = GWT_JVM_ARGS, | 
|  | ) | 
|  |  | 
|  | gwt_binary( | 
|  | name = 'ui_dbg', | 
|  | modules = [MODULE], | 
|  | style = 'PRETTY', | 
|  | optimize = 0, | 
|  | module_deps = [':ui_module'], | 
|  | deps = DEPS, | 
|  | local_workers = cpu_count(), | 
|  | strict = True, | 
|  | experimental_args = GWT_COMPILER_ARGS, | 
|  | vm_args = GWT_JVM_ARGS, | 
|  | visibility = ['//:eclipse'], | 
|  | ) | 
|  |  | 
|  | gwt_user_agent_permutations( | 
|  | name = 'ui', | 
|  | module_name = 'gerrit_ui', | 
|  | modules = [MODULE], | 
|  | module_deps = [':ui_module'], | 
|  | deps = DEPS, | 
|  | visibility = ['//:'], | 
|  | ) | 
|  |  | 
|  | DIFFY = glob(['src/main/java/com/google/gerrit/client/diffy*.png']) | 
|  |  | 
|  | gwt_module( | 
|  | name = 'ui_module', | 
|  | srcs = glob(['src/main/java/**/*.java']), | 
|  | gwt_xml = 'src/main/java/%s.gwt.xml' % MODULE.replace('.', '/'), | 
|  | resources = glob(['src/main/java/**/*'], excludes = DIFFY), | 
|  | deps = [ | 
|  | ':diffy_logo', | 
|  | ':freebie_application_icon_set', | 
|  | '//gerrit-gwtexpui:Clippy', | 
|  | '//gerrit-gwtexpui:GlobalKey', | 
|  | '//gerrit-gwtexpui:Progress', | 
|  | '//gerrit-gwtexpui:SafeHtml', | 
|  | '//gerrit-gwtexpui:UserAgent', | 
|  | '//gerrit-gwtui-common:client', | 
|  | '//gerrit-common:client', | 
|  | '//gerrit-extension-api:client', | 
|  | '//gerrit-patch-jgit:client', | 
|  | '//gerrit-prettify:client', | 
|  | '//gerrit-reviewdb:client', | 
|  | '//gerrit-gwtexpui:CSS', | 
|  | '//lib:gwtjsonrpc', | 
|  | '//lib:gwtjsonrpc_src', | 
|  | '//lib:gwtorm', | 
|  | '//lib/codemirror:codemirror', | 
|  | '//lib/gwt:user', | 
|  | '//lib/jgit:jgit', | 
|  | ], | 
|  | visibility = [ | 
|  | '//tools/eclipse:classpath', | 
|  | '//Documentation:licenses.txt', | 
|  | ], | 
|  | ) | 
|  |  | 
|  | prebuilt_jar( | 
|  | name = 'diffy_logo', | 
|  | binary_jar = ':diffy_image_files_ln', | 
|  | deps = [ | 
|  | '//lib:LICENSE-diffy', | 
|  | '//lib:LICENSE-CC-BY3.0', | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_library( | 
|  | name = 'freebie_application_icon_set', | 
|  | deps = [ | 
|  | '//lib:LICENSE-freebie_application_icon_set', | 
|  | '//lib:LICENSE-CC-BY3.0', | 
|  | ], | 
|  | ) | 
|  |  | 
|  | genrule( | 
|  | name = 'diffy_image_files_ln', | 
|  | cmd = 'ln -s $(location :diffy_image_files) $OUT', | 
|  | deps = [':diffy_image_files'], | 
|  | out = 'diffy_images.jar', | 
|  | ) | 
|  |  | 
|  | java_library( | 
|  | name = 'diffy_image_files', | 
|  | resources = DIFFY, | 
|  | ) | 
|  |  | 
|  | java_test( | 
|  | name = 'ui_tests', | 
|  | srcs = glob(['src/test/java/**/*.java']), | 
|  | resources = glob(['src/test/resources/**/*']) + [ | 
|  | 'src/main/java/com/google/gerrit/GerritGwtUI.gwt.xml', | 
|  | ], | 
|  | deps = [ | 
|  | ':ui_module', | 
|  | '//gerrit-common:client', | 
|  | '//gerrit-extension-api:client', | 
|  | '//lib:junit', | 
|  | '//lib/gwt:dev', | 
|  | '//lib/gwt:user', | 
|  | '//lib/gwt:gwt-test-utils', | 
|  | '//lib/jgit:jgit', | 
|  | ], | 
|  | source_under_test = [':ui_module'], | 
|  | vm_args = ['-Xmx512m'], | 
|  | visibility = ['//tools/eclipse:classpath'], | 
|  | ) |