aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
diff options
context:
space:
mode:
authorGravatar Rumou Duan <rduan@google.com>2017-02-13 18:02:00 +0000
committerGravatar Dmitry Lomov <dslomov@google.com>2017-02-14 14:20:33 +0000
commit655bafe74faeef1aa63752640a1e8b7b9505f43d (patch)
tree372c99bca3c4473945ebefd092fed4bde789b4ef /src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
parentd8eec343d238129ce8b5146c4177d207a6b3683b (diff)
Stop retrieving FdoSupport statically from hard-coded attribute ":cc_toolchain" in RuleContext, instead take the provider from users and pass it around to where it is used.
This gives J2ObjcAspect the ability to specify the C++ toolchain attribute under a different name to avoid attribute conflicts with attached rules that have already declared attribute ":cc_toolchain". -- PiperOrigin-RevId: 147358325 MOS_MIGRATED_REVID=147358325
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
index 5228588d91..8f7ae9a5e5 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
@@ -216,11 +216,11 @@ public class CppHelper {
return false;
}
- @Nullable public static FdoSupport getFdoSupport(RuleContext ruleContext) {
+ @Nullable public static FdoSupportProvider getFdoSupport(RuleContext ruleContext,
+ String ccToolchainAttribute) {
return ruleContext
- .getPrerequisite(":cc_toolchain", Mode.TARGET)
- .getProvider(FdoSupportProvider.class)
- .getFdoSupport();
+ .getPrerequisite(ccToolchainAttribute, Mode.TARGET)
+ .getProvider(FdoSupportProvider.class);
}
public static NestedSet<Pair<String, String>> getCoverageEnvironmentIfNeeded(
@@ -507,9 +507,9 @@ public class CppHelper {
/**
* Returns the FDO build subtype.
*/
- public static String getFdoBuildStamp(RuleContext ruleContext) {
+ public static String getFdoBuildStamp(RuleContext ruleContext, FdoSupport fdoSupport) {
CppConfiguration cppConfiguration = ruleContext.getFragment(CppConfiguration.class);
- if (getFdoSupport(ruleContext).isAutoFdoEnabled()) {
+ if (fdoSupport.isAutoFdoEnabled()) {
return (cppConfiguration.getLipoMode() == LipoMode.BINARY) ? "ALIPO" : "AFDO";
}
if (cppConfiguration.isFdo()) {