diff options
Diffstat (limited to 'java/aar.go')
-rw-r--r-- | java/aar.go | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/java/aar.go b/java/aar.go index f5d7e976..6a883d3a 100644 --- a/java/aar.go +++ b/java/aar.go @@ -220,14 +220,13 @@ func (a *aapt) buildActions(ctx android.ModuleContext, sdkContext sdkContext, ex manifestPath := manifestFixer(ctx, manifestSrcPath, sdkContext, sdkLibraries, a.isLibrary, a.useEmbeddedNativeLibs, a.usesNonSdkApis, a.useEmbeddedDex, a.hasNoCode) - a.transitiveManifestPaths = append(android.Paths{manifestPath}, transitiveStaticLibManifests...) + // Add additional manifest files to transitive manifests. + additionalManifests := android.PathsForModuleSrc(ctx, a.aaptProperties.Additional_manifests) + a.transitiveManifestPaths = append(android.Paths{manifestPath}, additionalManifests...) + a.transitiveManifestPaths = append(a.transitiveManifestPaths, transitiveStaticLibManifests...) - if len(transitiveStaticLibManifests) > 0 { - // Merge additional manifest files with app manifest. - additionalManifests := android.PathsForModuleSrc(ctx, a.aaptProperties.Additional_manifests) - additionalManifests = append(additionalManifests, transitiveStaticLibManifests...) - - a.mergedManifestFile = manifestMerger(ctx, manifestPath, additionalManifests, a.isLibrary) + if len(a.transitiveManifestPaths) > 1 { + a.mergedManifestFile = manifestMerger(ctx, a.transitiveManifestPaths[0], a.transitiveManifestPaths[1:], a.isLibrary) if !a.isLibrary { // Only use the merged manifest for applications. For libraries, the transitive closure of manifests // will be propagated to the final application and merged there. The merged manifest for libraries is |