Only desugar/dx installable libraries
Don't waste time running dx on libraries that will never end up
on the device.
Test: m -j checkbuild
Change-Id: Iad1750823d3261cd6ad6eb6aa00c74d45b9737a3
diff --git a/java/java.go b/java/java.go
index a0bcbfe..f9193c5 100644
--- a/java/java.go
+++ b/java/java.go
@@ -464,7 +464,7 @@
j.classpathFile = outputFile
// TODO(ccross): handle hostdex
- if ctx.Device() && len(srcFiles) > 0 {
+ if ctx.Device() && len(srcFiles) > 0 && j.installable() {
dxFlags := j.deviceProperties.Dxflags
if false /* emma enabled */ {
// If you instrument class files that have local variable debug information in
@@ -538,6 +538,10 @@
j.outputFile = outputFile
}
+func (j *Module) installable() bool {
+ return j.properties.Installable == nil || *j.properties.Installable
+}
+
var _ Dependency = (*Library)(nil)
func (j *Module) ClasspathFiles() android.Paths {
@@ -569,7 +573,7 @@
func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) {
j.compile(ctx)
- if j.properties.Installable == nil || *j.properties.Installable == true {
+ if j.installable() {
j.installFile = ctx.InstallFile(android.PathForModuleInstall(ctx, "framework"),
ctx.ModuleName()+".jar", j.outputFile)
}