# Copyright (C) 2013 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. def maven_package( version, repository = None, url = None, jar = {}, src = {}, doc = {}, war = {}): cmd = ['$(exe //tools/maven:mvn)', '-v', version, '-o', '$OUT'] api_cmd = [] api_deps = [] 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)) api_deps.append(t) genrule( name = 'api_install', cmd = ' '.join(cmd + api_cmd + ['-a', 'install']), deps = api_deps + ['//tools/maven:mvn'], out = 'api_install.info', ) if repository and url: genrule( name = 'api_deploy', cmd = ' '.join(cmd + api_cmd + [ '-a', 'deploy', '--repository', repository, '--url', url]), deps = api_deps + ['//tools/maven:mvn'], out = 'api_deploy.info', ) war_cmd = [] war_deps = [] for a,t in war.iteritems(): war_cmd.append('-s %s:war:$(location %s)' % (a,t)) war_deps.append(t) genrule( name = 'war_install', cmd = ' '.join(cmd + war_cmd + ['-a', 'install']), deps = war_deps + ['//tools/maven:mvn'], out = 'war_install.info', ) if repository and url: genrule( name = 'war_deploy', cmd = ' '.join(cmd + war_cmd + [ '-a', 'deploy', '--repository', repository, '--url', url]), deps = war_deps + ['//tools/maven:mvn'], out = 'war_deploy.info', )