172 lines
4.4 KiB
Plaintext
172 lines
4.4 KiB
Plaintext
// Shared library for target
|
|
// ========================================================
|
|
package {
|
|
// See: http://go/android-license-faq
|
|
// A large-scale-change added 'default_applicable_licenses' to import
|
|
// all of the 'license_kinds' from "art_license"
|
|
// to get the below license kinds:
|
|
// SPDX-license-identifier-Apache-2.0
|
|
default_applicable_licenses: ["art_license"],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "libnativeloader-defaults",
|
|
defaults: ["art_defaults"],
|
|
header_libs: ["libnativeloader-headers"],
|
|
export_header_lib_headers: ["libnativeloader-headers"],
|
|
}
|
|
|
|
art_cc_library {
|
|
name: "libnativeloader",
|
|
defaults: ["libnativeloader-defaults"],
|
|
visibility: [
|
|
"//frameworks/base/cmds/app_process",
|
|
// TODO(b/133140750): Clean this up.
|
|
"//frameworks/base/native/webview/loader",
|
|
],
|
|
apex_available: [
|
|
"com.android.art",
|
|
"com.android.art.debug",
|
|
],
|
|
host_supported: true,
|
|
srcs: [
|
|
"native_loader.cpp",
|
|
],
|
|
header_libs: [
|
|
"libnativehelper_header_only",
|
|
],
|
|
shared_libs: [
|
|
"liblog",
|
|
"libnativebridge",
|
|
"libbase",
|
|
],
|
|
target: {
|
|
// Library search path needed for running host tests remotely (from testcases directory).
|
|
linux_glibc_x86: {
|
|
ldflags: [
|
|
"-Wl,-rpath,$ORIGIN/../art_common/out/host/linux-x86/lib",
|
|
"-Wl,--enable-new-dtags",
|
|
],
|
|
},
|
|
linux_glibc_x86_64: {
|
|
ldflags: [
|
|
"-Wl,-rpath,$ORIGIN/../art_common/out/host/linux-x86/lib64",
|
|
"-Wl,--enable-new-dtags",
|
|
],
|
|
},
|
|
android: {
|
|
srcs: [
|
|
"library_namespaces.cpp",
|
|
"native_loader_namespace.cpp",
|
|
"public_libraries.cpp",
|
|
],
|
|
shared_libs: [
|
|
"libdl_android",
|
|
],
|
|
static_libs: [
|
|
"PlatformProperties",
|
|
],
|
|
},
|
|
},
|
|
stubs: {
|
|
symbol_file: "libnativeloader.map.txt",
|
|
versions: ["1"],
|
|
},
|
|
}
|
|
|
|
// TODO(b/124250621) eliminate the need for this library
|
|
cc_library {
|
|
name: "libnativeloader_lazy",
|
|
defaults: ["libnativeloader-defaults"],
|
|
visibility: [
|
|
"//frameworks/base/core/jni",
|
|
"//frameworks/native/opengl/libs",
|
|
"//frameworks/native/vulkan/libvulkan",
|
|
],
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.media",
|
|
"com.android.media.swcodec",
|
|
],
|
|
host_supported: false,
|
|
srcs: ["native_loader_lazy.cpp"],
|
|
runtime_libs: ["libnativeloader"],
|
|
shared_libs: ["liblog"],
|
|
}
|
|
|
|
cc_library_headers {
|
|
name: "libnativeloader-headers",
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.art",
|
|
"com.android.art.debug",
|
|
"com.android.media",
|
|
],
|
|
min_sdk_version: "S",
|
|
visibility: [
|
|
"//art:__subpackages__",
|
|
// TODO(b/133140750): Clean this up.
|
|
"//frameworks/av/media/libstagefright",
|
|
"//frameworks/native/libs/graphicsenv",
|
|
"//frameworks/native/vulkan/libvulkan",
|
|
],
|
|
host_supported: true,
|
|
export_include_dirs: ["include"],
|
|
header_libs: ["jni_headers"],
|
|
export_header_lib_headers: ["jni_headers"],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "libnativeloader-test-defaults",
|
|
defaults: [
|
|
"art_module_source_build_defaults",
|
|
"art_test_defaults",
|
|
],
|
|
host_supported: false,
|
|
|
|
cflags: ["-DANDROID"],
|
|
|
|
// The tests mock libdl_android and libnativebridge symbols, so export them
|
|
// to override the ones loaded from their libs.
|
|
ldflags: [
|
|
"-Wl,--export-dynamic-symbol=android_*",
|
|
"-Wl,--export-dynamic-symbol=NativeBridge*",
|
|
],
|
|
|
|
header_libs: [
|
|
"libnativebridge-headers",
|
|
"libnativehelper_header_only",
|
|
],
|
|
static_libs: [
|
|
"libgmock",
|
|
],
|
|
shared_libs: [
|
|
"libbase",
|
|
],
|
|
|
|
test_suites: ["device-tests"],
|
|
}
|
|
|
|
art_cc_test {
|
|
name: "libnativeloader_test",
|
|
defaults: ["libnativeloader-test-defaults"],
|
|
srcs: [
|
|
"native_loader_api_test.c",
|
|
"native_loader_test.cpp",
|
|
],
|
|
shared_libs: [
|
|
"libnativeloader",
|
|
],
|
|
}
|
|
|
|
art_cc_test {
|
|
name: "libnativeloader_lazy_test",
|
|
defaults: ["libnativeloader-test-defaults"],
|
|
srcs: [
|
|
"native_loader_lazy_test.cpp",
|
|
],
|
|
static_libs: [
|
|
"libnativeloader_lazy",
|
|
],
|
|
}
|