blob: 2ee9d282741ea4f24ba735b15d0b7c435699ee57 [file] [log] [blame]
Colin Crossd4ce20a2016-07-27 10:36:36 -07001// Shared library for target
2// ========================================================
Jiyong Park00f2ebe2019-01-29 00:08:55 +09003cc_defaults {
4 name: "libnativeloader-defaults",
5 cflags: [
6 "-Werror",
7 "-Wall",
8 ],
9 cppflags: [
10 "-fvisibility=hidden",
11 ],
12 header_libs: ["libnativeloader-headers"],
13 export_header_lib_headers: ["libnativeloader-headers"],
14}
15
Colin Crossd4ce20a2016-07-27 10:36:36 -070016cc_library {
17 name: "libnativeloader",
Jiyong Park00f2ebe2019-01-29 00:08:55 +090018 defaults: ["libnativeloader-defaults"],
Orion Hodsona65f3142019-10-08 16:42:58 +010019 // TODO(oth): remove after moving under art/ (b/137364733)
20 visibility: ["//visibility:public"],
Colin Crossd4ce20a2016-07-27 10:36:36 -070021 host_supported: true,
Jiyong Park6291da22019-04-26 18:55:48 +090022 srcs: [
23 "native_loader.cpp",
24 ],
Colin Crossd4ce20a2016-07-27 10:36:36 -070025 shared_libs: [
26 "libnativehelper",
27 "liblog",
Zhenhua WANGf2804e52016-05-30 11:16:08 +080028 "libnativebridge",
Jaekyun Seok86e80b92016-12-21 14:22:00 +090029 "libbase",
Colin Crossd4ce20a2016-07-27 10:36:36 -070030 ],
dimitry0c119412019-03-19 12:29:49 +010031 target: {
32 android: {
Jiyong Park6291da22019-04-26 18:55:48 +090033 srcs: [
34 "library_namespaces.cpp",
Jiyong Park85377812019-05-04 00:30:23 +090035 "native_loader_namespace.cpp",
Jiyong Park40a60772019-05-03 16:21:31 +090036 "public_libraries.cpp",
Jiyong Park6291da22019-04-26 18:55:48 +090037 ],
dimitry0c119412019-03-19 12:29:49 +010038 shared_libs: [
39 "libdl_android",
40 ],
41 },
42 },
Jiyong Park9837d6b2017-12-18 20:43:35 +090043 required: [
44 "llndk.libraries.txt",
45 "vndksp.libraries.txt",
46 ],
Martin Stjernholma015ad22019-02-05 15:07:05 +000047 stubs: {
48 symbol_file: "libnativeloader.map.txt",
49 versions: ["1"],
50 },
Nicolas Geoffrayc3a73dc2019-01-12 15:01:20 +000051}
52
Jiyong Park00f2ebe2019-01-29 00:08:55 +090053// TODO(b/124250621) eliminate the need for this library
54cc_library {
55 name: "libnativeloader_lazy",
56 defaults: ["libnativeloader-defaults"],
Orion Hodsona65f3142019-10-08 16:42:58 +010057 // TODO(oth): remove after moving under art/ (b/137364733)
58 visibility: ["//visibility:public"],
Jiyong Park00f2ebe2019-01-29 00:08:55 +090059 host_supported: false,
60 srcs: ["native_loader_lazy.cpp"],
61 required: ["libnativeloader"],
62}
63
64cc_library_headers {
65 name: "libnativeloader-headers",
Orion Hodsona65f3142019-10-08 16:42:58 +010066 // TODO(oth): remove after moving under art/ (b/137364733)
67 visibility: ["//visibility:public"],
Jiyong Park00f2ebe2019-01-29 00:08:55 +090068 host_supported: true,
69 export_include_dirs: ["include"],
70}
71
Jiyong Park78cc06a2019-07-19 09:02:38 +090072cc_test {
73 name: "libnativeloader_test",
74 srcs: [
75 "native_loader_test.cpp",
76 "native_loader.cpp",
77 "library_namespaces.cpp",
78 "native_loader_namespace.cpp",
79 "public_libraries.cpp",
80 ],
81 cflags: ["-DANDROID"],
82 static_libs: [
83 "libbase",
84 "liblog",
85 "libnativehelper",
86 "libgmock",
87 ],
88 header_libs: [
89 "libnativebridge-headers",
90 "libnativeloader-headers",
91 ],
Orion Hodsona65f3142019-10-08 16:42:58 +010092 system_shared_libs: [
93 "libc",
94 "libm",
95 ],
Jiyong Park28efde22019-07-22 14:23:12 +090096 test_suites: ["device-tests"],
Jiyong Park78cc06a2019-07-19 09:02:38 +090097}