# Copyright (C) 2022 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. load("@bazel_skylib//lib:paths.bzl", "paths") load("//build/bazel/rules:proto_file_utils.bzl", "proto_file_utils") _TYPE_DICTIONARY = {".py": "_pb2.py"} def _py_proto_sources_gen_rule_impl(ctx): out_files_map = proto_file_utils.generate_proto_action( proto_infos = [dep[ProtoInfo] for dep in ctx.attr.deps], protoc = ctx.executable._protoc, ctx = ctx, type_dictionary = _TYPE_DICTIONARY, out_flags = [], plugin_executable = None, out_arg = "--python_out", mnemonic = "PyProtoGen", transitive_proto_infos = [dep[ProtoInfo] for dep in ctx.attr.transitive_deps], ) # proto_file_utils generates the files at /