blob: 178102e2876d90b561eee6811e0f3168d546aa1e [file] [log] [blame]
package {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "frameworks_base_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
default_applicable_licenses: ["frameworks_base_license"],
}
filegroup {
name: "ravenwood-annotations",
srcs: [
"annotations-src/**/*.java",
],
path: "annotations-src",
visibility: ["//visibility:public"],
}
java_library {
name: "ravenwood-annotations-lib",
srcs: [":ravenwood-annotations"],
sdk_version: "core_current",
host_supported: true,
visibility: ["//visibility:public"],
}
java_library_host {
name: "ravenwood-helper-libcore-runtime.host",
srcs: [
"runtime-helper-src/libcore-fake/**/*.java",
],
visibility: ["//visibility:private"],
}
java_host_for_device {
name: "ravenwood-helper-libcore-runtime",
libs: [
"ravenwood-helper-libcore-runtime.host",
],
visibility: ["//visibility:private"],
}
java_library {
name: "ravenwood-helper-framework-runtime",
srcs: [
"runtime-helper-src/framework/**/*.java",
],
libs: [
"framework-minus-apex.ravenwood",
"ravenwood-junit",
],
visibility: ["//visibility:private"],
}
// Combine ravenwood-helper-*-runtime and create a single library, which we include
// in the ravenwood runtime.
// We do it this way rather than including the individual jars in the runtime, because
// for some reason we couldn't include a java_host_for_device module in the ravenwood runtime.
java_library {
name: "ravenwood-helper-runtime",
defaults: ["ravenwood-internal-only-visibility-java"],
static_libs: [
"ravenwood-helper-framework-runtime",
"ravenwood-helper-libcore-runtime",
],
}
java_library {
name: "ravenwood-junit-impl",
srcs: [
"junit-src/**/*.java",
"junit-impl-src/**/*.java",
],
static_libs: [
"androidx.test.monitor-for-device",
],
libs: [
"android.test.mock",
"framework-minus-apex.ravenwood",
"ravenwood-framework",
"services.core.ravenwood",
"junit",
],
sdk_version: "core_current",
visibility: ["//frameworks/base"],
jarjar_rules: ":ravenwood-services-jarjar-rules",
}
// Separated out from ravenwood-junit-impl since it needs to compile
// against `module_current`
java_library {
name: "ravenwood-junit-impl-flag",
srcs: [
"junit-flag-src/**/*.java",
],
sdk_version: "module_current",
libs: [
"junit",
"flag-junit",
],
visibility: ["//visibility:public"],
}
// Carefully compiles against only test_current to support tests that
// want to verify they're unbundled. The "impl" library above is what
// ships inside the Ravenwood environment to actually drive any API
// access to implementation details.
java_library {
name: "ravenwood-junit",
srcs: [
"junit-src/**/*.java",
"junit-stub-src/**/*.java",
"junit-flag-src/**/*.java",
],
sdk_version: "test_current",
libs: [
"junit",
"flag-junit",
],
visibility: ["//visibility:public"],
}
// Library used to publish a handful of `android.ravenwood` APIs into
// the Ravenwood BCP; we don't want to publish these APIs into the BCP
// on physical devices, which is why this is a separate library
java_library {
name: "ravenwood-framework",
srcs: [
"framework-src/**/*.java",
],
libs: [
"framework-minus-apex.ravenwood",
],
sdk_version: "core_current",
visibility: ["//visibility:public"],
}
java_host_for_device {
name: "androidx.test.monitor-for-device",
libs: [
"androidx.test.monitor-for-host",
],
}
java_device_for_host {
name: "androidx.test.monitor-for-host",
libs: [
"androidx.test.monitor",
],
}
filegroup {
name: "ravenwood-services-jarjar-rules",
srcs: ["ravenwood-services-jarjar-rules.txt"],
visibility: ["//frameworks/base"],
}