Add test checking init/fini call order
This test is checking that loader complies with the order described in
http://www.sco.com/developers/gabi/latest/ch5.dynamic.html#init_fini
Bug: http://b/35201832
Test: bionic-unit-tests --gtest_filter=dl*:Dl*
Test: bionic-unit-tests-glibc --gtest_filter=dl*
Change-Id: I4cdf878c043112442c191e82aa9f5d5077e4d8c4
diff --git a/tests/libs/Android.bp b/tests/libs/Android.bp
index 7802727..31a0916 100644
--- a/tests/libs/Android.bp
+++ b/tests/libs/Android.bp
@@ -448,6 +448,29 @@
}
// -----------------------------------------------------------------------------
+// Library used to check init/fini call order
+// -----------------------------------------------------------------------------
+cc_test_library {
+ name: "libtest_init_fini_order_root",
+ defaults: ["bionic_testlib_defaults"],
+ srcs: ["dlopen_check_init_fini_root.cpp"],
+ shared_libs: ["libtest_init_fini_order_child"],
+}
+
+cc_test_library {
+ name: "libtest_init_fini_order_child",
+ defaults: ["bionic_testlib_defaults"],
+ srcs: ["dlopen_check_init_fini_child.cpp"],
+ shared_libs: ["libtest_init_fini_order_grand_child"],
+}
+
+cc_test_library {
+ name: "libtest_init_fini_order_grand_child",
+ defaults: ["bionic_testlib_defaults"],
+ srcs: ["dlopen_check_init_fini_grand_child.cpp"],
+}
+
+// -----------------------------------------------------------------------------
// Library that depends on the library with constructor that calls dlopen() b/7941716
// -----------------------------------------------------------------------------
cc_test_library {