xref: /aosp_15_r20/prebuilts/build-tools/BUILD.bazel (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Workerload("@bazel_tools//tools/python:toolchain.bzl", "py_runtime_pair")
2*cda5da8dSAndroid Build Coastguard Workerload(":prebuilt_tool.bzl", "prebuilt_tool")
3*cda5da8dSAndroid Build Coastguard Worker
4*cda5da8dSAndroid Build Coastguard Workerfilegroup(
5*cda5da8dSAndroid Build Coastguard Worker    name = "linux-x86",
6*cda5da8dSAndroid Build Coastguard Worker    srcs = glob([
7*cda5da8dSAndroid Build Coastguard Worker        "common/**",
8*cda5da8dSAndroid Build Coastguard Worker        "linux-x86/bin/*",
9*cda5da8dSAndroid Build Coastguard Worker        "path/linux-x86/*",
10*cda5da8dSAndroid Build Coastguard Worker    ]) + [":linux-x86-libs"],
11*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
12*cda5da8dSAndroid Build Coastguard Worker)
13*cda5da8dSAndroid Build Coastguard Worker
14*cda5da8dSAndroid Build Coastguard Workerfilegroup(
15*cda5da8dSAndroid Build Coastguard Worker    name = "linux-x86-libs",
16*cda5da8dSAndroid Build Coastguard Worker    srcs = glob(["linux-x86/lib64/*"]),
17*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
18*cda5da8dSAndroid Build Coastguard Worker)
19*cda5da8dSAndroid Build Coastguard Worker
20*cda5da8dSAndroid Build Coastguard Workerfilegroup(
21*cda5da8dSAndroid Build Coastguard Worker    name = "linux_musl-x86-libs",
22*cda5da8dSAndroid Build Coastguard Worker    srcs = glob(["linux_musl-x86/lib64/*"]),
23*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
24*cda5da8dSAndroid Build Coastguard Worker)
25*cda5da8dSAndroid Build Coastguard Worker
26*cda5da8dSAndroid Build Coastguard Worker# Used in prebuilt_tool()
27*cda5da8dSAndroid Build Coastguard Workeralias(
28*cda5da8dSAndroid Build Coastguard Worker    name = "libs",
29*cda5da8dSAndroid Build Coastguard Worker    actual = select({
30*cda5da8dSAndroid Build Coastguard Worker        "//build/kernel/kleaf/platforms/libc:glibc": ":linux-x86-libs",
31*cda5da8dSAndroid Build Coastguard Worker        "//build/kernel/kleaf/platforms/libc:musl": ":linux_musl-x86-libs",
32*cda5da8dSAndroid Build Coastguard Worker    }),
33*cda5da8dSAndroid Build Coastguard Worker    target_compatible_with = select({
34*cda5da8dSAndroid Build Coastguard Worker        "//build/kernel/kleaf/platforms/libc:glibc": [],
35*cda5da8dSAndroid Build Coastguard Worker        "//build/kernel/kleaf/platforms/libc:musl": [],
36*cda5da8dSAndroid Build Coastguard Worker        "//conditions:default": ["@platforms//:incompatible"],
37*cda5da8dSAndroid Build Coastguard Worker    }),
38*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
39*cda5da8dSAndroid Build Coastguard Worker)
40*cda5da8dSAndroid Build Coastguard Worker
41*cda5da8dSAndroid Build Coastguard Workerpy_runtime(
42*cda5da8dSAndroid Build Coastguard Worker    name = "python3",
43*cda5da8dSAndroid Build Coastguard Worker    files = ["linux-x86/bin/py3-cmd"],
44*cda5da8dSAndroid Build Coastguard Worker    interpreter = "linux-x86/bin/py3-cmd",
45*cda5da8dSAndroid Build Coastguard Worker    python_version = "PY3",
46*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
47*cda5da8dSAndroid Build Coastguard Worker)
48*cda5da8dSAndroid Build Coastguard Worker
49*cda5da8dSAndroid Build Coastguard Workerpy_runtime_pair(
50*cda5da8dSAndroid Build Coastguard Worker    name = "py_runtime_pair",
51*cda5da8dSAndroid Build Coastguard Worker    py3_runtime = ":python3",
52*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
53*cda5da8dSAndroid Build Coastguard Worker)
54*cda5da8dSAndroid Build Coastguard Worker
55*cda5da8dSAndroid Build Coastguard Workertoolchain(
56*cda5da8dSAndroid Build Coastguard Worker    name = "py_toolchain",
57*cda5da8dSAndroid Build Coastguard Worker    toolchain = ":py_runtime_pair",
58*cda5da8dSAndroid Build Coastguard Worker    toolchain_type = "@bazel_tools//tools/python:toolchain_type",
59*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
60*cda5da8dSAndroid Build Coastguard Worker)
61*cda5da8dSAndroid Build Coastguard Worker
62*cda5da8dSAndroid Build Coastguard Workerpy_runtime(
63*cda5da8dSAndroid Build Coastguard Worker    name = "python3_musl",
64*cda5da8dSAndroid Build Coastguard Worker    files = ["linux_musl-x86/bin/py3-cmd"],
65*cda5da8dSAndroid Build Coastguard Worker    interpreter = "linux_musl-x86/bin/py3-cmd",
66*cda5da8dSAndroid Build Coastguard Worker    python_version = "PY3",
67*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
68*cda5da8dSAndroid Build Coastguard Worker)
69*cda5da8dSAndroid Build Coastguard Worker
70*cda5da8dSAndroid Build Coastguard Workerpy_runtime_pair(
71*cda5da8dSAndroid Build Coastguard Worker    name = "py_runtime_pair_musl",
72*cda5da8dSAndroid Build Coastguard Worker    py3_runtime = ":python3_musl",
73*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
74*cda5da8dSAndroid Build Coastguard Worker)
75*cda5da8dSAndroid Build Coastguard Worker
76*cda5da8dSAndroid Build Coastguard Workertoolchain(
77*cda5da8dSAndroid Build Coastguard Worker    name = "py_toolchain_musl",
78*cda5da8dSAndroid Build Coastguard Worker    exec_compatible_with = [
79*cda5da8dSAndroid Build Coastguard Worker        "@platforms//os:linux",
80*cda5da8dSAndroid Build Coastguard Worker        "@platforms//cpu:x86_64",
81*cda5da8dSAndroid Build Coastguard Worker        "//build/kernel/kleaf/platforms/libc:musl",
82*cda5da8dSAndroid Build Coastguard Worker    ],
83*cda5da8dSAndroid Build Coastguard Worker    toolchain = ":py_runtime_pair_musl",
84*cda5da8dSAndroid Build Coastguard Worker    toolchain_type = "@bazel_tools//tools/python:toolchain_type",
85*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
86*cda5da8dSAndroid Build Coastguard Worker)
87*cda5da8dSAndroid Build Coastguard Worker
88*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
89*cda5da8dSAndroid Build Coastguard Worker    name = "awk",
90*cda5da8dSAndroid Build Coastguard Worker    actual = "one-true-awk",
91*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
92*cda5da8dSAndroid Build Coastguard Worker)
93*cda5da8dSAndroid Build Coastguard Worker
94*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
95*cda5da8dSAndroid Build Coastguard Worker    name = "bc",
96*cda5da8dSAndroid Build Coastguard Worker    actual = "gavinhoward-bc",
97*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
98*cda5da8dSAndroid Build Coastguard Worker)
99*cda5da8dSAndroid Build Coastguard Worker
100*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
101*cda5da8dSAndroid Build Coastguard Worker    name = "bison",
102*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
103*cda5da8dSAndroid Build Coastguard Worker)
104*cda5da8dSAndroid Build Coastguard Worker
105*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
106*cda5da8dSAndroid Build Coastguard Worker    name = "bzip2",
107*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
108*cda5da8dSAndroid Build Coastguard Worker)
109*cda5da8dSAndroid Build Coastguard Worker
110*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
111*cda5da8dSAndroid Build Coastguard Worker    name = "flex",
112*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
113*cda5da8dSAndroid Build Coastguard Worker)
114*cda5da8dSAndroid Build Coastguard Worker
115*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
116*cda5da8dSAndroid Build Coastguard Worker    name = "m4",
117*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
118*cda5da8dSAndroid Build Coastguard Worker)
119*cda5da8dSAndroid Build Coastguard Worker
120*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
121*cda5da8dSAndroid Build Coastguard Worker    name = "make",
122*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
123*cda5da8dSAndroid Build Coastguard Worker)
124*cda5da8dSAndroid Build Coastguard Worker
125*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
126*cda5da8dSAndroid Build Coastguard Worker    name = "openssl",
127*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
128*cda5da8dSAndroid Build Coastguard Worker)
129*cda5da8dSAndroid Build Coastguard Worker
130*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
131*cda5da8dSAndroid Build Coastguard Worker    name = "runextractor",
132*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
133*cda5da8dSAndroid Build Coastguard Worker)
134*cda5da8dSAndroid Build Coastguard Worker
135*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
136*cda5da8dSAndroid Build Coastguard Worker    name = "soong_zip",
137*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
138*cda5da8dSAndroid Build Coastguard Worker)
139*cda5da8dSAndroid Build Coastguard Worker
140*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
141*cda5da8dSAndroid Build Coastguard Worker    name = "toybox",
142*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
143*cda5da8dSAndroid Build Coastguard Worker)
144*cda5da8dSAndroid Build Coastguard Worker
145*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
146*cda5da8dSAndroid Build Coastguard Worker    name = "xz",
147*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
148*cda5da8dSAndroid Build Coastguard Worker)
149*cda5da8dSAndroid Build Coastguard Worker
150*cda5da8dSAndroid Build Coastguard Workerprebuilt_tool(
151*cda5da8dSAndroid Build Coastguard Worker    name = "ziptool",
152*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
153*cda5da8dSAndroid Build Coastguard Worker)
154*cda5da8dSAndroid Build Coastguard Worker
155*cda5da8dSAndroid Build Coastguard Worker# Additional runfiles required by bison
156*cda5da8dSAndroid Build Coastguard Workerfilegroup(
157*cda5da8dSAndroid Build Coastguard Worker    name = "bison.runfiles",
158*cda5da8dSAndroid Build Coastguard Worker    srcs = glob([
159*cda5da8dSAndroid Build Coastguard Worker        "common/bison/**",
160*cda5da8dSAndroid Build Coastguard Worker    ]),
161*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
162*cda5da8dSAndroid Build Coastguard Worker)
163*cda5da8dSAndroid Build Coastguard Worker
164*cda5da8dSAndroid Build Coastguard Worker# Point to the directory so variables can know where to set BISON_PKGDATADIR to
165*cda5da8dSAndroid Build Coastguard Workerfilegroup(
166*cda5da8dSAndroid Build Coastguard Worker    name = "bison.runfiles_dir",
167*cda5da8dSAndroid Build Coastguard Worker    srcs = ["common/bison"],
168*cda5da8dSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
169*cda5da8dSAndroid Build Coastguard Worker)
170