aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/cpp
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2016-04-20 15:23:07 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2016-04-21 10:57:43 +0000
commitdca3b6da89b731151e45e6b73b4ff589667d7b8c (patch)
tree7a66c4dfd77cb79fd58f41315676e588d90e7bf0 /src/main/java/com/google/devtools/build/lib/rules/cpp
parent3c9a2265ea043c52c81951907fbc626b8c03add4 (diff)
Disable the generating .gcno files for .pcm compile actions. These can conflict
with the .gcno files for the actual .cc files. -- MOS_MIGRATED_REVID=120338906
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppModel.java13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModel.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModel.java
index 8fa9dff936..e09f0b4115 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModel.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppModel.java
@@ -414,7 +414,7 @@ public final class CppModel {
// - the compiled source file is the module map
// - it creates a header module (.pcm file).
createSourceAction(outputName, result, env, moduleMapArtifact, builder, ".pcm", ".pcm.d",
- /*addObject=*/false);
+ /*addObject=*/false, /*enableCoverage=*/false);
}
for (Pair<Artifact, Label> source : sourceFiles) {
@@ -428,7 +428,7 @@ public final class CppModel {
createHeaderAction(outputName, result, env, builder);
} else {
createSourceAction(outputName, result, env, sourceArtifact, builder, ".o", ".d",
- /*addObject=*/true);
+ /*addObject=*/true, isCodeCoverageEnabled());
}
}
@@ -459,7 +459,8 @@ public final class CppModel {
CppCompileActionBuilder builder,
String outputExtension,
String dependencyFileExtension,
- boolean addObject) {
+ boolean addObject,
+ boolean enableCoverage) {
PathFragment ccRelativeName = semantics.getEffectiveSourcePath(sourceArtifact);
if (cppConfiguration.isLipoOptimization()) {
// TODO(bazel-team): we shouldn't be needing this, merging context with the binary
@@ -484,9 +485,7 @@ public final class CppModel {
CppCompileActionBuilder picBuilder =
copyAsPicBuilder(builder, outputName, outputExtension, dependencyFileExtension);
Artifact gcnoFile =
- isCodeCoverageEnabled()
- ? ruleContext.getRelatedArtifact(outputName, ".pic.gcno")
- : null;
+ enableCoverage ? ruleContext.getRelatedArtifact(outputName, ".pic.gcno") : null;
if (gcnoFile != null) {
picBuilder.setGcnoFile(gcnoFile);
}
@@ -525,7 +524,7 @@ public final class CppModel {
.setDotdFile(outputName, dependencyFileExtension);
// Create non-PIC compile actions
Artifact gcnoFile =
- !cppConfiguration.isLipoOptimization() && isCodeCoverageEnabled()
+ !cppConfiguration.isLipoOptimization() && enableCoverage
? ruleContext.getRelatedArtifact(outputName, ".gcno")
: null;
if (gcnoFile != null) {