Merge "Don't depend on nonexistent manifest when manifest_check is disabled." am: 8974f1706e am: da4eb03a9d

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1640322

Change-Id: I493923edaea177492800a001dfd80a7d3ea17c3d
This commit is contained in:
Treehugger Robot
2021-03-16 21:11:26 +00:00
committed by Automerger Merge Worker

View File

@@ -1281,7 +1281,7 @@ func (u *usesLibrary) freezeEnforceUsesLibraries() {
// an APK with the manifest embedded in it (manifest_check will know which one it is by the file // an APK with the manifest embedded in it (manifest_check will know which one it is by the file
// extension: APKs are supposed to end with '.apk'). // extension: APKs are supposed to end with '.apk').
func (u *usesLibrary) verifyUsesLibraries(ctx android.ModuleContext, inputFile android.Path, func (u *usesLibrary) verifyUsesLibraries(ctx android.ModuleContext, inputFile android.Path,
outputFile android.WritablePath) { outputFile android.WritablePath) android.Path {
statusFile := dexpreopt.UsesLibrariesStatusFile(ctx) statusFile := dexpreopt.UsesLibrariesStatusFile(ctx)
@@ -1290,7 +1290,7 @@ func (u *usesLibrary) verifyUsesLibraries(ctx android.ModuleContext, inputFile a
// non-linux build platforms where dexpreopt is generally disabled (the check may fail due to // non-linux build platforms where dexpreopt is generally disabled (the check may fail due to
// various unrelated reasons, such as a failure to get manifest from an APK). // various unrelated reasons, such as a failure to get manifest from an APK).
if dexpreopt.GetGlobalConfig(ctx).DisablePreopt { if dexpreopt.GetGlobalConfig(ctx).DisablePreopt {
return return inputFile
} }
rule := android.NewRuleBuilder(pctx, ctx) rule := android.NewRuleBuilder(pctx, ctx)
@@ -1317,14 +1317,14 @@ func (u *usesLibrary) verifyUsesLibraries(ctx android.ModuleContext, inputFile a
} }
rule.Build("verify_uses_libraries", "verify <uses-library>") rule.Build("verify_uses_libraries", "verify <uses-library>")
return outputFile
} }
// verifyUsesLibrariesManifest checks the <uses-library> tags in an AndroidManifest.xml against // verifyUsesLibrariesManifest checks the <uses-library> tags in an AndroidManifest.xml against
// the build system and returns the path to a copy of the manifest. // the build system and returns the path to a copy of the manifest.
func (u *usesLibrary) verifyUsesLibrariesManifest(ctx android.ModuleContext, manifest android.Path) android.Path { func (u *usesLibrary) verifyUsesLibrariesManifest(ctx android.ModuleContext, manifest android.Path) android.Path {
outputFile := android.PathForModuleOut(ctx, "manifest_check", "AndroidManifest.xml") outputFile := android.PathForModuleOut(ctx, "manifest_check", "AndroidManifest.xml")
u.verifyUsesLibraries(ctx, manifest, outputFile) return u.verifyUsesLibraries(ctx, manifest, outputFile)
return outputFile
} }
// verifyUsesLibrariesAPK checks the <uses-library> tags in the manifest of an APK against the build // verifyUsesLibrariesAPK checks the <uses-library> tags in the manifest of an APK against the build