blob: a278127ddaade7cdf8947ab6a277687fdea2935c [file] [log] [blame]
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -07001include_defs('//tools/build.defs')
2
3gerrit_war(name = 'gerrit')
Shawn Pearcebe1ebcd2013-05-09 08:03:29 -07004gerrit_war(name = 'chrome', ui = 'ui_chrome')
5gerrit_war(name = 'firefox', ui = 'ui_firefox')
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -07006gerrit_war(name = 'withdocs', context = DOCS)
7gerrit_war(name = 'release', context = DOCS + ['//plugins:core.zip'])
8
David Ostrovsky6e6a9672013-05-30 01:10:12 +02009API_DEPS = [
10 ':extension-api',
11 ':extension-api-src',
12 ':plugin-api',
13 ':plugin-api-src',
David Ostrovskyacc959d2013-11-07 18:44:00 +010014 ':plugin-gwtui',
15 ':plugin-gwtui-src',
David Ostrovsky6e6a9672013-05-30 01:10:12 +020016]
17
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070018genrule(
19 name = 'api',
Shawn Pearcea7a3ee12013-09-20 10:42:37 -070020 cmd = ';'.join(
21 ['cd $TMP'] +
22 ['ln -s $(location %s) .' % n for n in API_DEPS] +
23 ['zip -q0 $OUT *']),
David Ostrovsky6e6a9672013-05-30 01:10:12 +020024 deps = API_DEPS,
Shawn Pearcea7a3ee12013-09-20 10:42:37 -070025 out = 'api.zip',
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070026)
27
Shawn Pearce06497862013-07-29 15:44:49 -070028java_binary(
29 name = 'extension-api',
30 deps = [':extension-lib'],
31 visibility = ['//tools/maven:'],
32)
David Ostrovsky6e6a9672013-05-30 01:10:12 +020033
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070034java_library(
35 name = 'extension-lib',
36 deps = [
37 '//gerrit-extension-api:api',
38 '//lib/guice:guice',
39 '//lib/guice:guice-servlet',
40 '//lib:servlet-api-3_0',
41 ],
Shawn Pearcebd562972013-05-15 14:36:29 -070042 export_deps = True,
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070043 visibility = ['PUBLIC'],
44)
Shawn Pearce06497862013-07-29 15:44:49 -070045
David Ostrovskydf36b6a2013-05-29 23:26:53 +020046genrule(
47 name = 'extension-api-src',
Shawn Pearce11d27c82013-07-24 08:09:31 -070048 cmd = 'ln -s $(location //gerrit-extension-api:api-src) $OUT',
David Ostrovskydf36b6a2013-05-29 23:26:53 +020049 deps = ['//gerrit-extension-api:api-src'],
50 out = 'extension-api-src.jar',
Shawn Pearce06497862013-07-29 15:44:49 -070051 visibility = ['//tools/maven:'],
David Ostrovskydf36b6a2013-05-29 23:26:53 +020052)
53
54PLUGIN_API = [
55 '//gerrit-server:server',
Christian Aistleitner4c677362013-06-18 13:07:04 +020056 '//gerrit-pgm:init-api',
David Ostrovskydf36b6a2013-05-29 23:26:53 +020057 '//gerrit-sshd:sshd',
58 '//gerrit-httpd:httpd',
59]
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070060
Shawn Pearce06497862013-07-29 15:44:49 -070061java_binary(
62 name = 'plugin-api',
63 deps = [':plugin-lib'],
64 visibility = ['//tools/maven:'],
65)
66
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070067java_library(
68 name = 'plugin-lib',
David Ostrovskya32af692013-08-13 09:18:06 +020069 deps = PLUGIN_API + ['//lib:servlet-api-3_0'],
Shawn Pearcebd562972013-05-15 14:36:29 -070070 export_deps = True,
Shawn Pearcefd6bb9f2013-05-08 14:14:24 -070071 visibility = ['PUBLIC'],
72)
Shawn Pearce06497862013-07-29 15:44:49 -070073
David Ostrovskydf36b6a2013-05-29 23:26:53 +020074java_binary(
75 name = 'plugin-api-src',
76 deps = [
77 '//gerrit-extension-api:api-src',
78 ] + [d + '-src' for d in PLUGIN_API],
Shawn Pearce06497862013-07-29 15:44:49 -070079 visibility = ['//tools/maven:'],
David Ostrovskydf36b6a2013-05-29 23:26:53 +020080)
David Ostrovskyacc959d2013-11-07 18:44:00 +010081
82genrule(
83 name = 'plugin-gwtui',
84 cmd = 'ln -s $(location //gerrit-plugin-gwtui:client) $OUT',
85 deps = ['//gerrit-plugin-gwtui:client'],
86 out = 'plugin-gwtui.jar',
87 visibility = ['//tools/maven:'],
88)
89
90genrule(
91 name = 'plugin-gwtui-src',
92 cmd = 'ln -s $(location //gerrit-plugin-gwtui:src) $OUT',
93 deps = ['//gerrit-plugin-gwtui:src'],
94 out = 'plugin-gwtui-src.jar',
95 visibility = ['//tools/maven:'],
96)