• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# This file is meant to be included into an action to provide a rule that dexes
6# compiled java files. If proguard_enabled == "true" and CONFIGURATION_NAME ==
7# "Release", then it will dex the proguard_enabled_input_path instead of the
8# normal dex_input_paths/dex_generated_input_paths.
9#
10# To use this, create a gyp target with the following form:
11#  {
12#    'action_name': 'some name for the action'
13#    'actions': [
14#      'variables': {
15#        'dex_input_paths': [ 'files to dex (when proguard is not used) and add to input paths' ],
16#        'dex_generated_input_dirs': [ 'dirs that contain generated files to dex' ],
17#
18#        # For targets that use proguard:
19#        'proguard_enabled': 'true',
20#        'proguard_enabled_input_path': 'path to dex when using proguard',
21#      },
22#      'includes': [ 'relative/path/to/dex_action.gypi' ],
23#    ],
24#  },
25#
26
27{
28  'message': 'Creating dex file: <(output_path)',
29  'variables': {
30    'dex_input_paths': [],
31    'dex_generated_input_dirs': [],
32    'proguard_enabled%': 'false',
33    # TODO(jbudorick): remove this once multidex is done.
34    'debug_build_proguard_enabled%': 'false',
35    'proguard_enabled_input_path%': '',
36    'dex_no_locals%': 0,
37    'dex_additional_options': [],
38  },
39  'inputs': [
40    '<(DEPTH)/build/android/gyp/util/build_utils.py',
41    '<(DEPTH)/build/android/gyp/util/md5_check.py',
42    '<(DEPTH)/build/android/gyp/dex.py',
43    '>@(dex_input_paths)',
44  ],
45  'outputs': [
46    '<(output_path)',
47    '<(output_path).inputs',
48  ],
49  'action': [
50    'python', '<(DEPTH)/build/android/gyp/dex.py',
51    '--dex-path=<(output_path)',
52    '--android-sdk-tools=<(android_sdk_tools)',
53    '--output-directory=<(PRODUCT_DIR)',
54    '--configuration-name=<(CONFIGURATION_NAME)',
55    '--proguard-enabled=>(proguard_enabled)',
56    '--debug-build-proguard-enabled=>(debug_build_proguard_enabled)',
57    '--proguard-enabled-input-path=<(proguard_enabled_input_path)',
58    '--no-locals=>(dex_no_locals)',
59    '>@(dex_additional_options)',
60    '>@(dex_input_paths)',
61    '>@(dex_generated_input_dirs)',
62  ]
63}
64