blob: e535f0a05a028d79922ec71cb3115391df43629f [file] [log] [blame]
Makoto Onuki3aefe332023-10-06 10:02:07 -07001package {
2 // See: http://go/android-license-faq
3 // A large-scale-change added 'default_applicable_licenses' to import
4 // all of the 'license_kinds' from "frameworks_base_license"
5 // to get the below license kinds:
6 // SPDX-license-identifier-Apache-2.0
7 default_applicable_licenses: ["frameworks_base_license"],
8}
9
10filegroup {
11 name: "ravenwood-annotations",
12 srcs: [
13 "annotations-src/**/*.java",
14 ],
Anton Hanssond82cbc72023-10-30 20:00:39 +000015 path: "annotations-src",
Makoto Onuki3aefe332023-10-06 10:02:07 -070016 visibility: ["//visibility:public"],
17}
18
Makoto Onuki3aefe332023-10-06 10:02:07 -070019java_library {
20 name: "ravenwood-annotations-lib",
21 srcs: [":ravenwood-annotations"],
22 sdk_version: "core_current",
23 host_supported: true,
24 visibility: ["//visibility:public"],
25}
Jeff Sharkey91f414e2023-11-07 15:43:59 -070026
Makoto Onuki053eac82024-02-13 10:31:18 -080027java_library_host {
28 name: "ravenwood-helper-libcore-runtime.host",
29 srcs: [
30 "runtime-helper-src/libcore-fake/**/*.java",
31 ],
32 visibility: ["//visibility:private"],
33}
34
35java_host_for_device {
36 name: "ravenwood-helper-libcore-runtime",
37 libs: [
38 "ravenwood-helper-libcore-runtime.host",
39 ],
40 visibility: ["//visibility:private"],
41}
42
43java_library {
44 name: "ravenwood-helper-framework-runtime",
45 srcs: [
46 "runtime-helper-src/framework/**/*.java",
47 ],
48 libs: [
49 "framework-minus-apex.ravenwood",
Makoto Onuki50276f02024-02-13 14:58:56 -080050 "ravenwood-junit",
Makoto Onuki053eac82024-02-13 10:31:18 -080051 ],
52 visibility: ["//visibility:private"],
53}
54
55// Combine ravenwood-helper-*-runtime and create a single library, which we include
56// in the ravenwood runtime.
57// We do it this way rather than including the individual jars in the runtime, because
58// for some reason we couldn't include a java_host_for_device module in the ravenwood runtime.
59java_library {
60 name: "ravenwood-helper-runtime",
61 defaults: ["ravenwood-internal-only-visibility-java"],
62 static_libs: [
63 "ravenwood-helper-framework-runtime",
64 "ravenwood-helper-libcore-runtime",
65 ],
66}
67
Jeff Sharkey91f414e2023-11-07 15:43:59 -070068java_library {
Jeff Sharkey41cfbb32023-11-16 09:26:28 -070069 name: "ravenwood-junit-impl",
70 srcs: [
71 "junit-src/**/*.java",
72 "junit-impl-src/**/*.java",
73 ],
Jeff Sharkeyc91451a2024-01-29 10:55:45 -070074 static_libs: [
75 "androidx.test.monitor-for-device",
76 ],
Jeff Sharkey91f414e2023-11-07 15:43:59 -070077 libs: [
Jeff Sharkey3e91c2b2024-02-15 14:12:07 -070078 "android.test.mock",
Jeff Sharkey5e210d72023-11-10 11:22:05 -070079 "framework-minus-apex.ravenwood",
Jeff Sharkey8a922ec2024-02-27 12:36:36 -070080 "ravenwood-framework",
Jeff Sharkey3e91c2b2024-02-15 14:12:07 -070081 "services.core.ravenwood",
Jeff Sharkey91f414e2023-11-07 15:43:59 -070082 "junit",
83 ],
Makoto Onukia8bcba12023-11-22 14:00:24 -080084 sdk_version: "core_current",
Jeff Sharkey41cfbb32023-11-16 09:26:28 -070085 visibility: ["//frameworks/base"],
Jeff Sharkey3e91c2b2024-02-15 14:12:07 -070086 jarjar_rules: ":ravenwood-services-jarjar-rules",
Jeff Sharkey41cfbb32023-11-16 09:26:28 -070087}
88
89// Carefully compiles against only test_current to support tests that
90// want to verify they're unbundled. The "impl" library above is what
91// ships inside the Ravenwood environment to actually drive any API
92// access to implementation details.
93java_library {
94 name: "ravenwood-junit",
95 srcs: [
96 "junit-src/**/*.java",
97 "junit-stub-src/**/*.java",
98 ],
99 sdk_version: "test_current",
100 libs: [
101 "junit",
102 ],
Jeff Sharkey91f414e2023-11-07 15:43:59 -0700103 visibility: ["//visibility:public"],
104}
Jeff Sharkey4ee8a652023-11-14 08:45:56 -0700105
Jeff Sharkey8a922ec2024-02-27 12:36:36 -0700106// Library used to publish a handful of `android.ravenwood` APIs into
107// the Ravenwood BCP; we don't want to publish these APIs into the BCP
108// on physical devices, which is why this is a separate library
109java_library {
110 name: "ravenwood-framework",
111 srcs: [
112 "framework-src/**/*.java",
113 ],
114 libs: [
115 "framework-minus-apex.ravenwood",
116 ],
117 sdk_version: "core_current",
118 visibility: ["//visibility:public"],
119}
120
Jeff Sharkeyc91451a2024-01-29 10:55:45 -0700121java_host_for_device {
122 name: "androidx.test.monitor-for-device",
123 libs: [
124 "androidx.test.monitor-for-host",
125 ],
126}
127
128java_device_for_host {
129 name: "androidx.test.monitor-for-host",
130 libs: [
131 "androidx.test.monitor",
132 ],
133}
Jeff Sharkey3e91c2b2024-02-15 14:12:07 -0700134
135filegroup {
136 name: "ravenwood-services-jarjar-rules",
137 srcs: ["ravenwood-services-jarjar-rules.txt"],
138 visibility: ["//frameworks/base"],
139}