blob: c1600cc2461be3c2aa98e70d9cd3ab7ff6a19c03 [file] [log] [blame]
Colin Cross2722ebb2016-07-11 16:20:06 -07001//
2// Copyright (C) 2012 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17cc_defaults {
18 name: "bionic_testlib_defaults",
19 host_supported: true,
Dimitry Ivanova36e59b2016-09-01 11:37:39 -070020 ldflags: [
Dimitry Ivanovd11d1e42016-10-05 02:51:17 -070021 "-Wl,--rpath,${ORIGIN}",
Dimitry Ivanova36e59b2016-09-01 11:37:39 -070022 "-Wl,--enable-new-dtags",
23 ],
24 relative_install_path: "bionic-loader-test-libs",
25 gtest: false,
Colin Cross2722ebb2016-07-11 16:20:06 -070026 sanitize: {
Evgenii Stepanov0a3637d2016-07-06 13:20:59 -070027 address: false,
28 coverage: false,
Colin Cross2722ebb2016-07-11 16:20:06 -070029 },
Yabin Cui1f553ea2017-01-13 12:31:59 -080030 stl: "libc++_static",
Colin Cross2722ebb2016-07-11 16:20:06 -070031 target: {
32 darwin: {
33 enabled: false,
34 },
35 },
36}
37
38// -----------------------------------------------------------------------------
39// Library to test gnu-styled hash
40// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -070041cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -070042 name: "libgnu-hash-table-library",
43 defaults: ["bionic_testlib_defaults"],
44 srcs: ["dlext_test_library.cpp"],
45 ldflags: ["-Wl,--hash-style=gnu"],
46 arch: {
47 mips: {
48 enabled: false,
49 },
50 mips64: {
51 enabled: false,
52 },
53 },
54}
55
56// -----------------------------------------------------------------------------
57// Library to test sysv-styled hash
58// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -070059cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -070060 name: "libsysv-hash-table-library",
61 defaults: ["bionic_testlib_defaults"],
62 srcs: ["dlext_test_library.cpp"],
63 ldflags: ["-Wl,--hash-style=sysv"],
64}
65
66// -----------------------------------------------------------------------------
67// Library used by dlext tests - with GNU RELRO program header
68// -----------------------------------------------------------------------------
69// In Android.mk to support creating symlinks
70
71// -----------------------------------------------------------------------------
72// Library used by dlext tests - without GNU RELRO program header
73// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -070074cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -070075 name: "libdlext_test_norelro",
Dimitry Ivanova36e59b2016-09-01 11:37:39 -070076 defaults: ["bionic_testlib_defaults"],
Colin Cross2722ebb2016-07-11 16:20:06 -070077 srcs: ["dlext_test_library.cpp"],
78 ldflags: ["-Wl,-z,norelro"],
79 shared_libs = ["libtest_simple"],
80}
81
82// -----------------------------------------------------------------------------
83// Library used by dlext tests - different name non-default location
84// -----------------------------------------------------------------------------
85// In Android.mk to support installing to /data
86
87// -----------------------------------------------------------------------------
88// Libraries used by dlext tests for open from a zip-file
89// -----------------------------------------------------------------------------
90// In Android.mk to support installing to /data
91
92// ----------------------------------------------------------------------------
93// Library with soname which does not match filename
94// ----------------------------------------------------------------------------
95// In Android.mk to support zipped and aligned tests
96
97// -----------------------------------------------------------------------------
98// Library used by dlext tests - zipped and aligned
99// -----------------------------------------------------------------------------
100// In Android.mk to support zipped and aligned tests
101
102// -----------------------------------------------------------------------------
103// Library used by dlfcn tests
104// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700105cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700106 name: "libtest_simple",
107 defaults: ["bionic_testlib_defaults"],
108 srcs: ["dlopen_testlib_simple.cpp"],
109}
110
111// -----------------------------------------------------------------------------
112// Library used by dlfcn nodelete tests
113// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700114cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700115 name: "libtest_nodelete_1",
116 defaults: ["bionic_testlib_defaults"],
117 srcs: ["dlopen_nodelete_1.cpp"],
118}
119
120// -----------------------------------------------------------------------------
121// Library used by dlfcn nodelete tests
122// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700123cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700124 name: "libtest_nodelete_2",
125 defaults: ["bionic_testlib_defaults"],
126 srcs: ["dlopen_nodelete_2.cpp"],
127}
128
129// -----------------------------------------------------------------------------
130// Library used by dlfcn nodelete tests
131// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700132cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700133 name: "libtest_nodelete_dt_flags_1",
134 defaults: ["bionic_testlib_defaults"],
135 srcs: ["dlopen_nodelete_dt_flags_1.cpp"],
136 ldflags: ["-Wl,-z,nodelete"],
137}
138
139// -----------------------------------------------------------------------------
140// Build test helper libraries for linker namespaces
141// -----------------------------------------------------------------------------
142// include $(LOCAL_PATH)/Android.build.linker_namespaces.mk
143
144// -----------------------------------------------------------------------------
145// Build DT_RUNPATH test helper libraries
146// -----------------------------------------------------------------------------
147// include $(LOCAL_PATH)/Android.build.dt_runpath.mk
148
149// -----------------------------------------------------------------------------
150// Build library with two parents
151// -----------------------------------------------------------------------------
152// include $(LOCAL_PATH)/Android.build.dlopen_2_parents_reloc.mk
153
154// -----------------------------------------------------------------------------
155// Build libtest_check_order_dlsym.so with its dependencies.
156// -----------------------------------------------------------------------------
157// include $(LOCAL_PATH)/Android.build.dlopen_check_order_dlsym.mk
158
159// -----------------------------------------------------------------------------
160// Build libtest_check_order_siblings.so with its dependencies.
161// -----------------------------------------------------------------------------
162// include $(LOCAL_PATH)/Android.build.dlopen_check_order_reloc_siblings.mk
163
164// -----------------------------------------------------------------------------
165// Build libtest_check_order_root.so with its dependencies.
166// -----------------------------------------------------------------------------
167// include $(LOCAL_PATH)/Android.build.dlopen_check_order_reloc_main_executable.mk
168
169// -----------------------------------------------------------------------------
170// Build libtest_versioned_lib.so with its dependencies.
171// -----------------------------------------------------------------------------
172// include $(LOCAL_PATH)/Android.build.versioned_lib.mk
173
174// -----------------------------------------------------------------------------
175// Build libraries needed by pthread_atfork tests
176// -----------------------------------------------------------------------------
177// include $(LOCAL_PATH)/Android.build.pthread_atfork.mk
178
179// -----------------------------------------------------------------------------
180// Library with dependency loop used by dlfcn tests
181//
182// libtest_with_dependency_loop -> a -> b -> c -> a
183// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700184cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700185 name: "libtest_with_dependency_loop",
186 defaults: ["bionic_testlib_defaults"],
187 srcs: ["dlopen_testlib_loopy_root.cpp"],
188 shared_libs: ["libtest_with_dependency_loop_a"],
189}
190
191// -----------------------------------------------------------------------------
192// libtest_with_dependency_loop_a.so
193// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700194cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700195 name: "libtest_with_dependency_loop_a",
196 defaults: ["bionic_testlib_defaults"],
197 srcs: ["dlopen_testlib_loopy_a.cpp"],
198 shared_libs: ["libtest_with_dependency_loop_b_tmp"],
199}
200
201// -----------------------------------------------------------------------------
202// libtest_with_dependency_loop_b.so
203//
204// this is temporary placeholder - will be removed
205// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700206cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700207 name: "libtest_with_dependency_loop_b_tmp",
208 defaults: ["bionic_testlib_defaults"],
209 srcs: ["dlopen_testlib_loopy_invalid.cpp"],
210 ldflags: ["-Wl,-soname=libtest_with_dependency_loop_b.so"],
211}
212
213// -----------------------------------------------------------------------------
214// libtest_with_dependency_loop_b.so
215// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700216cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700217 name: "libtest_with_dependency_loop_b",
218 defaults: ["bionic_testlib_defaults"],
219 srcs: ["dlopen_testlib_loopy_b.cpp"],
220 shared_libs: ["libtest_with_dependency_loop_c"],
221}
222
223// -----------------------------------------------------------------------------
224// libtest_with_dependency_loop_c.so
225// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700226cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700227 name: "libtest_with_dependency_loop_c",
228 defaults: ["bionic_testlib_defaults"],
229 srcs: ["dlopen_testlib_loopy_c.cpp"],
230 shared_libs: ["libtest_with_dependency_loop_a"],
231}
232
233// -----------------------------------------------------------------------------
234// libtest_relo_check_dt_needed_order.so
235// |
236// +-> libtest_relo_check_dt_needed_order_1.so
237// |
238// +-> libtest_relo_check_dt_needed_order_2.so
239// -----------------------------------------------------------------------------
240
241
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700242cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700243 name: "libtest_relo_check_dt_needed_order",
244 defaults: ["bionic_testlib_defaults"],
245 srcs: ["dlopen_testlib_relo_check_dt_needed_order.cpp"],
246 shared_libs: [
247 "libtest_relo_check_dt_needed_order_1",
248 "libtest_relo_check_dt_needed_order_2",
249 ],
250}
251
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700252cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700253 name: "libtest_relo_check_dt_needed_order_1",
254 defaults: ["bionic_testlib_defaults"],
255 srcs: ["dlopen_testlib_relo_check_dt_needed_order_1.cpp"],
256}
257
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700258cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700259 name: "libtest_relo_check_dt_needed_order_2",
260 defaults: ["bionic_testlib_defaults"],
261 srcs: ["dlopen_testlib_relo_check_dt_needed_order_2.cpp"],
262}
263
264// -----------------------------------------------------------------------------
265// Library with dependency used by dlfcn tests
266// -----------------------------------------------------------------------------
267// In Android.mk to support dependency on libdlext_test
268
269// -----------------------------------------------------------------------------
270// Library used by ifunc tests
271// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700272cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700273 name: "libtest_ifunc",
274 defaults: ["bionic_testlib_defaults"],
Dimitry Ivanov21975b22017-05-02 16:31:56 -0700275 srcs: ["dlopen_testlib_ifunc.cpp"],
Colin Cross2722ebb2016-07-11 16:20:06 -0700276
Colin Cross2722ebb2016-07-11 16:20:06 -0700277 arch: {
278 mips: {
279 enabled: false,
280 },
281 mips64: {
282 enabled: false,
283 },
284 },
Dimitry Ivanov21975b22017-05-02 16:31:56 -0700285
286 target: {
287 android: {
288 shared_libs: ["libdl"],
289 },
290 host: {
291 host_ldlibs: ["-ldl"],
292 },
293 },
294}
295
296cc_test_library {
297 name: "libtest_ifunc_variable",
298 defaults: ["bionic_testlib_defaults"],
299 srcs: ["dlopen_testlib_ifunc_variable.cpp"],
300 shared_libs: [ "libtest_ifunc_variable_impl" ],
301
302 arch: {
303 mips: {
304 enabled: false,
305 },
306 mips64: {
307 enabled: false,
308 },
309 },
310
311 target: {
312 android: {
313 shared_libs: ["libdl"],
314 },
315 host: {
316 host_ldlibs: ["-ldl"],
317 },
318 },
319}
320
321cc_test_library {
322 name: "libtest_ifunc_variable_impl",
323 defaults: ["bionic_testlib_defaults"],
324 srcs: ["dlopen_testlib_ifunc_variable_impl.cpp"],
325
326 arch: {
327 mips: {
328 enabled: false,
329 },
330 mips64: {
331 enabled: false,
332 },
333 },
334
335 target: {
336 android: {
337 shared_libs: ["libdl"],
338 },
339 host: {
340 host_ldlibs: ["-ldl"],
341 },
342 },
Colin Cross2722ebb2016-07-11 16:20:06 -0700343}
344
345// -----------------------------------------------------------------------------
346// Library used by atexit tests
347// -----------------------------------------------------------------------------
348
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700349cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700350 name: "libtest_atexit",
351 defaults: ["bionic_testlib_defaults"],
352 srcs: ["atexit_testlib.cpp"],
353}
354
355// -----------------------------------------------------------------------------
356// This library is used by dl_load test to check symbol preempting
357// by main executable
358// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700359cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700360 name: "libdl_preempt_test_1",
361 defaults: ["bionic_testlib_defaults"],
362 srcs: ["dl_preempt_library_1.cpp"],
363}
364
365// -----------------------------------------------------------------------------
366// This library is used by dl_load test to check symbol preempting
367// by libdl_preempt_test_1.so
368// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700369cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700370 name: "libdl_preempt_test_2",
371 defaults: ["bionic_testlib_defaults"],
372 srcs: ["dl_preempt_library_2.cpp"],
373}
374
375// -----------------------------------------------------------------------------
376// Library with DF_1_GLOBAL
377// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700378cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700379 name: "libdl_test_df_1_global",
380 defaults: ["bionic_testlib_defaults"],
381 srcs: ["dl_df_1_global.cpp"],
382 ldflags: ["-Wl,-z,global"],
383
384 target: {
385 host: {
386 // TODO (dimitry): host ld.gold does not yet support -z global
387 // remove this line once it is updated.
388 ldflags: ["-fuse-ld=bfd"],
389 },
390 },
391}
392
393// -----------------------------------------------------------------------------
394// Library using symbol from libdl_test_df_1_global
395// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700396cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700397 name: "libtest_dlsym_df_1_global",
398 defaults: ["bionic_testlib_defaults"],
399 srcs: ["dl_df_1_use_global.cpp"],
400}
401
402// -----------------------------------------------------------------------------
403// Library with weak function
404// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700405cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700406 name: "libtest_dlsym_weak_func",
407 defaults: ["bionic_testlib_defaults"],
408 srcs: ["dlsym_weak_function.cpp"],
409}
410
411// -----------------------------------------------------------------------------
412// Library to check RTLD_LOCAL with dlsym in 'this'
413// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700414cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700415 name: "libtest_dlsym_from_this",
416 defaults: ["bionic_testlib_defaults"],
417 srcs: ["dlsym_from_this_symbol.cpp"],
418 shared_libs: ["libtest_dlsym_from_this_child"],
419
420 target: {
421 android: {
422 shared_libs: ["libdl"],
423 },
Colin Crossd0ba52e2016-10-20 10:39:50 -0700424 host: {
425 host_ldlibs: ["-ldl"],
426 },
Colin Cross2722ebb2016-07-11 16:20:06 -0700427 },
428}
429
430// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700431cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700432 name: "libtest_dlsym_from_this_child",
433 defaults: ["bionic_testlib_defaults"],
434 srcs: ["dlsym_from_this_functions.cpp"],
435 shared_libs: ["libtest_dlsym_from_this_grandchild"],
Colin Crossd0ba52e2016-10-20 10:39:50 -0700436 target: {
437 android: {
438 shared_libs: ["libdl"],
439 },
440 host: {
441 host_ldlibs: ["-ldl"],
442 },
443 },
Colin Cross2722ebb2016-07-11 16:20:06 -0700444}
445
446// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700447cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700448 name: "libtest_dlsym_from_this_grandchild",
449 defaults: ["bionic_testlib_defaults"],
450 srcs: ["dlsym_from_this_symbol2.cpp"],
451}
452
453// -----------------------------------------------------------------------------
454// Empty library
455// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700456cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700457 name: "libtest_empty",
458 defaults: ["bionic_testlib_defaults"],
459 srcs: ["empty.cpp"],
460}
461
462// -----------------------------------------------------------------------------
463// Library with weak undefined function
464// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700465cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700466 name: "libtest_dlopen_weak_undefined_func",
467 defaults: ["bionic_testlib_defaults"],
468 srcs: ["dlopen_weak_undefined.cpp"],
469}
470
471// -----------------------------------------------------------------------------
Dimitry Ivanovd0b5c3a2016-11-25 12:23:11 -0800472// Check that RTLD_NEXT of a libc symbol works in dlopened library
473// -----------------------------------------------------------------------------
474cc_test_library {
475 name: "libtest_check_rtld_next_from_library",
476 defaults: ["bionic_testlib_defaults"],
477 srcs: ["check_rtld_next_from_library.cpp"],
478
479 target: {
480 android: {
481 shared_libs: ["libdl"],
482 },
483 host: {
484 host_ldlibs: ["-ldl"],
485 },
486 },
487}
488
489// -----------------------------------------------------------------------------
Colin Cross2722ebb2016-07-11 16:20:06 -0700490// Library with constructor that calls dlopen() b/7941716
491// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700492cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700493 name: "libtest_dlopen_from_ctor",
494 defaults: ["bionic_testlib_defaults"],
495 srcs: ["dlopen_testlib_dlopen_from_ctor.cpp"],
496 target: {
497 android: {
498 shared_libs: ["libdl"],
499 },
Colin Crossd0ba52e2016-10-20 10:39:50 -0700500 host: {
501 host_ldlibs: ["-ldl"],
502 },
Colin Cross2722ebb2016-07-11 16:20:06 -0700503 },
504}
505
506// -----------------------------------------------------------------------------
Dimitry Ivanovec90e242017-02-10 11:04:20 -0800507// Libraries used to check init/fini call order
Dimitry Ivanovea8f3962017-02-09 13:31:57 -0800508// -----------------------------------------------------------------------------
509cc_test_library {
510 name: "libtest_init_fini_order_root",
511 defaults: ["bionic_testlib_defaults"],
512 srcs: ["dlopen_check_init_fini_root.cpp"],
Dimitry Ivanovec90e242017-02-10 11:04:20 -0800513 shared_libs: [
514 "libtest_init_fini_order_child",
515 "libtest_init_fini_order_grand_child",
516 ],
517}
518
519cc_test_library {
520 name: "libtest_init_fini_order_root2",
521 defaults: ["bionic_testlib_defaults"],
522 srcs: ["dlopen_check_init_fini_root.cpp"],
523 shared_libs: [
524 "libtest_init_fini_order_grand_child",
525 "libtest_init_fini_order_child",
526 ],
Dimitry Ivanovea8f3962017-02-09 13:31:57 -0800527}
528
529cc_test_library {
530 name: "libtest_init_fini_order_child",
531 defaults: ["bionic_testlib_defaults"],
532 srcs: ["dlopen_check_init_fini_child.cpp"],
533 shared_libs: ["libtest_init_fini_order_grand_child"],
534}
535
536cc_test_library {
537 name: "libtest_init_fini_order_grand_child",
538 defaults: ["bionic_testlib_defaults"],
539 srcs: ["dlopen_check_init_fini_grand_child.cpp"],
540}
541
542// -----------------------------------------------------------------------------
Colin Cross2722ebb2016-07-11 16:20:06 -0700543// Library that depends on the library with constructor that calls dlopen() b/7941716
544// -----------------------------------------------------------------------------
Dimitry Ivanova36e59b2016-09-01 11:37:39 -0700545cc_test_library {
Colin Cross2722ebb2016-07-11 16:20:06 -0700546 name: "libtest_dlopen_from_ctor_main",
547 defaults: ["bionic_testlib_defaults"],
548 srcs: ["empty.cpp"],
549 shared_libs: ["libtest_dlopen_from_ctor"],
550}
551
552// -----------------------------------------------------------------------------
553// Tool to use to align the shared libraries in a zip file.
554// -----------------------------------------------------------------------------
555cc_binary_host {
556 name: "bionic_tests_zipalign",
557 srcs: ["bionic_tests_zipalign.cpp"],
558 cflags: [
559 "-Wall",
560 "-Werror",
561 ],
562
563 static_libs: [
564 "libziparchive",
565 "liblog",
566 "libbase",
567 "libz",
568 "libutils",
569 ],
Colin Cross2722ebb2016-07-11 16:20:06 -0700570}
Evgenii Stepanov0a3637d2016-07-06 13:20:59 -0700571
572cc_test_library {
573 name: "libcfi-test",
574 defaults: ["bionic_testlib_defaults"],
575 srcs: ["cfi_test_lib.cpp"],
576 sanitize: {
577 cfi: false,
578 },
579}
580
581cc_test_library {
582 name: "libcfi-test-bad",
583 defaults: ["bionic_testlib_defaults"],
584 srcs: ["cfi_test_bad_lib.cpp"],
585 sanitize: {
586 cfi: false,
587 },
588}
Evgenii Stepanov68ecec12017-01-31 13:19:30 -0800589
590cc_test {
591 name: "cfi_test_helper",
592 host_supported: false,
593 defaults: ["bionic_testlib_defaults"],
594 srcs: ["cfi_test_helper.cpp"],
595 ldflags: ["-rdynamic"],
596}
597
598cc_test {
599 name: "cfi_test_helper2",
600 host_supported: false,
601 defaults: ["bionic_testlib_defaults"],
602 srcs: ["cfi_test_helper2.cpp"],
603 shared_libs: ["libcfi-test"],
604 ldflags: ["-Wl,--rpath,${ORIGIN}/.."],
605}
Elliott Hugheseb04ed52017-03-29 13:48:02 -0700606
607cc_test {
608 name: "preinit_getauxval_test_helper",
609 host_supported: false,
610 defaults: ["bionic_testlib_defaults"],
611 srcs: ["preinit_getauxval_test_helper.cpp"],
612}
613
614cc_test {
615 name: "preinit_syscall_test_helper",
616 host_supported: false,
617 defaults: ["bionic_testlib_defaults"],
618 srcs: ["preinit_syscall_test_helper.cpp"],
619}
Jiyong Park02586a22017-05-20 01:01:24 +0900620
621cc_test {
622 name: "ld_preload_test_helper",
623 host_supported: false,
624 defaults: ["bionic_testlib_defaults"],
625 srcs: ["ld_preload_test_helper.cpp"],
626 shared_libs: ["ld_preload_test_helper_lib1"],
627 ldflags: ["-Wl,--rpath,${ORIGIN}/.."],
628}
629
630cc_test_library {
631 name: "ld_preload_test_helper_lib1",
632 host_supported: false,
633 defaults: ["bionic_testlib_defaults"],
634 srcs: ["ld_preload_test_helper_lib1.cpp"],
635}
636
637cc_test_library {
638 name: "ld_preload_test_helper_lib2",
639 host_supported: false,
640 defaults: ["bionic_testlib_defaults"],
641 srcs: ["ld_preload_test_helper_lib2.cpp"],
642}
643
644cc_test {
645 name: "ld_config_test_helper",
646 host_supported: false,
647 defaults: ["bionic_testlib_defaults"],
648 srcs: ["ld_config_test_helper.cpp"],
649 shared_libs: ["ld_config_test_helper_lib1"],
650 ldflags: ["-Wl,--rpath,${ORIGIN}/.."],
651}
652
653cc_test_library {
654 name: "ld_config_test_helper_lib1",
655 host_supported: false,
656 defaults: ["bionic_testlib_defaults"],
657 srcs: ["ld_config_test_helper_lib1.cpp"],
658 shared_libs: ["ld_config_test_helper_lib2"],
659 relative_install_path: "/ns2",
660}
661
662cc_test_library {
663 name: "ld_config_test_helper_lib2",
664 host_supported: false,
665 defaults: ["bionic_testlib_defaults"],
666 srcs: ["ld_config_test_helper_lib2.cpp"],
667 relative_install_path: "/ns2",
668}
669
670cc_test_library {
671 name: "ld_config_test_helper_lib3",
672 host_supported: false,
673 defaults: ["bionic_testlib_defaults"],
674 srcs: ["ld_config_test_helper_lib3.cpp"],
675}