workspace: Updates Bazel build files to work in CI
No-Docs-Update-Reason: Fixes build files.
Change-Id: I596ba5b567cbe6625d378695e0c59a15db974578
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/54680
Reviewed-by: Keir Mierle <keir@google.com>
Reviewed-by: Akira Baruah <akirabaruah@google.com>
Commit-Queue: Keir Mierle <keir@google.com>
diff --git a/WORKSPACE b/WORKSPACE
index dc556c8..8f1736f 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -30,7 +30,7 @@
cipd_init()
-# Setup python support.
+# Set up Python support.
# Required by: rules_fuzzing.
# Used in modules: None.
http_archive(
@@ -42,7 +42,7 @@
],
)
-# Set up Starlark library
+# Set up Starlark library.
# Required by: io_bazel_rules_go, com_google_protobuf.
# Used in modules: None.
# This must be instantiated before com_google_protobuf as protobuf_deps() pulls
@@ -61,7 +61,20 @@
bazel_skylib_workspace()
-# Sets up host hermetic host toolchain.
+# Set up upstream googletest and googlemock.
+# Required by: Pigweed.
+# Used in modules: //pw_analog, //pw_i2c.
+http_archive(
+ name = "com_google_googletest",
+ sha256 = "9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb",
+ strip_prefix = "googletest-release-1.10.0",
+ urls = [
+ "https://mirror.bazel.build/github.com/google/googletest/archive/release-1.10.0.tar.gz",
+ "https://github.com/google/googletest/archive/release-1.10.0.tar.gz",
+ ],
+)
+
+# Set up host hermetic host toolchain.
# Required by: All cc targets.
# Used in modules: All cc targets.
git_repository(
@@ -78,7 +91,7 @@
register_cc_toolchains()
-# Set up protobuf rules
+# Set up Protobuf rules.
# Required by: pigweed, com_github_bazelbuild_buildtools.
# Used in modules: //pw_protobuf.
http_archive(
@@ -92,9 +105,9 @@
protobuf_deps()
-# Setup tools to build custom grpc rules.
+# Set up tools to build custom GRPC rules.
# Required by: pigweed.
-# Used in modules: //pw_protobuf
+# Used in modules: //pw_protobuf.
http_archive(
name = "rules_proto_grpc",
sha256 = "5f0f2fc0199810c65a2de148a52ba0aff14d631d4e8202f41aff6a9d590a471b",
@@ -112,15 +125,18 @@
rules_proto_grpc_repos()
-# Set up build_bazel_rules_nodejs.
+# Set up Bazel platforms.
# Required by: pigweed.
-# Used in modules: //pw_web_ui.
+# Used in modules: //pw_build, (Assorted modules via select statements).
git_repository(
name = "platforms",
commit = "d4c9d7f51a7c403814b60f66d20eeb425fbaaacb",
remote = "https://github.com/bazelbuild/platforms.git",
)
+# Set up NodeJs rules.
+# Required by: pigweed.
+# Used in modules: //pw_web_ui.
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "8f5f192ba02319254aaf2cdcca00ec12eaafeb979a80a1e946773c520ae0a2c9",
@@ -142,6 +158,9 @@
yarn_lock = "//:yarn.lock",
)
+# Set up web-testing rules.
+# Required by: pigweed.
+# Used in modules: //pw_web_ui.
http_archive(
name = "io_bazel_rules_webtesting",
sha256 = "9bb461d5ef08e850025480bab185fd269242d4e533bca75bfb748001ceb343c3",
@@ -162,7 +181,7 @@
firefox = True,
)
-# Setup embedded C/C++ toolchains.
+# Set up embedded C/C++ toolchains.
# Required by: pigweed.
# Used in modules: //pw_polyfill, //pw_build (all pw_cc* targets).
git_repository(
@@ -214,7 +233,7 @@
# Registers platforms for use with toolchain resolution
register_execution_platforms("//pw_build/platforms:all")
-# Setup Golang toolchain rules
+# Set up Golang toolchain rules.
# Required by: bazel_gazelle, com_github_bazelbuild_buildtools.
# Used in modules: None.
http_archive(
@@ -236,9 +255,9 @@
go_register_toolchains()
-# Setup bazel package manager for golang
+# Set up bazel package manager for golang.
# Required by: com_github_bazelbuild_buildtools.
-# Used in modules: None
+# Used in modules: None.
http_archive(
name = "bazel_gazelle",
sha256 = "b85f48fa105c4403326e9525ad2b2cc437babaa6e15a3fc0b1dbab0ab064bc7c",
@@ -252,8 +271,8 @@
gazelle_dependencies()
-# Setup bazel buildtools (bazel linter and formatter)
-# Required by: pigweed
+# Set up bazel buildtools (bazel linter and formatter).
+# Required by: pigweed.
# Used in modules: //:all (bazel specific tools).
http_archive(
name = "com_github_bazelbuild_buildtools",
@@ -270,9 +289,9 @@
build_file = "//targets:default_config.BUILD",
)
-# Setup rules_fuzzing for fuzz tests.
+# Set up rules for fuzz testing.
# Required by: pigweed.
-# Used in modules: pw_protobuf, pw_tokenizer, pw_fuzzer.
+# Used in modules: //pw_protobuf, //pw_tokenizer, //pw_fuzzer.
http_archive(
name = "rules_fuzzing",
sha256 = "94f25c7a18db0502ace26a3ef7d0a25fd7c195c4e9770ddd1b1ec718e8936091",
diff --git a/pw_analog/BUILD.bazel b/pw_analog/BUILD.bazel
index c048d8f..5c699c3 100644
--- a/pw_analog/BUILD.bazel
+++ b/pw_analog/BUILD.bazel
@@ -55,8 +55,8 @@
],
includes = ["public"],
deps = [
- "$dir_pw_third_party/googletest",
":microvolt_input",
+ "@com_google_googletest//:gtest",
],
)
@@ -67,8 +67,8 @@
],
includes = ["public"],
deps = [
- "$dir_pw_third_party/googletest",
":analog_input",
+ "@com_google_googletest//:gtest",
],
)
diff --git a/pw_assert/BUILD.bazel b/pw_assert/BUILD.bazel
index 8b18131..0afb80d 100644
--- a/pw_assert/BUILD.bazel
+++ b/pw_assert/BUILD.bazel
@@ -63,7 +63,7 @@
],
deps = [
":facade",
- ":pw_assert",
+ "//pw_assert",
"//pw_preprocessor",
"//pw_span",
"//pw_string",
@@ -78,7 +78,7 @@
"assert_backend_compile_test_c.c",
],
deps = [
- ":pw_assert",
+ "//pw_assert",
"//pw_unit_test",
],
)
diff --git a/pw_assert_log/BUILD.bazel b/pw_assert_log/BUILD.bazel
index a978f07..58225b7 100644
--- a/pw_assert_log/BUILD.bazel
+++ b/pw_assert_log/BUILD.bazel
@@ -35,6 +35,7 @@
"public_overrides",
],
deps = [
+ "//pw_log",
"//pw_preprocessor",
],
)
diff --git a/pw_blob_store/BUILD.bazel b/pw_blob_store/BUILD.bazel
index e4dc714..c8b5894 100644
--- a/pw_blob_store/BUILD.bazel
+++ b/pw_blob_store/BUILD.bazel
@@ -32,9 +32,11 @@
deps = [
"//pw_checksum",
"//pw_containers",
+ "//pw_kvs",
"//pw_log",
"//pw_span",
"//pw_status",
+ "//pw_stream",
],
)
@@ -49,7 +51,6 @@
"//pw_kvs:fake_flash",
"//pw_kvs:fake_flash_test_key_value_store",
"//pw_log",
- "//pw_random",
"//pw_unit_test",
],
)
diff --git a/pw_build/pigweed.bzl b/pw_build/pigweed.bzl
index 2b16982..c7a1fc0 100644
--- a/pw_build/pigweed.bzl
+++ b/pw_build/pigweed.bzl
@@ -110,14 +110,36 @@
target(**cc_kwargs)
+def _has_pw_assert_dep(deps):
+ pw_assert_targets = ["//pw_assert", "//pw_assert:pw_assert"]
+ pw_assert_targets.append(["@pigweed" + t for t in pw_assert_targets])
+ for dep in deps:
+ if dep in pw_assert_targets:
+ return True
+ return False
+
def pw_cc_binary(**kwargs):
+ kwargs["deps"] = kwargs.get("deps", [])
+
+ # TODO(pwbug/440): Remove this implicit dependency once we have a better
+ # way to handle the facades without introducing a circular dependency into
+ # the build.
+ if not _has_pw_assert_dep(kwargs["deps"]):
+ kwargs["deps"].append("@pigweed//pw_assert")
_add_cc_and_c_targets(native.cc_binary, kwargs)
def pw_cc_library(**kwargs):
_add_cc_and_c_targets(native.cc_library, kwargs)
def pw_cc_test(**kwargs):
- kwargs["deps"] = kwargs.get("deps", []) + ["//pw_unit_test:main"]
+ kwargs["deps"] = kwargs.get("deps", []) + \
+ ["//pw_unit_test:main"]
+
+ # TODO(pwbug/440): Remove this implicit dependency once we have a better
+ # way to handle the facades without introducing a circular dependency into
+ # the build.
+ if not _has_pw_assert_dep(kwargs["deps"]):
+ kwargs["deps"].append("@pigweed//pw_assert")
_add_cc_and_c_targets(native.cc_test, kwargs)
def pw_cc_facade(**kwargs):
diff --git a/pw_checksum/BUILD.bazel b/pw_checksum/BUILD.bazel
index b939761..6cb4fe5 100644
--- a/pw_checksum/BUILD.bazel
+++ b/pw_checksum/BUILD.bazel
@@ -33,7 +33,10 @@
"public/pw_checksum/crc32.h",
],
includes = ["public"],
- deps = ["//pw_span"],
+ deps = [
+ "//pw_bytes",
+ "//pw_span",
+ ],
)
pw_cc_test(
diff --git a/pw_function/size_report/BUILD.bazel b/pw_function/size_report/BUILD.bazel
index dfe5829..7de277c 100644
--- a/pw_function/size_report/BUILD.bazel
+++ b/pw_function/size_report/BUILD.bazel
@@ -42,6 +42,7 @@
pw_cc_binary(
name = "callable_size",
srcs = ["callable_size.cc"],
+ defines = ["_BASE=1"],
deps = [
"//pw_bloat:bloat_this_binary",
"//pw_function",
diff --git a/pw_hdlc/BUILD.bazel b/pw_hdlc/BUILD.bazel
index 26c2c8c..a13b3a8 100644
--- a/pw_hdlc/BUILD.bazel
+++ b/pw_hdlc/BUILD.bazel
@@ -28,7 +28,6 @@
"encoder.cc",
"public/pw_hdlc/internal/encoder.h",
"public/pw_hdlc/internal/protocol.h",
- "rpc_packets.cc",
],
hdrs = [
"public/pw_hdlc/decoder.h",
diff --git a/pw_hex_dump/BUILD.bazel b/pw_hex_dump/BUILD.bazel
index eb234bf..ed7709f 100644
--- a/pw_hex_dump/BUILD.bazel
+++ b/pw_hex_dump/BUILD.bazel
@@ -35,6 +35,7 @@
"//pw_bytes",
"//pw_span",
"//pw_status",
+ "//pw_string",
],
)
@@ -45,6 +46,7 @@
],
deps = [
":pw_hex_dump",
+ "//pw_log",
"//pw_unit_test",
],
)
diff --git a/pw_i2c/BUILD.bazel b/pw_i2c/BUILD.bazel
index cd97bfb..2edc8d3 100644
--- a/pw_i2c/BUILD.bazel
+++ b/pw_i2c/BUILD.bazel
@@ -89,7 +89,6 @@
],
deps = [
":address",
- "//pw_assert",
"//pw_unit_test",
],
)
@@ -115,8 +114,8 @@
],
includes = ["public"],
deps = [
- "$dir_pw_third_party/googletest",
":initiator",
+ "@com_google_googletest//:gtest",
],
)
@@ -150,7 +149,6 @@
],
deps = [
":register_device",
- "//pw_assert",
"//pw_unit_test",
],
)
diff --git a/pw_kvs/BUILD.bazel b/pw_kvs/BUILD.bazel
index b666c51..0efcade 100644
--- a/pw_kvs/BUILD.bazel
+++ b/pw_kvs/BUILD.bazel
@@ -54,6 +54,7 @@
includes = ["public"],
deps = [
"//pw_assert",
+ "//pw_bytes",
"//pw_checksum",
"//pw_containers",
"//pw_log",
@@ -83,6 +84,7 @@
hdrs = [
"public/pw_kvs/fake_flash_memory.h",
],
+ includes = ["public"],
deps = [
":pw_kvs",
"//pw_containers",
@@ -185,15 +187,6 @@
)
pw_cc_library(
- name = "test_utils",
- hdrs = [
- "pw_kvs_private/byte_utils.h",
- ],
- includes = ["public"],
- visibility = ["//visibility:private"],
-)
-
-pw_cc_library(
name = "test_partition",
srcs = [
"flash_partition_with_stats.cc",
@@ -248,9 +241,9 @@
"entry_test.cc",
],
deps = [
+ ":fake_flash",
":pw_kvs",
- ":test_utils",
- "//pw_log:backend",
+ "//pw_log",
"//pw_span",
"//pw_unit_test",
],
@@ -260,9 +253,9 @@
name = "entry_cache_test",
srcs = ["entry_cache_test.cc"],
deps = [
+ ":fake_flash",
":pw_kvs",
- ":test_utils",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -277,7 +270,7 @@
deps = [
":fake_flash_1_aligned_partition",
":pw_kvs",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -292,7 +285,7 @@
deps = [
":fake_flash_16_aligned_partition",
":pw_kvs",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -307,7 +300,7 @@
deps = [
":fake_flash_64_aligned_partition",
":pw_kvs",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -322,7 +315,7 @@
deps = [
":fake_flash_256_aligned_partition",
":pw_kvs",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -337,7 +330,7 @@
deps = [
":fake_flash_1_aligned_partition",
":pw_kvs",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -359,10 +352,10 @@
srcs = ["key_value_store_test.cc"],
deps = [
":crc16",
+ ":fake_flash",
":pw_kvs",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_log:facade",
"//pw_span",
"//pw_status",
@@ -378,9 +371,8 @@
":crc16",
":fake_flash_1_aligned_partition",
":pw_kvs",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_log:facade",
"//pw_span",
"//pw_status",
@@ -396,9 +388,8 @@
":crc16",
":fake_flash_16_aligned_partition",
":pw_kvs",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_log:facade",
"//pw_span",
"//pw_status",
@@ -414,9 +405,8 @@
":crc16",
":fake_flash_64_aligned_partition",
":pw_kvs",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_log:facade",
"//pw_span",
"//pw_status",
@@ -432,9 +422,8 @@
":crc16",
":fake_flash_256_aligned_partition",
":pw_kvs",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_log:facade",
"//pw_span",
"//pw_status",
@@ -450,7 +439,7 @@
":crc16",
":fake_flash_test_key_value_store",
":pw_kvs",
- "//pw_log:backend",
+ "//pw_log",
"//pw_status",
"//pw_unit_test",
],
@@ -463,9 +452,9 @@
],
deps = [
":crc16",
+ ":fake_flash",
":pw_kvs",
- ":test_utils",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -475,11 +464,11 @@
srcs = ["key_value_store_put_test.cc"],
deps = [
":crc16",
+ ":fake_flash",
":pw_kvs",
":test_partition",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -489,11 +478,11 @@
srcs = ["key_value_store_map_test.cc"],
deps = [
":crc16",
+ ":fake_flash",
":pw_kvs",
":test_partition",
- ":test_utils",
"//pw_checksum",
- "//pw_log:backend",
+ "//pw_log",
"//pw_log:facade",
"//pw_span",
"//pw_unit_test",
@@ -504,9 +493,9 @@
name = "sectors_test",
srcs = ["sectors_test.cc"],
deps = [
+ ":fake_flash",
":pw_kvs",
- ":test_utils",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
@@ -517,10 +506,10 @@
"key_value_store_wear_test.cc",
],
deps = [
+ ":fake_flash",
":pw_kvs",
":test_partition",
- ":test_utils",
- "//pw_log:backend",
+ "//pw_log",
"//pw_unit_test",
],
)
diff --git a/pw_log_rpc/BUILD.bazel b/pw_log_rpc/BUILD.bazel
index 84ca7cb..87e2dda 100644
--- a/pw_log_rpc/BUILD.bazel
+++ b/pw_log_rpc/BUILD.bazel
@@ -41,6 +41,7 @@
"logs_rpc_test.cc",
],
deps = [
+ ":pw_log_queue",
"//pw_preprocessor",
"//pw_unit_test",
],
diff --git a/pw_metric/BUILD.bazel b/pw_metric/BUILD.bazel
index 10b0203..5c293f3 100644
--- a/pw_metric/BUILD.bazel
+++ b/pw_metric/BUILD.bazel
@@ -35,7 +35,7 @@
"//pw_containers",
"//pw_log",
"//pw_span",
- "//pw_tokenizer",
+ "//pw_tokenizer:base64",
],
)
diff --git a/pw_metric/size_report/BUILD.bazel b/pw_metric/size_report/BUILD.bazel
index e8275d7..d2dbe28 100644
--- a/pw_metric/size_report/BUILD.bazel
+++ b/pw_metric/size_report/BUILD.bazel
@@ -38,7 +38,7 @@
"//pw_assert",
"//pw_bloat:bloat_this_binary",
"//pw_log",
- "//pw_metric",
+ "//pw_metric:metric",
],
)
@@ -49,7 +49,7 @@
"//pw_assert",
"//pw_bloat:bloat_this_binary",
"//pw_log",
- "//pw_metric",
+ "//pw_metric:metric",
],
)
@@ -60,6 +60,6 @@
"//pw_assert",
"//pw_bloat:bloat_this_binary",
"//pw_log",
- "//pw_metric",
+ "//pw_metric:metric",
],
)
diff --git a/pw_minimal_cpp_stdlib/BUILD.bazel b/pw_minimal_cpp_stdlib/BUILD.bazel
index 644af1a..4deb4ce 100644
--- a/pw_minimal_cpp_stdlib/BUILD.bazel
+++ b/pw_minimal_cpp_stdlib/BUILD.bazel
@@ -82,7 +82,7 @@
"test.cc",
],
deps = [
- ":pw_minimal_cpp_stdlib_isolated_test",
+ ":minimal_cpp_stdlib_isolated_test",
"//pw_unit_test",
],
)
diff --git a/pw_multisink/BUILD.bazel b/pw_multisink/BUILD.bazel
index df68796..c80e546 100644
--- a/pw_multisink/BUILD.bazel
+++ b/pw_multisink/BUILD.bazel
@@ -51,6 +51,7 @@
"multisink_test.cc",
],
deps = [
+ ":pw_multisink",
"//pw_preprocessor",
"//pw_unit_test",
],
diff --git a/pw_persistent_ram/BUILD.bazel b/pw_persistent_ram/BUILD.bazel
index 46ca6f1..65f5551 100644
--- a/pw_persistent_ram/BUILD.bazel
+++ b/pw_persistent_ram/BUILD.bazel
@@ -45,6 +45,7 @@
],
deps = [
":pw_persistent_ram",
+ "//pw_random",
"//pw_unit_test",
],
)
diff --git a/pw_presubmit/py/pw_presubmit/pigweed_presubmit.py b/pw_presubmit/py/pw_presubmit/pigweed_presubmit.py
index 65d3faa..f451c06 100755
--- a/pw_presubmit/py/pw_presubmit/pigweed_presubmit.py
+++ b/pw_presubmit/py/pw_presubmit/pigweed_presubmit.py
@@ -238,50 +238,92 @@
build.ninja(ctx.output_dir, 'pw_apps', 'pw_run_tests.modules')
-# TODO: Slowly add modules here that work with bazel until all
+# TODO(pwbug/180): Slowly add modules here that work with bazel until all
# modules are added. Then replace with //...
-_MODULES_THAT_WORK_WITH_BAZEL = [
- "//pw_allocator/...",
- "//pw_assert/...",
+_MODULES_THAT_BUILD_WITH_BAZEL = [
+ '//pw_allocator/...',
+ '//pw_analog/...',
+ '//pw_assert/...',
'//pw_assert_basic/...',
- '//pw_protobuf/...',
+ '//pw_assert_log/...',
'//pw_base64/...',
'//pw_bloat/...',
'//pw_build/...',
- '//pw_chrono/...',
+ '//pw_checksum/...',
+ '//pw_chrono_embos/...',
+ '//pw_chrono_freertos/...',
'//pw_chrono_stl/...',
+ '//pw_chrono_threadx/...',
'//pw_containers/...',
'//pw_cpu_exception/...',
'//pw_docgen/...',
'//pw_doctor/...',
- "//pw_fuzzer/...",
+ '//pw_env_setup/...',
+ '//pw_fuzzer/...',
+ '//pw_hex_dump/...',
'//pw_i2c/...',
'//pw_interrupt/...',
- '//pw_log/...',
+ '//pw_interrupt_cortex_m/...',
+ '//pw_libc/...',
'//pw_log_basic/...',
'//pw_malloc/...',
'//pw_malloc_freelist/...',
+ '//pw_multisink/...',
'//pw_polyfill/...',
'//pw_preprocessor/...',
- '//pw_protobuf/...',
'//pw_protobuf_compiler/...',
- '//pw_rpc/...',
+ '//pw_random/...',
+ '//pw_result/...',
'//pw_span/...',
'//pw_status/...',
'//pw_stream/...',
- "//pw_sync/...",
- "//pw_sync_stl/...",
+ '//pw_string/...',
+ '//pw_sync_baremetal/...',
+ '//pw_sync_embos/...',
+ '//pw_sync_freertos/...',
+ '//pw_sync_stl/...',
+ '//pw_sync_threadx/...',
'//pw_sys_io/...',
'//pw_sys_io_baremetal_lm3s6965evb/...',
+ '//pw_sys_io_baremetal_stm32f429/...',
'//pw_sys_io_stdio/...',
- '//pw_thread/...',
'//pw_thread_stl/...',
- '//pw_tokenizer/...',
+ '//pw_tool/...',
'//pw_toolchain/...',
+ '//pw_transfer/...',
+ '//pw_unit_test/...',
'//pw_varint/...',
'//pw_web_ui/...',
]
+# TODO(pwbug/180): Slowly add modules here that work with bazel until all
+# modules are added. Then replace with //...
+_MODULES_THAT_TEST_WITH_BAZEL = [
+ '//pw_allocator/...',
+ '//pw_analog/...',
+ '//pw_assert/...',
+ '//pw_base64/...',
+ '//pw_checksum/...',
+ '//pw_containers/...',
+ '//pw_hex_dump/...',
+ '//pw_i2c/...',
+ '//pw_libc/...',
+ '//pw_multisink/...',
+ '//pw_polyfill/...',
+ '//pw_preprocessor/...',
+ '//pw_random/...',
+ '//pw_result/...',
+ '//pw_span/...',
+ '//pw_status/...',
+ '//pw_stream/...',
+ '//pw_string/...',
+ '//pw_thread_stl/...',
+ '//pw_transfer/...',
+ '//pw_unit_test/...',
+ '//pw_varint/...',
+ '//:buildifier_test',
+]
+
@filter_paths(endswith=(*format_code.C_FORMAT.extensions, '.bzl', 'BUILD'))
def bazel_test(ctx: PresubmitContext):
@@ -290,7 +332,7 @@
try:
call('bazel',
'test',
- *_MODULES_THAT_WORK_WITH_BAZEL,
+ *_MODULES_THAT_TEST_WITH_BAZEL,
'--verbose_failures',
'--verbose_explanations',
'--worker_verbose',
@@ -310,7 +352,7 @@
try:
call('bazel',
'build',
- *_MODULES_THAT_WORK_WITH_BAZEL,
+ *_MODULES_THAT_BUILD_WITH_BAZEL,
'--verbose_failures',
'--verbose_explanations',
'--worker_verbose',
diff --git a/pw_protobuf_compiler/proto.bzl b/pw_protobuf_compiler/proto.bzl
index 9bcdbd1..1baadeb 100644
--- a/pw_protobuf_compiler/proto.bzl
+++ b/pw_protobuf_compiler/proto.bzl
@@ -83,6 +83,9 @@
name_pb = kwargs.get("name") + "_pb"
_cc_proto_compile(
name = name_pb,
+ # TODO(pwbug/437): Remove 'manual' tag once hermetic Python toolchains
+ # are supported with Bazel.
+ tags = ["manual", "needs-python3.6+"],
# Forward deps and verbose tags to implementation
**{k: v for (k, v) in kwargs.items() if k in ("deps", "verbose")}
)
@@ -98,4 +101,7 @@
strip_include_prefix = ".",
visibility = kwargs.get("visibility"),
linkstatic = 1,
+ # TODO(pwbug/437): Remove 'manual' tag once hermetic Python toolchains
+ # are supported with Bazel.
+ tags = ["manual", "needs-python3.6+"],
)
diff --git a/pw_random/BUILD.bazel b/pw_random/BUILD.bazel
index 4ffda3b..e41d610 100644
--- a/pw_random/BUILD.bazel
+++ b/pw_random/BUILD.bazel
@@ -36,6 +36,7 @@
srcs = ["xor_shift_test.cc"],
deps = [
":pw_random",
+ "//pw_bytes",
"//pw_unit_test",
],
)
diff --git a/pw_result/BUILD.bazel b/pw_result/BUILD.bazel
index b17f321..867bf7b 100644
--- a/pw_result/BUILD.bazel
+++ b/pw_result/BUILD.bazel
@@ -29,7 +29,7 @@
],
includes = ["public"],
deps = [
- "//pw_assert",
+ "//pw_assert:facade",
"//pw_status",
],
)
diff --git a/pw_result/size_report/BUILD.bazel b/pw_result/size_report/BUILD.bazel
index fd41185..6853da2 100644
--- a/pw_result/size_report/BUILD.bazel
+++ b/pw_result/size_report/BUILD.bazel
@@ -61,6 +61,7 @@
name = "pointer_read",
srcs = ["pointer_read.cc"],
deps = [
+ "//pw_bytes",
"//pw_log",
"//pw_result",
"//pw_span",
@@ -71,6 +72,7 @@
name = "result_read",
srcs = ["result_read.cc"],
deps = [
+ "//pw_bytes",
"//pw_log",
"//pw_result",
"//pw_span",
diff --git a/pw_router/BUILD.bazel b/pw_router/BUILD.bazel
index c643d43..3acbbba 100644
--- a/pw_router/BUILD.bazel
+++ b/pw_router/BUILD.bazel
@@ -26,11 +26,12 @@
name = "static_router",
srcs = ["static_router.cc"],
hdrs = ["public/pw_router/static_router.h"],
+ includes = ["public"],
deps = [
":egress",
":packet_parser",
"//pw_log",
- "//pw_metric",
+ "//pw_metric:metric",
"//pw_sync:mutex",
],
)
@@ -38,7 +39,10 @@
pw_cc_library(
name = "egress",
hdrs = ["public/pw_router/egress.h"],
- deps = ["//pw_bytes"],
+ deps = [
+ "//pw_bytes",
+ "//pw_function",
+ ],
)
pw_cc_library(
diff --git a/pw_rpc/BUILD.bazel b/pw_rpc/BUILD.bazel
index 617fc05..5dc8d16 100644
--- a/pw_rpc/BUILD.bazel
+++ b/pw_rpc/BUILD.bazel
@@ -65,6 +65,7 @@
":common",
":internal_packet_pwpb",
"//pw_containers",
+ "//pw_rpc/system_server",
],
)
diff --git a/pw_rpc/raw/BUILD.bazel b/pw_rpc/raw/BUILD.bazel
index 2d2ab19..52c1dfd 100644
--- a/pw_rpc/raw/BUILD.bazel
+++ b/pw_rpc/raw/BUILD.bazel
@@ -56,6 +56,7 @@
"public/pw_rpc/raw/test_method_context.h",
"public/pw_rpc/raw_test_method_context.h",
],
+ includes = ["public"],
deps = [
":method_union",
"//pw_assert",
@@ -72,6 +73,7 @@
":method_union",
":test_method_context",
"//pw_protobuf",
+ "//pw_rpc:internal_test_utils",
"//pw_rpc:pw_rpc_test_pwpb",
],
)
diff --git a/pw_string/BUILD.bazel b/pw_string/BUILD.bazel
index d7e959a..663bb4f 100644
--- a/pw_string/BUILD.bazel
+++ b/pw_string/BUILD.bazel
@@ -39,7 +39,7 @@
],
includes = ["public"],
deps = [
- "//pw_assert",
+ "//pw_assert:facade",
"//pw_preprocessor",
"//pw_result",
"//pw_span",
diff --git a/pw_tls_client_boringssl/BUILD.bazel b/pw_tls_client_boringssl/BUILD.bazel
index f57c61c..0e94f7d 100644
--- a/pw_tls_client_boringssl/BUILD.bazel
+++ b/pw_tls_client_boringssl/BUILD.bazel
@@ -34,7 +34,7 @@
"public_overrides",
],
deps = [
- "//pw_tls_clent:pw_tls_client_facade",
+ "//pw_tls_client:pw_tls_client_facade",
],
)
diff --git a/pw_tls_client_mbedtls/BUILD.bazel b/pw_tls_client_mbedtls/BUILD.bazel
index 4c9a9b0..e376115 100644
--- a/pw_tls_client_mbedtls/BUILD.bazel
+++ b/pw_tls_client_mbedtls/BUILD.bazel
@@ -36,7 +36,7 @@
"public_overrides",
],
deps = [
- "//pw_tls_clent:pw_tls_client_facade",
+ "//pw_tls_client:pw_tls_client_facade",
],
)
diff --git a/pw_unit_test/BUILD.bazel b/pw_unit_test/BUILD.bazel
index 2e5790c..8c7bc8e 100644
--- a/pw_unit_test/BUILD.bazel
+++ b/pw_unit_test/BUILD.bazel
@@ -17,6 +17,7 @@
"pw_cc_library",
"pw_cc_test",
)
+load("//pw_protobuf_compiler:proto.bzl", "pw_proto_library")
package(default_visibility = ["//visibility:public"])
@@ -93,6 +94,23 @@
],
)
+proto_library(
+ name = "unit_test_proto",
+ srcs = ["pw_unit_test_proto/unit_test.proto"],
+ strip_import_prefix = "//pw_unit_test",
+)
+
+pw_proto_library(
+ name = "unit_test_pwpb",
+ # TODO(pwbug/437): Remove 'manual' tag once hermetic Python toolchains are
+ # supported with Bazel.
+ tags = [
+ "manual",
+ "needs-python3.6",
+ ],
+ deps = [":unit_test_proto"],
+)
+
pw_cc_library(
name = "rpc_service",
srcs = [
@@ -103,9 +121,15 @@
"public/pw_unit_test/internal/rpc_event_handler.h",
"public/pw_unit_test/unit_test_service.h",
],
+ # TODO(pwbug/437): Remove 'manual' tag once hermetic Python toolchains are
+ # supported with Bazel.
+ tags = ["manual"],
deps = [
":pw_unit_test",
+ ":unit_test_pwpb",
"//pw_log",
+ "//pw_rpc:server",
+ "//pw_rpc/raw:method_union",
],
)
@@ -114,6 +138,9 @@
srcs = [
"rpc_main.cc",
],
+ # TODO(pwbug/437): Remove 'manual' tag once hermetic Python toolchains are
+ # supported with Bazel.
+ tags = ["manual"],
deps = [
":pw_unit_test",
":rpc_service",
diff --git a/targets/default_config.BUILD b/targets/default_config.BUILD
index a623908..dd3e923 100644
--- a/targets/default_config.BUILD
+++ b/targets/default_config.BUILD
@@ -65,6 +65,11 @@
)
label_flag(
+ name = "pw_sync_thread_notification_backend",
+ build_setting_default = "@pigweed//pw_sync:thread_notification_backend_multiplexer",
+)
+
+label_flag(
name = "pw_interrupt_backend",
build_setting_default = "@pigweed//pw_interrupt:backend_multiplexer",
)