• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("@rules_rust//crate_universe:defs.bzl", "crates_vendor")
2load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test")
3load("//vendor_local_manifests/crates:defs.bzl", "aliases", "all_crate_deps")
4
5crates_vendor(
6    name = "crates_vendor",
7    manifests = [":Cargo.toml"],
8    mode = "local",
9)
10
11rust_library(
12    name = "cargo_local",
13    srcs = glob(["**/*.rs"]),
14    aliases = aliases(),
15    edition = "2018",
16    proc_macro_deps = all_crate_deps(proc_macro = True),
17    # TODO: https://github.com/bazelbuild/rules_rust/issues/1860
18    target_compatible_with = select({
19        "@platforms//os:windows": ["@platforms//:incompatible"],
20        "//conditions:default": [],
21    }),
22    deps = all_crate_deps(normal = True),
23)
24
25rust_test(
26    name = "unit_test",
27    crate = ":cargo_local",
28    proc_macro_deps = all_crate_deps(proc_macro_dev = True),
29    # TODO: https://github.com/bazelbuild/rules_rust/issues/1860
30    target_compatible_with = select({
31        "@platforms//os:windows": ["@platforms//:incompatible"],
32        "//conditions:default": [],
33    }),
34    deps = all_crate_deps(normal_dev = True),
35)
36