1# Copyright 2020 The Pigweed Authors 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); you may not 4# use this file except in compliance with the License. You may obtain a copy of 5# the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12# License for the specific language governing permissions and limitations under 13# the License. 14 15include($ENV{PW_ROOT}/pw_build/pigweed.cmake) 16include($ENV{PW_ROOT}/pw_protobuf_compiler/proto.cmake) 17 18pw_add_module_config(pw_trace_tokenized_CONFIG) 19 20pw_add_library(pw_trace_tokenized.config INTERFACE 21 HEADERS 22 public/pw_trace_tokenized/config.h 23 PUBLIC_INCLUDES 24 public 25 PUBLIC_DEPS 26 ${pw_trace_CONFIG} 27) 28 29pw_add_library(pw_trace_tokenized STATIC 30 HEADERS 31 public/pw_trace_tokenized/internal/trace_tokenized_internal.h 32 public/pw_trace_tokenized/trace_callback.h 33 public/pw_trace_tokenized/trace_tokenized.h 34 public_overrides/pw_trace_backend/trace_backend.h 35 PUBLIC_INCLUDES 36 public 37 public_overrides 38 PUBLIC_DEPS 39 pw_span 40 pw_status 41 pw_tokenizer 42 pw_trace_tokenized.config 43 SOURCES 44 trace.cc 45 PRIVATE_DEPS 46 pw_assert 47 pw_log 48 pw_ring_buffer 49 pw_trace.facade 50 pw_varint 51) 52 53pw_add_library(pw_trace_tokenized.trace_buffer STATIC 54 SOURCES 55 trace_buffer.cc 56 PRIVATE_DEPS 57 pw_assert 58 pw_bytes 59 pw_log 60 PUBLIC_DEPS 61 pw_ring_buffer 62 pw_status 63 pw_tokenizer 64 pw_trace_tokenized 65 pw_trace_tokenized.config 66 pw_varint 67) 68 69pw_proto_library(pw_trace_tokenized.protos 70 SOURCES 71 pw_trace_protos/trace_rpc.proto 72 pw_trace_protos/trace_service.proto 73 INPUTS 74 pw_trace_protos/trace_rpc.options 75 pw_trace_protos/trace_service.options 76 DEPS 77 pw_chrono.protos 78) 79 80pw_add_library(pw_trace_tokenized.rpc_service STATIC 81 SOURCES 82 trace_rpc_service_nanopb.cc 83 PRIVATE_DEPS 84 pw_assert 85 pw_log 86 pw_ring_buffer 87 pw_trace_tokenized.trace_buffer 88 pw_trace_tokenized.protos.nanopb_rpc 89 pw_varint 90 PUBLIC_DEPS 91 pw_tokenizer 92 pw_status 93) 94 95pw_add_library(pw_trace_tokenized.base_trace_service STATIC 96 SOURCES 97 base_trace_service.cc 98 PRIVATE_DEPS 99 pw_log 100 pw_stream 101 pw_ring_buffer 102 PUBLIC_DEPS 103 pw_trace_tokenized 104 pw_trace_tokenized.trace_buffer 105) 106 107pw_add_library(pw_trace_tokenized.trace_service_pwpb STATIC 108 SOURCES 109 trace_service_pwpb.cc 110 PRIVATE_DEPS 111 pw_chrono.system_clock 112 PUBLIC_DEPS 113 pw_trace_tokenized.base_trace_service 114 pw_trace_tokenized.protos.pwpb_rpc 115) 116