1// Copyright 2020 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15cc_library_static { 16 name: "libcomputepipeprotosfuzz", 17 proto: { 18 export_proto_headers: true, 19 }, 20 shared_libs: ["libprotobuf-cpp-full"], 21 cflags: [ 22 "-Wall", 23 "-Werror", 24 "-Wno-unused-parameter", 25 ], 26 srcs: [ 27 "Fuzz.proto", 28 ], 29} 30 31cc_defaults { 32 name: "libcomputepipefuzz-defaults", 33 cflags: [ 34 "-Wall", 35 "-Werror", 36 "-Wno-unused-parameter", 37 "-Wno-unused-variable", 38 ], 39 static_libs: [ 40 "computepipe_runner_component", 41 "computepipe_stream_manager", 42 "libcomputepipeprotos", 43 "libgtest", 44 "libgmock", 45 "mock_stream_engine_interface", 46 ], 47 shared_libs: [ 48 "libbase", 49 "liblog", 50 "libnativewindow", 51 "libprotobuf-cpp-lite", 52 ], 53 header_libs: [ 54 "computepipe_runner_includes", 55 "graph_test_headers", 56 ], 57 include_dirs: [ 58 "packages/services/Car/computepipe", 59 "packages/services/Car/computepipe/runner/stream_manager", 60 ], 61} 62 63cc_fuzz { 64 name: "computepipe_semantic_manager_fuzzer", 65 defaults: ["libcomputepipefuzz-defaults"], 66 srcs: [ 67 "SemanticManagerFuzzer.cpp", 68 ], 69} 70 71cc_fuzz { 72 name: "computepipe_pixel_mem_handle_fuzzer", 73 defaults: ["libcomputepipefuzz-defaults"], 74 srcs: [ 75 "PixelMemHandleFuzzer.cpp", 76 ], 77 shared_libs: [ 78 "libprotobuf-cpp-full", 79 ], 80 static_libs: [ 81 "libcomputepipeprotosfuzz", 82 "libprotobuf-mutator", 83 ], 84} 85 86cc_fuzz { 87 name: "computepipe_pixel_stream_manager_fuzzer", 88 defaults: ["libcomputepipefuzz-defaults"], 89 srcs: [ 90 "PixelStreamManagerFuzzer.cpp", 91 ], 92 shared_libs: [ 93 "libprotobuf-cpp-full", 94 ], 95 static_libs: [ 96 "libcomputepipeprotosfuzz", 97 "libprotobuf-mutator", 98 ], 99} 100 101cc_fuzz { 102 name: "local_prebuild_graph_fuzzer", 103 defaults: ["libcomputepipefuzz-defaults"], 104 cppflags:[ 105 "-fexceptions", 106 ], 107 static_libs: [ 108 "computepipe_prebuilt_graph", 109 ], 110 shared_libs: [ 111 "libstubgraphimpl", 112 ], 113 include_dirs: [ 114 "packages/services/Car/computepipe", 115 "packages/services/Car/computepipe/runner/graph", 116 ], 117 srcs: [ 118 "LocalPrebuildGraphFuzzer.cpp", 119 ], 120} 121 122cc_fuzz { 123 name: "grpc_graph_fuzzer", 124 defaults: ["libcomputepipefuzz-defaults"], 125 cppflags:[ 126 "-fexceptions", 127 ], 128 static_libs: [ 129 "computepipe_grpc_graph_proto", 130 ], 131 shared_libs: [ 132 "computepipe_grpc_graph", 133 "libcomputepipeprotos", 134 "libgrpc++", 135 "libprotobuf-cpp-full", 136 ], 137 include_dirs: [ 138 "packages/services/Car/computepipe", 139 "packages/services/Car/computepipe/runner/graph", 140 ], 141 srcs: [ 142 "GrpcGraphFuzzer.cpp", 143 ], 144} 145