xref: /aosp_15_r20/external/bazelbuild-rules_go/go/private/rules/BUILD.bazel (revision 9bb1b549b6a84214c53be0924760be030e66b93a)
1load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
2load("@bazel_skylib//rules:common_settings.bzl", "string_setting")
3load(
4    ":transition.bzl",
5    "TRANSITIONED_GO_SETTING_KEYS",
6)
7
8exports_files(["library.bzl"])
9
10[
11    string_setting(
12        name = "original_" + setting.split(":")[1],
13        build_setting_default = "",
14        visibility = ["//visibility:private"],
15    )
16    for setting in TRANSITIONED_GO_SETTING_KEYS
17]
18
19filegroup(
20    name = "all_rules",
21    srcs = glob(["**/*.bzl"]),
22    visibility = ["//visibility:public"],
23)
24
25filegroup(
26    name = "all_files",
27    testonly = True,
28    srcs = glob(["**"]),
29    visibility = ["//visibility:public"],
30)
31
32bzl_library(
33    name = "binary",
34    srcs = ["binary.bzl"],
35    visibility = [
36        "//docs:__subpackages__",
37        "//go:__subpackages__",
38    ],
39    deps = [
40        "//go/private:common",
41        "//go/private:context",
42        "//go/private:mode",
43        "//go/private:providers",
44        "//go/private:rpath",
45        "//go/private/rules:transition",
46    ],
47)
48
49bzl_library(
50    name = "cgo",
51    srcs = ["cgo.bzl"],
52    visibility = ["//go:__subpackages__"],
53    deps = [
54        "//go/private:common",
55        "//go/private:mode",
56    ],  # keep
57)
58
59bzl_library(
60    name = "info",
61    srcs = ["info.bzl"],
62    visibility = ["//go:__subpackages__"],
63    deps = ["//go/private:context"],
64)
65
66bzl_library(
67    name = "library",
68    srcs = ["library.bzl"],
69    visibility = [
70        "//docs:__subpackages__",
71        "//go:__subpackages__",
72    ],
73    deps = [
74        "//go/private:common",
75        "//go/private:context",
76        "//go/private:providers",
77    ],
78)
79
80bzl_library(
81    name = "nogo",
82    srcs = ["nogo.bzl"],
83    visibility = ["//go:__subpackages__"],
84    deps = [
85        "//go/private:context",
86        "//go/private:providers",
87        "//go/private/rules:transition",
88    ],
89)
90
91bzl_library(
92    name = "sdk",
93    srcs = ["sdk.bzl"],
94    visibility = ["//go:__subpackages__"],
95    deps = ["//go/private:providers"],
96)
97
98bzl_library(
99    name = "source",
100    srcs = ["source.bzl"],
101    visibility = [
102        "//docs:__subpackages__",
103        "//go:__subpackages__",
104    ],
105    deps = [
106        "//go/private:context",
107        "//go/private:providers",
108    ],
109)
110
111bzl_library(
112    name = "stdlib",
113    srcs = ["stdlib.bzl"],
114    visibility = ["//go:__subpackages__"],
115    deps = [
116        "//go/private:context",
117        "//go/private:providers",
118    ],
119)
120
121bzl_library(
122    name = "test",
123    srcs = ["test.bzl"],
124    visibility = [
125        "//docs:__subpackages__",
126        "//go:__subpackages__",
127    ],
128    deps = [
129        "//go/private:common",
130        "//go/private:context",
131        "//go/private:mode",
132        "//go/private:providers",
133        "//go/private/rules:binary",
134        "//go/private/rules:transition",
135        "@bazel_skylib//lib:structs",
136    ],
137)
138
139bzl_library(
140    name = "transition",
141    srcs = ["transition.bzl"],
142    visibility = [
143        "//go:__subpackages__",
144        "//proto:__pkg__",
145    ],
146    deps = [
147        "//go/private:mode",
148        "//go/private:platforms",
149        "//go/private:providers",
150    ],
151)
152
153bzl_library(
154    name = "cross",
155    srcs = ["cross.bzl"],
156    visibility = [
157        "//docs:__subpackages__",
158        "//go:__subpackages__",
159    ],
160    deps = [
161        "//go/private:providers",
162        "//go/private/rules:transition",
163    ],
164)
165
166bzl_library(
167    name = "wrappers",
168    srcs = ["wrappers.bzl"],
169    visibility = [
170        "//extras:__pkg__",
171        "//go:__subpackages__",
172    ],
173    deps = [
174        "//go/private/rules:binary",
175        "//go/private/rules:cgo",
176        "//go/private/rules:cross",
177        "//go/private/rules:library",
178        "//go/private/rules:test",
179        "//go/private/rules:transition",
180    ],
181)
182