diff options
author | Colin Cross <ccross@android.com> | 2019-04-19 16:25:38 -0700 |
---|---|---|
committer | Michael Bestas <mkbestas@lineageos.org> | 2019-12-11 19:03:32 +0200 |
commit | f97beb5bfc36a76c752b078cf42c7283580eb6ef (patch) | |
tree | 784248062d000f324cb740922524541c65fbdbb2 /java/android_manifest.go | |
parent | efcbabd6f7f9839ef69cd721d45027476540d42e (diff) | |
download | build_soong-f97beb5bfc36a76c752b078cf42c7283580eb6ef.tar.gz build_soong-f97beb5bfc36a76c752b078cf42c7283580eb6ef.tar.bz2 build_soong-f97beb5bfc36a76c752b078cf42c7283580eb6ef.zip |
Pass --remove-tools-declarations to manifest merger
Manifest merger needs --remove-tools-declarations to match
Gradle behavior.
Bug: 112607039
Test: m checkbuild
Change-Id: Id93bcaeaf03770a4acd2e1fdf44e418f55540dd3
Diffstat (limited to 'java/android_manifest.go')
-rw-r--r-- | java/android_manifest.go | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/java/android_manifest.go b/java/android_manifest.go index 92a4b77b..ea7c2dd4 100644 --- a/java/android_manifest.go +++ b/java/android_manifest.go @@ -36,10 +36,10 @@ var manifestFixerRule = pctx.AndroidStaticRule("manifestFixer", var manifestMergerRule = pctx.AndroidStaticRule("manifestMerger", blueprint.RuleParams{ - Command: `${config.ManifestMergerCmd} --main $in $libs --out $out`, + Command: `${config.ManifestMergerCmd} $args --main $in $libs --out $out`, CommandDeps: []string{"${config.ManifestMergerCmd}"}, }, - "libs") + "args", "libs") // Uses manifest_fixer.py to inject minSdkVersion, etc. into an AndroidManifest.xml func manifestFixer(ctx android.ModuleContext, manifest android.Path, sdkContext sdkContext, @@ -97,7 +97,15 @@ func manifestFixer(ctx android.ModuleContext, manifest android.Path, sdkContext return fixedManifest } -func manifestMerger(ctx android.ModuleContext, manifest android.Path, staticLibManifests android.Paths) android.Path { +func manifestMerger(ctx android.ModuleContext, manifest android.Path, staticLibManifests android.Paths, + isLibrary bool) android.Path { + + var args string + if !isLibrary { + // Follow Gradle's behavior, only pass --remove-tools-declarations when merging app manifests. + args = "--remove-tools-declarations" + } + mergedManifest := android.PathForModuleOut(ctx, "manifest_merger", "AndroidManifest.xml") ctx.Build(pctx, android.BuildParams{ Rule: manifestMergerRule, @@ -107,6 +115,7 @@ func manifestMerger(ctx android.ModuleContext, manifest android.Path, staticLibM Output: mergedManifest, Args: map[string]string{ "libs": android.JoinWithPrefix(staticLibManifests.Strings(), "--libs "), + "args": args, }, }) |