pw_trace_tokenized: Fix Zephyr library dependency

The Zephyr library should not be automatically linked, instead we should
use a Kconfig which will set the correct value of
pw_trace_tokenizer_time. This way only if the top level
pw_trace_tokenized.core is linked, then the Zephyr implementation will
also be linked due to the dependencies.

It's fine to have this by default set to 'y' since the library will only
be linked into the application if there's a dependency on the core
library too.

Change-Id: I5ae49c4bcf75d07268ed8a461722164af27dd1d1
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/316172
Reviewed-by: Carlos Chinchilla <cachinchilla@google.com>
Commit-Queue: Yuval Peress <peress@google.com>
Lint: Lint 🤖 <android-build-ayeaye@system.gserviceaccount.com>
Pigweed-Auto-Submit: Yuval Peress <peress@google.com>
Docs-Not-Needed: Yuval Peress <peress@google.com>
Reviewed-by: Al Semjonovs <asemjonovs@google.com>
Presubmit-Verified: CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com>
3 files changed
tree: 9f8035497a2f07fa83efb56fef61c4fb2c196ce8
  1. .allstar/
  2. .gemini/
  3. .github/
  4. .vscode/
  5. build_overrides/
  6. docker/
  7. docs/
  8. kudzu/
  9. pw_alignment/
  10. pw_allocator/
  11. pw_analog/
  12. pw_android_toolchain/
  13. pw_arduino_build/
  14. pw_assert/
  15. pw_assert_basic/
  16. pw_assert_fuchsia/
  17. pw_assert_log/
  18. pw_assert_tokenized/
  19. pw_assert_trap/
  20. pw_assert_zephyr/
  21. pw_async/
  22. pw_async2/
  23. pw_async2_basic/
  24. pw_async2_epoll/
  25. pw_async_basic/
  26. pw_async_fuchsia/
  27. pw_atomic/
  28. pw_base64/
  29. pw_bloat/
  30. pw_blob_store/
  31. pw_bluetooth/
  32. pw_bluetooth_hci/
  33. pw_bluetooth_profiles/
  34. pw_bluetooth_proxy/
  35. pw_bluetooth_sapphire/
  36. pw_boot/
  37. pw_boot_cortex_m/
  38. pw_build/
  39. pw_build_android/
  40. pw_build_info/
  41. pw_build_mcuxpresso/
  42. pw_bytes/
  43. pw_change/
  44. pw_channel/
  45. pw_checksum/
  46. pw_chre/
  47. pw_chrono/
  48. pw_chrono_embos/
  49. pw_chrono_freertos/
  50. pw_chrono_rp2040/
  51. pw_chrono_stl/
  52. pw_chrono_threadx/
  53. pw_chrono_zephyr/
  54. pw_cli/
  55. pw_cli_analytics/
  56. pw_clock_tree/
  57. pw_clock_tree_mcuxpresso/
  58. pw_compilation_testing/
  59. pw_config_loader/
  60. pw_console/
  61. pw_containers/
  62. pw_cpu_exception/
  63. pw_cpu_exception_cortex_m/
  64. pw_cpu_exception_risc_v/
  65. pw_crypto/
  66. pw_digital_io/
  67. pw_digital_io_linux/
  68. pw_digital_io_mcuxpresso/
  69. pw_digital_io_rp2040/
  70. pw_digital_io_zephyr/
  71. pw_display/
  72. pw_dma_mcuxpresso/
  73. pw_docgen/
  74. pw_doctor/
  75. pw_elf/
  76. pw_emu/
  77. pw_env_setup/
  78. pw_env_setup_zephyr/
  79. pw_file/
  80. pw_flatbuffers/
  81. pw_format/
  82. pw_function/
  83. pw_fuzzer/
  84. pw_grpc/
  85. pw_hdlc/
  86. pw_hex_dump/
  87. pw_i2c/
  88. pw_i2c_linux/
  89. pw_i2c_mcuxpresso/
  90. pw_i2c_rp2040/
  91. pw_i2c_zephyr/
  92. pw_ide/
  93. pw_interrupt/
  94. pw_interrupt_cortex_m/
  95. pw_interrupt_freertos/
  96. pw_interrupt_zephyr/
  97. pw_intrusive_ptr/
  98. pw_json/
  99. pw_kernel/
  100. pw_kvs/
  101. pw_libc/
  102. pw_libcxx/
  103. pw_log/
  104. pw_log_android/
  105. pw_log_basic/
  106. pw_log_fuchsia/
  107. pw_log_null/
  108. pw_log_rpc/
  109. pw_log_string/
  110. pw_log_tokenized/
  111. pw_log_zephyr/
  112. pw_malloc/
  113. pw_malloc_freelist/
  114. pw_malloc_freertos/
  115. pw_metric/
  116. pw_minimal_cpp_stdlib/
  117. pw_module/
  118. pw_multibuf/
  119. pw_multisink/
  120. pw_numeric/
  121. pw_package/
  122. pw_perf_test/
  123. pw_persistent_ram/
  124. pw_polyfill/
  125. pw_preprocessor/
  126. pw_presubmit/
  127. pw_protobuf/
  128. pw_protobuf_compiler/
  129. pw_random/
  130. pw_random_fuchsia/
  131. pw_result/
  132. pw_ring_buffer/
  133. pw_router/
  134. pw_rpc/
  135. pw_rpc_transport/
  136. pw_rust/
  137. pw_sensor/
  138. pw_snapshot/
  139. pw_software_update/
  140. pw_span/
  141. pw_spi/
  142. pw_spi_linux/
  143. pw_spi_mcuxpresso/
  144. pw_spi_rp2040/
  145. pw_status/
  146. pw_stm32cube_build/
  147. pw_stream/
  148. pw_stream_shmem_mcuxpresso/
  149. pw_stream_uart_linux/
  150. pw_stream_uart_mcuxpresso/
  151. pw_string/
  152. pw_symbolizer/
  153. pw_sync/
  154. pw_sync_baremetal/
  155. pw_sync_embos/
  156. pw_sync_freertos/
  157. pw_sync_stl/
  158. pw_sync_threadx/
  159. pw_sync_zephyr/
  160. pw_sys_io/
  161. pw_sys_io_ambiq_sdk/
  162. pw_sys_io_arduino/
  163. pw_sys_io_baremetal_lm3s6965evb/
  164. pw_sys_io_baremetal_stm32f429/
  165. pw_sys_io_emcraft_sf2/
  166. pw_sys_io_mcuxpresso/
  167. pw_sys_io_rp2040/
  168. pw_sys_io_stdio/
  169. pw_sys_io_stm32cube/
  170. pw_sys_io_zephyr/
  171. pw_system/
  172. pw_target_runner/
  173. pw_thread/
  174. pw_thread_embos/
  175. pw_thread_freertos/
  176. pw_thread_stl/
  177. pw_thread_threadx/
  178. pw_thread_zephyr/
  179. pw_tls_client/
  180. pw_tls_client_boringssl/
  181. pw_tls_client_mbedtls/
  182. pw_tokenizer/
  183. pw_toolchain/
  184. pw_trace/
  185. pw_trace_tokenized/
  186. pw_transfer/
  187. pw_uart/
  188. pw_uart_mcuxpresso/
  189. pw_unit_test/
  190. pw_uuid/
  191. pw_varint/
  192. pw_watch/
  193. pw_web/
  194. pw_work_queue/
  195. seed/
  196. targets/
  197. third_party/
  198. ts/
  199. zephyr/
  200. .bazelignore
  201. .bazelrc
  202. .bazelversion
  203. .black.toml
  204. .clang-format
  205. .clang-tidy
  206. .eslintrc.cjs
  207. .git-blame-ignore-revs
  208. .gitattributes
  209. .gitignore
  210. .gn
  211. .mypy.ini
  212. .prettierignore
  213. .prettierrc.cjs
  214. .pw_ide.yaml
  215. .pylintrc
  216. .ruff.toml
  217. activate.bat
  218. Android.bp
  219. AUTHORS
  220. bootstrap.bat
  221. bootstrap.fish
  222. bootstrap.sh
  223. BUILD.bazel
  224. BUILD.gn
  225. BUILDCONFIG.gn
  226. CMakeLists.txt
  227. GEMINI.md
  228. go.mod
  229. go.sum
  230. jest.config.ts
  231. Kconfig.zephyr
  232. LICENSE
  233. MODULE.bazel
  234. MODULE.bazel.lock
  235. modules.gni
  236. OWNERS
  237. package-lock.json
  238. package.json
  239. pigweed.json
  240. PIGWEED_MODULES
  241. pnpm-lock.yaml
  242. pw
  243. README.md
  244. REPO.bazel
  245. rollup-protos.config.js
  246. rollup.config.js
  247. tsconfig.json
  248. workflows.json
  249. WORKSPACE
  250. WORKSPACE_OWNERS
README.md

Pigweed

Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.

For more information please see our website: https://pigweed.dev/.

Links