blob: 22349bb487692093349c78092aef1f48f8e1ff14 [file] [log] [blame]
Orion Hodson9b16e342019-10-09 13:29:16 +01001cc_defaults {
2 name: "libnativebridge-defaults",
Martin Stjernholm3bb009a2019-10-17 21:29:01 +01003 defaults: ["art_defaults"],
Orion Hodson9b16e342019-10-09 13:29:16 +01004 cppflags: [
5 "-fvisibility=protected",
6 ],
Orion Hodson00cb81d2020-04-03 06:47:07 +01007 header_libs: [
8 "jni_headers",
9 "libnativebridge-headers",
10 ],
11 export_header_lib_headers: [
12 "jni_headers",
13 "libnativebridge-headers",
14 ],
Orion Hodson9b16e342019-10-09 13:29:16 +010015}
16
17cc_library_headers {
18 name: "libnativebridge-headers",
19
20 host_supported: true,
21 export_include_dirs: ["include"],
Jiyong Park71f661c2020-04-28 18:20:43 +090022
23 apex_available: [
24 "//apex_available:platform",
Martin Stjernholm3e9abfc2020-10-09 22:17:51 +010025 "com.android.art",
Jiyong Park71f661c2020-04-28 18:20:43 +090026 "com.android.art.debug",
Jiyong Park71f661c2020-04-28 18:20:43 +090027 ],
Orion Hodson9b16e342019-10-09 13:29:16 +010028}
29
David Srbecky1cf46a32020-06-22 15:39:00 +010030art_cc_library {
Orion Hodson9b16e342019-10-09 13:29:16 +010031 name: "libnativebridge",
32 defaults: ["libnativebridge-defaults"],
Orion Hodsonc78860b2019-10-11 11:30:01 +010033 visibility: [
Orion Hodsonc78860b2019-10-11 11:30:01 +010034 "//frameworks/base/cmds/app_process",
Martin Stjernholm3bb009a2019-10-17 21:29:01 +010035 // TODO(b/133140750): Clean this up.
Orion Hodsonc78860b2019-10-11 11:30:01 +010036 "//frameworks/base/native/webview/loader/libwebviewchromium_loader",
37 ],
Jiyong Park066dd9022019-12-19 02:11:59 +000038 apex_available: [
Martin Stjernholm3e9abfc2020-10-09 22:17:51 +010039 "com.android.art",
Jiyong Park066dd9022019-12-19 02:11:59 +000040 "com.android.art.debug",
41 ],
Orion Hodson9b16e342019-10-09 13:29:16 +010042
43 host_supported: true,
44 srcs: ["native_bridge.cc"],
45 header_libs: [
46 "libbase_headers",
47 ],
48 shared_libs: [
49 "liblog",
50 ],
51 // TODO(jiyong): remove this line after aosp/885921 lands
52 export_include_dirs: ["include"],
53
54 target: {
55 android: {
56 version_script: "libnativebridge.map.txt",
57 },
58 linux: {
59 version_script: "libnativebridge.map.txt",
60 },
61 },
62
63 stubs: {
64 symbol_file: "libnativebridge.map.txt",
65 versions: ["1"],
66 },
67}
68
69// TODO(b/124250621): eliminate the need for this library
70cc_library {
71 name: "libnativebridge_lazy",
72 defaults: ["libnativebridge-defaults"],
Orion Hodsonc78860b2019-10-11 11:30:01 +010073 visibility: [
74 "//art/libnativebridge/tests",
75 "//frameworks/base/core/jni",
76 "//frameworks/native/opengl/libs",
77 "//frameworks/native/vulkan/libvulkan",
78 ],
Martin Stjernholmb5ed3302020-10-30 02:27:23 +000079 apex_available: [
80 "//apex_available:platform",
81 ],
Orion Hodson9b16e342019-10-09 13:29:16 +010082
83 host_supported: false,
84 srcs: ["native_bridge_lazy.cc"],
Martin Stjernholmb5ed3302020-10-30 02:27:23 +000085 runtime_libs: ["libnativebridge"],
Mitch Phillips5472d6f2020-07-01 09:43:16 -070086 shared_libs: ["liblog"],
Orion Hodson9b16e342019-10-09 13:29:16 +010087}
88
89subdirs = ["tests"]