1load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
2
3go_binary(
4 name = "buildifier",
5 embed = [":buildifier_lib"],
6 visibility = ["//visibility:public"],
7)
8
9go_binary(
10 name = "buildifier-darwin",
11 out = "buildifier-darwin_amd64",
12 embed = [":buildifier_lib"],
13 goarch = "amd64",
14 goos = "darwin",
15 pure = "on",
16 visibility = ["//visibility:public"],
17)
18
19go_binary(
20 name = "buildifier-linux",
21 out = "buildifier-linux_amd64",
22 embed = [":buildifier_lib"],
23 goarch = "amd64",
24 goos = "linux",
25 pure = "on",
26 visibility = ["//visibility:public"],
27)
28
29go_binary(
30 name = "buildifier-windows",
31 out = "buildifier-windows_amd64.exe",
32 embed = [":buildifier_lib"],
33 goarch = "amd64",
34 goos = "windows",
35 pure = "on",
36 visibility = ["//visibility:public"],
37)
38
39go_binary(
40 name = "buildifier-darwin-arm64",
41 out = "buildifier-darwin_arm64",
42 embed = [":buildifier_lib"],
43 goarch = "arm64",
44 goos = "darwin",
45 pure = "on",
46 visibility = ["//visibility:public"],
47)
48
49go_binary(
50 name = "buildifier-linux-arm64",
51 out = "buildifier-linux_arm64",
52 embed = [":buildifier_lib"],
53 goarch = "arm64",
54 goos = "linux",
55 pure = "on",
56 visibility = ["//visibility:public"],
57)
58
59# Test that the buildifier binary works
60sh_test(
61 name = "buildifier_integration_test",
62 size = "small",
63 srcs = ["integration_test.sh"],
64 args = [
65 "$(location :buildifier)",
66 "$(location //buildifier2)",
67 ],
68 data = [
69 ":buildifier",
70 "//buildifier2",
71 ],
72 deps = ["@bazel_tools//tools/bash/runfiles"],
73)
74
75go_library(
76 name = "buildifier_lib",
77 srcs = ["buildifier.go"],
78 importpath = "github.com/bazelbuild/buildtools/buildifier",
79 visibility = ["//visibility:private"],
80 x_defs = {
81 "main.buildVersion": "{STABLE_buildVersion}",
82 "main.buildScmRevision": "{STABLE_buildScmRevision}",
83 },
84 deps = [
85 "//build",
86 "//buildifier/config",
87 "//buildifier/utils",
88 "//differ",
89 "//wspace",
90 ],
91)
92
93exports_files(
94 [
95 "runner.bash.template",
96 "runner.bat.template",
97 ],
98 visibility = ["//visibility:public"],
99)
100
101exports_files(
102 [
103 "README.md",
104 ],
105 visibility = ["//buildifier/npm:__pkg__"],
106)
View as plain text