blob: 0d0fe88b7fbc2bb50b582ce9b7fb34d95e8845f4 [file] [log] [blame]
# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This file is meant to be included into an action to provide an action that
# signs and zipaligns split APKs.
#
# Required variables:
# apk_name - Base name of the apk.
# Optional variables:
# density_splits - Whether to process density splits
# language_splits - Whether to language splits
{
'variables': {
'keystore_path%': '<(DEPTH)/build/android/ant/chromium-debug.keystore',
'keystore_name%': 'chromiumdebugkey',
'keystore_password%': 'chromium',
'zipalign_path%': '<(android_sdk_tools)/zipalign',
'density_splits%': 0,
'language_splits%': 0,
'resource_packaged_apk_name': '<(apk_name)-resources.ap_',
'resource_packaged_apk_path': '<(intermediate_dir)/<(resource_packaged_apk_name)',
'base_output_path': '<(PRODUCT_DIR)/apks/<(apk_name)',
},
'inputs': [
'<(DEPTH)/build/android/gyp/finalize_splits.py',
'<(DEPTH)/build/android/gyp/finalize_apk.py',
'<(DEPTH)/build/android/gyp/util/build_utils.py',
'<(keystore_path)',
],
'action': [
'python', '<(DEPTH)/build/android/gyp/finalize_splits.py',
'--resource-packaged-apk-path=<(resource_packaged_apk_path)',
'--base-output-path=<(base_output_path)',
'--zipalign-path=<(zipalign_path)',
'--key-path=<(keystore_path)',
'--key-name=<(keystore_name)',
'--key-passwd=<(keystore_password)',
],
'conditions': [
['density_splits == 1', {
'message': 'Signing/aligning <(_target_name) density splits',
'inputs': [
'<(resource_packaged_apk_path)-hdpi',
'<(resource_packaged_apk_path)-xhdpi',
'<(resource_packaged_apk_path)-xxhdpi',
'<(resource_packaged_apk_path)-tvdpi',
],
'outputs': [
'<(base_output_path)-density-hdpi.apk',
'<(base_output_path)-density-xhdpi.apk',
'<(base_output_path)-density-xxhdpi.apk',
'<(base_output_path)-density-tvdpi.apk',
],
'action': [
'--densities=hdpi,xhdpi,xxhdpi,tvdpi',
],
}],
# TODO(agrieve): Implement language splits
['language_splits == 1', {
'message': 'Signing/aligning <(_target_name) language splits',
'inputs': [
],
'outputs': [
],
}],
],
}