blob: 35bacfe5702b548567367d027119eeca45e8a669 [file] [log] [blame]
// Copyright (C) 2020 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Additional visibility to add to the prebuilt modules that are part of
// the snapshots of the ART sdk/module_exports to ensure that they are
// visible to each other.
prebuilt_visibility = [
// TODO(b/155921753): Restrict this when prebuilts are in their proper
// locations.
"//prebuilts:__subpackages__",
]
// The SDK for the art module apex.
sdk {
name: "art-module-sdk",
host_supported: true,
prebuilt_visibility: prebuilt_visibility,
target: {
// Both android and host linux but not windows or darwin.
linux: {
native_header_libs: [
"jni_headers",
"libartpalette-headers",
"libnativehelper_header_only",
"libopenjdkjvmti_headers",
],
native_shared_libs: [
"libandroidio",
"libdexfile_external",
"libnativebridge",
"libnativehelper",
"libnativeloader",
],
native_libs: [
"libdexfile_support",
// TODO(b/142944043): Convert to APEX stubs and export as a shared lib, once linker support is in place.
"libsigchain",
],
native_static_libs: [
"libdexfile_external_static",
],
},
android: {
java_header_libs: [
// Needed by any module that builds against any non-numeric
// sdk_version other than "none".
//
// This is actually only used for compiling Java 8 and kotlin.
// Java 9 uses system modules which encapsulates this
// internally.
"core-lambda-stubs",
// Needed by any module that builds against any non-numeric
// sdk_version other than "none" or "core_platform".
//
// This is actually only used for compiling Java 8 and kotlin.
// Java 9 uses system modules which encapsulates this
// internally.
"core.current.stubs",
// Needed by any module that builds against an sdk_version of
// "core_platform".
//
// This is actually only used for compiling Java 8 and kotlin.
// Java 9 uses system modules which encapsulates this
// internally.
"legacy.core.platform.api.stubs",
"stable.core.platform.api.stubs",
],
java_sdk_libs: [
"art.module.public.api",
],
java_system_modules: [
"art-module-public-api-stubs-system-modules",
"art-module-intra-core-api-stubs-system-modules",
"legacy-art-module-platform-api-stubs-system-modules",
"stable-art-module-platform-api-stubs-system-modules",
"core-current-stubs-system-modules",
"legacy-core-platform-api-stubs-system-modules",
"stable-core-platform-api-stubs-system-modules",
],
native_header_libs: [
"libnativeloader-headers",
],
native_shared_libs: [
"libnativebridge_lazy",
"libnativehelper_compat_libc++",
"libnativeloader_lazy",
],
native_static_libs: [
"libctstiagent",
],
},
linux_bionic: {
enabled: false,
},
darwin: {
enabled: false,
},
},
}
// Exported host tools and libraries.
module_exports {
name: "art-module-host-exports",
host_supported: true,
// TODO(b/173186484) - remove once art-notices-for-framework-stubs-jar has been removed.
device_supported: true,
prebuilt_visibility: prebuilt_visibility,
target: {
android: {
java_libs: [
// TODO(b/173186484) - embed notices in stubs and remove this.
// Needed for android_stubs_current et al.
"art-notices-for-framework-stubs-jar",
],
},
host: {
// Set in target.host because the top level compile_multilib
// property is fixed to "both" in the sdk/module_exports
// implementation and cannot be overridden any other way.
compile_multilib: "64",
java_libs: [
"art.module.api.annotations",
// Needed for grpc-grpc-java
"okhttp-norepackage",
],
native_binaries: [
"hiddenapi",
"dex2oat",
"dex2oatd",
],
},
linux_bionic: {
enabled: false,
},
darwin: {
enabled: false,
},
},
}
// Exported tests and supporting libraries
module_exports {
name: "art-module-test-exports",
prebuilt_visibility: prebuilt_visibility,
java_libs: [
"core-compat-test-rules",
"core-test-rules",
"core-tests-support",
"okhttp-tests-nojarjar",
// Needed for CtsJvmtiDeviceRunTestAppBase.
"art_cts_jvmti_test_library",
"expected_cts_outputs",
// Needed for robolectric.
"core-libart",
"okhttp",
// Needed for CtsLibcore...TestCases
"libcore-expectations-knownfailures-jar",
"libcore-expectations-virtualdeviceknownfailures-jar",
// Needed for CtsLibcoreOkHttpTestCases
"okhttp-nojarjar",
],
java_tests: [
// Needed for CtsJdwpTestCases.
"apache-harmony-jdwp-tests",
"libcore-crypto-tests",
// Needed for CtsLibcoreOjTestCases
"core-ojtests-public",
// Needed for CtsLibcoreJsr166TestCases
"jsr166-tests",
// Needed for CtsLibcoreTestCases
"apache-harmony-tests",
"core-tests",
],
native_shared_libs: [
"libjavacoretests",
],
}