Make the I/O part of QUICHE compile under Bazel.
This renames those targets from epoll_* to io_*, since those are no longer epoll-dependent.
I got those to compile on Linux under the Clang opt build, and almost all of the tests passed.
PiperOrigin-RevId: 476972652
diff --git a/build/test.bzl b/build/test.bzl
index 9beb0ca..33bef08 100644
--- a/build/test.bzl
+++ b/build/test.bzl
@@ -1,5 +1,6 @@
"""Tools for building QUICHE tests."""
+load("@bazel_skylib//lib:dicts.bzl", "dicts")
load("@bazel_skylib//lib:paths.bzl", "paths")
def test_suite_from_source_list(name, srcs, **kwargs):
@@ -17,10 +18,13 @@
if not sourcefile.endswith("_test.cc"):
fail("All source files passed to test_suite_from_source_list() must end with _test.cc")
test_name, _ = paths.split_extension(paths.basename(sourcefile))
+ extra_kwargs = {}
+ if test_name == "end_to_end_test":
+ extra_kwargs["shard_count"] = 16
native.cc_test(
name = test_name,
srcs = [sourcefile],
- **kwargs
+ **dicts.add(kwargs, extra_kwargs)
)
tests.append(test_name)
native.test_suite(name = name, tests = tests)