xref: /aosp_15_r20/external/kotlinx.coroutines/Android.bp (revision 7a7160fed73afa6648ef8aa100d4a336fe921d9a)
1*7a7160feSAndroid Build Coastguard Workerpackage {
2*7a7160feSAndroid Build Coastguard Worker    default_applicable_licenses: ["external_kotlinx.coroutines_license"],
3*7a7160feSAndroid Build Coastguard Worker    default_visibility: ["//visibility:private"],
4*7a7160feSAndroid Build Coastguard Worker}
5*7a7160feSAndroid Build Coastguard Worker
6*7a7160feSAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of
7*7a7160feSAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect
8*7a7160feSAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct.
9*7a7160feSAndroid Build Coastguard Worker//
10*7a7160feSAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory.
11*7a7160feSAndroid Build Coastguard Worker//
12*7a7160feSAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses,
13*7a7160feSAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the
14*7a7160feSAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed.
15*7a7160feSAndroid Build Coastguard Worker//
16*7a7160feSAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private"
17*7a7160feSAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be
18*7a7160feSAndroid Build Coastguard Worker// used in the current project.
19*7a7160feSAndroid Build Coastguard Worker//
20*7a7160feSAndroid Build Coastguard Worker// large-scale-change included anything that looked like it might be a license
21*7a7160feSAndroid Build Coastguard Worker// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
22*7a7160feSAndroid Build Coastguard Worker//
23*7a7160feSAndroid Build Coastguard Worker// Please consider removing redundant or irrelevant files from 'license_text:'.
24*7a7160feSAndroid Build Coastguard Worker// See: http://go/android-license-faq
25*7a7160feSAndroid Build Coastguard Workerlicense {
26*7a7160feSAndroid Build Coastguard Worker    name: "external_kotlinx.coroutines_license",
27*7a7160feSAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
28*7a7160feSAndroid Build Coastguard Worker    license_kinds: [
29*7a7160feSAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
30*7a7160feSAndroid Build Coastguard Worker        "SPDX-license-identifier-MIT",
31*7a7160feSAndroid Build Coastguard Worker    ],
32*7a7160feSAndroid Build Coastguard Worker    license_text: [
33*7a7160feSAndroid Build Coastguard Worker        "LICENSE",
34*7a7160feSAndroid Build Coastguard Worker        "LICENSE.txt",
35*7a7160feSAndroid Build Coastguard Worker        "license/**/*",
36*7a7160feSAndroid Build Coastguard Worker    ],
37*7a7160feSAndroid Build Coastguard Worker}
38*7a7160feSAndroid Build Coastguard Worker
39*7a7160feSAndroid Build Coastguard Worker// Upstream compiles this lib against the JVM bootclasspath; compiling against the Android
40*7a7160feSAndroid Build Coastguard Worker// bootclasspath will fail. Work around this by defining this as a java_library_host, and use
41*7a7160feSAndroid Build Coastguard Worker// java_host_for_device to expose it to Android targets.
42*7a7160feSAndroid Build Coastguard Workerjava_library_host {
43*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines-host",
44*7a7160feSAndroid Build Coastguard Worker    srcs: ["kotlinx-coroutines-core/jvm/src/**/*.kt"],
45*7a7160feSAndroid Build Coastguard Worker    common_srcs: [
46*7a7160feSAndroid Build Coastguard Worker        "kotlinx-coroutines-core/common/src/**/*.kt",
47*7a7160feSAndroid Build Coastguard Worker        "kotlinx-coroutines-core/concurrent/src/**/*.kt",
48*7a7160feSAndroid Build Coastguard Worker    ],
49*7a7160feSAndroid Build Coastguard Worker    exclude_srcs: [
50*7a7160feSAndroid Build Coastguard Worker        "kotlinx-coroutines-core/jvm/src/test_/TestCoroutineContext.kt",
51*7a7160feSAndroid Build Coastguard Worker    ],
52*7a7160feSAndroid Build Coastguard Worker    java_resource_dirs: ["kotlinx-coroutines-core/jvm/resources"],
53*7a7160feSAndroid Build Coastguard Worker    // See https://github.com/Kotlin/kotlinx.coroutines#avoiding-including-the-debug-infrastructure-in-the-resulting-apk
54*7a7160feSAndroid Build Coastguard Worker    // This file contains `kotlin.coroutines.jvm.internal.DebugProbesKt` class and is only used
55*7a7160feSAndroid Build Coastguard Worker    // by the debugger.
56*7a7160feSAndroid Build Coastguard Worker    // This cause issues when generating coverage as Jacoco will fail with
57*7a7160feSAndroid Build Coastguard Worker    // `Caused by: java.lang.IllegalStateException: Can't add different class with same name: kotlin/coroutines/jvm/internal/DebugProbesKt`
58*7a7160feSAndroid Build Coastguard Worker    // See b/291743544 for more details
59*7a7160feSAndroid Build Coastguard Worker    exclude_java_resources: ["kotlinx-coroutines-core/jvm/resources/DebugProbesKt.bin"],
60*7a7160feSAndroid Build Coastguard Worker    static_libs: [
61*7a7160feSAndroid Build Coastguard Worker        "kotlinx_atomicfu",
62*7a7160feSAndroid Build Coastguard Worker    ],
63*7a7160feSAndroid Build Coastguard Worker    libs: [
64*7a7160feSAndroid Build Coastguard Worker        "annotations", // for android.annotation.SuppressLint
65*7a7160feSAndroid Build Coastguard Worker        "kotlinx-coroutines-android-annotation-stubs",
66*7a7160feSAndroid Build Coastguard Worker    ],
67*7a7160feSAndroid Build Coastguard Worker    kotlincflags: [
68*7a7160feSAndroid Build Coastguard Worker        "-Xmulti-platform",
69*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.RequiresOptIn",
70*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.experimental.ExperimentalTypeInference",
71*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.ExperimentalMultiplatform",
72*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.DelicateCoroutinesApi",
73*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
74*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ObsoleteCoroutinesApi",
75*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.InternalCoroutinesApi",
76*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.FlowPreview",
77*7a7160feSAndroid Build Coastguard Worker    ],
78*7a7160feSAndroid Build Coastguard Worker    apex_available: [
79*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
80*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
81*7a7160feSAndroid Build Coastguard Worker    ],
82*7a7160feSAndroid Build Coastguard Worker}
83*7a7160feSAndroid Build Coastguard Worker
84*7a7160feSAndroid Build Coastguard Worker// Expose the host library to Android targets. This is generally an unsafe operation; in using
85*7a7160feSAndroid Build Coastguard Worker// this, we are asserting that any host-only code will never be evaluated at runtime on Android.
86*7a7160feSAndroid Build Coastguard Worker// If we're wrong, we will see runtime exceptions.
87*7a7160feSAndroid Build Coastguard Workerjava_host_for_device {
88*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines-device",
89*7a7160feSAndroid Build Coastguard Worker    libs: ["kotlinx_coroutines-host"],
90*7a7160feSAndroid Build Coastguard Worker}
91*7a7160feSAndroid Build Coastguard Worker
92*7a7160feSAndroid Build Coastguard Worker// Combine host and Android libs back into a single target.
93*7a7160feSAndroid Build Coastguard Workerjava_library {
94*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines",
95*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
96*7a7160feSAndroid Build Coastguard Worker    sdk_version: "core_current",
97*7a7160feSAndroid Build Coastguard Worker    min_sdk_version: "28",
98*7a7160feSAndroid Build Coastguard Worker    target: {
99*7a7160feSAndroid Build Coastguard Worker        host: {
100*7a7160feSAndroid Build Coastguard Worker            static_libs: ["kotlinx_coroutines-host"],
101*7a7160feSAndroid Build Coastguard Worker        },
102*7a7160feSAndroid Build Coastguard Worker        android: {
103*7a7160feSAndroid Build Coastguard Worker            static_libs: ["kotlinx_coroutines-device"],
104*7a7160feSAndroid Build Coastguard Worker        },
105*7a7160feSAndroid Build Coastguard Worker    },
106*7a7160feSAndroid Build Coastguard Worker    apex_available: [
107*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
108*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
109*7a7160feSAndroid Build Coastguard Worker    ],
110*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
111*7a7160feSAndroid Build Coastguard Worker}
112*7a7160feSAndroid Build Coastguard Worker
113*7a7160feSAndroid Build Coastguard Workerjava_library {
114*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines_android",
115*7a7160feSAndroid Build Coastguard Worker    sdk_version: "current",
116*7a7160feSAndroid Build Coastguard Worker    min_sdk_version: "28",
117*7a7160feSAndroid Build Coastguard Worker    srcs: ["ui/kotlinx-coroutines-android/src/**/*.kt"],
118*7a7160feSAndroid Build Coastguard Worker    java_resource_dirs: ["ui/kotlinx-coroutines-android/resources"],
119*7a7160feSAndroid Build Coastguard Worker    kotlincflags: [
120*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.InternalCoroutinesApi",
121*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
122*7a7160feSAndroid Build Coastguard Worker    ],
123*7a7160feSAndroid Build Coastguard Worker    static_libs: [
124*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines",
125*7a7160feSAndroid Build Coastguard Worker    ],
126*7a7160feSAndroid Build Coastguard Worker    libs: [
127*7a7160feSAndroid Build Coastguard Worker        "androidx.annotation_annotation",
128*7a7160feSAndroid Build Coastguard Worker    ],
129*7a7160feSAndroid Build Coastguard Worker    apex_available: [
130*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
131*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
132*7a7160feSAndroid Build Coastguard Worker    ],
133*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
134*7a7160feSAndroid Build Coastguard Worker}
135*7a7160feSAndroid Build Coastguard Worker
136*7a7160feSAndroid Build Coastguard Workerjava_library {
137*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines_test",
138*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
139*7a7160feSAndroid Build Coastguard Worker    sdk_version: "core_current",
140*7a7160feSAndroid Build Coastguard Worker    srcs: ["kotlinx-coroutines-test/jvm/src/**/*.kt"],
141*7a7160feSAndroid Build Coastguard Worker    common_srcs: ["kotlinx-coroutines-test/common/src/**/*.kt"],
142*7a7160feSAndroid Build Coastguard Worker    java_resource_dirs: ["kotlinx-coroutines-test/jvm/resources"],
143*7a7160feSAndroid Build Coastguard Worker    kotlincflags: [
144*7a7160feSAndroid Build Coastguard Worker        "-Xmulti-platform",
145*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.ExperimentalMultiplatform",
146*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.InternalCoroutinesApi",
147*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
148*7a7160feSAndroid Build Coastguard Worker    ],
149*7a7160feSAndroid Build Coastguard Worker    libs: ["kotlinx_coroutines"],
150*7a7160feSAndroid Build Coastguard Worker    apex_available: [
151*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
152*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
153*7a7160feSAndroid Build Coastguard Worker    ],
154*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
155*7a7160feSAndroid Build Coastguard Worker}
156*7a7160feSAndroid Build Coastguard Worker
157*7a7160feSAndroid Build Coastguard Worker// Compile stub implementations of annotations used by kotlinx-coroutines but not present in the
158*7a7160feSAndroid Build Coastguard Worker// Android tree.
159*7a7160feSAndroid Build Coastguard Workerjava_library {
160*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx-coroutines-android-annotation-stubs",
161*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
162*7a7160feSAndroid Build Coastguard Worker    sdk_version: "core_current",
163*7a7160feSAndroid Build Coastguard Worker    srcs: ["android-annotation-stubs/src/**/*.java"],
164*7a7160feSAndroid Build Coastguard Worker}
165*7a7160feSAndroid Build Coastguard Worker
166*7a7160feSAndroid Build Coastguard Worker// Temporary aliases for kotlinx-coroutines-core, kotlinx-coroutines-core-jvm and
167*7a7160feSAndroid Build Coastguard Worker// kotlinx-coroutines-android
168*7a7160feSAndroid Build Coastguard Worker
169*7a7160feSAndroid Build Coastguard Workerjava_library {
170*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx-coroutines-core",
171*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
172*7a7160feSAndroid Build Coastguard Worker    sdk_version: "core_current",
173*7a7160feSAndroid Build Coastguard Worker    min_sdk_version: "28",
174*7a7160feSAndroid Build Coastguard Worker    static_libs: ["kotlinx_coroutines"],
175*7a7160feSAndroid Build Coastguard Worker    apex_available: [
176*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
177*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
178*7a7160feSAndroid Build Coastguard Worker    ],
179*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
180*7a7160feSAndroid Build Coastguard Worker}
181*7a7160feSAndroid Build Coastguard Worker
182*7a7160feSAndroid Build Coastguard Workerjava_library {
183*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx-coroutines-core-jvm",
184*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
185*7a7160feSAndroid Build Coastguard Worker    sdk_version: "core_current",
186*7a7160feSAndroid Build Coastguard Worker    min_sdk_version: "28",
187*7a7160feSAndroid Build Coastguard Worker    static_libs: ["kotlinx_coroutines"],
188*7a7160feSAndroid Build Coastguard Worker    apex_available: [
189*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
190*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
191*7a7160feSAndroid Build Coastguard Worker    ],
192*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
193*7a7160feSAndroid Build Coastguard Worker}
194*7a7160feSAndroid Build Coastguard Worker
195*7a7160feSAndroid Build Coastguard Workerjava_library {
196*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx-coroutines-android",
197*7a7160feSAndroid Build Coastguard Worker    sdk_version: "current",
198*7a7160feSAndroid Build Coastguard Worker    min_sdk_version: "28",
199*7a7160feSAndroid Build Coastguard Worker    static_libs: [
200*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines_android",
201*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines",
202*7a7160feSAndroid Build Coastguard Worker    ],
203*7a7160feSAndroid Build Coastguard Worker    apex_available: [
204*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
205*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
206*7a7160feSAndroid Build Coastguard Worker    ],
207*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
208*7a7160feSAndroid Build Coastguard Worker}
209*7a7160feSAndroid Build Coastguard Worker
210*7a7160feSAndroid Build Coastguard Workerfilegroup {
211*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx-coroutines-play-services",
212*7a7160feSAndroid Build Coastguard Worker    srcs: ["integration/kotlinx-coroutines-play-services/src/**/*.kt"],
213*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
214*7a7160feSAndroid Build Coastguard Worker}
215*7a7160feSAndroid Build Coastguard Worker
216*7a7160feSAndroid Build Coastguard Worker// Maven coordinate: org.jetbrains.kotlinx:kotlinx-coroutines-guava
217*7a7160feSAndroid Build Coastguard Workerjava_library {
218*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines_guava",
219*7a7160feSAndroid Build Coastguard Worker    sdk_version: "current",
220*7a7160feSAndroid Build Coastguard Worker    min_sdk_version: "28",
221*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
222*7a7160feSAndroid Build Coastguard Worker    srcs: ["integration/kotlinx-coroutines-guava/src/**/*.kt"],
223*7a7160feSAndroid Build Coastguard Worker    kotlincflags: [
224*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.RequiresOptIn",
225*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.InternalCoroutinesApi",
226*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
227*7a7160feSAndroid Build Coastguard Worker    ],
228*7a7160feSAndroid Build Coastguard Worker    libs: [
229*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines",
230*7a7160feSAndroid Build Coastguard Worker        "kotlin-stdlib-jdk8",
231*7a7160feSAndroid Build Coastguard Worker        "guava",
232*7a7160feSAndroid Build Coastguard Worker    ],
233*7a7160feSAndroid Build Coastguard Worker    apex_available: [
234*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
235*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
236*7a7160feSAndroid Build Coastguard Worker    ],
237*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
238*7a7160feSAndroid Build Coastguard Worker}
239*7a7160feSAndroid Build Coastguard Worker
240*7a7160feSAndroid Build Coastguard Worker// Maven coordinate: org.jetbrains.kotlinx:kotlinx-coroutines-reactive
241*7a7160feSAndroid Build Coastguard Workerjava_library {
242*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines_reactive",
243*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
244*7a7160feSAndroid Build Coastguard Worker    srcs: ["reactive/kotlinx-coroutines-reactive/src/**/*.kt"],
245*7a7160feSAndroid Build Coastguard Worker    kotlincflags: [
246*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.RequiresOptIn",
247*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.InternalCoroutinesApi",
248*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
249*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.experimental.ExperimentalTypeInference",
250*7a7160feSAndroid Build Coastguard Worker    ],
251*7a7160feSAndroid Build Coastguard Worker    libs: [
252*7a7160feSAndroid Build Coastguard Worker        "kotlin-stdlib",
253*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines",
254*7a7160feSAndroid Build Coastguard Worker        "rxjava",
255*7a7160feSAndroid Build Coastguard Worker    ],
256*7a7160feSAndroid Build Coastguard Worker    apex_available: [
257*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
258*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
259*7a7160feSAndroid Build Coastguard Worker    ],
260*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
261*7a7160feSAndroid Build Coastguard Worker}
262*7a7160feSAndroid Build Coastguard Worker
263*7a7160feSAndroid Build Coastguard Worker// Maven coordinate: org.jetbrains.kotlinx:kotlinx-coroutines-rx2
264*7a7160feSAndroid Build Coastguard Workerjava_library {
265*7a7160feSAndroid Build Coastguard Worker    name: "kotlinx_coroutines_rx2",
266*7a7160feSAndroid Build Coastguard Worker    host_supported: true,
267*7a7160feSAndroid Build Coastguard Worker    srcs: ["reactive/kotlinx-coroutines-rx2/src/**/*.kt"],
268*7a7160feSAndroid Build Coastguard Worker    kotlincflags: [
269*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.RequiresOptIn",
270*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.InternalCoroutinesApi",
271*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
272*7a7160feSAndroid Build Coastguard Worker        "-opt-in=kotlin.experimental.ExperimentalTypeInference",
273*7a7160feSAndroid Build Coastguard Worker    ],
274*7a7160feSAndroid Build Coastguard Worker    libs: [
275*7a7160feSAndroid Build Coastguard Worker        "kotlin-stdlib",
276*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines",
277*7a7160feSAndroid Build Coastguard Worker        "kotlinx_coroutines_reactive",
278*7a7160feSAndroid Build Coastguard Worker        "rxjava",
279*7a7160feSAndroid Build Coastguard Worker    ],
280*7a7160feSAndroid Build Coastguard Worker    apex_available: [
281*7a7160feSAndroid Build Coastguard Worker        "//apex_available:platform",
282*7a7160feSAndroid Build Coastguard Worker        "//apex_available:anyapex",
283*7a7160feSAndroid Build Coastguard Worker    ],
284*7a7160feSAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
285*7a7160feSAndroid Build Coastguard Worker}
286