diff options
author | 2018-04-16 04:24:02 -0700 | |
---|---|---|
committer | 2018-04-16 04:25:49 -0700 | |
commit | ecbab79b7bc982e5b60b09203607ab6a4d066294 (patch) | |
tree | 2d36d35b2d85e190d8fbae55a3892831ebf95eb3 /src/main/java/com/google | |
parent | ef247efab4526547e12161b1d74cb624c0e0bd71 (diff) |
Push using ruleContext.getDisabledFeatures() outside of creating FeatureConfiguration
The goal is to enable creation of feature configuration without the rule
context. This will enable us to have cleaner API for this in Skylark.
RELNOTES: None
PiperOrigin-RevId: 193017868
Diffstat (limited to 'src/main/java/com/google')
4 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcBinary.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcBinary.java index 5e79a11e18..5a562a31d4 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcBinary.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcBinary.java @@ -223,7 +223,7 @@ public abstract class CcBinary implements RuleConfiguredTargetFactory { linkStaticness == LinkStaticness.DYNAMIC ? DYNAMIC_LINKING_MODE : STATIC_LINKING_MODE), - /* unsupportedFeatures= */ ImmutableSet.of(), + /* unsupportedFeatures= */ ruleContext.getDisabledFeatures(), ccToolchain); CcCompilationHelper compilationHelper = diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java index ddb240bf5a..be73f56cda 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java @@ -707,7 +707,6 @@ public final class CcCommon { ImmutableSet.Builder<String> allRequestedFeaturesBuilder = ImmutableSet.builder(); ImmutableSet.Builder<String> unsupportedFeaturesBuilder = ImmutableSet.builder(); unsupportedFeaturesBuilder.addAll(unsupportedFeatures); - unsupportedFeaturesBuilder.addAll(ruleContext.getDisabledFeatures()); if (!toolchain.supportsHeaderParsing()) { // TODO(bazel-team): Remove once supports_header_parsing has been removed from the // cc_toolchain rule. @@ -837,7 +836,7 @@ public final class CcCommon { return configureFeatures( ruleContext, /* requestedFeatures= */ ImmutableSet.of(), - /* unsupportedFeatures= */ ImmutableSet.of(), + /* unsupportedFeatures= */ ruleContext.getDisabledFeatures(), toolchain); } diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java index 3d5adfc97d..f1f861f59e 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java @@ -220,6 +220,7 @@ public abstract class CcProtoAspect extends NativeAspectClass implements Configu private FeatureConfiguration getFeatureConfiguration(SupportData supportData) { ImmutableSet.Builder<String> requestedFeatures = new ImmutableSet.Builder<>(); ImmutableSet.Builder<String> unsupportedFeatures = new ImmutableSet.Builder<>(); + unsupportedFeatures.addAll(ruleContext.getDisabledFeatures()); unsupportedFeatures.add(CppRuleClasses.PARSE_HEADERS); unsupportedFeatures.add(CppRuleClasses.LAYERING_CHECK); if (!areSrcsBlacklisted() && supportData.hasProtoSources()) { diff --git a/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java b/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java index 5121bd1752..c21de88a2d 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java +++ b/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java @@ -222,7 +222,7 @@ public abstract class NativeDepsHelper { CcCommon.configureFeatures( ruleContext, /* requestedFeatures= */ ImmutableSet.of(STATIC_LINKING_MODE), - /* unsupportedFeatures= */ ImmutableSet.of(), + /* unsupportedFeatures= */ ruleContext.getDisabledFeatures(), toolchain); CppLinkActionBuilder builder = new CppLinkActionBuilder( |