1*b7c941bbSAndroid Build Coastguard Worker// Copyright (C) 2024 The Android Open Source Project 2*b7c941bbSAndroid Build Coastguard Worker// 3*b7c941bbSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*b7c941bbSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*b7c941bbSAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*b7c941bbSAndroid Build Coastguard Worker// 7*b7c941bbSAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*b7c941bbSAndroid Build Coastguard Worker// 9*b7c941bbSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*b7c941bbSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*b7c941bbSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*b7c941bbSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*b7c941bbSAndroid Build Coastguard Worker// limitations under the License. 14*b7c941bbSAndroid Build Coastguard Worker 15*b7c941bbSAndroid Build Coastguard Workergenrule { 16*b7c941bbSAndroid Build Coastguard Worker name: "mpc_requirements_binarypb", 17*b7c941bbSAndroid Build Coastguard Worker tools: ["aprotoc"], 18*b7c941bbSAndroid Build Coastguard Worker srcs: [ 19*b7c941bbSAndroid Build Coastguard Worker "mpc.proto", 20*b7c941bbSAndroid Build Coastguard Worker "requirements.proto", 21*b7c941bbSAndroid Build Coastguard Worker "requirements.txtpb", 22*b7c941bbSAndroid Build Coastguard Worker ], 23*b7c941bbSAndroid Build Coastguard Worker out: ["requirements.binpb"], 24*b7c941bbSAndroid Build Coastguard Worker cmd: "$(location aprotoc) " + 25*b7c941bbSAndroid Build Coastguard Worker " --encode=android.media.performanceclass.requirements.RequirementList" + 26*b7c941bbSAndroid Build Coastguard Worker " $(location mpc.proto)" + 27*b7c941bbSAndroid Build Coastguard Worker " $(location requirements.proto)" + 28*b7c941bbSAndroid Build Coastguard Worker " < $(location requirements.txtpb)" + 29*b7c941bbSAndroid Build Coastguard Worker " > $(location requirements.binpb)", 30*b7c941bbSAndroid Build Coastguard Worker} 31*b7c941bbSAndroid Build Coastguard Worker 32*b7c941bbSAndroid Build Coastguard Workerblueprint_go_binary { 33*b7c941bbSAndroid Build Coastguard Worker name: "genreqsrc", 34*b7c941bbSAndroid Build Coastguard Worker srcs: ["genreqsrc.go"], 35*b7c941bbSAndroid Build Coastguard Worker deps: ["requirements"], 36*b7c941bbSAndroid Build Coastguard Worker} 37*b7c941bbSAndroid Build Coastguard Worker 38*b7c941bbSAndroid Build Coastguard Workerbootstrap_go_package { 39*b7c941bbSAndroid Build Coastguard Worker name: "requirements", 40*b7c941bbSAndroid Build Coastguard Worker pkgPath: "cts/test/mediapc/requirements/requirements", 41*b7c941bbSAndroid Build Coastguard Worker srcs: [ 42*b7c941bbSAndroid Build Coastguard Worker "requirements.go", 43*b7c941bbSAndroid Build Coastguard Worker ], 44*b7c941bbSAndroid Build Coastguard Worker deps: [ 45*b7c941bbSAndroid Build Coastguard Worker "templatefns", 46*b7c941bbSAndroid Build Coastguard Worker "golang-protobuf-proto", 47*b7c941bbSAndroid Build Coastguard Worker "requirements_go_proto", 48*b7c941bbSAndroid Build Coastguard Worker ], 49*b7c941bbSAndroid Build Coastguard Worker} 50*b7c941bbSAndroid Build Coastguard Worker 51*b7c941bbSAndroid Build Coastguard Worker// Regenerate the go proto srcs with these commands 52*b7c941bbSAndroid Build Coastguard Worker// m aprotoc protoc-go-gen && \ 53*b7c941bbSAndroid Build Coastguard Worker// aprotoc \ 54*b7c941bbSAndroid Build Coastguard Worker// --go_out=paths=source_relative:. \ 55*b7c941bbSAndroid Build Coastguard Worker// cts/tests/mediapc/requirements/mpc.proto \ 56*b7c941bbSAndroid Build Coastguard Worker// cts/tests/mediapc/requirements/requirements.proto 57*b7c941bbSAndroid Build Coastguard Worker 58*b7c941bbSAndroid Build Coastguard Workerbootstrap_go_package { 59*b7c941bbSAndroid Build Coastguard Worker name: "requirements_go_proto", 60*b7c941bbSAndroid Build Coastguard Worker pkgPath: "cts/test/mediapc/requirements/requirements_go_proto", 61*b7c941bbSAndroid Build Coastguard Worker srcs: [ 62*b7c941bbSAndroid Build Coastguard Worker "requirements.pb.go", 63*b7c941bbSAndroid Build Coastguard Worker //"requirements.binpb", 64*b7c941bbSAndroid Build Coastguard Worker ], 65*b7c941bbSAndroid Build Coastguard Worker deps: [ 66*b7c941bbSAndroid Build Coastguard Worker "mpc_go_proto", 67*b7c941bbSAndroid Build Coastguard Worker "golang-protobuf-reflect-protoreflect", 68*b7c941bbSAndroid Build Coastguard Worker "golang-protobuf-runtime-protoimpl", 69*b7c941bbSAndroid Build Coastguard Worker 70*b7c941bbSAndroid Build Coastguard Worker ], 71*b7c941bbSAndroid Build Coastguard Worker} 72*b7c941bbSAndroid Build Coastguard Worker 73*b7c941bbSAndroid Build Coastguard Workerbootstrap_go_package { 74*b7c941bbSAndroid Build Coastguard Worker name: "mpc_go_proto", 75*b7c941bbSAndroid Build Coastguard Worker pkgPath: "cts/test/mediapc/requirements/mpc_go_proto", 76*b7c941bbSAndroid Build Coastguard Worker srcs: [ 77*b7c941bbSAndroid Build Coastguard Worker "mpc.pb.go", 78*b7c941bbSAndroid Build Coastguard Worker 79*b7c941bbSAndroid Build Coastguard Worker ], 80*b7c941bbSAndroid Build Coastguard Worker deps: [ 81*b7c941bbSAndroid Build Coastguard Worker "golang-protobuf-reflect-protoreflect", 82*b7c941bbSAndroid Build Coastguard Worker "golang-protobuf-runtime-protoimpl", 83*b7c941bbSAndroid Build Coastguard Worker ], 84*b7c941bbSAndroid Build Coastguard Worker} 85*b7c941bbSAndroid Build Coastguard Worker 86*b7c941bbSAndroid Build Coastguard Workerbootstrap_go_package { 87*b7c941bbSAndroid Build Coastguard Worker name: "templatefns", 88*b7c941bbSAndroid Build Coastguard Worker pkgPath: "cts/test/mediapc/requirements/templatefns", 89*b7c941bbSAndroid Build Coastguard Worker srcs: ["templatefns.go"], 90*b7c941bbSAndroid Build Coastguard Worker deps: [ 91*b7c941bbSAndroid Build Coastguard Worker "golang-protobuf-proto", 92*b7c941bbSAndroid Build Coastguard Worker "requirements_go_proto", 93*b7c941bbSAndroid Build Coastguard Worker ], 94*b7c941bbSAndroid Build Coastguard Worker} 95