diff options
author | 2016-11-15 23:11:51 +0000 | |
---|---|---|
committer | 2016-11-16 15:59:17 +0000 | |
commit | 0f7dd6154459d7ae743f4b2282d62835bfa80f70 (patch) | |
tree | 2b8e15959c663d3ba6f33bf8fff97d1fbcead9c5 /src/main/java/com | |
parent | ae5d6497e01ebe08beaa31ccf0e10d8a98fddf4c (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')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java | 45 |
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); } |