github.com/stackb/rules_proto@v0.0.0-20240221195024-5428336c51f1/toolchain/BUILD.bazel (about) 1 load("//toolchain:toolchain.bzl", "protoc") 2 3 toolchain_type( 4 name = "protoc", 5 visibility = ["//visibility:public"], 6 ) 7 8 toolchain( 9 name = "standard", 10 toolchain = ":compiled", 11 toolchain_type = "//toolchain:protoc", 12 ) 13 14 toolchain( 15 name = "prebuilt", 16 toolchain = ":precompiled", 17 toolchain_type = "//toolchain:protoc", 18 ) 19 20 protoc( 21 name = "compiled", 22 tool = "@com_google_protobuf//:protoc", 23 ) 24 25 protoc( 26 name = "precompiled", 27 tool = ":protoc.exe", 28 ) 29 30 genrule( 31 name = "protoc_exe", 32 srcs = select({ 33 "@bazel_tools//src/conditions:darwin": [ 34 "@prebuilt_protoc_osx//:protoc", 35 ], 36 "@bazel_tools//src/conditions:windows": [ 37 "@prebuilt_protoc_windows//:protoc", 38 ], 39 "//conditions:default": [ 40 "@prebuilt_protoc_linux//:protoc", 41 ], 42 }), 43 outs = ["protoc.exe"], 44 cmd = "cp $< $@", 45 executable = True, 46 visibility = ["//visibility:public"], 47 ) 48 49 filegroup( 50 name = "all_files", 51 testonly = True, 52 srcs = [ 53 "BUILD.bazel", 54 "toolchain.bzl", 55 ], 56 visibility = ["//:__pkg__"], 57 )