workspace: add Rust EFI infrastructure
This bumps rules_rust, cleans up the toolchains with the new version.
It also adds the Prost codegen to "normal" crate set as well as a new
crate set specific to EFI. This is separate because of Rust no-std's
dependence on create feature tags.
Change-Id: Ie76e66ee83696948391420ca3b011a3a71258690
Reviewed-on: https://review.monogon.dev/c/monogon/+/2202
Tested-by: Jenkins CI
Reviewed-by: Serge Bazanski <serge@monogon.tech>
diff --git a/third_party/rust/cargo/remote/BUILD.hyper-0.14.27.bazel b/third_party/rust/cargo/remote/BUILD.hyper-0.14.27.bazel
new file mode 100644
index 0000000..c676782
--- /dev/null
+++ b/third_party/rust/cargo/remote/BUILD.hyper-0.14.27.bazel
@@ -0,0 +1,127 @@
+"""
+@generated
+cargo-raze crate build file.
+
+DO NOT EDIT! Replaced on runs of cargo-raze
+"""
+
+# buildifier: disable=load
+load("@bazel_skylib//lib:selects.bzl", "selects")
+
+# buildifier: disable=load
+load(
+ "@rules_rust//rust:defs.bzl",
+ "rust_binary",
+ "rust_library",
+ "rust_proc_macro",
+ "rust_test",
+)
+
+package(default_visibility = [
+ # Public for visibility by "@raze__crate__version//" targets.
+ #
+ # Prefer access through "//third_party/rust/cargo", which limits external
+ # visibility to explicit Cargo.toml dependencies.
+ "//visibility:public",
+])
+
+licenses([
+ "notice", # MIT from expression "MIT"
+])
+
+# Generated Targets
+
+# Unsupported target "body" with type "bench" omitted
+
+# Unsupported target "connect" with type "bench" omitted
+
+# Unsupported target "end_to_end" with type "bench" omitted
+
+# Unsupported target "pipeline" with type "bench" omitted
+
+# Unsupported target "server" with type "bench" omitted
+
+# Unsupported target "client" with type "example" omitted
+
+# Unsupported target "client_json" with type "example" omitted
+
+# Unsupported target "echo" with type "example" omitted
+
+# Unsupported target "gateway" with type "example" omitted
+
+# Unsupported target "hello" with type "example" omitted
+
+# Unsupported target "http_proxy" with type "example" omitted
+
+# Unsupported target "multi_server" with type "example" omitted
+
+# Unsupported target "params" with type "example" omitted
+
+# Unsupported target "send_file" with type "example" omitted
+
+# Unsupported target "service_struct_impl" with type "example" omitted
+
+# Unsupported target "single_threaded" with type "example" omitted
+
+# Unsupported target "state" with type "example" omitted
+
+# Unsupported target "tower_client" with type "example" omitted
+
+# Unsupported target "tower_server" with type "example" omitted
+
+# Unsupported target "upgrades" with type "example" omitted
+
+# Unsupported target "web_api" with type "example" omitted
+
+rust_library(
+ name = "hyper",
+ srcs = glob(["**/*.rs"]),
+ crate_features = [
+ "client",
+ "default",
+ "h2",
+ "http1",
+ "http2",
+ "server",
+ "socket2",
+ "stream",
+ "tcp",
+ ],
+ crate_root = "src/lib.rs",
+ data = [],
+ edition = "2018",
+ rustc_flags = [
+ "--cap-lints=allow",
+ ],
+ tags = [
+ "cargo-raze",
+ "crate-name=hyper",
+ "manual",
+ ],
+ version = "0.14.27",
+ # buildifier: leave-alone
+ deps = [
+ "@raze__bytes__1_5_0//:bytes",
+ "@raze__futures_channel__0_3_28//:futures_channel",
+ "@raze__futures_core__0_3_28//:futures_core",
+ "@raze__futures_util__0_3_28//:futures_util",
+ "@raze__h2__0_3_21//:h2",
+ "@raze__http__0_2_9//:http",
+ "@raze__http_body__0_4_5//:http_body",
+ "@raze__httparse__1_8_0//:httparse",
+ "@raze__httpdate__1_0_3//:httpdate",
+ "@raze__itoa__1_0_9//:itoa",
+ "@raze__pin_project_lite__0_2_13//:pin_project_lite",
+ "@raze__socket2__0_4_9//:socket2",
+ "@raze__tokio__1_32_0//:tokio",
+ "@raze__tower_service__0_3_2//:tower_service",
+ "@raze__tracing__0_1_37//:tracing",
+ "@raze__want__0_3_1//:want",
+ ],
+)
+
+# Unsupported target "client" with type "test" omitted
+
+# Unsupported target "integration" with type "test" omitted
+
+# Unsupported target "server" with type "test" omitted