xref: /aosp_15_r20/external/bazelbuild-rules_go/WORKSPACE (revision 9bb1b549b6a84214c53be0924760be030e66b93a)
1*9bb1b549SSpandan Dasworkspace(name = "io_bazel_rules_go")
2*9bb1b549SSpandan Das
3*9bb1b549SSpandan Dasload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
4*9bb1b549SSpandan Dasload("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
5*9bb1b549SSpandan Das
6*9bb1b549SSpandan Dasgo_rules_dependencies()
7*9bb1b549SSpandan Das
8*9bb1b549SSpandan Dasgo_register_toolchains(version = "1.20.2")
9*9bb1b549SSpandan Das
10*9bb1b549SSpandan Dashttp_archive(
11*9bb1b549SSpandan Das    name = "com_google_protobuf",
12*9bb1b549SSpandan Das    sha256 = "75be42bd736f4df6d702a0e4e4d30de9ee40eac024c4b845d17ae4cc831fe4ae",
13*9bb1b549SSpandan Das    strip_prefix = "protobuf-21.7",
14*9bb1b549SSpandan Das    # latest available in BCR, as of 2022-09-30
15*9bb1b549SSpandan Das    urls = [
16*9bb1b549SSpandan Das        "https://github.com/protocolbuffers/protobuf/archive/v21.7.tar.gz",
17*9bb1b549SSpandan Das        "https://mirror.bazel.build/github.com/protocolbuffers/protobuf/archive/v21.7.tar.gz",
18*9bb1b549SSpandan Das    ],
19*9bb1b549SSpandan Das)
20*9bb1b549SSpandan Das
21*9bb1b549SSpandan Dasload("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")
22*9bb1b549SSpandan Das
23*9bb1b549SSpandan Dasprotobuf_deps()
24*9bb1b549SSpandan Das
25*9bb1b549SSpandan Dasload("@io_bazel_rules_go//extras:embed_data_deps.bzl", "go_embed_data_dependencies")
26*9bb1b549SSpandan Das
27*9bb1b549SSpandan Dasgo_embed_data_dependencies()
28*9bb1b549SSpandan Das
29*9bb1b549SSpandan Das# Used by //tests:buildifier_test.
30*9bb1b549SSpandan Dashttp_archive(
31*9bb1b549SSpandan Das    name = "com_github_bazelbuild_buildtools",
32*9bb1b549SSpandan Das    sha256 = "ca524d4df8c91838b9e80543832cf54d945e8045f6a2b9db1a1d02eec20e8b8c",
33*9bb1b549SSpandan Das    strip_prefix = "buildtools-6.0.1",
34*9bb1b549SSpandan Das    # latest, as of 2023-03-27
35*9bb1b549SSpandan Das    urls = ["https://github.com/bazelbuild/buildtools/archive/refs/tags/6.0.1.tar.gz"],
36*9bb1b549SSpandan Das)
37*9bb1b549SSpandan Das
38*9bb1b549SSpandan Das# For manual testing against an LLVM toolchain.
39*9bb1b549SSpandan Das# Use --crosstool_top=@llvm_toolchain//:toolchain
40*9bb1b549SSpandan Dashttp_archive(
41*9bb1b549SSpandan Das    name = "com_grail_bazel_toolchain",
42*9bb1b549SSpandan Das    sha256 = "d312c8e3a19ff843fce3065bb9ff40964401e8525674c842a5724b939cb6e1ac",
43*9bb1b549SSpandan Das    strip_prefix = "bazel-toolchain-0.4.4",
44*9bb1b549SSpandan Das    urls = ["https://github.com/grailbio/bazel-toolchain/archive/0.4.4.tar.gz"],
45*9bb1b549SSpandan Das)
46*9bb1b549SSpandan Das
47*9bb1b549SSpandan Dasload("@com_grail_bazel_toolchain//toolchain:rules.bzl", "llvm_toolchain")
48*9bb1b549SSpandan Das
49*9bb1b549SSpandan Dasllvm_toolchain(
50*9bb1b549SSpandan Das    name = "llvm_toolchain",
51*9bb1b549SSpandan Das    llvm_version = "8.0.0",
52*9bb1b549SSpandan Das)
53*9bb1b549SSpandan Das
54*9bb1b549SSpandan Dashttp_archive(
55*9bb1b549SSpandan Das    name = "bazelci_rules",
56*9bb1b549SSpandan Das    sha256 = "eca21884e6f66a88c358e580fd67a6b148d30ab57b1680f62a96c00f9bc6a07e",
57*9bb1b549SSpandan Das    strip_prefix = "bazelci_rules-1.0.0",
58*9bb1b549SSpandan Das    url = "https://github.com/bazelbuild/continuous-integration/releases/download/rules-1.0.0/bazelci_rules-1.0.0.tar.gz",
59*9bb1b549SSpandan Das)
60*9bb1b549SSpandan Das
61*9bb1b549SSpandan Dasload("@bazelci_rules//:rbe_repo.bzl", "rbe_preconfig")
62*9bb1b549SSpandan Das
63*9bb1b549SSpandan Das# Creates a default toolchain config for RBE.
64*9bb1b549SSpandan Das# Use this as is if you are using the rbe_ubuntu16_04 container,
65*9bb1b549SSpandan Das# otherwise refer to RBE docs.
66*9bb1b549SSpandan Dasrbe_preconfig(
67*9bb1b549SSpandan Das    name = "buildkite_config",
68*9bb1b549SSpandan Das    toolchain = "ubuntu1804-bazel-java11",
69*9bb1b549SSpandan Das)
70*9bb1b549SSpandan Das
71*9bb1b549SSpandan Das# Needed for tests and tools
72*9bb1b549SSpandan Dasload("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
73*9bb1b549SSpandan Das
74*9bb1b549SSpandan Dasbazel_skylib_workspace()
75*9bb1b549SSpandan Das
76*9bb1b549SSpandan Dashttp_archive(
77*9bb1b549SSpandan Das    name = "bazel_gazelle",
78*9bb1b549SSpandan Das    sha256 = "727f3e4edd96ea20c29e8c2ca9e8d2af724d8c7778e7923a854b2c80952bc405",
79*9bb1b549SSpandan Das    urls = [
80*9bb1b549SSpandan Das        "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.30.0/bazel-gazelle-v0.30.0.tar.gz",
81*9bb1b549SSpandan Das        "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.30.0/bazel-gazelle-v0.30.0.tar.gz",
82*9bb1b549SSpandan Das    ],
83*9bb1b549SSpandan Das)
84*9bb1b549SSpandan Das
85*9bb1b549SSpandan Dasload("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository")
86*9bb1b549SSpandan Das
87*9bb1b549SSpandan Dasgo_repository(
88*9bb1b549SSpandan Das    name = "com_github_google_go_github_v36",
89*9bb1b549SSpandan Das    importpath = "github.com/google/go-github/v36",
90*9bb1b549SSpandan Das    sum = "h1:ndCzM616/oijwufI7nBRa+5eZHLldT+4yIB68ib5ogs=",
91*9bb1b549SSpandan Das    version = "v36.0.0",
92*9bb1b549SSpandan Das)
93*9bb1b549SSpandan Das
94*9bb1b549SSpandan Dasgo_repository(
95*9bb1b549SSpandan Das    name = "com_github_google_go_querystring",
96*9bb1b549SSpandan Das    importpath = "github.com/google/go-querystring",
97*9bb1b549SSpandan Das    sum = "h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=",
98*9bb1b549SSpandan Das    version = "v1.1.0",
99*9bb1b549SSpandan Das)
100*9bb1b549SSpandan Das
101*9bb1b549SSpandan Dasgo_repository(
102*9bb1b549SSpandan Das    name = "org_golang_x_mod",
103*9bb1b549SSpandan Das    importpath = "golang.org/x/mod",
104*9bb1b549SSpandan Das    sum = "h1:KENHtAZL2y3NLMYZeHY9DW8HW8V+kQyJsY/V9JlKvCs=",
105*9bb1b549SSpandan Das    version = "v0.9.0",
106*9bb1b549SSpandan Das)
107*9bb1b549SSpandan Das
108*9bb1b549SSpandan Dasgo_repository(
109*9bb1b549SSpandan Das    name = "org_golang_x_sync",
110*9bb1b549SSpandan Das    importpath = "golang.org/x/sync",
111*9bb1b549SSpandan Das    sum = "h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o=",
112*9bb1b549SSpandan Das    version = "v0.1.0",
113*9bb1b549SSpandan Das)
114*9bb1b549SSpandan Das
115*9bb1b549SSpandan Dasgo_repository(
116*9bb1b549SSpandan Das    name = "org_golang_x_oauth2",
117*9bb1b549SSpandan Das    importpath = "golang.org/x/oauth2",
118*9bb1b549SSpandan Das    sum = "h1:Lh8GPgSKBfWSwFvtuWOfeI3aAAnbXTSutYxJiOJFgIw=",
119*9bb1b549SSpandan Das    version = "v0.6.0",
120*9bb1b549SSpandan Das)
121*9bb1b549SSpandan Das
122*9bb1b549SSpandan Das# TODO(sluongng): Gazelle v0.25.0 switched to static dependency resolution which cause
123*9bb1b549SSpandan Das# build files generation in external dependencies to wrongly resolve these repositories.
124*9bb1b549SSpandan Das# We should investigate in Gazelle why this happen and fix it.
125*9bb1b549SSpandan Das# For now, use manual mapping as a workaround.
126*9bb1b549SSpandan Das#
127*9bb1b549SSpandan Das# gazelle:repository go_repository name=org_golang_x_tools   importpath=golang.org/x/tools
128*9bb1b549SSpandan Das# gazelle:repository go_repository name=org_golang_x_text    importpath=golang.org/x/text
129*9bb1b549SSpandan Das# gazelle:repository go_repository name=org_golang_x_xerrors importpath=golang.org/x/xerrors
130*9bb1b549SSpandan Das# gazelle:repository go_repository name=org_golang_x_net     importpath=golang.org/x/net
131*9bb1b549SSpandan Das# gazelle:repository go_repository name=org_golang_x_sys     importpath=golang.org/x/sys
132*9bb1b549SSpandan Das# gazelle:repository go_repository name=org_golang_x_crypto  importpath=golang.org/x/crypto
133*9bb1b549SSpandan Das
134*9bb1b549SSpandan Dasload("@io_bazel_rules_go//tests/legacy/test_chdir:remote.bzl", "test_chdir_remote")
135*9bb1b549SSpandan Das
136*9bb1b549SSpandan Dastest_chdir_remote()
137*9bb1b549SSpandan Das
138*9bb1b549SSpandan Dasload("@io_bazel_rules_go//tests/integration/popular_repos:popular_repos.bzl", "popular_repos")
139*9bb1b549SSpandan Das
140*9bb1b549SSpandan Daspopular_repos()
141*9bb1b549SSpandan Das
142*9bb1b549SSpandan Dasload("@io_bazel_rules_go//tests:grpc_repos.bzl", "grpc_dependencies")
143*9bb1b549SSpandan Das
144*9bb1b549SSpandan Dasgrpc_dependencies()
145*9bb1b549SSpandan Das
146*9bb1b549SSpandan Dasgazelle_dependencies()
147*9bb1b549SSpandan Das
148*9bb1b549SSpandan Daslocal_repository(
149*9bb1b549SSpandan Das    name = "runfiles_remote_test",
150*9bb1b549SSpandan Das    path = "tests/core/runfiles/runfiles_remote_test",
151*9bb1b549SSpandan Das)
152*9bb1b549SSpandan Das
153*9bb1b549SSpandan Das# For API doc generation
154*9bb1b549SSpandan Das# This is a dev dependency, users should not need to install it
155*9bb1b549SSpandan Das# so we declare it in the WORKSPACE
156*9bb1b549SSpandan Dashttp_archive(
157*9bb1b549SSpandan Das    name = "io_bazel_stardoc",
158*9bb1b549SSpandan Das    sha256 = "3fd8fec4ddec3c670bd810904e2e33170bedfe12f90adf943508184be458c8bb",
159*9bb1b549SSpandan Das    urls = [
160*9bb1b549SSpandan Das        "https://mirror.bazel.build/github.com/bazelbuild/stardoc/releases/download/0.5.3/stardoc-0.5.3.tar.gz",
161*9bb1b549SSpandan Das        "https://github.com/bazelbuild/stardoc/releases/download/0.5.3/stardoc-0.5.3.tar.gz",
162*9bb1b549SSpandan Das    ],
163*9bb1b549SSpandan Das)
164*9bb1b549SSpandan Das
165*9bb1b549SSpandan Dasload("@io_bazel_stardoc//:setup.bzl", "stardoc_repositories")
166*9bb1b549SSpandan Das
167*9bb1b549SSpandan Dasstardoc_repositories()
168*9bb1b549SSpandan Das
169*9bb1b549SSpandan Das# For testing objc_library interop, users should not need to install it
170*9bb1b549SSpandan Dashttp_archive(
171*9bb1b549SSpandan Das    name = "build_bazel_apple_support",
172*9bb1b549SSpandan Das    sha256 = "77a121a0f5d4cd88824429464ad2bfb54bdc8a3bccdb4d31a6c846003a3f5e44",
173*9bb1b549SSpandan Das    url = "https://github.com/bazelbuild/apple_support/releases/download/1.4.1/apple_support.1.4.1.tar.gz",
174*9bb1b549SSpandan Das)
175*9bb1b549SSpandan Das
176*9bb1b549SSpandan Dasload(
177*9bb1b549SSpandan Das    "@build_bazel_apple_support//lib:repositories.bzl",
178*9bb1b549SSpandan Das    "apple_support_dependencies",
179*9bb1b549SSpandan Das)
180*9bb1b549SSpandan Das
181*9bb1b549SSpandan Dasapple_support_dependencies()
182