# Copyright 2017 The Chromium Authors. All rights reserved. import("//build/config/sanitizers/sanitizers.gni") config("include_config") { include_dirs = [ "src/" ] } source_set("libprotobuf-mutator") { testonly = true # Dont allow building on windows to avoid tryjob failure. This is OK since # libFuzzer doesn't build on windows anyway. if (!is_win) { configs += [ ":include_config" ] # Remove *San and coverage for a performance boost. configs -= not_fuzzed_remove_configs configs += [ "//build/config/sanitizers:not_fuzzed" ] public_configs = [ ":include_config" ] sources = [ "src/src/binary_format.cc", "src/src/libfuzzer/libfuzzer_macro.cc", "src/src/libfuzzer/libfuzzer_mutator.cc", "src/src/mutator.cc", "src/src/text_format.cc", "src/src/utf8_fix.cc", ] deps = [ "//third_party/protobuf:protobuf_full", ] # Let ClusterFuzz builders know to not build targets that depend on # libprotobuf-mutator for AFL. if (use_afl) { all_dependent_configs = [ "//testing/libfuzzer:no_clusterfuzz" ] } } }