39 lines
1.2 KiB
Plaintext
Executable File
39 lines
1.2 KiB
Plaintext
Executable File
# Copyright 2017 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/coverage/coverage.gni")
|
|
|
|
config("default_coverage") {
|
|
if (use_clang_coverage) {
|
|
cflags = [
|
|
"--coverage",
|
|
|
|
# Following experimental flags removes unused header functions from the
|
|
# coverage mapping data embedded in the test binaries, and the reduction
|
|
# of binary size enables building Chrome's large unit test targets on
|
|
# MacOS. Please refer to crbug.com/796290 for more details.
|
|
"-mllvm",
|
|
"-limited-coverage-experimental=true",
|
|
]
|
|
|
|
ldflags = []
|
|
if (!is_win) {
|
|
ldflags = [ "--coverage" ]
|
|
cflags += [ "-fno-use-cxa-atexit" ]
|
|
} else {
|
|
# Windows directly calls link.exe instead of the compiler driver when
|
|
# linking. Hence, pass the runtime libraries instead of
|
|
# -fsanitize=address.
|
|
if (target_cpu == "x64") {
|
|
ldflags += [ "clang_rt.profile-x86_64.lib" ]
|
|
} else if (target_cpu == "x86") {
|
|
ldflags += [ "clang_rt.profile-i386.lib" ]
|
|
} else {
|
|
assert(false,
|
|
"use_clang_coverage=true not supported yet for this target_cpu")
|
|
}
|
|
}
|
|
}
|
|
}
|