blob: 4be941cfb826276831407ed1095e7a11247f6840 [file] [log] [blame]
SRCS = 'src/main/java/com/google/gerrit/pgm/'
RSRCS = 'src/main/resources/com/google/gerrit/pgm/'
INIT_API_SRCS = glob([SRCS + 'init/api/*.java'])
BASE_JETTY_DEPS = [
'//gerrit-common:server',
'//gerrit-extension-api:api',
'//gerrit-gwtexpui:linker_server',
'//gerrit-gwtexpui:server',
'//gerrit-httpd:httpd',
'//gerrit-server:server',
'//gerrit-sshd:sshd',
'//lib:guava',
'//lib/guice:guice',
'//lib/guice:guice-assistedinject',
'//lib/guice:guice-servlet',
'//lib/jgit/org.eclipse.jgit:jgit',
'//lib/joda:joda-time',
'//lib/log:api',
'//lib/log:log4j',
]
DEPS = BASE_JETTY_DEPS + [
'//gerrit-reviewdb:server',
'//lib/log:jsonevent-layout',
]
java_library(
name = 'init-api',
srcs = INIT_API_SRCS,
deps = DEPS + ['//gerrit-common:annotations'],
visibility = ['PUBLIC'],
)
java_sources(
name = 'init-api-src',
srcs = INIT_API_SRCS,
visibility = ['PUBLIC'],
)
java_library(
name = 'init',
srcs = glob([SRCS + 'init/*.java']),
resources = glob([RSRCS + 'init/*']),
deps = DEPS + [
':init-api',
':util',
'//gerrit-common:annotations',
'//gerrit-lucene:lucene',
'//lib:args4j',
'//lib:derby',
'//lib:gwtjsonrpc',
'//lib:gwtorm',
'//lib:h2',
'//lib/commons:validator',
'//lib/mina:sshd',
],
provided_deps = ['//gerrit-launcher:launcher'],
visibility = [
'//gerrit-acceptance-framework/...',
'//gerrit-acceptance-tests/...',
'//gerrit-war:',
],
)
REST_UTIL_DEPS = [
'//gerrit-cache-h2:cache-h2',
'//gerrit-util-cli:cli',
'//lib:args4j',
'//lib:gwtorm',
'//lib/commons:dbcp',
]
java_library(
name = 'util',
deps = DEPS + REST_UTIL_DEPS,
exported_deps = [':util-nodep'],
visibility = [
'//gerrit-acceptance-tests/...',
'//gerrit-gwtdebug:gwtdebug',
'//gerrit-war:',
],
)
java_library(
name = 'util-nodep',
srcs = glob([SRCS + 'util/*.java']),
provided_deps = DEPS + REST_UTIL_DEPS,
visibility = ['//gerrit-acceptance-framework/...'],
)
JETTY_DEPS = [
'//lib/jetty:jmx',
'//lib/jetty:server',
'//lib/jetty:servlet',
]
java_library(
name = 'http',
deps = DEPS + JETTY_DEPS,
exported_deps = [':http-jetty'],
visibility = ['//gerrit-war:'],
)
java_library(
name = 'http-jetty',
srcs = glob([SRCS + 'http/jetty/*.java']),
provided_deps = JETTY_DEPS + BASE_JETTY_DEPS + [
'//gerrit-launcher:launcher',
'//gerrit-reviewdb:client',
'//lib:servlet-api-3_1',
],
visibility = ['//gerrit-acceptance-framework/...'],
)
REST_PGM_DEPS = [
':http',
':init',
':init-api',
':util',
'//gerrit-cache-h2:cache-h2',
'//gerrit-gpg:gpg',
'//gerrit-lucene:lucene',
'//gerrit-oauth:oauth',
'//gerrit-openid:openid',
'//lib:args4j',
'//lib:gwtorm',
'//lib:protobuf',
'//lib:servlet-api-3_1',
'//lib/auto:auto-value',
'//lib/prolog:cafeteria',
'//lib/prolog:compiler',
'//lib/prolog:runtime',
]
java_library(
name = 'pgm',
resources = glob([RSRCS + '*']),
deps = DEPS + REST_PGM_DEPS + [
':daemon',
],
visibility = [
'//:',
'//gerrit-acceptance-tests/...',
'//gerrit-gwtdebug:gwtdebug',
'//tools/eclipse:classpath',
'//Documentation:licenses.txt',
],
)
# no transitive deps, used for gerrit-acceptance-framework
java_library(
name = 'daemon',
srcs = glob([SRCS + '*.java', SRCS + 'rules/*.java']),
resources = glob([RSRCS + '*']),
deps = ['//lib/auto:auto-value'],
provided_deps = DEPS + REST_PGM_DEPS + [
'//gerrit-launcher:launcher',
],
visibility = [
'//gerrit-acceptance-framework/...',
'//gerrit-gwtdebug:gwtdebug',
],
)
java_test(
name = 'pgm_tests',
srcs = glob(['src/test/java/**/*.java']),
deps = [
':init',
':init-api',
':pgm',
'//gerrit-common:server',
'//gerrit-server:server',
'//lib:guava',
'//lib:junit',
'//lib/easymock:easymock',
'//lib/guice:guice',
'//lib/jgit/org.eclipse.jgit:jgit',
'//lib/jgit/org.eclipse.jgit.junit:junit',
],
source_under_test = [':pgm'],
)