Remove TransitionMode from RuleContext prerequisite calls.
Part of removing TransitionMode entirely.
PiperOrigin-RevId: 329741153
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AarImport.java b/src/main/java/com/google/devtools/build/lib/rules/android/AarImport.java
index ad87808..56d88f3 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AarImport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AarImport.java
@@ -25,7 +25,6 @@
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
@@ -79,7 +78,7 @@
AndroidSdkProvider.verifyPresence(ruleContext);
RuleConfiguredTargetBuilder ruleBuilder = new RuleConfiguredTargetBuilder(ruleContext);
- Artifact aar = ruleContext.getPrerequisiteArtifact("aar", TransitionMode.TARGET);
+ Artifact aar = ruleContext.getPrerequisiteArtifact("aar");
Artifact allAarJars = createAarTreeArtifact(ruleContext, "jars");
Artifact jarMergingParams = createAarArtifact(ruleContext, "jar_merging_params");
@@ -140,8 +139,8 @@
ImmutableList<TransitiveInfoCollection> targets =
ImmutableList.<TransitiveInfoCollection>builder()
- .addAll(ruleContext.getPrerequisites("exports", TransitionMode.TARGET))
- .addAll(ruleContext.getPrerequisites("deps", TransitionMode.TARGET))
+ .addAll(ruleContext.getPrerequisites("exports"))
+ .addAll(ruleContext.getPrerequisites("deps"))
.build();
JavaCommon common =
new JavaCommon(
@@ -198,7 +197,7 @@
// Wire up the source jar for the current target and transitive source jars from dependencies.
ImmutableList<Artifact> srcJars = ImmutableList.of();
- Artifact srcJar = ruleContext.getPrerequisiteArtifact("srcjar", TransitionMode.TARGET);
+ Artifact srcJar = ruleContext.getPrerequisiteArtifact("srcjar");
NestedSetBuilder<Artifact> transitiveJavaSourceJarBuilder = NestedSetBuilder.stableOrder();
if (srcJar != null) {
srcJars = ImmutableList.of(srcJar);
@@ -206,8 +205,7 @@
}
for (JavaSourceJarsProvider other :
JavaInfo.getProvidersFromListOfTargets(
- JavaSourceJarsProvider.class,
- ruleContext.getPrerequisites("exports", TransitionMode.TARGET))) {
+ JavaSourceJarsProvider.class, ruleContext.getPrerequisites("exports"))) {
transitiveJavaSourceJarBuilder.addTransitive(other.getTransitiveSourceJars());
}
NestedSet<Artifact> transitiveJavaSourceJars = transitiveJavaSourceJarBuilder.build();
@@ -269,7 +267,7 @@
return NestedSetBuilder.<Artifact>stableOrder()
.addTransitive(
ruleContext
- .getPrerequisite("$desugar_java8_extra_bootclasspath", TransitionMode.HOST)
+ .getPrerequisite("$desugar_java8_extra_bootclasspath")
.getProvider(FileProvider.class)
.getFilesToBuild())
.add(AndroidSdkProvider.fromRuleContext(ruleContext).getAndroidJar())
@@ -297,9 +295,7 @@
SpawnAction.Builder builder =
new SpawnAction.Builder()
.useDefaultShellEnvironment()
- .setExecutable(
- ruleContext.getExecutablePrerequisite(
- AarImportBaseRule.ZIPPER, TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite(AarImportBaseRule.ZIPPER))
.setMnemonic("AarFileExtractor")
.setProgressMessage("Extracting %s from %s", filename, aar.getFilename())
.addInput(aar)
@@ -327,8 +323,7 @@
return new SpawnAction.Builder()
.useDefaultShellEnvironment()
.setExecutable(
- ruleContext.getExecutablePrerequisite(
- AarImportBaseRule.AAR_RESOURCES_EXTRACTOR, TransitionMode.HOST))
+ ruleContext.getExecutablePrerequisite(AarImportBaseRule.AAR_RESOURCES_EXTRACTOR))
.setMnemonic("AarResourcesExtractor")
.addInput(aar)
.addOutput(resourcesDir)
@@ -354,8 +349,7 @@
return new SpawnAction.Builder()
.useDefaultShellEnvironment()
.setExecutable(
- ruleContext.getExecutablePrerequisite(
- AarImportBaseRule.AAR_EMBEDDED_JARS_EXTACTOR, TransitionMode.HOST))
+ ruleContext.getExecutablePrerequisite(AarImportBaseRule.AAR_EMBEDDED_JARS_EXTACTOR))
.setMnemonic("AarEmbeddedJarsExtractor")
.setProgressMessage("Extracting classes.jar and libs/*.jar from %s", aar.getFilename())
.addInput(aar)
@@ -395,7 +389,7 @@
.useDefaultShellEnvironment()
.setExecutable(
ruleContext.getExecutablePrerequisite(
- AarImportBaseRule.AAR_NATIVE_LIBS_ZIP_CREATOR, TransitionMode.HOST))
+ AarImportBaseRule.AAR_NATIVE_LIBS_ZIP_CREATOR))
.setMnemonic("AarNativeLibsFilter")
.setProgressMessage("Filtering AAR native libs by architecture")
.addInput(aar)
@@ -415,11 +409,10 @@
SpecialArtifact databindingSetterStoreFiles) {
Iterable<? extends DataBindingV2ProviderApi<Artifact>> databindingProvidersFromDeps =
- ruleContext.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
Iterable<? extends DataBindingV2ProviderApi<Artifact>> databindingProvidersFromExports =
- ruleContext.getPrerequisites(
- "exports", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("exports", DataBindingV2Provider.PROVIDER);
DataBindingV2Provider dataBindingV2Provider =
DataBindingV2Provider.createProvider(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidAssets.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidAssets.java
index ef74fe7..ad168fd 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidAssets.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidAssets.java
@@ -21,7 +21,6 @@
import com.google.devtools.build.lib.analysis.FileProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RuleErrorConsumer;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.RuleErrorException;
import com.google.devtools.build.lib.packages.Type;
@@ -110,7 +109,7 @@
return null;
}
- return ruleContext.getPrerequisitesIf(ASSETS_ATTR, TransitionMode.TARGET, FileProvider.class);
+ return ruleContext.getPrerequisitesIf(ASSETS_ATTR, FileProvider.class);
}
@Nullable
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java
index 9e3c40f..d08471a 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java
@@ -47,7 +47,6 @@
import com.google.devtools.build.lib.analysis.RuleErrorConsumer;
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
@@ -173,10 +172,7 @@
if (ruleContext.getFragment(JavaConfiguration.class).enforceProguardFileExtension()
&& ruleContext.attributes().has(ProguardHelper.PROGUARD_SPECS)) {
List<PathFragment> pathsWithUnexpectedExtension =
- ruleContext
- .getPrerequisiteArtifacts(ProguardHelper.PROGUARD_SPECS, TransitionMode.TARGET)
- .list()
- .stream()
+ ruleContext.getPrerequisiteArtifacts(ProguardHelper.PROGUARD_SPECS).list().stream()
.filter(Artifact::isSourceArtifact)
.map(Artifact::getRootRelativePath)
.filter(
@@ -267,7 +263,6 @@
AndroidApplicationResourceInfo androidApplicationResourceInfo =
ruleContext.getPrerequisite(
"application_resources",
- TransitionMode.TARGET,
AndroidApplicationResourceInfo.PROVIDER);
final ResourceApk resourceApk;
@@ -362,8 +357,7 @@
.build(ruleContext);
}
- Artifact proguardMapping =
- ruleContext.getPrerequisiteArtifact("proguard_apply_mapping", TransitionMode.TARGET);
+ Artifact proguardMapping = ruleContext.getPrerequisiteArtifact("proguard_apply_mapping");
MobileInstallResourceApks mobileInstallResourceApks =
AndroidBinaryMobileInstall.createMobileInstallResourceApks(
@@ -411,13 +405,11 @@
List<ProguardSpecProvider> proguardDeps = new ArrayList<>();
Iterables.addAll(
- proguardDeps,
- ruleContext.getPrerequisites("deps", TransitionMode.TARGET, ProguardSpecProvider.PROVIDER));
+ proguardDeps, ruleContext.getPrerequisites("deps", ProguardSpecProvider.PROVIDER));
if (ruleContext.getConfiguration().isCodeCoverageEnabled()
&& ruleContext.attributes().has("$jacoco_runtime", BuildType.LABEL)) {
proguardDeps.add(
- ruleContext.getPrerequisite(
- "$jacoco_runtime", TransitionMode.TARGET, ProguardSpecProvider.PROVIDER));
+ ruleContext.getPrerequisite("$jacoco_runtime", ProguardSpecProvider.PROVIDER));
}
ImmutableList<Artifact> proguardSpecs =
getProguardSpecs(
@@ -426,13 +418,9 @@
resourceApk.getResourceProguardConfig(),
resourceApk.getManifest(),
ruleContext.attributes().has(ProguardHelper.PROGUARD_SPECS, BuildType.LABEL_LIST)
- ? ruleContext
- .getPrerequisiteArtifacts(ProguardHelper.PROGUARD_SPECS, TransitionMode.TARGET)
- .list()
+ ? ruleContext.getPrerequisiteArtifacts(ProguardHelper.PROGUARD_SPECS).list()
: ImmutableList.<Artifact>of(),
- ruleContext
- .getPrerequisiteArtifacts(":extra_proguard_specs", TransitionMode.TARGET)
- .list(),
+ ruleContext.getPrerequisiteArtifacts(":extra_proguard_specs").list(),
proguardDeps);
boolean hasProguardSpecs = !proguardSpecs.isEmpty();
@@ -508,10 +496,9 @@
Artifact zipAlignedApk =
ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_BINARY_APK);
ImmutableList<Artifact> signingKeys = AndroidCommon.getApkDebugSigningKeys(ruleContext);
- Artifact signingLineage =
- ruleContext.getPrerequisiteArtifact("debug_signing_lineage_file", TransitionMode.HOST);
+ Artifact signingLineage = ruleContext.getPrerequisiteArtifact("debug_signing_lineage_file");
FilesToRunProvider resourceExtractor =
- ruleContext.getExecutablePrerequisite("$resource_extractor", TransitionMode.HOST);
+ ruleContext.getExecutablePrerequisite("$resource_extractor");
Artifact finalClassesDex;
ImmutableList<Artifact> finalShardDexZips = dexingOutput.shardDexZips;
@@ -520,17 +507,14 @@
Artifact java8LegacyDex;
if (binaryJar.equals(jarToDex)) {
// No Proguard: use canned Java 8 legacy .dex file
- java8LegacyDex =
- ruleContext.getPrerequisiteArtifact("$java8_legacy_dex", TransitionMode.TARGET);
+ java8LegacyDex = ruleContext.getPrerequisiteArtifact("$java8_legacy_dex");
} else {
// Proguard is used: build custom Java 8 legacy .dex file
java8LegacyDex = getDxArtifact(ruleContext, "_java8_legacy.dex.zip");
Artifact androidJar = AndroidSdkProvider.fromRuleContext(ruleContext).getAndroidJar();
ruleContext.registerAction(
new SpawnAction.Builder()
- .setExecutable(
- ruleContext.getExecutablePrerequisite(
- "$build_java8_legacy_dex", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$build_java8_legacy_dex"))
.addInput(jarToDex)
.addInput(androidJar)
.addOutput(java8LegacyDex)
@@ -552,8 +536,7 @@
.useDefaultShellEnvironment()
.setMnemonic("AppendJava8LegacyDex")
.setProgressMessage("Adding Java 8 legacy library for %s", ruleContext.getLabel())
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$merge_dexzips", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$merge_dexzips"))
.addInput(dexPostprocessingOutput.classesDexZip())
.addInput(java8LegacyDex)
.addOutput(finalClassesDex)
@@ -601,8 +584,7 @@
// If this is an instrumentation APK, create the provider for android_instrumentation_test.
if (isInstrumentation(ruleContext)) {
- ApkInfo targetApkProvider =
- ruleContext.getPrerequisite("instruments", TransitionMode.TARGET, ApkInfo.PROVIDER);
+ ApkInfo targetApkProvider = ruleContext.getPrerequisite("instruments", ApkInfo.PROVIDER);
AndroidInstrumentationInfo instrumentationProvider =
new AndroidInstrumentationInfo(targetApkProvider);
@@ -611,7 +593,7 @@
// At this point, the Android manifests of both target and instrumentation APKs are finalized.
FilesToRunProvider checker =
- ruleContext.getExecutablePrerequisite("$instrumentation_test_check", TransitionMode.HOST);
+ ruleContext.getExecutablePrerequisite("$instrumentation_test_check");
Artifact targetManifest = targetApkProvider.getMergedManifest();
Artifact instrumentationManifest = resourceApk.getManifest();
Artifact checkOutput =
@@ -728,7 +710,7 @@
public static NestedSet<Artifact> getLibraryResourceJars(RuleContext ruleContext) {
Iterable<AndroidLibraryResourceClassJarProvider> libraryResourceJarProviders =
AndroidCommon.getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidLibraryResourceClassJarProvider.PROVIDER);
+ ruleContext, AndroidLibraryResourceClassJarProvider.PROVIDER);
NestedSetBuilder<Artifact> libraryResourceJarsBuilder = NestedSetBuilder.naiveLinkOrder();
for (AndroidLibraryResourceClassJarProvider provider : libraryResourceJarProviders) {
@@ -792,7 +774,7 @@
// Proguard sees the desugared app, so it needs legacy APIs to resolve symbols
libraryJars.addTransitive(
ruleContext
- .getPrerequisite("$desugared_java8_legacy_apis", TransitionMode.TARGET)
+ .getPrerequisite("$desugared_java8_legacy_apis")
.getProvider(FileProvider.class)
.getFilesToBuild());
}
@@ -802,8 +784,7 @@
ruleContext.getImplicitOutputArtifact(JavaSemantics.JAVA_BINARY_PROGUARD_SEEDS);
Artifact proguardUsage =
ruleContext.getImplicitOutputArtifact(JavaSemantics.JAVA_BINARY_PROGUARD_USAGE);
- Artifact proguardDictionary =
- ruleContext.getPrerequisiteArtifact("proguard_apply_dictionary", TransitionMode.TARGET);
+ Artifact proguardDictionary = ruleContext.getPrerequisiteArtifact("proguard_apply_dictionary");
ProguardOutput result =
ProguardHelper.createOptimizationActions(
ruleContext,
@@ -1067,8 +1048,7 @@
}
}
- Artifact mainDexList =
- ruleContext.getPrerequisiteArtifact("main_dex_list", TransitionMode.TARGET);
+ Artifact mainDexList = ruleContext.getPrerequisiteArtifact("main_dex_list");
if ((mainDexList != null && multidexMode != MultidexMode.MANUAL_MAIN_DEX)
|| (mainDexList == null && multidexMode == MultidexMode.MANUAL_MAIN_DEX)) {
ruleContext.throwWithRuleError(
@@ -1182,8 +1162,7 @@
.useDefaultShellEnvironment()
.setMnemonic("MergeDexZips")
.setProgressMessage("Merging dex shards for %s", ruleContext.getLabel())
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$merge_dexzips", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$merge_dexzips"))
.addInputs(shardDexes)
.addOutput(classesDex)
.addCommandLine(mergeCommandLine)
@@ -1399,8 +1378,7 @@
.setMnemonic("ShardForMultidex")
.setProgressMessage(
"Assembling dex files for %s", ruleContext.getLabel().getCanonicalForm())
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$dexsharder", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$dexsharder"))
.addInputs(dexArchives)
.addOutput(outputTree);
@@ -1442,7 +1420,7 @@
ruleContext.getUniqueDirectory("dexfiles"), ruleContext.getBinOrGenfilesDirectory());
SpawnActionTemplate.Builder dexmerger =
new SpawnActionTemplate.Builder(inputTree, outputTree)
- .setExecutable(ruleContext.getExecutablePrerequisite("$dexmerger", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$dexmerger"))
.setMnemonics("DexShardsToMerge", "DexMerger")
.setOutputPathMapper(
(OutputPathMapper & Serializable) TreeFileArtifact::getParentRelativePath);
@@ -1506,7 +1484,7 @@
SpawnAction.Builder dexmerger =
new SpawnAction.Builder()
.useDefaultShellEnvironment()
- .setExecutable(ruleContext.getExecutablePrerequisite("$dexmerger", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$dexmerger"))
.setMnemonic("DexMerger")
.setProgressMessage("Assembling dex files into %s", classesDex.getRootRelativePath())
.addInputs(dexArchives)
@@ -1569,8 +1547,7 @@
for (String attr : attributes) {
// Use all available AndroidRuntimeJarProvider from attributes that carry runtime dependencies
result.addTransitiveProviders(
- ruleContext.getPrerequisites(
- attr, TransitionMode.TARGET, AndroidRuntimeJarProvider.class));
+ ruleContext.getPrerequisites(attr, AndroidRuntimeJarProvider.class));
}
return result;
}
@@ -1588,8 +1565,7 @@
DexArchiveProvider.Builder result = new DexArchiveProvider.Builder();
for (String attr : semantics.getAttributesWithJavaRuntimeDeps(ruleContext)) {
// Use all available DexArchiveProviders from attributes that carry runtime dependencies
- result.addTransitiveProviders(
- ruleContext.getPrerequisites(attr, TransitionMode.TARGET, DexArchiveProvider.class));
+ result.addTransitiveProviders(ruleContext.getPrerequisites(attr, DexArchiveProvider.class));
}
ImmutableSet<String> incrementalDexopts =
DexArchiveAspect.incrementalDexopts(ruleContext, dexopts);
@@ -1646,8 +1622,7 @@
.useDefaultShellEnvironment()
.setMnemonic("ShardClassesToDex")
.setProgressMessage("Sharding classes for dexing for %s", ruleContext.getLabel())
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$shuffle_jars", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$shuffle_jars"))
.addOutputs(shuffleOutputs)
.addOutput(javaResourceJar);
@@ -1804,10 +1779,7 @@
Artifact mainDexList = AndroidBinary.getDxArtifact(ruleContext, "main_dex_list.txt");
List<Artifact> proguardSpecs = new ArrayList<>();
- proguardSpecs.addAll(
- ruleContext
- .getPrerequisiteArtifacts("main_dex_proguard_specs", TransitionMode.TARGET)
- .list());
+ proguardSpecs.addAll(ruleContext.getPrerequisiteArtifacts("main_dex_proguard_specs").list());
if (proguardSpecs.isEmpty()) {
proguardSpecs.add(sdk.getMainDexClasses());
}
@@ -1878,8 +1850,7 @@
.build(ruleContext));
} else {
FilesToRunProvider legacyMainDexListGenerator =
- ruleContext.getExecutablePrerequisite(
- ":legacy_main_dex_list_generator", TransitionMode.HOST);
+ ruleContext.getExecutablePrerequisite(":legacy_main_dex_list_generator");
// Use the newer legacy multidex main-dex list generation.
SpawnAction.Builder actionBuilder =
new SpawnAction.Builder()
@@ -1893,7 +1864,7 @@
if (AndroidCommon.getAndroidConfig(ruleContext).desugarJava8Libs()) {
NestedSet<Artifact> legacyApis =
ruleContext
- .getPrerequisite("$desugared_java8_legacy_apis", TransitionMode.TARGET)
+ .getPrerequisite("$desugared_java8_legacy_apis")
.getProvider(FileProvider.class)
.getFilesToBuild();
for (Artifact lib : legacyApis.toList()) {
@@ -1934,8 +1905,7 @@
new SpawnAction.Builder()
.setMnemonic("MainDexProguardClasses")
.setProgressMessage("Obfuscating main dex classes list")
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$dex_list_obfuscator", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$dex_list_obfuscator"))
.addInput(mainDexList)
.addInput(proguardOutputMap)
.addOutput(obfuscatedMainDexList)
@@ -2013,7 +1983,7 @@
throws InterruptedException {
Artifact filterJar =
ruleContext
- .getPrerequisite("instruments", TransitionMode.TARGET)
+ .getPrerequisite("instruments")
.get(AndroidPreDexJarProvider.PROVIDER)
.getPreDexJar();
Artifact filteredDeployJar =
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinaryMobileInstall.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinaryMobileInstall.java
index 76c6804..e959973 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinaryMobileInstall.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinaryMobileInstall.java
@@ -26,7 +26,6 @@
import com.google.devtools.build.lib.analysis.FilesToRunProvider;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
@@ -130,9 +129,7 @@
.setMnemonic("AndroidDexManifest")
.setProgressMessage(
"Generating incremental installation manifest for %s", ruleContext.getLabel())
- .setExecutable(
- ruleContext.getExecutablePrerequisite(
- "$build_incremental_dexmanifest", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$build_incremental_dexmanifest"))
.addOutput(incrementalDexManifest)
.addInputs(shardDexZips)
.addCommandLine(
@@ -251,8 +248,7 @@
.useDefaultShellEnvironment()
.setMnemonic("AndroidStripResources")
.setProgressMessage("Stripping resources from split main apk")
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$strip_resources", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$strip_resources"))
.addInput(resourceApk.getArtifact())
.addOutput(splitMainApkResources)
.addCommandLine(
@@ -331,7 +327,7 @@
String attribute =
split ? "$incremental_split_stub_application" : "$incremental_stub_application";
- TransitiveInfoCollection dep = ruleContext.getPrerequisite(attribute, TransitionMode.TARGET);
+ TransitiveInfoCollection dep = ruleContext.getPrerequisite(attribute);
if (dep == null) {
ruleContext.attributeError(attribute, "Stub application cannot be found");
return null;
@@ -390,8 +386,7 @@
SpawnAction.Builder builder =
new SpawnAction.Builder()
.useDefaultShellEnvironment()
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$incremental_install", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$incremental_install"))
// We cannot know if the user connected a new device, uninstalled the app from the
// device
// or did anything strange to it, so we always run this action.
@@ -443,8 +438,7 @@
SpawnAction.Builder builder =
new SpawnAction.Builder()
.useDefaultShellEnvironment()
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$incremental_install", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$incremental_install"))
.addTool(adb)
.executeUnconditionally()
.setMnemonic("AndroidInstall")
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java
index 2d72457..ca80033 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidCommon.java
@@ -256,7 +256,7 @@
.setDefinesAndroidResources(true)
// Sets the possibly merged manifest and the raw manifest.
.setGeneratedManifest(resourceApk.getManifest())
- .setManifest(ruleContext.getPrerequisiteArtifact("manifest", TransitionMode.TARGET))
+ .setManifest(ruleContext.getPrerequisiteArtifact("manifest"))
.setJavaPackage(getJavaPackage(ruleContext))
.setResourceApk(resourceApk.getArtifact());
}
@@ -359,8 +359,7 @@
public static NestedSetBuilder<Artifact> collectTransitiveNativeLibs(RuleContext ruleContext) {
NestedSetBuilder<Artifact> transitiveNativeLibs = NestedSetBuilder.naiveLinkOrder();
Iterable<AndroidNativeLibsInfo> infos =
- getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidNativeLibsInfo.PROVIDER);
+ getTransitivePrerequisites(ruleContext, AndroidNativeLibsInfo.PROVIDER);
for (AndroidNativeLibsInfo nativeLibsZipsInfo : infos) {
transitiveNativeLibs.addTransitive(nativeLibsZipsInfo.getNativeLibs());
}
@@ -386,7 +385,7 @@
/** Returns the artifact for the debug key for signing the APK. */
static ImmutableList<Artifact> getApkDebugSigningKeys(RuleContext ruleContext) {
ImmutableList<Artifact> keys =
- ruleContext.getPrerequisiteArtifacts("debug_signing_keys", TransitionMode.HOST).list();
+ ruleContext.getPrerequisiteArtifacts("debug_signing_keys").list();
if (!keys.isEmpty()) {
return keys;
}
@@ -452,8 +451,7 @@
NestedSetBuilder<Artifact> bootclasspath = NestedSetBuilder.<Artifact>stableOrder();
if (getAndroidConfig(ruleContext).desugarJava8()) {
bootclasspath.addTransitive(
- PrerequisiteArtifacts.nestedSet(
- ruleContext, "$desugar_java8_extra_bootclasspath", TransitionMode.HOST));
+ PrerequisiteArtifacts.nestedSet(ruleContext, "$desugar_java8_extra_bootclasspath"));
}
bootclasspath.add(androidSdkProvider.getAndroidJar());
bootClassPathInfo = BootClassPathInfo.create(bootclasspath.build());
@@ -843,8 +841,7 @@
private NestedSet<Artifact> collectHiddenTopLevelArtifacts(RuleContext ruleContext) {
NestedSetBuilder<Artifact> builder = NestedSetBuilder.stableOrder();
for (OutputGroupInfo provider :
- getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, OutputGroupInfo.STARLARK_CONSTRUCTOR)) {
+ getTransitivePrerequisites(ruleContext, OutputGroupInfo.STARLARK_CONSTRUCTOR)) {
builder.addTransitive(provider.getOutputGroup(OutputGroupInfo.HIDDEN_TOP_LEVEL));
}
return builder.build();
@@ -864,8 +861,7 @@
DataBindingContext dataBindingContext,
boolean isLibrary) {
- ImmutableList<Artifact> ruleSources =
- ruleContext.getPrerequisiteArtifacts("srcs", TransitionMode.TARGET).list();
+ ImmutableList<Artifact> ruleSources = ruleContext.getPrerequisiteArtifacts("srcs").list();
ImmutableList<Artifact> dataBindingSources =
dataBindingContext.getAnnotationSourceFiles(ruleContext);
@@ -886,8 +882,7 @@
bothDeps = JavaCommon.defaultDeps(ruleContext, semantics, ClasspathType.BOTH);
} else {
// Binary:
- compileDeps =
- ImmutableList.copyOf(ruleContext.getPrerequisites("deps", TransitionMode.TARGET));
+ compileDeps = ImmutableList.copyOf(ruleContext.getPrerequisites("deps"));
runtimeDeps = compileDeps;
bothDeps = compileDeps;
}
@@ -901,8 +896,7 @@
*/
static NestedSet<Artifact> getSupportApks(RuleContext ruleContext) {
NestedSetBuilder<Artifact> supportApks = NestedSetBuilder.stableOrder();
- for (TransitiveInfoCollection dep :
- ruleContext.getPrerequisites("support_apks", TransitionMode.TARGET)) {
+ for (TransitiveInfoCollection dep : ruleContext.getPrerequisites("support_apks")) {
ApkInfo apkProvider = dep.get(ApkInfo.PROVIDER);
FileProvider fileProvider = dep.getProvider(FileProvider.class);
// If ApkInfo is present, do not check FileProvider for .apk files. For example,
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDataContext.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDataContext.java
index 3bab0e6..bdfed20 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDataContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDataContext.java
@@ -22,7 +22,6 @@
import com.google.devtools.build.lib.analysis.FilesToRunProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RuleErrorConsumer;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
import com.google.devtools.build.lib.cmdline.Label;
@@ -80,7 +79,7 @@
return new AndroidDataContext(
ruleContext,
- ruleContext.getExecutablePrerequisite("$android_resources_busybox", TransitionMode.HOST),
+ ruleContext.getExecutablePrerequisite("$android_resources_busybox"),
androidConfig.persistentBusyboxTools(),
AndroidSdkProvider.fromRuleContext(ruleContext),
hasExemption(ruleContext, "allow_raw_access_to_resource_paths", false),
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDevice.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDevice.java
index 6724236..7d32a0d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDevice.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDevice.java
@@ -36,7 +36,6 @@
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
import com.google.devtools.build.lib.analysis.RunfilesSupport;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
@@ -211,26 +210,20 @@
vmHeap = ruleContext.attributes().get("vm_heap", Type.INTEGER);
defaultProperties =
- Optional.fromNullable(
- ruleContext.getPrerequisiteArtifact("default_properties", TransitionMode.HOST));
- adb = ruleContext.getPrerequisiteArtifact("$adb", TransitionMode.HOST);
- emulatorArm = ruleContext.getPrerequisiteArtifact("$emulator_arm", TransitionMode.HOST);
- emulatorX86 = ruleContext.getPrerequisiteArtifact("$emulator_x86", TransitionMode.HOST);
- adbStatic = ruleContext.getPrerequisiteArtifact("$adb_static", TransitionMode.HOST);
- emulatorX86Bios =
- ruleContext.getPrerequisiteArtifacts("$emulator_x86_bios", TransitionMode.HOST).list();
- xvfbSupportFiles =
- ruleContext.getPrerequisiteArtifacts("$xvfb_support", TransitionMode.HOST).list();
- mksdcard = ruleContext.getPrerequisiteArtifact("$mksd", TransitionMode.HOST);
- snapshotFs = ruleContext.getPrerequisiteArtifact("$empty_snapshot_fs", TransitionMode.HOST);
- unifiedLauncher =
- ruleContext.getExecutablePrerequisite("$unified_launcher", TransitionMode.HOST);
- androidRuntestDeps =
- ruleContext.getPrerequisiteArtifacts("$android_runtest", TransitionMode.HOST).list();
+ Optional.fromNullable(ruleContext.getPrerequisiteArtifact("default_properties"));
+ adb = ruleContext.getPrerequisiteArtifact("$adb");
+ emulatorArm = ruleContext.getPrerequisiteArtifact("$emulator_arm");
+ emulatorX86 = ruleContext.getPrerequisiteArtifact("$emulator_x86");
+ adbStatic = ruleContext.getPrerequisiteArtifact("$adb_static");
+ emulatorX86Bios = ruleContext.getPrerequisiteArtifacts("$emulator_x86_bios").list();
+ xvfbSupportFiles = ruleContext.getPrerequisiteArtifacts("$xvfb_support").list();
+ mksdcard = ruleContext.getPrerequisiteArtifact("$mksd");
+ snapshotFs = ruleContext.getPrerequisiteArtifact("$empty_snapshot_fs");
+ unifiedLauncher = ruleContext.getExecutablePrerequisite("$unified_launcher");
+ androidRuntestDeps = ruleContext.getPrerequisiteArtifacts("$android_runtest").list();
androidRuntest =
androidRuntestDeps.stream().filter(Artifact::isSourceArtifact).collect(onlyElement());
- testingShbaseDeps =
- ruleContext.getPrerequisiteArtifacts("$testing_shbase", TransitionMode.HOST).list();
+ testingShbaseDeps = ruleContext.getPrerequisiteArtifacts("$testing_shbase").list();
testingShbase =
testingShbaseDeps
.stream()
@@ -239,12 +232,11 @@
.collect(onlyElement());
// may be empty
- platformApks =
- ruleContext.getPrerequisiteArtifacts("platform_apks", TransitionMode.TARGET).list();
- sdkPath = ruleContext.getPrerequisiteArtifact("$sdk_path", TransitionMode.HOST);
+ platformApks = ruleContext.getPrerequisiteArtifacts("platform_apks").list();
+ sdkPath = ruleContext.getPrerequisiteArtifact("$sdk_path");
TransitiveInfoCollection systemImagesAndSourceProperties =
- ruleContext.getPrerequisite("system_image", TransitionMode.TARGET);
+ ruleContext.getPrerequisite("system_image");
if (ruleContext.hasErrors()) {
return;
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDeviceScriptFixture.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDeviceScriptFixture.java
index b9bee36..cff3a7e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDeviceScriptFixture.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidDeviceScriptFixture.java
@@ -22,7 +22,6 @@
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.FileWriteAction;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
@@ -70,7 +69,7 @@
if (ruleContext.attributes().isAttributeValueExplicitlySpecified("cmd")) {
cmd = ruleContext.attributes().get("cmd", Type.STRING);
}
- TransitiveInfoCollection script = ruleContext.getPrerequisite("script", TransitionMode.TARGET);
+ TransitiveInfoCollection script = ruleContext.getPrerequisite("script");
if (((cmd == null) && (script == null)) || ((cmd != null) && (script != null))) {
ruleContext.throwWithRuleError(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidFeatureFlagSetProvider.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidFeatureFlagSetProvider.java
index 9ee7520..ac09a67 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidFeatureFlagSetProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidFeatureFlagSetProvider.java
@@ -20,7 +20,6 @@
import com.google.devtools.build.lib.analysis.AliasProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RuleDefinitionEnvironment;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
@@ -102,7 +101,7 @@
}
Iterable<? extends TransitiveInfoCollection> actualTargets =
- ruleContext.getPrerequisites(FEATURE_FLAG_ATTR, TransitionMode.TARGET);
+ ruleContext.getPrerequisites(FEATURE_FLAG_ATTR);
RuleErrorException exception = null;
for (TransitiveInfoCollection target : actualTargets) {
Label label = AliasProvider.getDependencyLabel(target);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidHostServiceFixture.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidHostServiceFixture.java
index d0339da..ac57111 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidHostServiceFixture.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidHostServiceFixture.java
@@ -22,7 +22,6 @@
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.packages.Type;
@@ -42,8 +41,7 @@
androidSemantics.checkForMigrationTag(ruleContext);
RuleConfiguredTargetBuilder ruleBuilder = new RuleConfiguredTargetBuilder(ruleContext);
NestedSet<Artifact> supportApks = AndroidCommon.getSupportApks(ruleContext);
- FilesToRunProvider executable =
- ruleContext.getExecutablePrerequisite("executable", TransitionMode.HOST);
+ FilesToRunProvider executable = ruleContext.getExecutablePrerequisite("executable");
NestedSet<Artifact> filesToBuild =
NestedSetBuilder.<Artifact>stableOrder()
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdlHelper.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdlHelper.java
index d3e01ea..7baa6cf 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdlHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdlHelper.java
@@ -21,7 +21,6 @@
import com.google.devtools.build.lib.analysis.OutputGroupInfo;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
@@ -208,7 +207,7 @@
return ruleContext.getRule().isAttrDefined("idl_parcelables", BuildType.LABEL_LIST)
? ImmutableList.copyOf(
ruleContext
- .getPrerequisiteArtifacts("idl_parcelables", TransitionMode.TARGET)
+ .getPrerequisiteArtifacts("idl_parcelables")
.filter(AndroidRuleClasses.ANDROID_IDL)
.list())
: ImmutableList.<Artifact>of();
@@ -221,7 +220,7 @@
}
checkIdlSrcsSamePackage(ruleContext);
return ruleContext
- .getPrerequisiteArtifacts("idl_srcs", TransitionMode.TARGET)
+ .getPrerequisiteArtifacts("idl_srcs")
.filter(AndroidRuleClasses.ANDROID_IDL)
.list();
}
@@ -233,7 +232,7 @@
PathFragment packageName = ruleContext.getLabel().getPackageFragment();
Collection<Artifact> idls =
ruleContext
- .getPrerequisiteArtifacts("idl_srcs", TransitionMode.TARGET)
+ .getPrerequisiteArtifacts("idl_srcs")
.filter(AndroidRuleClasses.ANDROID_IDL)
.list();
for (Artifact idl : idls) {
@@ -342,7 +341,7 @@
.addInputs(generatedIdlJavaFiles)
.addOutput(idlClassJar)
.addOutput(idlSourceJar)
- .setExecutable(ruleContext.getExecutablePrerequisite("$idlclass", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$idlclass"))
.addCommandLine(
CustomCommandLine.builder()
.addExecPath("--manifest_proto", manifestProtoOutput)
@@ -432,8 +431,7 @@
}
for (AndroidIdlProvider dep :
- AndroidCommon.getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidIdlProvider.PROVIDER)) {
+ AndroidCommon.getTransitivePrerequisites(ruleContext, AndroidIdlProvider.PROVIDER)) {
rootsBuilder.addTransitive(dep.getTransitiveIdlImportRoots());
importsBuilder.addTransitive(dep.getTransitiveIdlImports());
preprocessedBuilder.addTransitive(dep.getTransitiveIdlPreprocessed());
@@ -506,7 +504,7 @@
private static Collection<Artifact> getIdlPreprocessed(RuleContext ruleContext) {
return ruleContext.isAttrDefined("idl_preprocessed", BuildType.LABEL_LIST)
? ruleContext
- .getPrerequisiteArtifacts("idl_preprocessed", TransitionMode.TARGET)
+ .getPrerequisiteArtifacts("idl_preprocessed")
.filter(AndroidRuleClasses.ANDROID_IDL)
.list()
: ImmutableList.<Artifact>of();
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidInstrumentationTestBase.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidInstrumentationTestBase.java
index dd349f9..eb4ea21 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidInstrumentationTestBase.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidInstrumentationTestBase.java
@@ -27,7 +27,6 @@
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
import com.google.devtools.build.lib.analysis.RunfilesSupport;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.Substitution;
import com.google.devtools.build.lib.analysis.actions.Template;
@@ -79,9 +78,9 @@
ImmutableList<TransitiveInfoCollection> runfilesDeps =
ImmutableList.<TransitiveInfoCollection>builder()
- .addAll(ruleContext.getPrerequisites("fixtures", TransitionMode.TARGET))
- .add(ruleContext.getPrerequisite("target_device", TransitionMode.HOST))
- .add(ruleContext.getPrerequisite("$test_entry_point", TransitionMode.HOST))
+ .addAll(ruleContext.getPrerequisites("fixtures"))
+ .add(ruleContext.getPrerequisite("target_device"))
+ .add(ruleContext.getPrerequisite("$test_entry_point"))
.build();
Runfiles runfiles =
@@ -203,13 +202,12 @@
@Nullable
private static AndroidInstrumentationInfo getInstrumentationProvider(RuleContext ruleContext) {
- return ruleContext.getPrerequisite(
- "test_app", TransitionMode.TARGET, AndroidInstrumentationInfo.PROVIDER);
+ return ruleContext.getPrerequisite("test_app", AndroidInstrumentationInfo.PROVIDER);
}
@Nullable
private static ApkInfo getApkProvider(RuleContext ruleContext) {
- return ruleContext.getPrerequisite("test_app", TransitionMode.TARGET, ApkInfo.PROVIDER);
+ return ruleContext.getPrerequisite("test_app", ApkInfo.PROVIDER);
}
/** The target APK from the {@code android_binary} in the {@code instrumentation} attribute. */
@@ -235,14 +233,12 @@
for (AndroidDeviceScriptFixtureInfoProvider fixture :
ruleContext.getPrerequisites(
"fixtures",
- TransitionMode.TARGET,
AndroidDeviceScriptFixtureInfoProvider.STARLARK_CONSTRUCTOR)) {
allSupportApks.addTransitive(fixture.getSupportApks());
}
for (AndroidHostServiceFixtureInfoProvider fixture :
ruleContext.getPrerequisites(
"fixtures",
- TransitionMode.TARGET,
AndroidHostServiceFixtureInfoProvider.ANDROID_HOST_SERVICE_FIXTURE_INFO)) {
allSupportApks.addTransitive(fixture.getSupportApks());
}
@@ -251,12 +247,12 @@
/** The deploy jar that interacts with the device. */
private static FilesToRunProvider getTestEntryPoint(RuleContext ruleContext) {
- return ruleContext.getExecutablePrerequisite("$test_entry_point", TransitionMode.HOST);
+ return ruleContext.getExecutablePrerequisite("$test_entry_point");
}
/** The {@code android_device} script to launch an emulator for the test. */
private static FilesToRunProvider getTargetDevice(RuleContext ruleContext) {
- return ruleContext.getExecutablePrerequisite("target_device", TransitionMode.HOST);
+ return ruleContext.getExecutablePrerequisite("target_device");
}
/** ADB binary from the Android SDK. */
@@ -270,7 +266,7 @@
}
private static ImmutableList<Artifact> getDataDeps(RuleContext ruleContext) {
- return ruleContext.getPrerequisiteArtifacts("data", TransitionMode.DONT_CHECK).list();
+ return ruleContext.getPrerequisiteArtifacts("data").list();
}
/**
@@ -285,7 +281,6 @@
ImmutableList.copyOf(
ruleContext.getPrerequisites(
"fixtures",
- TransitionMode.TARGET,
AndroidHostServiceFixtureInfoProvider.ANDROID_HOST_SERVICE_FIXTURE_INFO));
if (hostServiceFixtures.size() > 1) {
ruleContext.ruleError(
@@ -298,13 +293,12 @@
RuleContext ruleContext) {
return ruleContext.getPrerequisites(
"fixtures",
- TransitionMode.TARGET,
AndroidDeviceScriptFixtureInfoProvider.STARLARK_CONSTRUCTOR);
}
private static String getDeviceBrokerType(RuleContext ruleContext) {
return ruleContext
- .getPrerequisite("target_device", TransitionMode.HOST, AndroidDeviceBrokerInfo.PROVIDER)
+ .getPrerequisite("target_device", AndroidDeviceBrokerInfo.PROVIDER)
.getDeviceBrokerType();
}
@@ -336,7 +330,7 @@
*/
private static ExecutionInfo getExecutionInfoProvider(RuleContext ruleContext) {
ExecutionInfo executionInfo =
- ruleContext.getPrerequisite("target_device", TransitionMode.HOST, ExecutionInfo.PROVIDER);
+ ruleContext.getPrerequisite("target_device", ExecutionInfo.PROVIDER);
ImmutableMap<String, String> executionRequirements =
(executionInfo != null) ? executionInfo.getExecutionInfo() : ImmutableMap.of();
return new ExecutionInfo(executionRequirements);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java
index 903316c..39b570e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java
@@ -22,7 +22,6 @@
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.packages.AttributeMap;
@@ -264,7 +263,7 @@
NestedSetBuilder<Artifact> builder = NestedSetBuilder.naiveLinkOrder();
Iterable<AndroidLibraryResourceClassJarProvider> providers =
AndroidCommon.getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidLibraryResourceClassJarProvider.PROVIDER);
+ ruleContext, AndroidLibraryResourceClassJarProvider.PROVIDER);
for (AndroidLibraryResourceClassJarProvider resourceJarProvider : providers) {
builder.addTransitive(resourceJarProvider.getResourceClassJars());
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibraryAarInfo.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibraryAarInfo.java
index c09d1fb..51e093e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibraryAarInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibraryAarInfo.java
@@ -18,7 +18,6 @@
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.collect.nestedset.Depset;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
@@ -165,8 +164,7 @@
public AndroidLibraryAarInfo toProvider(
RuleContext ruleContext, boolean definesLocalResources) {
return toProvider(
- AndroidCommon.getTransitivePrerequisites(ruleContext, TransitionMode.TARGET, PROVIDER),
- definesLocalResources);
+ AndroidCommon.getTransitivePrerequisites(ruleContext, PROVIDER), definesLocalResources);
}
public AndroidLibraryAarInfo toProvider(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java
index a3438ce..6be25d3 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLocalTestBase.java
@@ -28,7 +28,6 @@
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
import com.google.devtools.build.lib.analysis.RunfilesSupport;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.Substitution;
import com.google.devtools.build.lib.analysis.actions.Template;
@@ -425,10 +424,8 @@
ImmutableList<TransitiveInfoCollection> depsForRunfiles =
ImmutableList.<TransitiveInfoCollection>builder()
- .addAll(
- ruleContext.getPrerequisites(
- "$robolectric_implicit_classpath", TransitionMode.TARGET))
- .addAll(ruleContext.getPrerequisites("runtime_deps", TransitionMode.TARGET))
+ .addAll(ruleContext.getPrerequisites("$robolectric_implicit_classpath"))
+ .addAll(ruleContext.getPrerequisites("runtime_deps"))
.build();
Artifact androidAllJarsPropertiesFile = getAndroidAllJarsPropertiesFile(ruleContext);
@@ -528,7 +525,7 @@
private static NestedSet<Artifact> getLibraryResourceJars(RuleContext ruleContext) {
Iterable<AndroidLibraryResourceClassJarProvider> libraryResourceJarProviders =
AndroidCommon.getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidLibraryResourceClassJarProvider.PROVIDER);
+ ruleContext, AndroidLibraryResourceClassJarProvider.PROVIDER);
NestedSetBuilder<Artifact> libraryResourceJarsBuilder = NestedSetBuilder.naiveLinkOrder();
for (AndroidLibraryResourceClassJarProvider provider : libraryResourceJarProviders) {
@@ -581,13 +578,12 @@
if (ruleContext.isAttrDefined("$junit", BuildType.LABEL)) {
// JUnit jar must be ahead of android runtime jars since these contain stubbed definitions
// for framework.junit.* classes which Robolectric does not re-write.
- javaCompilationHelper.addLibrariesToAttributes(
- ruleContext.getPrerequisites("$junit", TransitionMode.TARGET));
+ javaCompilationHelper.addLibrariesToAttributes(ruleContext.getPrerequisites("$junit"));
}
// Robolectric jars must be ahead of other potentially conflicting jars
// (e.g., Android runtime jars) in the classpath to make sure they always take precedence.
javaCompilationHelper.addLibrariesToAttributes(
- ruleContext.getPrerequisites("$robolectric_implicit_classpath", TransitionMode.TARGET));
+ ruleContext.getPrerequisites("$robolectric_implicit_classpath"));
javaCompilationHelper.addLibrariesToAttributes(
javaCommon.targetsTreatedAsDeps(ClasspathType.COMPILE_ONLY));
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifest.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifest.java
index aebf0426..ed9d097 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifest.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifest.java
@@ -20,7 +20,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RuleErrorConsumer;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.SymlinkAction;
import com.google.devtools.build.lib.cmdline.Label;
@@ -82,7 +81,7 @@
Artifact rawManifest = null;
if (AndroidResources.definesAndroidResources(ruleContext.attributes())) {
AndroidResources.validateRuleContext(ruleContext);
- rawManifest = ruleContext.getPrerequisiteArtifact("manifest", TransitionMode.TARGET);
+ rawManifest = ruleContext.getPrerequisiteArtifact("manifest");
}
return from(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifestMergeHelper.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifestMergeHelper.java
index 06b0ddb..89df73e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifestMergeHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidManifestMergeHelper.java
@@ -15,7 +15,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
@@ -34,7 +33,7 @@
Artifact mergedManifest) {
createMergeManifestAction(
ruleContext,
- ruleContext.getPrerequisite("$android_manifest_merge_tool", TransitionMode.HOST),
+ ruleContext.getPrerequisite("$android_manifest_merge_tool"),
merger,
mergees,
excludePermissions,
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java
index e1821d6..3454514 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java
@@ -19,7 +19,6 @@
import com.google.devtools.build.lib.analysis.ConfiguredAspect;
import com.google.devtools.build.lib.analysis.ConfiguredAspectFactory;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.packages.AspectDefinition;
@@ -69,7 +68,7 @@
continue;
}
- deps.addAll(ruleContext.getPrerequisites(attribute, TransitionMode.TARGET));
+ deps.addAll(ruleContext.getPrerequisites(attribute));
}
NestedSetBuilder<Artifact> runtimeJars = NestedSetBuilder.naiveLinkOrder();
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResources.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResources.java
index b3a5ec4..b091e53 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResources.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResources.java
@@ -25,7 +25,6 @@
import com.google.devtools.build.lib.analysis.FileProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RuleErrorConsumer;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.packages.AttributeMap;
import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.RuleErrorException;
import com.google.devtools.build.lib.rules.android.databinding.DataBindingContext;
@@ -108,7 +107,7 @@
private static void validateNoAndroidResourcesInSources(RuleContext ruleContext)
throws RuleErrorException {
Iterable<AndroidResourcesInfo> resources =
- ruleContext.getPrerequisites("srcs", TransitionMode.TARGET, AndroidResourcesInfo.PROVIDER);
+ ruleContext.getPrerequisites("srcs", AndroidResourcesInfo.PROVIDER);
for (AndroidResourcesInfo info : resources) {
ruleContext.throwWithAttributeError(
"srcs",
@@ -117,7 +116,7 @@
}
private static void validateManifest(RuleContext ruleContext) throws RuleErrorException {
- if (ruleContext.getPrerequisiteArtifact("manifest", TransitionMode.TARGET) == null) {
+ if (ruleContext.getPrerequisiteArtifact("manifest") == null) {
ruleContext.throwWithAttributeError(
"manifest", "manifest is required when resource_files or assets are defined.");
}
@@ -131,7 +130,7 @@
return from(
ruleContext,
- ruleContext.getPrerequisites(resourcesAttr, TransitionMode.TARGET, FileProvider.class),
+ ruleContext.getPrerequisites(resourcesAttr, FileProvider.class),
resourcesAttr);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkBase.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkBase.java
index b0f6a65..8d0f2d9 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkBase.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkBase.java
@@ -21,7 +21,6 @@
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.collect.nestedset.Order;
@@ -47,36 +46,29 @@
// rule. Otherwise, use what they told us to.
FilesToRunProvider proguard =
ruleContext.getFragment(JavaConfiguration.class).getProguardBinary() == null
- ? ruleContext.getExecutablePrerequisite("proguard", TransitionMode.HOST)
- : ruleContext.getExecutablePrerequisite(":proguard", TransitionMode.HOST);
+ ? ruleContext.getExecutablePrerequisite("proguard")
+ : ruleContext.getExecutablePrerequisite(":proguard");
String buildToolsVersion =
AggregatingAttributeMapper.of(ruleContext.getRule())
.get("build_tools_version", Type.STRING);
- FilesToRunProvider aidl = ruleContext.getExecutablePrerequisite("aidl", TransitionMode.HOST);
- FilesToRunProvider aapt = ruleContext.getExecutablePrerequisite("aapt", TransitionMode.HOST);
- FilesToRunProvider aapt2 = ruleContext.getExecutablePrerequisite("aapt2", TransitionMode.HOST);
- FilesToRunProvider apkBuilder =
- ruleContext.getExecutablePrerequisite("apkbuilder", TransitionMode.HOST);
- FilesToRunProvider apkSigner =
- ruleContext.getExecutablePrerequisite("apksigner", TransitionMode.HOST);
+ FilesToRunProvider aidl = ruleContext.getExecutablePrerequisite("aidl");
+ FilesToRunProvider aapt = ruleContext.getExecutablePrerequisite("aapt");
+ FilesToRunProvider aapt2 = ruleContext.getExecutablePrerequisite("aapt2");
+ FilesToRunProvider apkBuilder = ruleContext.getExecutablePrerequisite("apkbuilder");
+ FilesToRunProvider apkSigner = ruleContext.getExecutablePrerequisite("apksigner");
- FilesToRunProvider adb = ruleContext.getExecutablePrerequisite("adb", TransitionMode.HOST);
- FilesToRunProvider dx = ruleContext.getExecutablePrerequisite("dx", TransitionMode.HOST);
+ FilesToRunProvider adb = ruleContext.getExecutablePrerequisite("adb");
+ FilesToRunProvider dx = ruleContext.getExecutablePrerequisite("dx");
FilesToRunProvider mainDexListCreator =
- ruleContext.getExecutablePrerequisite("main_dex_list_creator", TransitionMode.HOST);
- FilesToRunProvider zipalign =
- ruleContext.getExecutablePrerequisite("zipalign", TransitionMode.HOST);
- Artifact frameworkAidl =
- ruleContext.getPrerequisiteArtifact("framework_aidl", TransitionMode.HOST);
- TransitiveInfoCollection aidlLib =
- ruleContext.getPrerequisite("aidl_lib", TransitionMode.TARGET);
- Artifact androidJar = ruleContext.getPrerequisiteArtifact("android_jar", TransitionMode.HOST);
+ ruleContext.getExecutablePrerequisite("main_dex_list_creator");
+ FilesToRunProvider zipalign = ruleContext.getExecutablePrerequisite("zipalign");
+ Artifact frameworkAidl = ruleContext.getPrerequisiteArtifact("framework_aidl");
+ TransitiveInfoCollection aidlLib = ruleContext.getPrerequisite("aidl_lib");
+ Artifact androidJar = ruleContext.getPrerequisiteArtifact("android_jar");
Artifact sourceProperties = ruleContext.getHostPrerequisiteArtifact("source_properties");
- Artifact shrinkedAndroidJar =
- ruleContext.getPrerequisiteArtifact("shrinked_android_jar", TransitionMode.HOST);
- Artifact mainDexClasses =
- ruleContext.getPrerequisiteArtifact("main_dex_classes", TransitionMode.HOST);
+ Artifact shrinkedAndroidJar = ruleContext.getPrerequisiteArtifact("shrinked_android_jar");
+ Artifact mainDexClasses = ruleContext.getPrerequisiteArtifact("main_dex_classes");
if (ruleContext.hasErrors()) {
return null;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkProvider.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkProvider.java
index 72c535c..51027e9 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSdkProvider.java
@@ -18,7 +18,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.FilesToRunProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.packages.BuiltinProvider;
@@ -100,8 +99,7 @@
* not specified.
*/
public static AndroidSdkProvider fromRuleContext(RuleContext ruleContext) {
- return ruleContext.getPrerequisite(
- ":android_sdk", TransitionMode.TARGET, AndroidSdkProvider.PROVIDER);
+ return ruleContext.getPrerequisite(":android_sdk", AndroidSdkProvider.PROVIDER);
}
/** Throws an error if the Android SDK cannot be found. */
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AssetDependencies.java b/src/main/java/com/google/devtools/build/lib/rules/android/AssetDependencies.java
index 101fb1b..a9202b2 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AssetDependencies.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AssetDependencies.java
@@ -16,7 +16,6 @@
import com.google.common.annotations.VisibleForTesting;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
@@ -41,8 +40,7 @@
public static AssetDependencies fromRuleDeps(RuleContext ruleContext, boolean neverlink) {
return fromProviders(
- AndroidCommon.getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidAssetsInfo.PROVIDER),
+ AndroidCommon.getTransitivePrerequisites(ruleContext, AndroidAssetsInfo.PROVIDER),
neverlink);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java b/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java
index 26062d8..d2acd2e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java
@@ -39,7 +39,6 @@
import com.google.devtools.build.lib.analysis.ConfiguredAspectFactory;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoProvider;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
@@ -294,7 +293,7 @@
private static Iterable<Artifact> getProducedRuntimeJars(
ConfiguredTarget base, RuleContext ruleContext) {
if (isProtoLibrary(ruleContext)) {
- if (!ruleContext.getPrerequisites("srcs", TransitionMode.TARGET).isEmpty()) {
+ if (!ruleContext.getPrerequisites("srcs").isEmpty()) {
JavaRuleOutputJarsProvider outputJarsProvider =
base.getProvider(JavaRuleOutputJarsProvider.class);
if (outputJarsProvider != null) {
@@ -365,7 +364,7 @@
IterablesChain.Builder<T> result = IterablesChain.builder();
for (String attr : TRANSITIVE_ATTRIBUTES) {
if (ruleContext.attributes().getAttributeType(attr) != null) {
- result.add(ruleContext.getPrerequisites(attr, TransitionMode.TARGET, classType));
+ result.add(ruleContext.getPrerequisites(attr, classType));
}
}
return result.build();
@@ -381,7 +380,6 @@
ruleContext
.getPrerequisite(
":dex_archive_android_sdk",
- TransitionMode.TARGET,
AndroidSdkProvider.PROVIDER)
.getAndroidJar())
.build();
@@ -449,8 +447,7 @@
ruleContext.registerAction(
new SpawnAction.Builder()
.useDefaultShellEnvironment()
- .setExecutable(
- ruleContext.getExecutablePrerequisite(desugarPrereqName, TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite(desugarPrereqName))
.addInput(jar)
.addTransitiveInputs(bootclasspath)
.addTransitiveInputs(classpath)
@@ -487,8 +484,7 @@
SpawnAction.Builder dexbuilder =
new SpawnAction.Builder()
.useDefaultShellEnvironment()
- .setExecutable(
- ruleContext.getExecutablePrerequisite(dexbuilderPrereq, TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite(dexbuilderPrereq))
// WorkerSpawnStrategy expects the last argument to be @paramfile
.addInput(jar)
.addOutput(dexArchive)
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ProguardHelper.java b/src/main/java/com/google/devtools/build/lib/rules/android/ProguardHelper.java
index e1f7d20..3f2166d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ProguardHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ProguardHelper.java
@@ -26,7 +26,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.FilesToRunProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
@@ -165,14 +164,11 @@
return collectTransitiveProguardSpecs(
ruleContext,
Iterables.concat(
- specsToInclude,
- ruleContext
- .getPrerequisiteArtifacts(":extra_proguard_specs", TransitionMode.TARGET)
- .list()),
+ specsToInclude, ruleContext.getPrerequisiteArtifacts(":extra_proguard_specs").list()),
ruleContext.attributes().has(PROGUARD_SPECS, BuildType.LABEL_LIST)
- ? ruleContext.getPrerequisiteArtifacts(PROGUARD_SPECS, TransitionMode.TARGET).list()
+ ? ruleContext.getPrerequisiteArtifacts(PROGUARD_SPECS).list()
: ImmutableList.<Artifact>of(),
- ruleContext.getPrerequisites("deps", TransitionMode.TARGET, ProguardSpecProvider.PROVIDER));
+ ruleContext.getPrerequisites("deps", ProguardSpecProvider.PROVIDER));
}
/**
@@ -385,8 +381,7 @@
Optional<Label> optimizerTarget = optimizer.label();
FilesToRunProvider executable = null;
if (optimizerTarget.isPresent()) {
- TransitiveInfoCollection optimizerDep =
- ruleContext.getPrerequisite(":bytecode_optimizer", TransitionMode.HOST);
+ TransitiveInfoCollection optimizerDep = ruleContext.getPrerequisite(":bytecode_optimizer");
if (optimizerDep.getLabel().equals(optimizerTarget.get())) {
executable = optimizerDep.getProvider(FilesToRunProvider.class);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ResourceDependencies.java b/src/main/java/com/google/devtools/build/lib/rules/android/ResourceDependencies.java
index fda4a6a..eac394f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ResourceDependencies.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ResourceDependencies.java
@@ -18,7 +18,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.RuleErrorConsumer;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
@@ -92,8 +91,7 @@
public static ResourceDependencies fromRuleDeps(RuleContext ruleContext, boolean neverlink) {
return fromProviders(
- AndroidCommon.getTransitivePrerequisites(
- ruleContext, TransitionMode.TARGET, AndroidResourcesInfo.PROVIDER),
+ AndroidCommon.getTransitivePrerequisites(ruleContext, AndroidResourcesInfo.PROVIDER),
neverlink);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/StampedAndroidManifest.java b/src/main/java/com/google/devtools/build/lib/rules/android/StampedAndroidManifest.java
index 5a4f84b..6f35dbb 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/StampedAndroidManifest.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/StampedAndroidManifest.java
@@ -17,7 +17,6 @@
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.FileWriteAction;
@@ -93,8 +92,7 @@
SpawnAction.Builder builder =
new SpawnAction.Builder()
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$stubify_manifest", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$stubify_manifest"))
.setProgressMessage("Injecting mobile install stub application")
.setMnemonic("InjectMobileInstallStubApplication")
.addInput(getManifest())
@@ -141,8 +139,7 @@
AndroidBinary.getDxArtifact(ruleContext, "split_" + splitName + "/AndroidManifest.xml");
SpawnAction.Builder builder =
new SpawnAction.Builder()
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$build_split_manifest", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$build_split_manifest"))
.setProgressMessage("Creating manifest for split %s", splitName)
.setMnemonic("AndroidBuildSplitManifest")
.addInput(getManifest())
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ZipFilterBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/android/ZipFilterBuilder.java
index fe78caf..d7626e6 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ZipFilterBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ZipFilterBuilder.java
@@ -17,7 +17,6 @@
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
@@ -148,8 +147,7 @@
.addInput(inputZip)
.addInputs(filterZips)
.addOutput(outputZip)
- .setExecutable(
- ruleContext.getExecutablePrerequisite("$zip_filter", TransitionMode.HOST))
+ .setExecutable(ruleContext.getExecutablePrerequisite("$zip_filter"))
.addCommandLine(args.build())
.setProgressMessage("Filtering Zip %s", inputZip.prettyPrint())
.setMnemonic("ZipFilter")
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBinding.java b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBinding.java
index abcc895..e302ce2 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBinding.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBinding.java
@@ -17,7 +17,6 @@
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.FileWriteAction;
import com.google.devtools.build.lib.analysis.actions.SymlinkAction;
@@ -177,8 +176,7 @@
ImmutableList.Builder<Artifact> dataBindingMetadataOutputs = ImmutableList.builder();
if (ruleContext.attributes().has(attr, BuildType.LABEL_LIST)) {
for (UsesDataBindingProvider provider :
- ruleContext.getPrerequisites(
- attr, TransitionMode.TARGET, UsesDataBindingProvider.PROVIDER)) {
+ ruleContext.getPrerequisites(attr, UsesDataBindingProvider.PROVIDER)) {
dataBindingMetadataOutputs.addAll(provider.getMetadataOutputs());
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV1Context.java b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV1Context.java
index b77a60d..fa36c32 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV1Context.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV1Context.java
@@ -18,7 +18,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.rules.android.AndroidCommon;
import com.google.devtools.build.lib.rules.android.AndroidDataContext;
@@ -81,8 +80,7 @@
JavaPluginInfoProvider javaPluginInfoProvider =
JavaInfo.getProvider(
JavaPluginInfoProvider.class,
- ruleContext.getPrerequisite(
- DataBinding.DATABINDING_ANNOTATION_PROCESSOR_ATTR, TransitionMode.HOST));
+ ruleContext.getPrerequisite(DataBinding.DATABINDING_ANNOTATION_PROCESSOR_ATTR));
ImmutableList<Artifact> annotationProcessorOutputs =
DataBinding.getMetadataOutputs(ruleContext, useUpdatedArgs, metadataOutputSuffixes);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Context.java b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Context.java
index cf3dd12..95c025f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Context.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Context.java
@@ -23,7 +23,6 @@
import com.google.devtools.build.lib.analysis.FilesToRunProvider;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.analysis.actions.ActionConstructionContext;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
@@ -104,8 +103,7 @@
ImmutableSet.Builder<String> javaPackagesOfDirectDependencies = ImmutableSet.builder();
if (ruleContext.attributes().has("deps", BuildType.LABEL_LIST)) {
Iterable<DataBindingV2Provider> providers =
- ruleContext.getPrerequisites(
- "deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : providers) {
for (LabelJavaPackagePair labelJavaPackagePair : provider.getLabelAndJavaPackages()) {
@@ -125,8 +123,7 @@
JavaPluginInfoProvider javaPluginInfoProvider =
JavaInfo.getProvider(
JavaPluginInfoProvider.class,
- ruleContext.getPrerequisite(
- DataBinding.DATABINDING_ANNOTATION_PROCESSOR_ATTR, TransitionMode.HOST));
+ ruleContext.getPrerequisite(DataBinding.DATABINDING_ANNOTATION_PROCESSOR_ATTR));
ImmutableList<Artifact> annotationProcessorOutputs =
DataBinding.getMetadataOutputs(ruleContext, useUpdatedArgs, metadataOutputSuffixes);
@@ -194,7 +191,7 @@
if (context.attributes().has("deps", BuildType.LABEL_LIST)) {
Iterable<DataBindingV2Provider> providers =
- context.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ context.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : providers) {
brFiles.addAll(provider.getTransitiveBRFiles().toList());
@@ -208,7 +205,7 @@
if (context.attributes().has("deps", BuildType.LABEL_LIST)) {
Iterable<DataBindingV2Provider> providers =
- context.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ context.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : providers) {
setterStoreFiles.addAll(provider.getSetterStores());
@@ -241,7 +238,7 @@
if (context.attributes().has("deps", BuildType.LABEL_LIST)) {
Iterable<DataBindingV2Provider> providers =
- context.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ context.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : providers) {
for (LabelJavaPackagePair labelJavaPackagePair :
@@ -276,8 +273,7 @@
Artifact srcOutFile = DataBinding.getDataBindingArtifact(ruleContext, "baseClassSrc.srcjar");
FilesToRunProvider exec =
- ruleContext.getExecutablePrerequisite(
- DataBinding.DATABINDING_EXEC_PROCESSOR_ATTR, TransitionMode.HOST);
+ ruleContext.getExecutablePrerequisite(DataBinding.DATABINDING_EXEC_PROCESSOR_ATTR);
CustomCommandLine.Builder commandLineBuilder = CustomCommandLine.builder()
.add("GEN_BASE_CLASSES")
@@ -313,7 +309,7 @@
if (context.attributes().has("deps", BuildType.LABEL_LIST)) {
Iterable<DataBindingV2Provider> providers =
- context.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ context.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : providers) {
classInfoFiles.addAll(provider.getClassInfos());
@@ -341,13 +337,12 @@
String javaPackage = AndroidCommon.getJavaPackage(ruleContext);
Iterable<? extends DataBindingV2ProviderApi<Artifact>> providersFromDeps =
- ruleContext.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
Iterable<? extends DataBindingV2ProviderApi<Artifact>> providersFromExports;
if (ruleContext.attributes().has("exports", BuildType.LABEL_LIST)) {
providersFromExports =
- ruleContext.getPrerequisites(
- "exports", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("exports", DataBindingV2Provider.PROVIDER);
} else {
providersFromExports = null;
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DisabledDataBindingV2Context.java b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DisabledDataBindingV2Context.java
index 0b32082..7c4127a 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DisabledDataBindingV2Context.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DisabledDataBindingV2Context.java
@@ -17,7 +17,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.TransitionMode;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.packages.BuildType;
import com.google.devtools.build.lib.rules.android.AndroidDataContext;
@@ -60,8 +59,7 @@
// android_binary doesn't have "exports"
if (ruleContext.attributes().has("exports", BuildType.LABEL_LIST)) {
Iterable<DataBindingV2Provider> exportsProviders =
- ruleContext.getPrerequisites(
- "exports", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("exports", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : exportsProviders) {
setterStores.addAll(provider.getSetterStores());
classInfos.addAll(provider.getClassInfos());
@@ -72,7 +70,7 @@
}
Iterable<DataBindingV2Provider> depsProviders =
- ruleContext.getPrerequisites("deps", TransitionMode.TARGET, DataBindingV2Provider.PROVIDER);
+ ruleContext.getPrerequisites("deps", DataBindingV2Provider.PROVIDER);
for (DataBindingV2Provider provider : depsProviders) {
brFiles.addTransitive(provider.getTransitiveBRFiles());