aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
diff options
context:
space:
mode:
authorGravatar hlopko <hlopko@google.com>2017-09-28 04:31:00 -0400
committerGravatar John Cater <jcater@google.com>2017-09-28 08:55:16 -0400
commita16d16a9c95918eb1731b6122dfb169a3bd3dd03 (patch)
tree337ff0624051b41bbdb0dd228f00aa463e3fb8c8 /src/main
parent08ff9b8761bdbf3e6ed7487678e892afb812d732 (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/main')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppSemantics.java15
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileActionBuilder.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCppSemantics.java20
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();