diff options
Diffstat (limited to 'tools/aapt2/link/Link.cpp')
-rw-r--r-- | tools/aapt2/link/Link.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/aapt2/link/Link.cpp b/tools/aapt2/link/Link.cpp index c2363943b535..b6b4b4732669 100644 --- a/tools/aapt2/link/Link.cpp +++ b/tools/aapt2/link/Link.cpp @@ -72,6 +72,7 @@ struct LinkOptions { bool noAutoVersion = false; bool noVersionVectors = false; + bool noResourceDeduping = false; bool staticLib = false; bool noStaticLibPackages = false; bool generateNonFinalIds = false; @@ -1505,6 +1506,14 @@ public: } } + if (!mOptions.noResourceDeduping) { + ResourceDeduper deduper; + if (!deduper.consume(mContext, &mFinalTable)) { + mContext->getDiagnostics()->error(DiagMessage() << "failed deduping resources"); + return 1; + } + } + proguard::KeepSet proguardKeepSet; proguard::KeepSet proguardMainDexKeepSet; @@ -1743,6 +1752,9 @@ int link(const std::vector<StringPiece>& args) { "Disables automatic versioning of vector drawables. Use this only\n" "when building with vector drawable support library", &options.noVersionVectors) + .optionalSwitch("--no-resource-deduping", "Disables automatic deduping of resources with\n" + "identical values across compatible configurations.", + &options.noResourceDeduping) .optionalSwitch("-x", "Legacy flag that specifies to use the package identifier 0x01", &legacyXFlag) .optionalSwitch("-z", "Require localization of strings marked 'suggested'", |