diff options
author | hlopko <hlopko@google.com> | 2017-09-28 04:31:00 -0400 |
---|---|---|
committer | John Cater <jcater@google.com> | 2017-09-28 08:55:16 -0400 |
commit | a16d16a9c95918eb1731b6122dfb169a3bd3dd03 (patch) | |
tree | 337ff0624051b41bbdb0dd228f00aa463e3fb8c8 /src | |
parent | 08ff9b8761bdbf3e6ed7487678e892afb812d732 (diff) |
Polish the interface of CppCompileActionBuilder
Some of the setters didn't return the builder, this cl fixes that.
RELNOTES: None.
PiperOrigin-RevId: 170313892
Diffstat (limited to 'src')
3 files changed, 22 insertions, 19 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java index 48af3cff2b..0751ec8826 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java @@ -56,13 +56,14 @@ public class BazelCppSemantics implements CppSemantics { FeatureSpecification featureSpecification, Predicate<String> coptsFilter, ImmutableSet<String> features) { - actionBuilder.setCppConfiguration(ruleContext.getFragment(CppConfiguration.class)); - actionBuilder.setActionContext(CppCompileActionContext.class); - // Because Bazel does not support include scanning, we need the entire crosstool filegroup, - // including header files, as opposed to just the "compile" filegroup. - actionBuilder.addTransitiveMandatoryInputs(actionBuilder.getToolchain().getCrosstool()); - actionBuilder.setShouldScanIncludes(false); - actionBuilder.setCoptsFilter(coptsFilter); + actionBuilder + .setCppConfiguration(ruleContext.getFragment(CppConfiguration.class)) + .setActionContext(CppCompileActionContext.class) + // Because Bazel does not support include scanning, we need the entire crosstool filegroup, + // including header files, as opposed to just the "compile" filegroup. + .addTransitiveMandatoryInputs(actionBuilder.getToolchain().getCrosstool()) + .setShouldScanIncludes(false) + .setCoptsFilter(coptsFilter); } @Override diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileActionBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileActionBuilder.java index 5c88e00e99..d3161fa547 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileActionBuilder.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileActionBuilder.java @@ -657,8 +657,9 @@ public class CppCompileActionBuilder { return this; } - public void setShouldScanIncludes(boolean shouldScanIncludes) { + public CppCompileActionBuilder setShouldScanIncludes(boolean shouldScanIncludes) { this.shouldScanIncludes = shouldScanIncludes; + return this; } public boolean getShouldScanIncludes() { @@ -669,7 +670,8 @@ public class CppCompileActionBuilder { return ccToolchain; } - public void setCoptsFilter(Predicate<String> coptsFilter) { + public CppCompileActionBuilder setCoptsFilter(Predicate<String> coptsFilter) { this.coptsFilter = Preconditions.checkNotNull(coptsFilter); + return this; } } diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCppSemantics.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCppSemantics.java index 54aa46e80b..c26180792b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCppSemantics.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCppSemantics.java @@ -101,16 +101,16 @@ public class ObjcCppSemantics implements CppSemantics { FeatureSpecification featureSpecification, Predicate<String> coptsFilter, ImmutableSet<String> features) { - actionBuilder.setCppConfiguration(ruleContext.getFragment(CppConfiguration.class)); - actionBuilder.setActionContext(CppCompileActionContext.class); - // Because Bazel does not support include scanning, we need the entire crosstool filegroup, - // including header files, as opposed to just the "compile" filegroup. - actionBuilder.addTransitiveMandatoryInputs(actionBuilder.getToolchain().getCrosstool()); - actionBuilder.setShouldScanIncludes(false); - actionBuilder.setCoptsFilter(coptsFilter); - - actionBuilder.addTransitiveMandatoryInputs(objcProvider.get(STATIC_FRAMEWORK_FILE)); - actionBuilder.addTransitiveMandatoryInputs(objcProvider.get(DYNAMIC_FRAMEWORK_FILE)); + actionBuilder + .setCppConfiguration(ruleContext.getFragment(CppConfiguration.class)) + .setActionContext(CppCompileActionContext.class) + // Because Bazel does not support include scanning, we need the entire crosstool filegroup, + // including header files, as opposed to just the "compile" filegroup. + .addTransitiveMandatoryInputs(actionBuilder.getToolchain().getCrosstool()) + .setShouldScanIncludes(false) + .setCoptsFilter(coptsFilter) + .addTransitiveMandatoryInputs(objcProvider.get(STATIC_FRAMEWORK_FILE)) + .addTransitiveMandatoryInputs(objcProvider.get(DYNAMIC_FRAMEWORK_FILE)); if (isHeaderThinningEnabled) { Artifact sourceFile = actionBuilder.getSourceFile(); |