summaryrefslogtreecommitdiff
path: root/libatrace_rust/Android.bp
diff options
context:
space:
mode:
Diffstat (limited to 'libatrace_rust/Android.bp')
-rw-r--r--libatrace_rust/Android.bp109
1 files changed, 109 insertions, 0 deletions
diff --git a/libatrace_rust/Android.bp b/libatrace_rust/Android.bp
new file mode 100644
index 00000000..443a8885
--- /dev/null
+++ b/libatrace_rust/Android.bp
@@ -0,0 +1,109 @@
+package {
+ default_applicable_licenses: ["Android-Apache-2.0"],
+}
+
+rust_defaults {
+ name: "libatrace_tracing_subscriber_defaults",
+ srcs: ["src/tracing_subscriber.rs"],
+ rustlibs: [
+ "libatrace_rust",
+ "libtracing",
+ "libtracing_subscriber",
+ ],
+}
+
+rust_library {
+ name: "libatrace_tracing_subscriber",
+ crate_name: "atrace_tracing_subscriber",
+ defaults: ["libatrace_tracing_subscriber_defaults"],
+ // Host support is for unit tests.
+ host_supported: true,
+ product_available: true,
+ vendor_available: true,
+ apex_available: [
+ "//apex_available:platform",
+ "//apex_available:anyapex",
+ ],
+}
+
+rust_test_host {
+ name: "libatrace_tracing_subscriber_inline_tests",
+ defaults: ["libatrace_tracing_subscriber_defaults"],
+ test_suites: ["general_tests"],
+ rustlibs: [
+ "libonce_cell",
+ "libthread_local",
+ ],
+}
+
+rust_defaults {
+ name: "libatrace_rust_defaults",
+ srcs: ["src/lib.rs"],
+ rustlibs: [
+ "libcutils_trace_bindgen",
+ "libstatic_assertions",
+ "libbitflags",
+ ],
+}
+
+rust_library {
+ name: "libatrace_rust",
+ crate_name: "atrace",
+ defaults: ["libatrace_rust_defaults"],
+ // Host support is for unit tests.
+ host_supported: true,
+ product_available: true,
+ vendor_available: true,
+ apex_available: [
+ "//apex_available:platform",
+ "//apex_available:anyapex",
+ ],
+}
+
+rust_test_host {
+ name: "libatrace_rust_inline_tests",
+ defaults: ["libatrace_rust_defaults"],
+ test_suites: ["general_tests"],
+ rustlibs: [
+ "libonce_cell",
+ "libthread_local",
+ ],
+}
+
+rust_bindgen {
+ name: "libcutils_trace_bindgen",
+ crate_name: "cutils_trace_bindgen",
+ wrapper_src: "bindgen/cutils_trace.h",
+ source_stem: "cutils_trace",
+ bindgen_flags: [
+ "--allowlist-function=atrace_.*",
+ "--allowlist-var=ATRACE_.*",
+ "--allowlist-var=atrace_.*",
+ ],
+ shared_libs: ["libcutils"],
+ static_libs: ["libcutils_trace_bindgen_wrap"],
+ // Host support is for unit tests.
+ host_supported: true,
+ product_available: true,
+ vendor_available: true,
+ apex_available: [
+ "//apex_available:platform",
+ "//apex_available:anyapex",
+ ],
+}
+
+// TODO: b/291544011 - Replace with autogenerated wrappers once they are supported.
+cc_library_static {
+ name: "libcutils_trace_bindgen_wrap",
+ srcs: ["bindgen/cutils_trace_wrap.c"],
+ visibility: [":__subpackages__"],
+ shared_libs: ["libcutils"],
+ // Host support is for unit tests.
+ host_supported: true,
+ product_available: true,
+ vendor_available: true,
+ apex_available: [
+ "//apex_available:platform",
+ "//apex_available:anyapex",
+ ],
+}