aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
diff options
context:
space:
mode:
authorGravatar Sergio Campama <kaipi@google.com>2016-11-15 23:11:51 +0000
committerGravatar Kristina Chodorow <kchodorow@google.com>2016-11-16 15:59:17 +0000
commit0f7dd6154459d7ae743f4b2282d62835bfa80f70 (patch)
tree2b8e15959c663d3ba6f33bf8fff97d1fbcead9c5 /src/main/java/com/google/devtools/build
parentae5d6497e01ebe08beaa31ccf0e10d8a98fddf4c (diff)
Remove the conditionals around buildConfiguration and make buildConfiguration always present. This also fixes an issue with split targets in which the generated protos would end up in the wrong location, and then compiled with the wrong flags.
-- MOS_MIGRATED_REVID=139253937
Diffstat (limited to 'src/main/java/com/google/devtools/build')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java45
1 files changed, 12 insertions, 33 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
index fad2bd4651..c130efff91 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
@@ -91,7 +91,7 @@ final class ProtobufSupport {
* @param ruleContext context this proto library is constructed in
*/
public ProtobufSupport(RuleContext ruleContext) throws RuleErrorException {
- this(ruleContext, null);
+ this(ruleContext, ruleContext.getConfiguration());
}
/**
@@ -110,13 +110,8 @@ final class ProtobufSupport {
this.buildConfiguration = buildConfiguration;
this.attributes = new ProtoAttributes(ruleContext);
this.inputsToOutputsMap = getInputsToOutputsMap();
- if (buildConfiguration != null) {
- this.intermediateArtifacts =
- ObjcRuleClasses.intermediateArtifacts(ruleContext, buildConfiguration);
- } else {
- this.intermediateArtifacts =
- ObjcRuleClasses.intermediateArtifacts(ruleContext, ruleContext.getConfiguration());
- }
+ this.intermediateArtifacts =
+ ObjcRuleClasses.intermediateArtifacts(ruleContext, buildConfiguration);
}
/**
@@ -174,7 +169,10 @@ final class ProtobufSupport {
ObjcCommon common = getCommon(intermediateArtifacts, compilationArtifacts);
new LegacyCompilationSupport(
- ruleContext, intermediateArtifacts, new CompilationAttributes.Builder().build())
+ ruleContext,
+ buildConfiguration,
+ intermediateArtifacts,
+ new CompilationAttributes.Builder().build())
.registerCompileAndArchiveActions(common, userHeaderSearchPaths);
actionId++;
@@ -419,18 +417,11 @@ final class ProtobufSupport {
}
private IntermediateArtifacts getUniqueIntermediateArtifacts(int actionId) {
- if (buildConfiguration != null) {
- return new IntermediateArtifacts(
- ruleContext,
- getUniqueBundledProtosSuffix(actionId),
- getUniqueBundledProtosPrefix(actionId),
- buildConfiguration);
- }
return new IntermediateArtifacts(
ruleContext,
getUniqueBundledProtosSuffix(actionId),
getUniqueBundledProtosPrefix(actionId),
- ruleContext.getConfiguration());
+ buildConfiguration);
}
private ObjcCommon getCommon(
@@ -527,10 +518,7 @@ final class ProtobufSupport {
}
private String getGenfilesPathString() {
- if (buildConfiguration != null) {
- return buildConfiguration.getGenfilesDirectory().getExecPathString();
- }
- return ruleContext.getConfiguration().getGenfilesDirectory().getExecPathString();
+ return buildConfiguration.getGenfilesDirectory().getExecPathString();
}
private PathFragment getWorkspaceRelativeOutputDir() {
@@ -540,7 +528,7 @@ final class ProtobufSupport {
PathFragment rootRelativeOutputDir = ruleContext.getUniqueDirectory(UNIQUE_DIRECTORY_NAME);
return new PathFragment(
- ruleContext.getBinOrGenfilesDirectory().getExecPath(), rootRelativeOutputDir);
+ buildConfiguration.getBinDirectory().getExecPath(), rootRelativeOutputDir);
}
private Iterable<Artifact> getGeneratedProtoOutputs(
@@ -560,27 +548,18 @@ final class ProtobufSupport {
if (outputFile != null) {
builder.add(
ruleContext.getUniqueDirectoryArtifact(
- UNIQUE_DIRECTORY_NAME, outputFile, ruleContext.getBinOrGenfilesDirectory()));
+ UNIQUE_DIRECTORY_NAME, outputFile, buildConfiguration.getBinDirectory()));
+
}
}
return builder.build();
}
private Iterable<ObjcProtoProvider> getObjcProtoProviders() {
- if (buildConfiguration != null) {
- return ruleContext
- .getPrerequisitesByConfiguration("deps", Mode.SPLIT, ObjcProtoProvider.class)
- .get(buildConfiguration);
- }
return ruleContext.getPrerequisites("deps", Mode.TARGET, ObjcProtoProvider.class);
}
private Iterable<ProtoSourcesProvider> getProtoSourcesProviders() {
- if (buildConfiguration != null) {
- return ruleContext
- .getPrerequisitesByConfiguration("deps", Mode.SPLIT, ProtoSourcesProvider.class)
- .get(buildConfiguration);
- }
return ruleContext.getPrerequisites("deps", Mode.TARGET, ProtoSourcesProvider.class);
}