OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 # This file is meant to be included into a target to handle shim headers | 5 # This file is meant to be included into a target to handle shim headers |
6 # in a consistent manner. To use this the following variables need to be | 6 # in a consistent manner. To use this the following variables need to be |
7 # defined: | 7 # defined: |
8 # headers_root_path: string: path to directory containing headers | 8 # headers_root_path: string: path to directory containing headers |
9 # header_filenames: list: list of header file names | 9 # header_filenames: list: list of header file names |
10 | 10 |
11 { | 11 { |
12 'variables': { | 12 'variables': { |
13 'shim_headers_path': '<(SHARED_INTERMEDIATE_DIR)/shim_headers/<(_target_name
)/<(_toolset)', | 13 'shim_headers_path': '<(SHARED_INTERMEDIATE_DIR)/shim_headers/<(_target_name
)/<(_toolset)', |
14 'shim_generator_additional_args%': [], | 14 'shim_generator_additional_args%': [], |
15 }, | 15 }, |
16 'include_dirs++': [ | 16 'include_dirs++': [ |
17 '<(shim_headers_path)', | 17 '<(shim_headers_path)', |
18 ], | 18 ], |
19 'all_dependent_settings': { | 19 'all_dependent_settings': { |
| 20 # Repeating this with different numbers of plusses is unfortunately required |
| 21 # to make sure that even if this include is inside nested conditions/etc, it |
| 22 # still gets inserted at the beginning of the include_dirs list. See |
| 23 # http://crbug.com/263818 for details. |
20 'include_dirs+++': [ | 24 'include_dirs+++': [ |
21 '<(shim_headers_path)', | 25 '<(shim_headers_path)', |
22 ], | 26 ], |
23 'include_dirs++++': [ | 27 'include_dirs++++': [ |
24 '<(shim_headers_path)', | 28 '<(shim_headers_path)', |
25 ], | 29 ], |
| 30 'include_dirs+++++': [ |
| 31 '<(shim_headers_path)', |
| 32 ], |
26 }, | 33 }, |
27 'actions': [ | 34 'actions': [ |
28 { | 35 { |
29 'variables': { | 36 'variables': { |
30 'generator_path': '<(DEPTH)/tools/generate_shim_headers/generate_shim_he
aders.py', | 37 'generator_path': '<(DEPTH)/tools/generate_shim_headers/generate_shim_he
aders.py', |
31 'generator_args': [ | 38 'generator_args': [ |
32 '--headers-root', '<(headers_root_path)', | 39 '--headers-root', '<(headers_root_path)', |
33 '--output-directory', '<(shim_headers_path)', | 40 '--output-directory', '<(shim_headers_path)', |
34 '<@(shim_generator_additional_args)', | 41 '<@(shim_generator_additional_args)', |
35 '<@(header_filenames)', | 42 '<@(header_filenames)', |
36 ], | 43 ], |
37 }, | 44 }, |
38 'action_name': 'generate_<(_target_name)_shim_headers', | 45 'action_name': 'generate_<(_target_name)_shim_headers', |
39 'inputs': [ | 46 'inputs': [ |
40 '<(generator_path)', | 47 '<(generator_path)', |
41 ], | 48 ], |
42 'outputs': [ | 49 'outputs': [ |
43 '<!@pymod_do_main(generate_shim_headers <@(generator_args) --outputs)', | 50 '<!@pymod_do_main(generate_shim_headers <@(generator_args) --outputs)', |
44 ], | 51 ], |
45 'action': ['python', | 52 'action': ['python', |
46 '<(generator_path)', | 53 '<(generator_path)', |
47 '<@(generator_args)', | 54 '<@(generator_args)', |
48 '--generate', | 55 '--generate', |
49 ], | 56 ], |
50 'message': 'Generating <(_target_name) shim headers.', | 57 'message': 'Generating <(_target_name) shim headers.', |
51 }, | 58 }, |
52 ], | 59 ], |
53 } | 60 } |
OLD | NEW |