aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2017-03-29 22:59:45 +0000
committerGravatar Philipp Wollermann <philwo@google.com>2017-03-31 17:06:51 +0200
commit6e35832df1fbafcde5812f013d0b3cecc8d6c6ec (patch)
tree7475fb5863ab095c2d434abf9262424380b56a70 /src/main/java/com/google/devtools/build/lib
parent9ec917f10533c4cc68aacda4ca77ebeaec7bfa90 (diff)
Partial rollback of commit 5e1a420f1b385382a2df5359faf3ae773aa8d61e.
*** Reason for rollback *** Breaks tests that expected previous id generation order. RELNOTES: None. PiperOrigin-RevId: 151638886
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java65
1 files changed, 29 insertions, 36 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java b/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java
index 441b0c4b12..8a28a16a6e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java
@@ -460,43 +460,38 @@ public final class ApplicationManifest {
if (isLibrary && AndroidCommon.getAndroidConfig(ruleContext).useParallelResourceProcessing()) {
// android_library should only build the APK one way (!incremental).
Preconditions.checkArgument(!incremental);
- Artifact rJavaClassJar =
- ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_RESOURCES_CLASS_JAR);
-
- ResourceContainer parsed =
- new AndroidResourceParsingActionBuilder(ruleContext)
- .setParse(data)
- .withPrimary(resourceContainer)
- .setOutput(resourceContainer.getSymbols())
- .build(ruleContext);
-
- ResourceContainer generated =
- new LibraryRGeneratorActionBuilder()
- .setJavaPackage(resourceContainer.getJavaPackage())
- .withPrimary(parsed)
- .withDependencies(resourceDeps)
- .setClassJarOut(rJavaClassJar)
- .build(ruleContext);
+ Artifact rJavaClassJar = ruleContext.getImplicitOutputArtifact(
+ AndroidRuleClasses.ANDROID_RESOURCES_CLASS_JAR);
+
+ if (resourceContainer.getSymbols() != null) {
+ new AndroidResourceParsingActionBuilder(ruleContext)
+ .withPrimary(resourceContainer)
+ .setParse(data)
+ .setOutput(resourceContainer.getSymbols())
+ .build(ruleContext);
+ }
- ResourceContainer merged =
+ AndroidResourceMergingActionBuilder resourcesMergerBuilder =
new AndroidResourceMergingActionBuilder(ruleContext)
- .setJavaPackage(generated.getJavaPackage())
- .withPrimary(generated)
+ .setJavaPackage(resourceContainer.getJavaPackage())
+ .withPrimary(resourceContainer)
.withDependencies(resourceDeps)
.setMergedResourcesOut(mergedResources)
.setManifestOut(manifestOut)
- .setDataBindingInfoZip(dataBindingInfoZip)
- .build(ruleContext);
+ .setClassJarOut(rJavaClassJar)
+ .setDataBindingInfoZip(dataBindingInfoZip);
+ ResourceContainer merged = resourcesMergerBuilder.build(ruleContext);
- processed =
+ AndroidResourceValidatorActionBuilder validatorBuilder =
new AndroidResourceValidatorActionBuilder(ruleContext)
.setJavaPackage(merged.getJavaPackage())
- .setDebug(ruleContext.getConfiguration().getCompilationMode() != CompilationMode.OPT)
+ .setDebug(
+ ruleContext.getConfiguration().getCompilationMode() != CompilationMode.OPT)
.setMergedResources(mergedResources)
.withPrimary(merged)
.setSourceJarOut(merged.getJavaSourceJar())
- .setRTxtOut(merged.getRTxt())
- .build(ruleContext);
+ .setRTxtOut(merged.getRTxt());
+ processed = validatorBuilder.build(ruleContext);
} else {
AndroidResourcesProcessorBuilder builder =
new AndroidResourcesProcessorBuilder(ruleContext)
@@ -646,16 +641,14 @@ public final class ApplicationManifest {
additionalAaptOpts.build(),
resourceFilter.getDensities());
- ResourceContainer updatedResources =
- resourceContainer
- .toBuilder()
- .setLabel(ruleContext.getLabel())
- .setApk(resourceApk)
- .setManifest(getManifest())
- .setJavaSourceJar(javaSourcesJar)
- .setJavaClassJar(null)
- .setSymbols(null)
- .build();
+ ResourceContainer updatedResources = resourceContainer.toBuilder()
+ .setLabel(ruleContext.getLabel())
+ .setApk(resourceApk)
+ .setManifest(getManifest())
+ .setJavaSourceJar(javaSourcesJar)
+ .setJavaClassJar(null)
+ .setSymbols(null)
+ .build();
aaptActionHelper.createGenerateProguardAction(proguardCfg, mainDexProguardCfg);