aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/AndroidLibrary.java25
1 files changed, 11 insertions, 14 deletions
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 af4e4fa794..338282bc4e 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
@@ -57,7 +57,9 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
public ConfiguredTarget create(RuleContext ruleContext) {
JavaSemantics javaSemantics = createJavaSemantics();
AndroidSemantics androidSemantics = createAndroidSemantics();
-
+ if (!AndroidSdkProvider.verifyPresence(ruleContext)) {
+ return null;
+ }
List<? extends TransitiveInfoCollection> deps =
ruleContext.getPrerequisites("deps", Mode.TARGET);
checkResourceInlining(ruleContext);
@@ -69,11 +71,6 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
NestedSet<Artifact> transitiveProguardConfigs =
collectTransitiveProguardConfigs(ruleContext);
AndroidIdlProvider transitiveIdlImportData = collectTransitiveIdlImports(ruleContext);
- AndroidTools tools = AndroidTools.fromRuleContext(ruleContext);
- if (tools == null) {
- return null;
- }
-
if (LocalResourceContainer.definesAndroidResources(ruleContext.attributes())) {
try {
if (!LocalResourceContainer.validateRuleContext(ruleContext)) {
@@ -85,7 +82,7 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
ApplicationManifest applicationManifest = androidSemantics.getManifestForRule(ruleContext);
ResourceApk resourceApk = applicationManifest.packWithDataAndResources(
ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_RESOURCES_APK),
- ruleContext, transitiveResources, tools,
+ ruleContext, transitiveResources,
ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_R_TXT),
ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_SYMBOLS_TXT),
ImmutableList.<String>of(), /* configurationFilters */
@@ -97,7 +94,7 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
false,
null /* proguardCfgOut */);
- if (androidCommon.init(javaSemantics, androidSemantics, tools,
+ if (androidCommon.init(javaSemantics, androidSemantics,
resourceApk, transitiveIdlImportData, false, true) == null) {
return null;
}
@@ -108,7 +105,7 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
Artifact aarOut = ruleContext.getImplicitOutputArtifact(
AndroidRuleClasses.ANDROID_LIBRARY_AAR);
- new AarGeneratorBuilder(tools, ruleContext)
+ new AarGeneratorBuilder(ruleContext)
.withPrimary(resourceApk.getPrimaryResource())
.withManifest(resourceApk.getPrimaryResource().getManifest())
.withRtxt(resourceApk.getPrimaryResource().getRTxt())
@@ -118,7 +115,7 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
.build(ruleContext);
RuleConfiguredTargetBuilder builder = new RuleConfiguredTargetBuilder(ruleContext);
- androidCommon.addTransitiveInfoProviders(builder, tools);
+ androidCommon.addTransitiveInfoProviders(builder);
androidSemantics.addTransitiveInfoProviders(
builder, ruleContext, javaCommon, androidCommon,
null, resourceApk, null, ImmutableList.<Artifact>of());
@@ -147,13 +144,13 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
JavaCommon javaCommon = new JavaCommon(ruleContext, javaSemantics);
AndroidCommon androidCommon = new AndroidCommon(ruleContext, javaCommon);
ResourceApk resourceApk = ResourceApk.fromTransitiveResources(transitiveResources);
- if (androidCommon.init(javaSemantics, androidSemantics, tools,
+ if (androidCommon.init(javaSemantics, androidSemantics,
resourceApk, transitiveIdlImportData, false, true) == null) {
return null;
}
RuleConfiguredTargetBuilder targetBuilder = androidCommon.addTransitiveInfoProviders(
- new RuleConfiguredTargetBuilder(ruleContext), tools);
+ new RuleConfiguredTargetBuilder(ruleContext));
androidSemantics.addTransitiveInfoProviders(
targetBuilder, ruleContext, javaCommon, androidCommon,
@@ -211,7 +208,7 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
ruleContext.attributes().get("exports_manifest", Type.BOOLEAN),
ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_R_TXT), null);
- primaryResources = new AndroidResourcesProcessorBuilder(tools, ruleContext)
+ primaryResources = new AndroidResourcesProcessorBuilder(ruleContext)
.setApkOut(apk)
.setRTxtOut(primaryResources.getRTxt())
.setSourceJarOut(primaryResources.getJavaSourceJar())
@@ -224,7 +221,7 @@ public abstract class AndroidLibrary implements RuleConfiguredTargetFactory {
.build(ruleContext);
}
- new AarGeneratorBuilder(tools, ruleContext)
+ new AarGeneratorBuilder(ruleContext)
.withPrimary(primaryResources)
.withManifest(primaryResources.getManifest())
.withRtxt(primaryResources.getRTxt())