1*8975f5c5SAndroid Build Coastguard Worker# -*- bazel-starlark -*- 2*8975f5c5SAndroid Build Coastguard Worker# Copyright 2023 The Chromium Authors 3*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 4*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file. 5*8975f5c5SAndroid Build Coastguard Worker"""Siso configuration for proto/linux.""" 6*8975f5c5SAndroid Build Coastguard Worker 7*8975f5c5SAndroid Build Coastguard Workerload("@builtin//path.star", "path") 8*8975f5c5SAndroid Build Coastguard Workerload("@builtin//struct.star", "module") 9*8975f5c5SAndroid Build Coastguard Workerload("./config.star", "config") 10*8975f5c5SAndroid Build Coastguard Worker 11*8975f5c5SAndroid Build Coastguard Workerdef __filegroups(ctx): 12*8975f5c5SAndroid Build Coastguard Worker return {} 13*8975f5c5SAndroid Build Coastguard Worker 14*8975f5c5SAndroid Build Coastguard Workerdef __step_config(ctx, step_config): 15*8975f5c5SAndroid Build Coastguard Worker remote_run = True # Turn this to False when you do file access trace. 16*8975f5c5SAndroid Build Coastguard Worker step_config["rules"].extend([ 17*8975f5c5SAndroid Build Coastguard Worker { 18*8975f5c5SAndroid Build Coastguard Worker "name": "proto/protoc_wrapper", 19*8975f5c5SAndroid Build Coastguard Worker "command_prefix": "python3 ../../tools/protoc_wrapper/protoc_wrapper.py", 20*8975f5c5SAndroid Build Coastguard Worker "exclude_input_patterns": [ 21*8975f5c5SAndroid Build Coastguard Worker "*.o", 22*8975f5c5SAndroid Build Coastguard Worker "*.a", 23*8975f5c5SAndroid Build Coastguard Worker "*.h", 24*8975f5c5SAndroid Build Coastguard Worker "*.cc", 25*8975f5c5SAndroid Build Coastguard Worker # "*_pb2.py", 26*8975f5c5SAndroid Build Coastguard Worker ], 27*8975f5c5SAndroid Build Coastguard Worker # TODO(https://crrev.com/c/6057248): remove this after 28*8975f5c5SAndroid Build Coastguard Worker # proto_library.gni change. 29*8975f5c5SAndroid Build Coastguard Worker "inputs": [ 30*8975f5c5SAndroid Build Coastguard Worker "third_party/protobuf/src/google/protobuf/descriptor.proto", 31*8975f5c5SAndroid Build Coastguard Worker ], 32*8975f5c5SAndroid Build Coastguard Worker "remote": remote_run, 33*8975f5c5SAndroid Build Coastguard Worker # chromeos generates default.profraw? 34*8975f5c5SAndroid Build Coastguard Worker "ignore_extra_output_pattern": ".*default.profraw", 35*8975f5c5SAndroid Build Coastguard Worker # "deps": "depfile", 36*8975f5c5SAndroid Build Coastguard Worker "output_local": True, 37*8975f5c5SAndroid Build Coastguard Worker "timeout": "2m", 38*8975f5c5SAndroid Build Coastguard Worker }, 39*8975f5c5SAndroid Build Coastguard Worker ]) 40*8975f5c5SAndroid Build Coastguard Worker return step_config 41*8975f5c5SAndroid Build Coastguard Worker 42*8975f5c5SAndroid Build Coastguard Workerproto = module( 43*8975f5c5SAndroid Build Coastguard Worker "proto", 44*8975f5c5SAndroid Build Coastguard Worker step_config = __step_config, 45*8975f5c5SAndroid Build Coastguard Worker filegroups = __filegroups, 46*8975f5c5SAndroid Build Coastguard Worker handlers = {}, 47*8975f5c5SAndroid Build Coastguard Worker) 48