aboutsummaryrefslogtreecommitdiff
path: root/pw_trace_tokenized/BUILD.gn
diff options
context:
space:
mode:
Diffstat (limited to 'pw_trace_tokenized/BUILD.gn')
-rw-r--r--pw_trace_tokenized/BUILD.gn69
1 files changed, 49 insertions, 20 deletions
diff --git a/pw_trace_tokenized/BUILD.gn b/pw_trace_tokenized/BUILD.gn
index c031e8997..6ed2a0ba4 100644
--- a/pw_trace_tokenized/BUILD.gn
+++ b/pw_trace_tokenized/BUILD.gn
@@ -14,22 +14,12 @@
import("//build_overrides/pigweed.gni")
-import("$dir_pw_build/module_config.gni")
+import("$dir_pw_build/target_types.gni")
import("$dir_pw_docgen/docs.gni")
+import("$dir_pw_protobuf_compiler/proto.gni")
+import("$dir_pw_third_party/nanopb/nanopb.gni")
import("$dir_pw_unit_test/test.gni")
-
-declare_args() {
- # The build target that overrides the default configuration options for this
- # module. This should point to a source set that provides defines through a
- # public config (which may -include a file or add defines directly).
- pw_trace_CONFIG = pw_build_DEFAULT_MODULE_CONFIG
-
- # Tokenizer trace time, gets included if provided
- pw_trace_tokenizer_time = ""
-
- # Trace buffer size in bytes. Set to 0 to disable.
- pw_trace_tokenized_BUFFER_SIZE = 256
-}
+import("config.gni")
config("public_include_path") {
include_dirs = [ "public" ]
@@ -61,7 +51,7 @@ pw_source_set("pw_trace_tokenized") {
]
public_deps = [
":config",
- ":pw_trace_tokenized_core",
+ ":core",
"$dir_pw_tokenizer",
]
if (pw_trace_tokenizer_time != "") {
@@ -74,7 +64,7 @@ pw_source_set("pw_trace_tokenized") {
pw_test("trace_tokenized_test") {
enable_if = pw_trace_tokenizer_time != ""
deps = [
- ":pw_trace_tokenized_core",
+ ":core",
"$dir_pw_trace",
]
@@ -85,8 +75,28 @@ config("trace_buffer_size") {
defines = [ "PW_TRACE_BUFFER_SIZE_BYTES=${pw_trace_tokenized_BUFFER_SIZE}" ]
}
+pw_proto_library("trace_rpc_service_proto") {
+ sources = [ "pw_trace_protos/trace_rpc.proto" ]
+ inputs = [ "pw_trace_protos/trace_rpc.options" ]
+}
+
+pw_source_set("trace_rpc_service") {
+ public_configs = [ ":public_include_path" ]
+ public_deps = [ ":trace_rpc_service_proto.nanopb_rpc" ]
+ deps = [
+ ":core",
+ ":tokenized_trace_buffer",
+ "$dir_pw_log",
+ "$dir_pw_trace",
+ ]
+ sources = [
+ "public/pw_trace_tokenized/trace_rpc_service_nanopb.h",
+ "trace_rpc_service_nanopb.cc",
+ ]
+}
+
pw_source_set("tokenized_trace_buffer") {
- deps = [ ":pw_trace_tokenized_core" ]
+ deps = [ ":core" ]
public_deps = [
":config",
"$dir_pw_ring_buffer",
@@ -132,16 +142,16 @@ pw_test("tokenized_trace_buffer_log_test") {
}
pw_source_set("fake_trace_time") {
- deps = [ ":pw_trace_tokenized_core" ]
+ deps = [ ":core" ]
sources = [ "fake_trace_time.cc" ]
}
pw_source_set("host_trace_time") {
- deps = [ ":pw_trace_tokenized_core" ]
+ deps = [ ":core" ]
sources = [ "host_trace_time.cc" ]
}
-pw_source_set("pw_trace_tokenized_core") {
+pw_source_set("core") {
public_configs = [
":backend_config",
":public_include_path",
@@ -163,6 +173,7 @@ pw_source_set("pw_trace_tokenized_core") {
"public/pw_trace_tokenized/trace_tokenized.h",
]
sources = [ "trace.cc" ]
+ visibility = [ ":*" ]
}
pw_doc_group("docs") {
@@ -209,3 +220,21 @@ pw_executable("trace_tokenized_example_filter") {
]
sources = [ "example/filter.cc" ]
}
+
+if (dir_pw_third_party_nanopb == "") {
+ group("trace_tokenized_example_rpc") {
+ }
+} else {
+ pw_executable("trace_tokenized_example_rpc") {
+ sources = [ "example/rpc.cc" ]
+ deps = [
+ ":trace_rpc_service",
+ "$dir_pw_hdlc",
+ "$dir_pw_log",
+ "$dir_pw_rpc:server",
+ "$dir_pw_rpc/system_server",
+ "$dir_pw_trace",
+ "$dir_pw_trace:trace_sample_app",
+ ]
+ }
+}