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