diff options
author | michaelbai <michaelbai@chromium.org> | 2016-01-25 16:43:10 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-26 00:44:02 +0000 |
commit | e77d565e1b9a8d3a2822b54bbaee1d81f5a67198 (patch) | |
tree | f0b1b57c1ce5baa92f20ff39816262414d87e446 /android_webview/tools | |
parent | 48671daec4184675fe6fd61b43a9f8ee0d535ec4 (diff) | |
download | chromium_src-e77d565e1b9a8d3a2822b54bbaee1d81f5a67198.zip chromium_src-e77d565e1b9a8d3a2822b54bbaee1d81f5a67198.tar.gz chromium_src-e77d565e1b9a8d3a2822b54bbaee1d81f5a67198.tar.bz2 |
Support uncompress and page align shared libraries
This is no corresponding gyp change, because the ant apkbuilder
doesn't support uncompress shared libraries, to only have GN
support this meets our requirement.
BUG=579610
Review URL: https://codereview.chromium.org/1619553003
Cr-Commit-Position: refs/heads/master@{#371384}
Diffstat (limited to 'android_webview/tools')
-rwxr-xr-x | android_webview/tools/apk_merger.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/android_webview/tools/apk_merger.py b/android_webview/tools/apk_merger.py index e9ea1fe..7851fe5 100755 --- a/android_webview/tools/apk_merger.py +++ b/android_webview/tools/apk_merger.py @@ -121,7 +121,8 @@ def RemoveMetafiles(tmp_apk): def SignAndAlignApk(tmp_apk, signed_tmp_apk, new_apk, zipalign_path, - keystore_path, key_name, key_password): + keystore_path, key_name, key_password, + page_align_shared_libraries): try: finalize_apk.JarSigner( keystore_path, @@ -133,7 +134,10 @@ def SignAndAlignApk(tmp_apk, signed_tmp_apk, new_apk, zipalign_path, raise ApkMergeFailure('Failed to sign APK: ' + e.output) try: - finalize_apk.AlignApk(zipalign_path, signed_tmp_apk, new_apk) + finalize_apk.AlignApk(zipalign_path, + page_align_shared_libraries, + signed_tmp_apk, + new_apk) except build_utils.CalledProcessError as e: raise ApkMergeFailure('Failed to align APK: ' + e.output) @@ -151,6 +155,8 @@ def main(): parser.add_argument('--key_name', required=True) parser.add_argument('--key_password', required=True) parser.add_argument('--shared_library', required=True) + parser.add_argument('--page-align-shared-libraries', action='store_true') + parser.add_argument('--uncompress-shared-libraries', action='store_true') args = parser.parse_args() tmp_dir = tempfile.mkdtemp() @@ -166,6 +172,9 @@ def main(): 'natives_blob_32.bin': ['-0'], args.shared_library: []} + if args.uncompress_shared_libraries: + expected_files[args.shared_library] += ['-0'] + try: shutil.copyfile(args.apk_64bit, tmp_apk) @@ -190,7 +199,8 @@ def main(): AddDiffFiles(diff_files, tmp_dir_32, tmp_apk, expected_files) SignAndAlignApk(tmp_apk, signed_tmp_apk, new_apk, args.zipalign_path, - args.keystore_path, args.key_name, args.key_password) + args.keystore_path, args.key_name, args.key_password, + args.page_align_shared_libraries) except ApkMergeFailure as e: print e |