blob: db9faa699fd3bf3ad37a369daf57ef0cde8acfdf [file] [log] [blame]
load("//rust:defs.bzl", "rust_binary", "rust_clippy", "rust_library")
load("//tools:tool_utils.bzl", "aspect_repository")
package(default_visibility = ["//visibility:public"])
exports_files([
"rustfmt.toml",
"rustfmt_utils.bzl",
])
rust_library(
name = "rustfmt_lib",
srcs = glob(
["srcs/**/*.rs"],
exclude = ["srcs/**/*main.rs"],
),
data = [
"//:rustfmt.toml",
"//rust/toolchain:current_exec_rustfmt_files",
],
edition = "2018",
rustc_env = {
"RUSTFMT": "$(rootpath //rust/toolchain:current_exec_rustfmt_files)",
"RUSTFMT_CONFIG": "$(rootpath //:rustfmt.toml)",
},
)
rust_binary(
name = "rustfmt",
srcs = [
"srcs/main.rs",
],
data = [
"//:rustfmt.toml",
],
edition = "2018",
rustc_env = {
"ASPECT_REPOSITORY": aspect_repository(),
},
deps = [
":rustfmt_lib",
"//util/label",
],
)
rust_binary(
name = "rustfmt_test",
srcs = [
"srcs/test_main.rs",
],
edition = "2018",
deps = [
":rustfmt_lib",
"//tools/runfiles",
],
)
rust_clippy(
name = "rustfmt_clippy",
testonly = True,
visibility = ["//visibility:private"],
deps = [
":rustfmt",
],
)
filegroup(
name = "distro",
srcs = glob([
"*.bzl",
"**/*.rs",
]) + [
"rustfmt.toml",
"BUILD.bazel",
],
visibility = ["//:__subpackages__"],
)