1# Copyright (c) 2011 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 invoke grit in a
6# consistent manner. To use this the following variables need to be
7# defined:
8#   grit_grd_file: string: grd file path
9#   grit_out_dir: string: the output directory path
10
11# It would be really nice to do this with a rule instead of actions, but it
12# would need to determine inputs and outputs via grit_info on a per-file
13# basis. GYP rules don't currently support that. They could be extended to
14# do this, but then every generator would need to be updated to handle this.
15
16{
17  'variables': {
18    'grit_cmd': ['python', '<(DEPTH)/tools/grit/grit.py'],
19    'grit_resource_ids%': '<(DEPTH)/tools/gritsettings/resource_ids',
20    # This makes it possible to add more defines in specific targets,
21    # instead of build/common.gypi .
22    'grit_additional_defines%': [],
23    'grit_rc_header_format%': [],
24  },
25  'inputs': [
26    '<!@pymod_do_main(grit_info <@(grit_defines) <@(grit_additional_defines) '
27        '--inputs <(grit_grd_file) -f "<(grit_resource_ids)")',
28  ],
29  'outputs': [
30    '<!@pymod_do_main(grit_info <@(grit_defines) <@(grit_additional_defines) '
31        '--outputs \'<(grit_out_dir)\' '
32        '<(grit_grd_file) -f "<(grit_resource_ids)")',
33  ],
34  'action': ['<@(grit_cmd)',
35             '-i', '<(grit_grd_file)', 'build',
36             '-f', '<(grit_resource_ids)',
37             '-o', '<(grit_out_dir)',
38             '<@(grit_defines)',
39             '<@(grit_additional_defines)',
40             '<@(grit_rc_header_format)'],
41  'message': 'Generating resources from <(grit_grd_file)',
42}
43