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'],
)
