From 54181ebe3b69772f56872889f3d3462ed8fe9c1b Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Wed, 16 May 2018 16:47:21 -0700 Subject: Declare proguard_dictionary as implicit output of r8 Soong was generating proguard_dictionary, but not marking it as an output, so ninja would fail with: ninja: error: 'out/soong/.intermediates/bootable/recovery/tools/recovery_l10n/RecoveryLocalizer/android_common/proguard_dictionary', needed by 'out/target/common/obj/APPS/RecoveryLocalizer_intermediates/proguard_dictionary', missing and no known rule to make it Fixes: 78770148 Test: mmma bootable/recovery/tools/recovery_l10n Change-Id: I956f92519ea81d4fb1322114214099d46d734906 --- java/dex.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/java/dex.go b/java/dex.go index 66e71b59..642dee4a 100644 --- a/java/dex.go +++ b/java/dex.go @@ -238,14 +238,16 @@ func (j *Module) compileDex(ctx android.ModuleContext, flags javaBuilderFlags, if useR8 { // TODO(ccross): if this is an instrumentation test of an obfuscated app, use the // dictionary of the app and move the app from libraryjars to injars. - j.proguardDictionary = android.PathForModuleOut(ctx, "proguard_dictionary") + proguardDictionary := android.PathForModuleOut(ctx, "proguard_dictionary") + j.proguardDictionary = proguardDictionary r8Flags, r8Deps := j.r8Flags(ctx, flags) ctx.Build(pctx, android.BuildParams{ - Rule: r8, - Description: "r8", - Output: javalibJar, - Input: classesJar, - Implicits: r8Deps, + Rule: r8, + Description: "r8", + Output: javalibJar, + ImplicitOutput: proguardDictionary, + Input: classesJar, + Implicits: r8Deps, Args: map[string]string{ "dxFlags": strings.Join(dxFlags, " "), "r8Flags": strings.Join(r8Flags, " "), -- cgit v1.2.3