1# Copyright (C) 2020 The Dagger Authors.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15# Description:
16#   Hilt android processors.
17
18load("//:build_defs.bzl", "POM_VERSION_ALPHA")
19load("//tools:maven.bzl", "gen_maven_artifact")
20
21package(default_visibility = ["//:src"])
22
23# TODO(bcorso): merge this into :artifact-lib once we remove hilt-android-compiler artifact.
24java_library(
25    name = "artifact-lib-shared",
26    exports = [
27        "//java/dagger/hilt/android/processor/internal/androidentrypoint:processor_lib",
28        "//java/dagger/hilt/android/processor/internal/bindvalue:bind_value_processor_lib",
29        "//java/dagger/hilt/android/processor/internal/customtestapplication:processor_lib",
30        "//java/dagger/hilt/android/processor/internal/uninstallmodules:processor_lib",
31        "//java/dagger/hilt/android/processor/internal/viewmodel:processor_lib",
32        "//java/dagger/hilt/android/processor/internal/viewmodel:validation_plugin_lib",
33        "//java/dagger/hilt/processor/internal/aggregateddeps:processor_lib",
34        "//java/dagger/hilt/processor/internal/aliasof:processor_lib",
35        "//java/dagger/hilt/processor/internal/definecomponent:processor_lib",
36        "//java/dagger/hilt/processor/internal/generatesrootinput:processor_lib",
37        "//java/dagger/hilt/processor/internal/originatingelement:processor_lib",
38        "//java/dagger/hilt/processor/internal/root:processor_lib",
39        "//java/dagger/internal/codegen:processor",
40    ],
41)
42
43java_library(
44    name = "artifact-lib",
45    tags = ["maven_coordinates=com.google.dagger:hilt-compiler:" + POM_VERSION_ALPHA],
46    visibility = ["//visibility:private"],
47    exports = [
48        ":artifact-lib-shared",
49    ],
50)
51
52gen_maven_artifact(
53    name = "artifact",
54    artifact_coordinates = "com.google.dagger:hilt-compiler:" + POM_VERSION_ALPHA,
55    artifact_name = "Hilt Processor",
56    artifact_target = ":artifact-lib",
57    artifact_target_libs = [
58        "//java/dagger/hilt/android/processor/internal:android_classnames",
59        "//java/dagger/hilt/android/processor/internal:utils",
60        "//java/dagger/hilt/android/processor/internal/androidentrypoint:android_generators",
61        "//java/dagger/hilt/android/processor/internal/androidentrypoint:compiler_options",
62        "//java/dagger/hilt/android/processor/internal/androidentrypoint:metadata",
63        "//java/dagger/hilt/android/processor/internal/androidentrypoint:processor_lib",
64        "//java/dagger/hilt/android/processor/internal/bindvalue:bind_value_processor_lib",
65        "//java/dagger/hilt/android/processor/internal/customtestapplication:processor_lib",
66        "//java/dagger/hilt/android/processor/internal/viewmodel:validation_plugin_lib",
67        "//java/dagger/hilt/android/processor/internal/uninstallmodules:processor_lib",
68        "//java/dagger/hilt/android/processor/internal/viewmodel:processor_lib",
69        "//java/dagger/hilt/processor/internal:base_processor",
70        "//java/dagger/hilt/processor/internal:classnames",
71        "//java/dagger/hilt/processor/internal:component_descriptor",
72        "//java/dagger/hilt/processor/internal:component_names",
73        "//java/dagger/hilt/processor/internal:components",
74        "//java/dagger/hilt/processor/internal:kotlin",
75        "//java/dagger/hilt/processor/internal:processor_errors",
76        "//java/dagger/hilt/processor/internal:processors",
77        "//java/dagger/hilt/processor/internal/aggregateddeps:component_dependencies",
78        "//java/dagger/hilt/processor/internal/aggregateddeps:processor_lib",
79        "//java/dagger/hilt/processor/internal/aliasof:alias_ofs",
80        "//java/dagger/hilt/processor/internal/aliasof:processor_lib",
81        "//java/dagger/hilt/processor/internal/definecomponent:define_components",
82        "//java/dagger/hilt/processor/internal/definecomponent:processor_lib",
83        "//java/dagger/hilt/processor/internal/generatesrootinput:generates_root_inputs",
84        "//java/dagger/hilt/processor/internal/generatesrootinput:processor_lib",
85        "//java/dagger/hilt/processor/internal/originatingelement:processor_lib",
86        "//java/dagger/hilt/processor/internal/root:processor_lib",
87        "//java/dagger/hilt/processor/internal/root:root_metadata",
88        "//java/dagger/hilt/processor/internal/root:root_type",
89    ],
90    artifact_target_maven_deps = [
91        "com.google.auto:auto-common",
92        "com.google.code.findbugs:jsr305",
93        "com.google.dagger:dagger-compiler",
94        "com.google.dagger:dagger",
95        "com.google.dagger:dagger-spi",
96        "com.google.guava:failureaccess",
97        "com.google.guava:guava",
98        "com.squareup:javapoet",
99        "javax.annotation:jsr250-api",
100        "javax.inject:javax.inject",
101        "net.ltgt.gradle.incap:incap",
102        "org.jetbrains.kotlin:kotlin-stdlib",
103        "org.jetbrains.kotlinx:kotlinx-metadata-jvm",
104    ],
105    javadoc_android_api_level = 30,
106    javadoc_root_packages = [
107        "dagger.hilt.processor",
108        "dagger.hilt.android.processor",
109    ],
110    javadoc_srcs = [
111        "//java/dagger/hilt:hilt_processing_filegroup",
112    ],
113    shaded_deps = ["@maven//:com_google_auto_auto_common"],
114    shaded_rules = ["rule com.google.auto.common.** dagger.hilt.android.shaded.auto.common.@1"],
115)
116
117filegroup(
118    name = "srcs_filegroup",
119    srcs = glob(["*"]),
120)
121