xref: /aosp_15_r20/external/bazelbuild-rules_go/go/BUILD.bazel (revision 9bb1b549b6a84214c53be0924760be030e66b93a)
1*9bb1b549SSpandan Dasload("@bazel_skylib//:bzl_library.bzl", "bzl_library")
2*9bb1b549SSpandan Das
3*9bb1b549SSpandan Das# The 'go' binary of the current Go toolchain compatible with the host.
4*9bb1b549SSpandan Das# Use this with `bazel run` to perform utility actions such as `go mod tidy` in
5*9bb1b549SSpandan Das# a hermetic fashion.
6*9bb1b549SSpandan Das# Note: This is not meant to and cannot be used as a tool in e.g. a genrule. If
7*9bb1b549SSpandan Das# you need this functionality, please file an issue describing your use case.
8*9bb1b549SSpandan Dasalias(
9*9bb1b549SSpandan Das    name = "go",
10*9bb1b549SSpandan Das    actual = "//go/tools/go_bin_runner",
11*9bb1b549SSpandan Das    visibility = ["//visibility:public"],
12*9bb1b549SSpandan Das)
13*9bb1b549SSpandan Das
14*9bb1b549SSpandan Dasfilegroup(
15*9bb1b549SSpandan Das    name = "all_files",
16*9bb1b549SSpandan Das    testonly = True,
17*9bb1b549SSpandan Das    srcs = glob(["**"]) + [
18*9bb1b549SSpandan Das        "//go/config:all_files",
19*9bb1b549SSpandan Das        "//go/constraints/amd64:all_files",
20*9bb1b549SSpandan Das        "//go/platform:all_files",
21*9bb1b549SSpandan Das        "//go/runfiles:all_files",
22*9bb1b549SSpandan Das        "//go/toolchain:all_files",
23*9bb1b549SSpandan Das        "//go/tools:all_files",
24*9bb1b549SSpandan Das        "//go/private:all_files",
25*9bb1b549SSpandan Das    ],
26*9bb1b549SSpandan Das    visibility = ["//visibility:public"],
27*9bb1b549SSpandan Das)
28*9bb1b549SSpandan Das
29*9bb1b549SSpandan Dasfilegroup(
30*9bb1b549SSpandan Das    name = "all_rules",
31*9bb1b549SSpandan Das    srcs = glob(["*.bzl"]) + [
32*9bb1b549SSpandan Das        "//go/platform:all_rules",
33*9bb1b549SSpandan Das        "//go/private:all_rules",
34*9bb1b549SSpandan Das        "//go/toolchain:all_rules",
35*9bb1b549SSpandan Das    ],
36*9bb1b549SSpandan Das    visibility = ["//visibility:public"],
37*9bb1b549SSpandan Das)
38*9bb1b549SSpandan Das
39*9bb1b549SSpandan Dastoolchain_type(
40*9bb1b549SSpandan Das    name = "toolchain",
41*9bb1b549SSpandan Das    visibility = ["//visibility:public"],
42*9bb1b549SSpandan Das)
43*9bb1b549SSpandan Das
44*9bb1b549SSpandan Dasbzl_library(
45*9bb1b549SSpandan Das    name = "def",
46*9bb1b549SSpandan Das    srcs = ["def.bzl"],
47*9bb1b549SSpandan Das    visibility = ["//visibility:public"],
48*9bb1b549SSpandan Das    deps = [
49*9bb1b549SSpandan Das        "//extras:embed_data",
50*9bb1b549SSpandan Das        "//extras:gomock",
51*9bb1b549SSpandan Das        "//go/private:context",
52*9bb1b549SSpandan Das        "//go/private:go_toolchain",
53*9bb1b549SSpandan Das        "//go/private:providers",
54*9bb1b549SSpandan Das        "//go/private/rules:library",
55*9bb1b549SSpandan Das        "//go/private/rules:nogo",
56*9bb1b549SSpandan Das        "//go/private/rules:sdk",
57*9bb1b549SSpandan Das        "//go/private/rules:source",
58*9bb1b549SSpandan Das        "//go/private/rules:wrappers",
59*9bb1b549SSpandan Das        "//go/private/tools:path",
60*9bb1b549SSpandan Das    ],
61*9bb1b549SSpandan Das)
62*9bb1b549SSpandan Das
63*9bb1b549SSpandan Dasbzl_library(
64*9bb1b549SSpandan Das    name = "deps",
65*9bb1b549SSpandan Das    srcs = ["deps.bzl"],
66*9bb1b549SSpandan Das    visibility = ["//visibility:public"],
67*9bb1b549SSpandan Das    deps = [
68*9bb1b549SSpandan Das        "//go/private:repositories",
69*9bb1b549SSpandan Das        "//go/private:sdk",
70*9bb1b549SSpandan Das    ],
71*9bb1b549SSpandan Das)
72