blob: 86159348d2eaa8fded175419f00659eae3e45e38 [file] [log] [blame]
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -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
17LOCAL_PATH := $(call my-dir)
18TEST_PATH := $(LOCAL_PATH)/..
19
Dan Albert53416912015-08-10 16:40:06 -070020common_cppflags :=
Dmitriy Ivanov4a9e1932014-10-17 11:47:18 -070021common_additional_dependencies := \
22 $(LOCAL_PATH)/Android.mk \
Evgenii Stepanov68650822015-06-10 13:38:39 -070023 $(LOCAL_PATH)/Android.build.dt_runpath.mk \
Dmitriy Ivanov4a9e1932014-10-17 11:47:18 -070024 $(LOCAL_PATH)/Android.build.dlext_testzip.mk \
Dmitriy Ivanovab972b92014-11-29 13:57:41 -080025 $(LOCAL_PATH)/Android.build.dlopen_2_parents_reloc.mk \
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -070026 $(LOCAL_PATH)/Android.build.dlopen_check_order_dlsym.mk \
27 $(LOCAL_PATH)/Android.build.dlopen_check_order_reloc_siblings.mk \
28 $(LOCAL_PATH)/Android.build.dlopen_check_order_reloc_main_executable.mk \
Dmitriy Ivanovea295f62014-11-20 20:47:02 -080029 $(LOCAL_PATH)/Android.build.pthread_atfork.mk \
Dmitriy Ivanov4a9e1932014-10-17 11:47:18 -070030 $(LOCAL_PATH)/Android.build.testlib.mk \
Dmitriy Ivanov2a815362015-04-09 13:42:33 -070031 $(LOCAL_PATH)/Android.build.versioned_lib.mk \
Dmitriy Ivanov4a9e1932014-10-17 11:47:18 -070032 $(TEST_PATH)/Android.build.mk
33
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070034# -----------------------------------------------------------------------------
Dmitriy Ivanovb3356772014-11-14 11:19:22 -080035# Library to test gnu-styled hash
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070036# -----------------------------------------------------------------------------
37ifneq ($(TARGET_ARCH),$(filter $(TARGET_ARCH),mips mips64))
Dmitriy Ivanovec18ce02014-11-09 19:27:20 -080038libgnu-hash-table-library_src_files := \
39 dlext_test_library.cpp \
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070040
Dmitriy Ivanovec18ce02014-11-09 19:27:20 -080041libgnu-hash-table-library_ldflags := \
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070042 -Wl,--hash-style=gnu \
43
Dmitriy Ivanovec18ce02014-11-09 19:27:20 -080044module := libgnu-hash-table-library
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070045module_tag := optional
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -070046include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070047endif
48
49# -----------------------------------------------------------------------------
Dmitriy Ivanovb3356772014-11-14 11:19:22 -080050# Library to test sysv-styled hash
51# -----------------------------------------------------------------------------
52libsysv-hash-table-library_src_files := \
53 dlext_test_library.cpp \
54
55libsysv-hash-table-library_ldflags := \
56 -Wl,--hash-style=sysv \
57
58module := libsysv-hash-table-library
59module_tag := optional
60include $(LOCAL_PATH)/Android.build.testlib.mk
61
62# -----------------------------------------------------------------------------
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070063# Library used by dlext tests - with GNU RELRO program header
64# -----------------------------------------------------------------------------
65libdlext_test_src_files := \
66 dlext_test_library.cpp \
67
68libdlext_test_ldflags := \
69 -Wl,-z,relro \
70
71module := libdlext_test
72module_tag := optional
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -070073include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070074
75# -----------------------------------------------------------------------------
76# create symlink to libdlext_test.so for symlink test
77# -----------------------------------------------------------------------------
78# Use = instead of := to defer the evaluation of $@
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -070079$(TARGET_OUT)/lib/libdlext_test.so: PRIVATE_POST_INSTALL_CMD = \
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070080 $(hide) cd $(dir $@) && ln -sf $(notdir $@) libdlext_test_v2.so
81
82ifneq ($(TARGET_2ND_ARCH),)
83# link 64 bit .so
84$(TARGET_OUT)/lib64/libdlext_test.so: PRIVATE_POST_INSTALL_CMD = \
85 $(hide) cd $(dir $@) && ln -sf $(notdir $@) libdlext_test_v2.so
86endif
87
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -070088# host symlinks
89$(HOST_OUT)/lib64/libdlext_test.so: PRIVATE_POST_INSTALL_CMD = \
90 $(hide) cd $(dir $@) && ln -sf $(notdir $@) libdlext_test_v2.so
91
92$(HOST_OUT)/lib/libdlext_test.so: PRIVATE_POST_INSTALL_CMD = \
93 $(hide) cd $(dir $@) && ln -sf $(notdir $@) libdlext_test_v2.so
94
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -070095# -----------------------------------------------------------------------------
96# Library used by dlext tests - without GNU RELRO program header
97# -----------------------------------------------------------------------------
98libdlext_test_norelro_src_files := \
99 dlext_test_library.cpp \
100
101libdlext_test_norelro_ldflags := \
102 -Wl,-z,norelro \
103
104module := libdlext_test_norelro
105module_tag := optional
106build_type := target
107build_target := SHARED_LIBRARY
108include $(TEST_PATH)/Android.build.mk
109
110# -----------------------------------------------------------------------------
Dmitriy Ivanov04dc91a2014-07-01 14:10:16 -0700111# Library used by dlext tests - different name non-default location
112# -----------------------------------------------------------------------------
113libdlext_test_fd_src_files := \
114 dlext_test_library.cpp \
115
116libdlext_test_fd_install_to_out_data := true
117module := libdlext_test_fd
118module_tag := optional
119build_type := target
120build_target := SHARED_LIBRARY
121include $(TEST_PATH)/Android.build.mk
122
Dmitriy Ivanov618f1a32015-03-17 20:06:36 -0700123# ----------------------------------------------------------------------------
124# Library with soname which does not match filename
125# ----------------------------------------------------------------------------
126libdlext_test_different_soname_src_files := \
127 dlext_test_library.cpp \
128
129module := libdlext_test_different_soname
130module_tag := optional
131libdlext_test_different_soname_ldflags := -Wl,-soname=libdlext_test_soname.so
132include $(LOCAL_PATH)/Android.build.testlib.mk
133
Dmitriy Ivanov04dc91a2014-07-01 14:10:16 -0700134# -----------------------------------------------------------------------------
Dmitriy Ivanov07e5bc12014-10-03 17:52:44 -0700135# Library used by dlext tests - zipped and aligned
136# -----------------------------------------------------------------------------
137include $(CLEAR_VARS)
Dmitriy Ivanov75d66dd2014-10-07 09:46:46 -0700138bionic_2nd_arch_prefix :=
Dmitriy Ivanov07e5bc12014-10-03 17:52:44 -0700139include $(LOCAL_PATH)/Android.build.dlext_testzip.mk
140ifneq ($(TARGET_2ND_ARCH),)
Dmitriy Ivanov75d66dd2014-10-07 09:46:46 -0700141 bionic_2nd_arch_prefix := $(TARGET_2ND_ARCH_VAR_PREFIX)
Dmitriy Ivanov07e5bc12014-10-03 17:52:44 -0700142 include $(LOCAL_PATH)/Android.build.dlext_testzip.mk
143endif
144
145# -----------------------------------------------------------------------------
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -0700146# Library used by dlfcn tests
147# -----------------------------------------------------------------------------
148libtest_simple_src_files := \
149 dlopen_testlib_simple.cpp
150
151module := libtest_simple
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700152include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -0700153
Dmitriy Ivanovd97e9f52014-06-29 12:28:37 -0700154# -----------------------------------------------------------------------------
Dmitriy Ivanov1b20daf2014-05-19 15:06:58 -0700155# Library used by dlfcn nodelete tests
156# -----------------------------------------------------------------------------
157libtest_nodelete_1_src_files := \
158 dlopen_nodelete_1.cpp
159
160module := libtest_nodelete_1
161include $(LOCAL_PATH)/Android.build.testlib.mk
162
163# -----------------------------------------------------------------------------
164# Library used by dlfcn nodelete tests
165# -----------------------------------------------------------------------------
166libtest_nodelete_2_src_files := \
167 dlopen_nodelete_2.cpp
168
169module := libtest_nodelete_2
170include $(LOCAL_PATH)/Android.build.testlib.mk
171
172# -----------------------------------------------------------------------------
173# Library used by dlfcn nodelete tests
174# -----------------------------------------------------------------------------
175libtest_nodelete_dt_flags_1_src_files := \
176 dlopen_nodelete_dt_flags_1.cpp
177
178libtest_nodelete_dt_flags_1_ldflags := -Wl,-z,nodelete
179
180module := libtest_nodelete_dt_flags_1
181include $(LOCAL_PATH)/Android.build.testlib.mk
182
183# -----------------------------------------------------------------------------
Evgenii Stepanov68650822015-06-10 13:38:39 -0700184# Build DT_RUNPATH test helper libraries
185# -----------------------------------------------------------------------------
186include $(LOCAL_PATH)/Android.build.dt_runpath.mk
187
188# -----------------------------------------------------------------------------
Dmitriy Ivanovab972b92014-11-29 13:57:41 -0800189# Build library with two parents
190# -----------------------------------------------------------------------------
191include $(LOCAL_PATH)/Android.build.dlopen_2_parents_reloc.mk
192
193# -----------------------------------------------------------------------------
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -0700194# Build libtest_check_order_dlsym.so with its dependencies.
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700195# -----------------------------------------------------------------------------
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -0700196include $(LOCAL_PATH)/Android.build.dlopen_check_order_dlsym.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700197
198# -----------------------------------------------------------------------------
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -0700199# Build libtest_check_order_siblings.so with its dependencies.
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700200# -----------------------------------------------------------------------------
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -0700201include $(LOCAL_PATH)/Android.build.dlopen_check_order_reloc_siblings.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700202
203# -----------------------------------------------------------------------------
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -0700204# Build libtest_check_order_root.so with its dependencies.
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700205# -----------------------------------------------------------------------------
Dmitriy Ivanovcfa97f12014-10-21 09:23:18 -0700206include $(LOCAL_PATH)/Android.build.dlopen_check_order_reloc_main_executable.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700207
208# -----------------------------------------------------------------------------
Dmitriy Ivanov2a815362015-04-09 13:42:33 -0700209# Build libtest_versioned_lib.so with its dependencies.
210# -----------------------------------------------------------------------------
211include $(LOCAL_PATH)/Android.build.versioned_lib.mk
212
213# -----------------------------------------------------------------------------
Dmitriy Ivanovea295f62014-11-20 20:47:02 -0800214# Build libraries needed by pthread_atfork tests
215# -----------------------------------------------------------------------------
216include $(LOCAL_PATH)/Android.build.pthread_atfork.mk
217
218# -----------------------------------------------------------------------------
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700219# Library with dependency loop used by dlfcn tests
220#
221# libtest_with_dependency_loop -> a -> b -> c -> a
222# -----------------------------------------------------------------------------
Dmitriy Ivanovab972b92014-11-29 13:57:41 -0800223libtest_with_dependency_loop_src_files := dlopen_testlib_loopy_root.cpp
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700224
225libtest_with_dependency_loop_shared_libraries := \
226 libtest_with_dependency_loop_a
227
228module := libtest_with_dependency_loop
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700229include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700230
231# -----------------------------------------------------------------------------
232# libtest_with_dependency_loop_a.so
233# -----------------------------------------------------------------------------
Dmitriy Ivanovab972b92014-11-29 13:57:41 -0800234libtest_with_dependency_loop_a_src_files := dlopen_testlib_loopy_a.cpp
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700235
236libtest_with_dependency_loop_a_shared_libraries := \
237 libtest_with_dependency_loop_b_tmp
238
239module := libtest_with_dependency_loop_a
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700240include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700241
242# -----------------------------------------------------------------------------
243# libtest_with_dependency_loop_b.so
244#
245# this is temporary placeholder - will be removed
246# -----------------------------------------------------------------------------
Dmitriy Ivanovab972b92014-11-29 13:57:41 -0800247libtest_with_dependency_loop_b_tmp_src_files := dlopen_testlib_loopy_invalid.cpp
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700248libtest_with_dependency_loop_b_tmp_ldflags := -Wl,-soname=libtest_with_dependency_loop_b.so
249
250module := libtest_with_dependency_loop_b_tmp
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700251include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700252
253# -----------------------------------------------------------------------------
254# libtest_with_dependency_loop_b.so
255# -----------------------------------------------------------------------------
Dmitriy Ivanovab972b92014-11-29 13:57:41 -0800256libtest_with_dependency_loop_b_src_files := dlopen_testlib_loopy_b.cpp
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700257libtest_with_dependency_loop_b_shared_libraries := libtest_with_dependency_loop_c
258
259module := libtest_with_dependency_loop_b
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700260include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700261
262# -----------------------------------------------------------------------------
263# libtest_with_dependency_loop_c.so
264# -----------------------------------------------------------------------------
Dmitriy Ivanovab972b92014-11-29 13:57:41 -0800265libtest_with_dependency_loop_c_src_files := dlopen_testlib_loopy_c.cpp
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700266
267libtest_with_dependency_loop_c_shared_libraries := \
268 libtest_with_dependency_loop_a
269
270module := libtest_with_dependency_loop_c
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700271include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov14669a92014-09-05 16:42:53 -0700272
273# -----------------------------------------------------------------------------
Dmitriy Ivanovb2a30ee2014-09-04 18:23:00 -0700274# libtest_relo_check_dt_needed_order.so
275# |
276# +-> libtest_relo_check_dt_needed_order_1.so
277# |
278# +-> libtest_relo_check_dt_needed_order_2.so
279# -----------------------------------------------------------------------------
280libtest_relo_check_dt_needed_order_shared_libraries := \
281 libtest_relo_check_dt_needed_order_1 libtest_relo_check_dt_needed_order_2
282
283libtest_relo_check_dt_needed_order_src_files := dlopen_testlib_relo_check_dt_needed_order.cpp
284libtest_relo_check_dt_needed_order_1_src_files := dlopen_testlib_relo_check_dt_needed_order_1.cpp
285libtest_relo_check_dt_needed_order_2_src_files := dlopen_testlib_relo_check_dt_needed_order_2.cpp
Dmitriy Ivanovb2a30ee2014-09-04 18:23:00 -0700286
287module := libtest_relo_check_dt_needed_order
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700288include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanovb2a30ee2014-09-04 18:23:00 -0700289module := libtest_relo_check_dt_needed_order_1
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700290include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanovb2a30ee2014-09-04 18:23:00 -0700291module := libtest_relo_check_dt_needed_order_2
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700292include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanovb2a30ee2014-09-04 18:23:00 -0700293
294# -----------------------------------------------------------------------------
Dmitriy Ivanovaa0f2bd2014-07-28 17:32:20 -0700295# Library with dependency used by dlfcn tests
296# -----------------------------------------------------------------------------
297libtest_with_dependency_src_files := \
298 dlopen_testlib_simple.cpp
299
300libtest_with_dependency_shared_libraries := libdlext_test
301
302module := libtest_with_dependency
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700303include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanovaa0f2bd2014-07-28 17:32:20 -0700304
305# -----------------------------------------------------------------------------
Brigid Smithc5a13ef2014-07-23 11:22:25 -0700306# Library used by ifunc tests
307# -----------------------------------------------------------------------------
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700308libtest_ifunc_src_files := \
309 dlopen_testlib_ifunc.c
310
311libtest_ifunc_clang_host := false
312module := libtest_ifunc
313build_target := SHARED_LIBRARY
314
315build_type := host
316include $(TEST_PATH)/Android.build.mk
317
Dmitriy Ivanov9aea1642014-09-11 15:16:03 -0700318ifeq ($(TARGET_ARCH),$(filter $(TARGET_ARCH),arm64 x86 x86_64))
Dmitriy Ivanov9aea1642014-09-11 15:16:03 -0700319 ifeq ($(TARGET_ARCH),arm64)
320 libtest_ifunc_multilib := 64
321 # TODO: This is a workaround - remove it once gcc
322 # removes its Android ifunc checks
323 libtest_ifunc_cflags := -mglibc
324 endif
325
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700326 build_type := target
Chih-Hung Hsiehb0862982014-10-24 11:04:51 -0700327 libtest_ifunc_clang_target := false
Brigid Smithc5a13ef2014-07-23 11:22:25 -0700328 include $(TEST_PATH)/Android.build.mk
329endif
330
331# -----------------------------------------------------------------------------
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -0700332# Library used by atexit tests
333# -----------------------------------------------------------------------------
334
335libtest_atexit_src_files := \
336 atexit_testlib.cpp
337
338module := libtest_atexit
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700339include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov1f5e1a32014-06-02 16:29:00 -0700340
Dmitriy Ivanovce441662014-06-17 15:56:38 -0700341# -----------------------------------------------------------------------------
Dmitriy Ivanovd225a5e2014-08-28 14:12:12 -0700342# This library is used by dl_load test to check symbol preempting
343# by main executable
344# -----------------------------------------------------------------------------
345libdl_preempt_test_1_src_files := dl_preempt_library_1.cpp
346
347module := libdl_preempt_test_1
348include $(LOCAL_PATH)/Android.build.testlib.mk
349
350# -----------------------------------------------------------------------------
351# This library is used by dl_load test to check symbol preempting
352# by libdl_preempt_test_1.so
353# -----------------------------------------------------------------------------
354libdl_preempt_test_2_src_files := dl_preempt_library_2.cpp
355
356module := libdl_preempt_test_2
357include $(LOCAL_PATH)/Android.build.testlib.mk
358
359# -----------------------------------------------------------------------------
360# Library with DF_1_GLOBAL
361# -----------------------------------------------------------------------------
Dmitriy Ivanovd225a5e2014-08-28 14:12:12 -0700362libdl_test_df_1_global_src_files := dl_df_1_global.cpp
Dmitriy Ivanov6612d7a2015-04-24 16:26:03 -0700363libdl_test_df_1_global_ldflags := -Wl,-z,global
Dmitriy Ivanov93333242015-05-14 21:28:21 -0700364
Dmitriy Ivanov6612d7a2015-04-24 16:26:03 -0700365# TODO (dimitry): host ld.gold does not yet support -z global
366# remove this line once it is updated.
367libdl_test_df_1_global_ldflags_host := -fuse-ld=bfd
368
Dmitriy Ivanovd225a5e2014-08-28 14:12:12 -0700369module := libdl_test_df_1_global
370include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanovd225a5e2014-08-28 14:12:12 -0700371
372# -----------------------------------------------------------------------------
373# Library using symbol from libdl_test_df_1_global
374# -----------------------------------------------------------------------------
375libtest_dlsym_df_1_global_src_files := dl_df_1_use_global.cpp
376module := libtest_dlsym_df_1_global
377include $(LOCAL_PATH)/Android.build.testlib.mk
378
379# -----------------------------------------------------------------------------
Dmitriy Ivanovce441662014-06-17 15:56:38 -0700380# Library with weak function
381# -----------------------------------------------------------------------------
382libtest_dlsym_weak_func_src_files := \
383 dlsym_weak_function.cpp
384
385module := libtest_dlsym_weak_func
Dmitriy Ivanoveb27bba2014-09-15 14:13:24 -0700386include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanovbfa88bc2014-12-16 11:40:46 -0800387
388# -----------------------------------------------------------------------------
Dmitriy Ivanov76ac1ac2015-04-01 14:45:10 -0700389# Library to check RTLD_LOCAL with dlsym in 'this'
390# -----------------------------------------------------------------------------
Dmitriy Ivanov697bd9f2015-05-12 11:12:27 -0700391libtest_dlsym_from_this_src_files := dlsym_from_this_symbol.cpp
392
393libtest_dlsym_from_this_shared_libraries_target := libdl
394libtest_dlsym_from_this_shared_libraries := libtest_dlsym_from_this_child
Dmitriy Ivanov76ac1ac2015-04-01 14:45:10 -0700395
396module := libtest_dlsym_from_this
Dmitriy Ivanov697bd9f2015-05-12 11:12:27 -0700397include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov76ac1ac2015-04-01 14:45:10 -0700398
Dmitriy Ivanov697bd9f2015-05-12 11:12:27 -0700399# -----------------------------------------------------------------------------
400libtest_dlsym_from_this_child_src_files := dlsym_from_this_functions.cpp
401
402libtest_dlsym_from_this_child_shared_libraries := libtest_dlsym_from_this_grandchild
403
404module := libtest_dlsym_from_this_child
405include $(LOCAL_PATH)/Android.build.testlib.mk
406
407# -----------------------------------------------------------------------------
408libtest_dlsym_from_this_grandchild_src_files := dlsym_from_this_symbol2.cpp
409
410module := libtest_dlsym_from_this_grandchild
Dmitriy Ivanov76ac1ac2015-04-01 14:45:10 -0700411include $(LOCAL_PATH)/Android.build.testlib.mk
412
413# -----------------------------------------------------------------------------
Dmitriy Ivanovf439b5a2015-05-30 13:04:39 -0700414# Empty library
415# -----------------------------------------------------------------------------
416libtest_empty_src_files := empty.cpp
417
418module := libtest_empty
419include $(LOCAL_PATH)/Android.build.testlib.mk
420
421# -----------------------------------------------------------------------------
Dmitriy Ivanovbfa88bc2014-12-16 11:40:46 -0800422# Library with weak undefined function
423# -----------------------------------------------------------------------------
424libtest_dlopen_weak_undefined_func_src_files := \
425 dlopen_weak_undefined.cpp
426
427module := libtest_dlopen_weak_undefined_func
428include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov279a22f2015-01-23 12:03:53 -0800429
430# -----------------------------------------------------------------------------
431# Library with constructor that calls dlopen() b/7941716
432# -----------------------------------------------------------------------------
433libtest_dlopen_from_ctor_src_files := \
434 dlopen_testlib_dlopen_from_ctor.cpp
435
436module := libtest_dlopen_from_ctor
437
Dmitriy Ivanov45c57132015-04-03 15:17:52 -0700438libtest_dlopen_from_ctor_shared_libraries_target := libdl
Dmitriy Ivanov279a22f2015-01-23 12:03:53 -0800439
Dmitriy Ivanov45c57132015-04-03 15:17:52 -0700440include $(LOCAL_PATH)/Android.build.testlib.mk
Dmitriy Ivanov279a22f2015-01-23 12:03:53 -0800441
442# -----------------------------------------------------------------------------
443# Library that depends on the library with constructor that calls dlopen() b/7941716
444# -----------------------------------------------------------------------------
445
446libtest_dlopen_from_ctor_main_src_files := empty.cpp
447libtest_dlopen_from_ctor_main_shared_libraries := libtest_dlopen_from_ctor
448
449module := libtest_dlopen_from_ctor_main
450include $(LOCAL_PATH)/Android.build.testlib.mk