pw_protobuf_compiler: Handle deps on nanopb.proto

- Add a pw_proto_library for nanopb.proto to the CMake build.
- Skip recompiling nanopb.proto when running protoc for Nanopb.
- Add the pw_protobuf_compiler Nanopb test to CMake.

Change-Id: I3469f35524b18efd3d484b17609e9de0f160e73a
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/46961
Pigweed-Auto-Submit: Wyatt Hepler <hepler@google.com>
Reviewed-by: Alexei Frolov <frolv@google.com>
Commit-Queue: Wyatt Hepler <hepler@google.com>
4 files changed
tree: 2d8fe6f1f097b1d1e9c5e1df98768b70c02c2d8a
  1. build_overrides/
  2. docker/
  3. docs/
  4. pw_allocator/
  5. pw_analog/
  6. pw_arduino_build/
  7. pw_assert/
  8. pw_assert_basic/
  9. pw_assert_log/
  10. pw_base64/
  11. pw_bloat/
  12. pw_blob_store/
  13. pw_boot_armv7m/
  14. pw_build/
  15. pw_bytes/
  16. pw_checksum/
  17. pw_chrono/
  18. pw_chrono_embos/
  19. pw_chrono_freertos/
  20. pw_chrono_stl/
  21. pw_chrono_threadx/
  22. pw_cli/
  23. pw_containers/
  24. pw_cpu_exception/
  25. pw_cpu_exception_cortex_m/
  26. pw_docgen/
  27. pw_doctor/
  28. pw_env_setup/
  29. pw_fuzzer/
  30. pw_hdlc/
  31. pw_hex_dump/
  32. pw_i2c/
  33. pw_interrupt/
  34. pw_interrupt_cortex_m/
  35. pw_kvs/
  36. pw_libc/
  37. pw_log/
  38. pw_log_basic/
  39. pw_log_multisink/
  40. pw_log_null/
  41. pw_log_rpc/
  42. pw_log_sink/
  43. pw_log_tokenized/
  44. pw_malloc/
  45. pw_malloc_freelist/
  46. pw_metric/
  47. pw_minimal_cpp_stdlib/
  48. pw_module/
  49. pw_multisink/
  50. pw_package/
  51. pw_persistent_ram/
  52. pw_polyfill/
  53. pw_preprocessor/
  54. pw_presubmit/
  55. pw_protobuf/
  56. pw_protobuf_compiler/
  57. pw_random/
  58. pw_result/
  59. pw_ring_buffer/
  60. pw_router/
  61. pw_rpc/
  62. pw_snapshot/
  63. pw_span/
  64. pw_status/
  65. pw_stm32cube_build/
  66. pw_stream/
  67. pw_string/
  68. pw_sync/
  69. pw_sync_baremetal/
  70. pw_sync_embos/
  71. pw_sync_freertos/
  72. pw_sync_stl/
  73. pw_sync_threadx/
  74. pw_sys_io/
  75. pw_sys_io_arduino/
  76. pw_sys_io_baremetal_lm3s6965evb/
  77. pw_sys_io_baremetal_stm32f429/
  78. pw_sys_io_stdio/
  79. pw_target_runner/
  80. pw_thread/
  81. pw_thread_embos/
  82. pw_thread_freertos/
  83. pw_thread_stl/
  84. pw_thread_threadx/
  85. pw_tokenizer/
  86. pw_tool/
  87. pw_toolchain/
  88. pw_trace/
  89. pw_trace_tokenized/
  90. pw_unit_test/
  91. pw_varint/
  92. pw_watch/
  93. pw_web_ui/
  94. targets/
  95. third_party/
  96. .bazelignore
  97. .bazelrc
  98. .clang-format
  99. .eslintrc.json
  100. .gitattributes
  101. .gitignore
  102. .gn
  103. .prettierrc.js
  104. .pylintrc
  105. activate.bat
  106. AUTHORS
  107. bootstrap.bat
  108. bootstrap.sh
  109. BUILD
  110. BUILD.gn
  111. BUILDCONFIG.gn
  112. CMakeLists.txt
  113. LICENSE
  114. modules.gni
  115. OWNERS
  116. package.json
  117. PW_PLUGINS
  118. README.md
  119. tsconfig.json
  120. WORKSPACE
  121. yarn.lock
README.md

See our website: http://pigweed.dev