1*f585d8a3SJacky Wang# Copyright (C) 2017 The Dagger Authors. 2*f585d8a3SJacky Wang# 3*f585d8a3SJacky Wang# Licensed under the Apache License, Version 2.0 (the "License"); 4*f585d8a3SJacky Wang# you may not use this file except in compliance with the License. 5*f585d8a3SJacky Wang# You may obtain a copy of the License at 6*f585d8a3SJacky Wang# 7*f585d8a3SJacky Wang# http://www.apache.org/licenses/LICENSE-2.0 8*f585d8a3SJacky Wang# 9*f585d8a3SJacky Wang# Unless required by applicable law or agreed to in writing, software 10*f585d8a3SJacky Wang# distributed under the License is distributed on an "AS IS" BASIS, 11*f585d8a3SJacky Wang# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*f585d8a3SJacky Wang# See the License for the specific language governing permissions and 13*f585d8a3SJacky Wang# limitations under the License. 14*f585d8a3SJacky Wang 15*f585d8a3SJacky Wang# Description: 16*f585d8a3SJacky Wang# Public Dagger API for Android 17*f585d8a3SJacky Wang 18*f585d8a3SJacky Wangload( 19*f585d8a3SJacky Wang "//:build_defs.bzl", 20*f585d8a3SJacky Wang "POM_VERSION", 21*f585d8a3SJacky Wang) 22*f585d8a3SJacky Wangload("//tools:dejetify.bzl", "dejetified_library") 23*f585d8a3SJacky Wangload( 24*f585d8a3SJacky Wang "//tools:maven.bzl", 25*f585d8a3SJacky Wang "gen_maven_artifact", 26*f585d8a3SJacky Wang "pom_file", 27*f585d8a3SJacky Wang) 28*f585d8a3SJacky Wang 29*f585d8a3SJacky Wangpackage(default_visibility = ["//:src"]) 30*f585d8a3SJacky Wang 31*f585d8a3SJacky Wang# Work around b/70476182 which prevents Kythe from connecting :producers to the .java files it 32*f585d8a3SJacky Wang# contains. 33*f585d8a3SJacky WangSRCS = glob([ 34*f585d8a3SJacky Wang "*.java", 35*f585d8a3SJacky Wang "internal/*.java", 36*f585d8a3SJacky Wang]) 37*f585d8a3SJacky Wang 38*f585d8a3SJacky Wangfilegroup( 39*f585d8a3SJacky Wang name = "android-srcs", 40*f585d8a3SJacky Wang srcs = SRCS, 41*f585d8a3SJacky Wang) 42*f585d8a3SJacky Wang 43*f585d8a3SJacky Wangandroid_library( 44*f585d8a3SJacky Wang name = "android", 45*f585d8a3SJacky Wang srcs = SRCS, 46*f585d8a3SJacky Wang plugins = [ 47*f585d8a3SJacky Wang "//java/dagger/android/internal/proguard:plugin", 48*f585d8a3SJacky Wang ], 49*f585d8a3SJacky Wang tags = ["maven_coordinates=com.google.dagger:dagger-android:" + POM_VERSION], 50*f585d8a3SJacky Wang exports = [ 51*f585d8a3SJacky Wang "//java/dagger/lint:lint-android-artifact-lib", 52*f585d8a3SJacky Wang ], 53*f585d8a3SJacky Wang deps = [ 54*f585d8a3SJacky Wang "//:dagger_with_compiler", 55*f585d8a3SJacky Wang "//third_party/java/auto:value", 56*f585d8a3SJacky Wang "//third_party/java/error_prone:annotations", 57*f585d8a3SJacky Wang "@maven//:androidx_annotation_annotation", 58*f585d8a3SJacky Wang ], 59*f585d8a3SJacky Wang) 60*f585d8a3SJacky Wang 61*f585d8a3SJacky Wanggen_maven_artifact( 62*f585d8a3SJacky Wang name = "artifact", 63*f585d8a3SJacky Wang artifact_coordinates = "com.google.dagger:dagger-android:" + POM_VERSION, 64*f585d8a3SJacky Wang artifact_name = "Dagger Android", 65*f585d8a3SJacky Wang artifact_target = ":android", 66*f585d8a3SJacky Wang artifact_target_maven_deps = [ 67*f585d8a3SJacky Wang "androidx.annotation:annotation", 68*f585d8a3SJacky Wang "com.google.dagger:dagger", 69*f585d8a3SJacky Wang "com.google.dagger:dagger-lint-aar", 70*f585d8a3SJacky Wang ], 71*f585d8a3SJacky Wang javadoc_android_api_level = 32, 72*f585d8a3SJacky Wang javadoc_root_packages = [ 73*f585d8a3SJacky Wang "dagger.android", 74*f585d8a3SJacky Wang ], 75*f585d8a3SJacky Wang javadoc_srcs = [":android-srcs"], 76*f585d8a3SJacky Wang manifest = "AndroidManifest.xml", 77*f585d8a3SJacky Wang packaging = "aar", 78*f585d8a3SJacky Wang) 79*f585d8a3SJacky Wang 80*f585d8a3SJacky Wangdejetified_library( 81*f585d8a3SJacky Wang name = "dejetified-android", 82*f585d8a3SJacky Wang input = ":artifact.aar", 83*f585d8a3SJacky Wang output = "android-legacy.aar", 84*f585d8a3SJacky Wang) 85*f585d8a3SJacky Wang 86*f585d8a3SJacky Wangandroid_library( 87*f585d8a3SJacky Wang name = "legacy-deps", 88*f585d8a3SJacky Wang tags = ["maven_coordinates=com.google.dagger:dagger-android-legacy:" + POM_VERSION], 89*f585d8a3SJacky Wang exports = [ 90*f585d8a3SJacky Wang "//:dagger_with_compiler", 91*f585d8a3SJacky Wang "//third_party/java/auto:value", 92*f585d8a3SJacky Wang "//third_party/java/error_prone:annotations", 93*f585d8a3SJacky Wang "@maven//:com_android_support_support_annotations", 94*f585d8a3SJacky Wang ], 95*f585d8a3SJacky Wang) 96*f585d8a3SJacky Wang 97*f585d8a3SJacky Wangpom_file( 98*f585d8a3SJacky Wang name = "legacy-pom", 99*f585d8a3SJacky Wang artifact_id = "dagger-android-legacy", 100*f585d8a3SJacky Wang artifact_name = "Dagger Android Legacy", 101*f585d8a3SJacky Wang packaging = "aar", 102*f585d8a3SJacky Wang targets = [":legacy-deps"], 103*f585d8a3SJacky Wang) 104