bazel: Add missing bazel deps and includes

Also remove one unused header include from pw_rpc/system_server (instead
of adding deps that would provide it).

Bug: b/210876793
Change-Id: I1e0afe18e18c05932829d7854e8d64b8fb356c33
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/81680
Reviewed-by: Keir Mierle <keir@google.com>
Commit-Queue: Ted Pudlik <tpudlik@google.com>
diff --git a/pw_bytes/BUILD.bazel b/pw_bytes/BUILD.bazel
index e7ddd95..9609593 100644
--- a/pw_bytes/BUILD.bazel
+++ b/pw_bytes/BUILD.bazel
@@ -36,6 +36,11 @@
     ],
     includes = ["public"],
     deps = [
+        "//pw_polyfill",
+        "//pw_polyfill:bit",
+        "//pw_polyfill:cstddef",
+        "//pw_polyfill:iterator",
+        "//pw_polyfill:type_traits",
         "//pw_preprocessor",
         "//pw_span",
         "//pw_status",
diff --git a/pw_containers/BUILD.bazel b/pw_containers/BUILD.bazel
index abc9b44..6928f09 100644
--- a/pw_containers/BUILD.bazel
+++ b/pw_containers/BUILD.bazel
@@ -50,12 +50,17 @@
         "public/pw_containers/vector.h",
     ],
     includes = ["public"],
+    deps = [
+        "//pw_assert",
+        "//pw_polyfill",
+    ],
 )
 
 pw_cc_library(
     name = "filtered_view",
     hdrs = ["public/pw_containers/filtered_view.h"],
     includes = ["public"],
+    deps = ["//pw_assert"],
 )
 
 pw_cc_library(
diff --git a/pw_polyfill/BUILD.bazel b/pw_polyfill/BUILD.bazel
index 9b3795f..3fcef9b 100644
--- a/pw_polyfill/BUILD.bazel
+++ b/pw_polyfill/BUILD.bazel
@@ -104,7 +104,10 @@
         "public_overrides",
         "standard_library_public",
     ],
-    deps = [":standard_library"],
+    deps = [
+        ":standard_library",
+        ":type_traits",
+    ],
 )
 
 # Provides <span>.
@@ -124,7 +127,10 @@
         "public_overrides",
         "standard_library_public",
     ],
-    deps = [":standard_library"],
+    deps = [
+        ":cstddef",
+        ":standard_library",
+    ],
 )
 
 pw_cc_library(
@@ -133,7 +139,7 @@
         "standard_library_public/pw_polyfill/standard_library/namespace.h",
     ],
     includes = ["standard_library_public"],
-    visibility = ["//visibility:private"],
+    visibility = ["//pw_span:__pkg__"],
 )
 
 pw_cc_test(
diff --git a/pw_protobuf/BUILD.bazel b/pw_protobuf/BUILD.bazel
index 97c4b44..eada353 100644
--- a/pw_protobuf/BUILD.bazel
+++ b/pw_protobuf/BUILD.bazel
@@ -58,6 +58,8 @@
         ":config",
         "//pw_assert",
         "//pw_bytes",
+        "//pw_polyfill:bit",
+        "//pw_polyfill:overrides",
         "//pw_result",
         "//pw_span",
         "//pw_status",
diff --git a/pw_rpc/public/pw_rpc/internal/test_utils.h b/pw_rpc/public/pw_rpc/internal/test_utils.h
index 5b93e43..e3f8be5 100644
--- a/pw_rpc/public/pw_rpc/internal/test_utils.h
+++ b/pw_rpc/public/pw_rpc/internal/test_utils.h
@@ -21,6 +21,7 @@
 #include <cstdint>
 #include <span>
 
+#include "gtest/gtest.h"
 #include "pw_assert/assert.h"
 #include "pw_rpc/client.h"
 #include "pw_rpc/internal/channel.h"
diff --git a/pw_rpc/public/pw_rpc/payloads_view.h b/pw_rpc/public/pw_rpc/payloads_view.h
index 2284ded..0177f56 100644
--- a/pw_rpc/public/pw_rpc/payloads_view.h
+++ b/pw_rpc/public/pw_rpc/payloads_view.h
@@ -26,6 +26,7 @@
 #include "pw_containers/vector.h"
 #include "pw_containers/wrapped_iterator.h"
 #include "pw_rpc/channel.h"
+#include "pw_rpc/internal/method_info.h"
 #include "pw_rpc/internal/packet.h"
 #include "pw_rpc/method_type.h"
 
diff --git a/pw_rpc/pw_rpc_private/fake_server_reader_writer.h b/pw_rpc/pw_rpc_private/fake_server_reader_writer.h
index 757ccfb..44c359b 100644
--- a/pw_rpc/pw_rpc_private/fake_server_reader_writer.h
+++ b/pw_rpc/pw_rpc_private/fake_server_reader_writer.h
@@ -17,6 +17,7 @@
 
 #include "pw_bytes/span.h"
 #include "pw_rpc/internal/call_context.h"
+#include "pw_rpc/internal/server_call.h"
 #include "pw_rpc/method_type.h"
 
 namespace pw::rpc::internal::test {
diff --git a/pw_rpc/raw/BUILD.bazel b/pw_rpc/raw/BUILD.bazel
index 4e5a4c0..fcad0a6 100644
--- a/pw_rpc/raw/BUILD.bazel
+++ b/pw_rpc/raw/BUILD.bazel
@@ -37,6 +37,7 @@
         "//pw_bytes",
         "//pw_rpc",
         "//pw_rpc:internal_packet_cc.pwpb",
+        "//pw_status",
     ],
 )
 
@@ -70,6 +71,9 @@
         ":fake_channel_output",
         ":server_api",
         "//pw_assert",
+        "//pw_containers:vector",
+        "//pw_preprocessor",
+        "//pw_rpc",
         "//pw_rpc:internal_test_utils",
     ],
 )
@@ -80,6 +84,9 @@
     hdrs = ["public/pw_rpc/raw/client_testing.h"],
     deps = [
         ":test_method_context",
+        "//pw_assert",
+        "//pw_bytes",
+        "//pw_log",
         "//pw_rpc",
     ],
 )
diff --git a/pw_rpc/system_server/BUILD.bazel b/pw_rpc/system_server/BUILD.bazel
index 04b378a..f89e97f 100644
--- a/pw_rpc/system_server/BUILD.bazel
+++ b/pw_rpc/system_server/BUILD.bazel
@@ -26,6 +26,7 @@
     hdrs = ["public/pw_rpc_system_server/rpc_server.h"],
     includes = ["public"],
     deps = [
+        "//pw_rpc",
         "//pw_span",
         "//pw_status",
     ],
@@ -39,8 +40,10 @@
     ],
     deps = [
         ":facade",
+        "//pw_rpc",
         "//pw_span",
         "//pw_status",
+        "//pw_stream",
         "@pigweed_config//:pw_rpc_system_server_backend",
     ],
 )
diff --git a/pw_rpc/system_server/BUILD.gn b/pw_rpc/system_server/BUILD.gn
index 7e93499..e6721d6 100644
--- a/pw_rpc/system_server/BUILD.gn
+++ b/pw_rpc/system_server/BUILD.gn
@@ -26,10 +26,7 @@
 pw_facade("system_server") {
   backend = pw_rpc_system_server_BACKEND
   public_configs = [ ":public_includes" ]
-  public_deps = [
-    "$dir_pw_rpc:server",
-    "$dir_pw_stream",
-  ]
+  public_deps = [ "$dir_pw_rpc:server" ]
   public = [ "public/pw_rpc_system_server/rpc_server.h" ]
 }
 
diff --git a/pw_rpc/system_server/public/pw_rpc_system_server/rpc_server.h b/pw_rpc/system_server/public/pw_rpc_system_server/rpc_server.h
index 73f2dcd..d062610 100644
--- a/pw_rpc/system_server/public/pw_rpc_system_server/rpc_server.h
+++ b/pw_rpc/system_server/public/pw_rpc_system_server/rpc_server.h
@@ -14,7 +14,6 @@
 #pragma once
 
 #include "pw_rpc/server.h"
-#include "pw_stream/stream.h"
 
 namespace pw::rpc::system_server {
 
diff --git a/pw_span/BUILD.bazel b/pw_span/BUILD.bazel
index 103822e..94919c0 100644
--- a/pw_span/BUILD.bazel
+++ b/pw_span/BUILD.bazel
@@ -30,7 +30,10 @@
         "public",
         "public_overrides",
     ],
-    deps = ["//pw_polyfill"],
+    deps = [
+        "//pw_polyfill",
+        "//pw_polyfill:standard_library",
+    ],
 )
 
 pw_cc_test(
diff --git a/pw_stream/BUILD.bazel b/pw_stream/BUILD.bazel
index a6ce477..0d716a6 100644
--- a/pw_stream/BUILD.bazel
+++ b/pw_stream/BUILD.bazel
@@ -37,6 +37,8 @@
     deps = [
         "//pw_assert",
         "//pw_bytes",
+        "//pw_polyfill",
+        "//pw_polyfill:iterator",
         "//pw_result",
         "//pw_span",
         "//pw_status",
@@ -82,6 +84,8 @@
     srcs = ["memory_stream_test.cc"],
     deps = [
         ":pw_stream",
+        "//pw_assert",
+        "//pw_status",
         "//pw_unit_test",
     ],
 )
diff --git a/pw_sync_stl/BUILD.bazel b/pw_sync_stl/BUILD.bazel
index bb1a247..e3cb3a0 100644
--- a/pw_sync_stl/BUILD.bazel
+++ b/pw_sync_stl/BUILD.bazel
@@ -102,6 +102,7 @@
         "public_overrides",
     ],
     target_compatible_with = select(TARGET_COMPATIBLE_WITH_HOST_SELECT),
+    deps = ["//pw_sync:mutex_facade"],
 )
 
 pw_cc_library(
diff --git a/pw_unit_test/BUILD.bazel b/pw_unit_test/BUILD.bazel
index af98b9c..7ef41c7 100644
--- a/pw_unit_test/BUILD.bazel
+++ b/pw_unit_test/BUILD.bazel
@@ -28,6 +28,9 @@
     name = "config",
     hdrs = ["public/pw_unit_test/config.h"],
     includes = ["public"],
+    deps = [
+        "//pw_polyfill",
+    ],
 )
 
 pw_cc_library(
@@ -48,6 +51,7 @@
         ":config",
         "//pw_polyfill",
         "//pw_preprocessor",
+        "//pw_span",
         "//pw_string",
     ],
 )
diff --git a/pw_varint/BUILD.bazel b/pw_varint/BUILD.bazel
index d483f72..5b51629 100644
--- a/pw_varint/BUILD.bazel
+++ b/pw_varint/BUILD.bazel
@@ -49,6 +49,7 @@
     includes = ["public"],
     deps = [
         ":pw_varint",
+        "//pw_span",
         "//pw_status",
         "//pw_stream",
     ],