blob: 94b11e926d21a6de46917691d2c636bd602910e6 [file]
load("@rules_rust//rust:defs.bzl", "rust_binary", "rust_doc", "rust_doc_test")
# Build binary
# https://bazelbuild.github.io/rules_rust/defs.html#rust_binary
rust_binary(
name = "bin",
srcs = glob([
"src/*.rs",
]),
crate_root = "src/main.rs",
rustc_flags = select({
"//:release": [
"-Clto",
"-Ccodegen-units=1",
"-Cpanic=abort",
"-Copt-level=3",
"-Cstrip=symbols",
],
"//conditions:default": [
"-Copt-level=0",
],
}),
visibility = ["//visibility:public"],
deps = [
# Internal crates
"//proto_bindings:rust_proto",
# External crates
"@crates//:tokio",
"@crates//:tonic",
],
)
# Build documentation
# https://bazelbuild.github.io/rules_rust/rust_doc.html
rust_doc(
name = "client_doc",
crate = ":bin",
visibility = ["//visibility:public"],
)
# Test documentation
# https://bazelbuild.github.io/rules_rust/rust_doc.html#rust_doc_test
rust_doc_test(
name = "client_doc_test",
crate = ":bin",
visibility = ["//visibility:public"],
)