| # Copyright 2014 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//testing/libfuzzer/fuzzer_test.gni") |
| import("//third_party/libprotobuf-mutator/fuzzable_proto_library.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| if (is_android) { |
| import("//build/config/android/rules.gni") |
| |
| proto_java_library("proto_java") { |
| proto_path = "." |
| sources = [ |
| "client_variations.proto", |
| "layer.proto", |
| "study.proto", |
| "variations_seed.proto", |
| ] |
| } |
| } |
| |
| fuzzable_proto_library("proto") { |
| sources = [ |
| "layer.proto", |
| "stored_seed_info.proto", |
| "study.proto", |
| "variations_seed.proto", |
| ] |
| } |
| |
| proto_library("client_variations_proto") { |
| sources = [ "client_variations.proto" ] |
| |
| # The generated JavaScript bindings are used to build a small, self-contained |
| # parser for ClientVariations in Dev Tools. This parser is used to decode the |
| # X-Client-Data header. |
| # |
| # Note: This is incompatible with "edition" syntax of protobuf. The plan is to |
| # migrate this away from JS proto bindings, tracked here: crbug.com/40253708 |
| generate_javascript = true |
| } |
| |
| # Some of the Windows builders do not support Java, which is a required |
| # dependency for this build target. The fuzzable_proto_library doesn't support |
| # building JS protos when use_fuzzing_engine_with_lpm is true.This target is only built |
| # manually, so it's fine to limit it to Linux non-fuzzer builds. |
| if (is_linux && !use_fuzzing_engine_with_lpm) { |
| group("devtools") { |
| deps = [ "devtools" ] |
| } |
| } |