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