xref: /aosp_15_r20/external/bazelbuild-rules_python/tools/precompiler/BUILD.bazel (revision 60517a1edbc8ecf509223e9af94a7adec7d736b8)
1*60517a1eSAndroid Build Coastguard Worker# Copyright 2017 The Bazel Authors. All rights reserved.
2*60517a1eSAndroid Build Coastguard Worker#
3*60517a1eSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
4*60517a1eSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
5*60517a1eSAndroid Build Coastguard Worker# You may obtain a copy of the License at
6*60517a1eSAndroid Build Coastguard Worker#
7*60517a1eSAndroid Build Coastguard Worker#    http://www.apache.org/licenses/LICENSE-2.0
8*60517a1eSAndroid Build Coastguard Worker#
9*60517a1eSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*60517a1eSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
11*60517a1eSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*60517a1eSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
13*60517a1eSAndroid Build Coastguard Worker# limitations under the License.
14*60517a1eSAndroid Build Coastguard Worker
15*60517a1eSAndroid Build Coastguard Workerload("@bazel_skylib//rules:common_settings.bzl", "string_list_flag")
16*60517a1eSAndroid Build Coastguard Workerload("//python/private:py_interpreter_program.bzl", "py_interpreter_program")  # buildifier: disable=bzl-visibility
17*60517a1eSAndroid Build Coastguard Worker
18*60517a1eSAndroid Build Coastguard Workerfilegroup(
19*60517a1eSAndroid Build Coastguard Worker    name = "distribution",
20*60517a1eSAndroid Build Coastguard Worker    srcs = glob(["**"]),
21*60517a1eSAndroid Build Coastguard Worker    visibility = ["//:__subpackages__"],
22*60517a1eSAndroid Build Coastguard Worker)
23*60517a1eSAndroid Build Coastguard Worker
24*60517a1eSAndroid Build Coastguard Workerpy_interpreter_program(
25*60517a1eSAndroid Build Coastguard Worker    name = "precompiler",
26*60517a1eSAndroid Build Coastguard Worker    execution_requirements = ":execution_requirements",
27*60517a1eSAndroid Build Coastguard Worker    main = "precompiler.py",
28*60517a1eSAndroid Build Coastguard Worker    visibility = [
29*60517a1eSAndroid Build Coastguard Worker        # Not actually public. Only public so rules_python-generated toolchains
30*60517a1eSAndroid Build Coastguard Worker        # are able to reference it.
31*60517a1eSAndroid Build Coastguard Worker        "//visibility:public",
32*60517a1eSAndroid Build Coastguard Worker    ],
33*60517a1eSAndroid Build Coastguard Worker)
34*60517a1eSAndroid Build Coastguard Worker
35*60517a1eSAndroid Build Coastguard Workerstring_list_flag(
36*60517a1eSAndroid Build Coastguard Worker    name = "execution_requirements",
37*60517a1eSAndroid Build Coastguard Worker    build_setting_default = [
38*60517a1eSAndroid Build Coastguard Worker        "supports-workers=1",
39*60517a1eSAndroid Build Coastguard Worker        "requires-worker-protocol=json",
40*60517a1eSAndroid Build Coastguard Worker        "supports-multiplex-sandboxing=1",
41*60517a1eSAndroid Build Coastguard Worker        "supports-multiplex-workers=1",
42*60517a1eSAndroid Build Coastguard Worker        "supports-worker-cancellation=1",
43*60517a1eSAndroid Build Coastguard Worker    ],
44*60517a1eSAndroid Build Coastguard Worker)
45