summaryrefslogtreecommitdiffstats
path: root/solenv/maven/package.defs
blob: 2c67d8fe9dbb7cc00ceab6a5f22d8c8e8e4fa175 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
def maven_package(
    version,
    repository = None,
    url = None,
    jar = {},
    src = {},
    doc = {}):
  cmd = ['$(exe //solenv/maven:mvn)', '-v', version, '-o', '$OUT']
  api_cmd = []
  for type,d in [('jar', jar), ('java-source', src), ('javadoc', doc)]:
    for a,t in d.iteritems():
      api_cmd.append('-s %s:%s:$(location %s)' % (a,type,t))

  genrule(
    name = 'api_install',
    cmd = ' '.join(cmd + api_cmd + ['-a', 'install']),
    out = 'api_install.info',
  )

  if repository and url:
    genrule(
      name = 'api_deploy',
      cmd = ' '.join(cmd + api_cmd + [
        '-a', 'deploy',
        '--repository', repository,
        '--url', url]),
      out = 'api_deploy.info',
    )