xref: /aosp_15_r20/external/skia/infra/BUILD.bazel (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workerload("//bazel:macros.bzl", "gazelle")
2*c8dee2aaSAndroid Build Coastguard Worker
3*c8dee2aaSAndroid Build Coastguard Workerpackage(
4*c8dee2aaSAndroid Build Coastguard Worker    default_applicable_licenses = ["//:license"],
5*c8dee2aaSAndroid Build Coastguard Worker)
6*c8dee2aaSAndroid Build Coastguard Worker
7*c8dee2aaSAndroid Build Coastguard Workerlicenses(["notice"])
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard Workergazelle(
10*c8dee2aaSAndroid Build Coastguard Worker    name = "gazelle",
11*c8dee2aaSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
12*c8dee2aaSAndroid Build Coastguard Worker)
13*c8dee2aaSAndroid Build Coastguard Worker
14*c8dee2aaSAndroid Build Coastguard Workeralias(
15*c8dee2aaSAndroid Build Coastguard Worker    name = "mockery",
16*c8dee2aaSAndroid Build Coastguard Worker    actual = "@com_github_vektra_mockery_v2//:v2",
17*c8dee2aaSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
18*c8dee2aaSAndroid Build Coastguard Worker)
19*c8dee2aaSAndroid Build Coastguard Worker
20*c8dee2aaSAndroid Build Coastguard Worker# Non-predefined variables must be escaped with "$$" (e.g. "$$FOO"); see
21*c8dee2aaSAndroid Build Coastguard Worker# https://bazel.build/reference/be/make-variables#predefined_label_variables.
22*c8dee2aaSAndroid Build Coastguard Worker#
23*c8dee2aaSAndroid Build Coastguard Worker# Based on
24*c8dee2aaSAndroid Build Coastguard Worker# https://skia.googlesource.com/buildbot/+/c397c94283b79a792a76812cd43a6ac5d5282ddf/bazel/tools/errcheck/BUILD.bazel#1.
25*c8dee2aaSAndroid Build Coastguard Worker_ERRCHECK_SCRIPT = """
26*c8dee2aaSAndroid Build Coastguard Worker# Add the "go" binary to PATH.
27*c8dee2aaSAndroid Build Coastguard WorkerGO_PATH=$$(realpath $$(dirname $(rootpath @go_sdk//:bin/go)))
28*c8dee2aaSAndroid Build Coastguard Workerexport PATH=$$GO_PATH:$$PATH
29*c8dee2aaSAndroid Build Coastguard Worker
30*c8dee2aaSAndroid Build Coastguard Worker# Path to the "errcheck" binary.
31*c8dee2aaSAndroid Build Coastguard WorkerERRCHECK=$$(realpath $(rootpath @com_github_kisielk_errcheck//:errcheck))
32*c8dee2aaSAndroid Build Coastguard Worker
33*c8dee2aaSAndroid Build Coastguard Worker# Change into the directory where Bazel was invoked.
34*c8dee2aaSAndroid Build Coastguard Workercd $$BUILD_WORKING_DIRECTORY
35*c8dee2aaSAndroid Build Coastguard Worker
36*c8dee2aaSAndroid Build Coastguard Worker$$ERRCHECK $$@
37*c8dee2aaSAndroid Build Coastguard Worker"""
38*c8dee2aaSAndroid Build Coastguard Worker
39*c8dee2aaSAndroid Build Coastguard Worker# Based on
40*c8dee2aaSAndroid Build Coastguard Worker# https://skia.googlesource.com/buildbot/+/c397c94283b79a792a76812cd43a6ac5d5282ddf/bazel/tools/errcheck/BUILD.bazel#17.
41*c8dee2aaSAndroid Build Coastguard Workergenrule(
42*c8dee2aaSAndroid Build Coastguard Worker    name = "gen_errcheck",
43*c8dee2aaSAndroid Build Coastguard Worker    outs = ["errcheck.sh"],
44*c8dee2aaSAndroid Build Coastguard Worker    cmd = "echo '%s' > $@" % _ERRCHECK_SCRIPT,
45*c8dee2aaSAndroid Build Coastguard Worker    tools = [
46*c8dee2aaSAndroid Build Coastguard Worker        "@com_github_kisielk_errcheck//:errcheck",
47*c8dee2aaSAndroid Build Coastguard Worker        "@go_sdk//:bin/go",
48*c8dee2aaSAndroid Build Coastguard Worker    ],
49*c8dee2aaSAndroid Build Coastguard Worker)
50*c8dee2aaSAndroid Build Coastguard Worker
51*c8dee2aaSAndroid Build Coastguard Worker# Wrapper script around the "errcheck" binary.
52*c8dee2aaSAndroid Build Coastguard Worker#
53*c8dee2aaSAndroid Build Coastguard Worker# Errcheck requires the "go" binary to be in PATH. This scripts adds the Bazel-downloaded "go"
54*c8dee2aaSAndroid Build Coastguard Worker# binary to PATH, then forwards all command-line arguments to the "errcheck" binary.
55*c8dee2aaSAndroid Build Coastguard Worker#
56*c8dee2aaSAndroid Build Coastguard Worker# Reference: https://bazel.build/reference/be/shell#sh_binary.
57*c8dee2aaSAndroid Build Coastguard Worker#
58*c8dee2aaSAndroid Build Coastguard Worker# Based on
59*c8dee2aaSAndroid Build Coastguard Worker# https://skia.googlesource.com/buildbot/+/c397c94283b79a792a76812cd43a6ac5d5282ddf/bazel/tools/errcheck/BUILD.bazel#27
60*c8dee2aaSAndroid Build Coastguard Workersh_binary(
61*c8dee2aaSAndroid Build Coastguard Worker    name = "errcheck",
62*c8dee2aaSAndroid Build Coastguard Worker    srcs = ["errcheck.sh"],
63*c8dee2aaSAndroid Build Coastguard Worker    data = [
64*c8dee2aaSAndroid Build Coastguard Worker        "@com_github_kisielk_errcheck//:errcheck",
65*c8dee2aaSAndroid Build Coastguard Worker        "@go_sdk//:bin/go",
66*c8dee2aaSAndroid Build Coastguard Worker    ],
67*c8dee2aaSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
68*c8dee2aaSAndroid Build Coastguard Worker)
69