diff options
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/CppConfiguration.java | 5 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/cpp/CppRuleClasses.java | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java index 5468a1607e..a8e6233d02 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java @@ -2141,6 +2141,11 @@ public class CppConfiguration extends BuildConfiguration.Fragment { } if (ruleContext.getConfiguration().isCodeCoverageEnabled()) { requestedFeatures.add(CppRuleClasses.COVERAGE); + if (useLLVMCoverageMap) { + requestedFeatures.add(CppRuleClasses.LLVM_COVERAGE_MAP_FORMAT); + } else { + requestedFeatures.add(CppRuleClasses.GCC_COVERAGE_MAP_FORMAT); + } } return requestedFeatures.build(); } diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRuleClasses.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRuleClasses.java index 1e6e1b7fb8..4ad604ed55 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRuleClasses.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppRuleClasses.java @@ -330,6 +330,12 @@ public class CppRuleClasses { */ public static final String COVERAGE = "coverage"; + /** Produce artifacts for coverage in llvm coverage mapping format. */ + public static final String LLVM_COVERAGE_MAP_FORMAT = "llvm_coverage_map_format"; + + /** Produce artifacts for coverage in gcc coverage mapping format. */ + public static final String GCC_COVERAGE_MAP_FORMAT = "gcc_coverage_map_format"; + /** A string constant for the match-clif feature. */ public static final String MATCH_CLIF = "match_clif"; } |