# Copyright 2018 The Crashpad Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

source_set("libfuzzer") {
  if (crashpad_use_libfuzzer) {
    sources = [
      "src/FuzzerClangCounters.cpp",
      "src/FuzzerCrossOver.cpp",
      "src/FuzzerDriver.cpp",
      "src/FuzzerExtFunctionsDlsym.cpp",
      "src/FuzzerExtFunctionsDlsymWin.cpp",
      "src/FuzzerExtFunctionsWeak.cpp",
      "src/FuzzerExtFunctionsWeakAlias.cpp",
      "src/FuzzerExtraCounters.cpp",
      "src/FuzzerIO.cpp",
      "src/FuzzerIOPosix.cpp",
      "src/FuzzerIOWindows.cpp",
      "src/FuzzerLoop.cpp",
      "src/FuzzerMain.cpp",
      "src/FuzzerMerge.cpp",
      "src/FuzzerMutate.cpp",
      "src/FuzzerSHA1.cpp",
      "src/FuzzerShmemPosix.cpp",
      "src/FuzzerShmemWindows.cpp",
      "src/FuzzerTracePC.cpp",
      "src/FuzzerUtil.cpp",
      "src/FuzzerUtilDarwin.cpp",
      "src/FuzzerUtilLinux.cpp",
      "src/FuzzerUtilPosix.cpp",
      "src/FuzzerUtilWindows.cpp",
    ]

    configs -= [
      "//third_party/mini_chromium/mini_chromium/build:Wexit_time_destructors",
      "//build:crashpad_fuzzer_flags",
    ]
  }
}
