# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/sanitizers/sanitizers.gni")

executable("ipc_fuzzer") {
  configs += [ "//tools/ipc_fuzzer:ipc_fuzzer_tool_config" ]
  sources = [
    "fuzzer.cc",
    "fuzzer.h",
    "fuzzer_main.cc",
    "generator.cc",
    "generator.h",
    "mutator.cc",
    "mutator.h",
    "rand_util.cc",
    "rand_util.h",
  ]
  deps = [
    "//tools/ipc_fuzzer/message_lib:ipc_message_lib",
  ]
  public_deps = [
    "//ipc",
  ]
  if (is_asan && is_chromeos) {
    # Compiling fuzzer.cc with ASan takes too long, see
    # http://crbug.com/360158.
    configs -= [ "//build/config/sanitizers:default_sanitizer_flags" ]
    configs += [ "//build/config/sanitizers:default_sanitizer_ldflags" ]
  }
}