Moving bionic_systrace.cpp out of libc_bionic_ndk
We'll be enabling system tracing in libsystemproperties, which requires
using bionic_systrace.cpp from libc_bionic_ndk. However, libc_bionic_ndk
already depends on libsystemproperties.
Introducing a new library libc_bionic_systrace for bionic_systrace.cpp,
which can be used by both libc_bionic_ndk and libsystemproperties.
Bug: 147275573
Test: atest CtsBionicTestCases
Test: adb shell perfetto -o /data/misc/perfetto-traces/test_trace -t 10s bionic
Change-Id: I7306f922f212fa1c911583e1922e33612bfeada6
diff --git a/libc/Android.bp b/libc/Android.bp
index b278774..c94b37c 100644
--- a/libc/Android.bp
+++ b/libc/Android.bp
@@ -1010,7 +1010,6 @@
"bionic/bionic_arc4random.cpp",
"bionic/bionic_futex.cpp",
"bionic/bionic_netlink.cpp",
- "bionic/bionic_systrace.cpp",
"bionic/bionic_time_conversions.cpp",
"bionic/brk.cpp",
"bionic/c16rtomb.cpp",
@@ -1177,7 +1176,10 @@
cflags: ["-DTREBLE_LINKER_NAMESPACES"],
},
},
- whole_static_libs: ["libsystemproperties"],
+ whole_static_libs: [
+ "libc_bionic_systrace",
+ "libsystemproperties",
+ ],
cppflags: ["-Wold-style-cast"],
local_include_dirs: ["stdio"],
include_dirs: ["bionic/libstdc++/include"],
@@ -1186,6 +1188,21 @@
}
// ========================================================
+// libc_bionic_systrace.a
+// ========================================================
+
+cc_library_static {
+ name: "libc_bionic_systrace",
+ defaults: ["libc_defaults"],
+ srcs: [
+ "bionic/bionic_systrace.cpp",
+ ],
+ apex_available: [
+ "com.android.runtime",
+ ],
+}
+
+// ========================================================
// libc_pthread.a - pthreads parts that previously lived in
// libc_bionic.a. Relocated to their own library because
// they can't be included in libc_ndk.a (as the layout of