Remove remaining usage of AndroidConfiguration.incompatibleProhibitAapt1() and stop using the flag value.
PiperOrigin-RevId: 285470073
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java
index 7dcaa78..92c6b3b 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java
@@ -1003,10 +1003,6 @@
private final boolean filterLibraryJarWithProgramJar;
private final boolean useRTxtFromMergedResources;
- // Incompatible changes
- // TODO(b/142520065): Remove.
- private final boolean incompatibleProhibitAapt1;
-
private AndroidConfiguration(Options options) throws InvalidConfigurationException {
this.sdk = options.sdk;
this.cpu = options.cpu;
@@ -1053,7 +1049,6 @@
this.dataBindingUpdatedArgs = options.dataBindingUpdatedArgs;
this.persistentBusyboxTools = options.persistentBusyboxTools;
this.filterRJarsFromAndroidTest = options.filterRJarsFromAndroidTest;
- this.incompatibleProhibitAapt1 = options.incompatibleProhibitAapt1;
this.removeRClassesFromInstrumentationTestJar =
options.removeRClassesFromInstrumentationTestJar;
this.alwaysFilterDuplicateClassesFromAndroidTest =
@@ -1311,9 +1306,4 @@
boolean useRTxtFromMergedResources() {
return useRTxtFromMergedResources;
}
-
- // TODO(b/142520065): Remove.
- boolean incompatibleProhibitAapt1() {
- return incompatibleProhibitAapt1;
- }
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java b/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java
index d342e07..8ffa9e7 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java
@@ -65,68 +65,36 @@
public static ValidatedAndroidResources validateFrom(
AndroidDataContext dataContext, MergedAndroidResources merged, AndroidAaptVersion aaptVersion)
throws InterruptedException {
- if (dataContext.getAndroidConfig().incompatibleProhibitAapt1()) {
- Artifact rTxtOut = dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_R_TXT);
- Artifact sourceJarOut =
- dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_JAVA_SOURCE_JAR);
- Artifact apkOut = dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_LIBRARY_APK);
+ Artifact rTxtOut = dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_R_TXT);
+ Artifact sourceJarOut =
+ dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_JAVA_SOURCE_JAR);
+ Artifact apkOut = dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_LIBRARY_APK);
- BusyBoxActionBuilder.create(dataContext, "LINK_STATIC_LIBRARY")
- .addAapt(AndroidAaptVersion.AAPT2)
- .addInput("--libraries", dataContext.getSdk().getAndroidJar())
- .addInput("--compiled", merged.getCompiledSymbols())
- .addInput("--manifest", merged.getManifest())
- // Sets an alternative java package for the generated R.java
- // this allows android rules to generate resources outside of the java{,tests} tree.
- .maybeAddFlag("--packageForR", merged.getJavaPackage())
- .addTransitiveVectoredInput(
- "--compiledDep", merged.getResourceDependencies().getTransitiveCompiledSymbols())
- .addOutput("--sourceJarOut", sourceJarOut)
- .addOutput("--rTxtOut", rTxtOut)
- .addOutput("--staticLibraryOut", apkOut)
- .buildAndRegister("Linking static android resource library", "AndroidResourceLink");
+ BusyBoxActionBuilder.create(dataContext, "LINK_STATIC_LIBRARY")
+ .addAapt(AndroidAaptVersion.AAPT2)
+ .addInput("--libraries", dataContext.getSdk().getAndroidJar())
+ .addInput("--compiled", merged.getCompiledSymbols())
+ .addInput("--manifest", merged.getManifest())
+ // Sets an alternative java package for the generated R.java
+ // this allows android rules to generate resources outside of the java{,tests} tree.
+ .maybeAddFlag("--packageForR", merged.getJavaPackage())
+ .addTransitiveVectoredInput(
+ "--compiledDep", merged.getResourceDependencies().getTransitiveCompiledSymbols())
+ .addOutput("--sourceJarOut", sourceJarOut)
+ .addOutput("--rTxtOut", rTxtOut)
+ .addOutput("--staticLibraryOut", apkOut)
+ .buildAndRegister("Linking static android resource library", "AndroidResourceLink");
- return of(
- merged,
- rTxtOut,
- sourceJarOut,
- apkOut,
- // TODO: remove below three when incompatibleProhibitAapt1 is on by default.
- rTxtOut,
- sourceJarOut,
- apkOut,
- dataContext.getAndroidConfig().useRTxtFromMergedResources());
- }
-
- AndroidResourceValidatorActionBuilder builder =
- new AndroidResourceValidatorActionBuilder()
- .setJavaPackage(merged.getJavaPackage())
- .setDebug(dataContext.useDebug())
- .setMergedResources(merged.getMergedResources())
- .setRTxtOut(dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_R_TXT))
- .setSourceJarOut(
- dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_JAVA_SOURCE_JAR))
- // Request an APK so it can be inherited when a library is used in a binary's
- // resources attr.
- // TODO(b/30307842): Remove this once it is no longer needed for resources migration.
- .setApkOut(dataContext.createOutputArtifact(AndroidRuleClasses.ANDROID_LIBRARY_APK))
- .withDependencies(merged.getResourceDependencies());
-
- if (aaptVersion == AndroidAaptVersion.AAPT2) {
- builder
- .setCompiledSymbols(merged.getCompiledSymbols())
- .setAapt2ValidationArtifactOut(
- dataContext.createOutputArtifact(
- AndroidRuleClasses.ANDROID_RESOURCES_AAPT2_VALIDATION_ARTIFACT))
- .setAapt2SourceJarOut(
- dataContext.createOutputArtifact(
- AndroidRuleClasses.ANDROID_RESOURCES_AAPT2_SOURCE_JAR))
- .setStaticLibraryOut(
- dataContext.createOutputArtifact(
- AndroidRuleClasses.ANDROID_RESOURCES_AAPT2_LIBRARY_APK));
- }
-
- return builder.build(dataContext, merged);
+ return of(
+ merged,
+ rTxtOut,
+ sourceJarOut,
+ apkOut,
+ // TODO: remove below three when incompatibleProhibitAapt1 is on by default.
+ rTxtOut,
+ sourceJarOut,
+ apkOut,
+ dataContext.getAndroidConfig().useRTxtFromMergedResources());
}
static ValidatedAndroidResources of(
diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidResourcesTest.java b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidResourcesTest.java
index 1ff7727..01568f7 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidResourcesTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidResourcesTest.java
@@ -332,8 +332,7 @@
}
@Test
- public void testValidateNoAapt1() throws Exception {
- useConfiguration("--incompatible_prohibit_aapt1");
+ public void testValidate() throws Exception {
RuleContext ruleContext = getRuleContext();
makeMergedResources(ruleContext)
@@ -413,14 +412,6 @@
assertThat(resourceApk.getMainDexProguardConfig()).isNotNull();
}
- @Test
- public void test_incompatibleProhibitAapt1_targetsAapt2() throws Exception {
- useConfiguration("--incompatible_prohibit_aapt1");
- RuleContext ruleContext = getRuleContext("android_binary", "manifest = 'AndroidManifest.xml',");
- assertThat(AndroidAaptVersion.chooseTargetAaptVersion(ruleContext))
- .isEqualTo(AndroidAaptVersion.AAPT2);
- }
-
/**
* Validates that a parse action was invoked correctly. Returns the {@link ParsedAndroidResources}
* for further validation.