Add gn_unittests to linux bots.
[chromium-blink-merge.git] / tools / gn / gn.gyp
blobed2cf3d583b25ee70a212b7984bf75f88062b87e
2   'variables': {
3     'chromium_code': 1,
4   },
5   'targets': [
6     {
7       'target_name': 'gn_lib',
8       'type': 'static_library',
9       'dependencies': [
10         '../../base/base.gyp:base',
11       ],
12       'sources': [
13         'action_target_generator.cc',
14         'action_target_generator.h',
15         'action_values.cc',
16         'action_values.h',
17         'args.cc',
18         'args.h',
19         'binary_target_generator.cc',
20         'binary_target_generator.h',
21         'build_settings.cc',
22         'build_settings.h',
23         'builder.cc',
24         'builder.h',
25         'builder_record.cc',
26         'builder_record.h',
27         'c_include_iterator.cc',
28         'c_include_iterator.h',
29         'command_args.cc',
30         'command_check.cc',
31         'command_clean.cc',
32         'command_desc.cc',
33         'command_format.cc',
34         'command_gen.cc',
35         'command_help.cc',
36         'command_ls.cc',
37         'command_refs.cc',
38         'commands.cc',
39         'commands.h',
40         'config.cc',
41         'config.h',
42         'config_values.cc',
43         'config_values.h',
44         'config_values_extractors.cc',
45         'config_values_extractors.h',
46         'config_values_generator.cc',
47         'config_values_generator.h',
48         'copy_target_generator.cc',
49         'copy_target_generator.h',
50         'deps_iterator.cc',
51         'deps_iterator.h',
52         'err.cc',
53         'err.h',
54         'escape.cc',
55         'escape.h',
56         'exec_process.cc',
57         'exec_process.h',
58         'filesystem_utils.cc',
59         'filesystem_utils.h',
60         'function_exec_script.cc',
61         'function_foreach.cc',
62         'function_get_label_info.cc',
63         'function_get_path_info.cc',
64         'function_get_target_outputs.cc',
65         'function_process_file_template.cc',
66         'function_read_file.cc',
67         'function_rebase_path.cc',
68         'function_set_default_toolchain.cc',
69         'function_set_defaults.cc',
70         'function_template.cc',
71         'function_toolchain.cc',
72         'function_write_file.cc',
73         'functions.cc',
74         'functions.h',
75         'functions_target.cc',
76         'group_target_generator.cc',
77         'group_target_generator.h',
78         'header_checker.cc',
79         'header_checker.h',
80         'import_manager.cc',
81         'import_manager.h',
82         'input_conversion.cc',
83         'input_conversion.h',
84         'input_file.cc',
85         'input_file.h',
86         'input_file_manager.cc',
87         'input_file_manager.h',
88         'item.cc',
89         'item.h',
90         'label.cc',
91         'label.h',
92         'label_pattern.cc',
93         'label_pattern.h',
94         'label_ptr.h',
95         'loader.cc',
96         'loader.h',
97         'location.cc',
98         'location.h',
99         'ninja_action_target_writer.cc',
100         'ninja_action_target_writer.h',
101         'ninja_binary_target_writer.cc',
102         'ninja_binary_target_writer.h',
103         'ninja_build_writer.cc',
104         'ninja_build_writer.h',
105         'ninja_copy_target_writer.cc',
106         'ninja_copy_target_writer.h',
107         'ninja_group_target_writer.cc',
108         'ninja_group_target_writer.h',
109         'ninja_target_writer.cc',
110         'ninja_target_writer.h',
111         'ninja_toolchain_writer.cc',
112         'ninja_toolchain_writer.h',
113         'ninja_utils.cc',
114         'ninja_utils.h',
115         'ninja_writer.cc',
116         'ninja_writer.h',
117         'operators.cc',
118         'operators.h',
119         'output_file.cc',
120         'output_file.h',
121         'parse_tree.cc',
122         'parse_tree.h',
123         'parser.cc',
124         'parser.h',
125         'path_output.cc',
126         'path_output.h',
127         'pattern.cc',
128         'pattern.h',
129         'scheduler.cc',
130         'scheduler.h',
131         'scope.cc',
132         'scope.h',
133         'scope_per_file_provider.cc',
134         'scope_per_file_provider.h',
135         'settings.cc',
136         'settings.h',
137         'setup.cc',
138         'setup.h',
139         'source_dir.cc',
140         'source_dir.h',
141         'source_file.cc',
142         'source_file.h',
143         'source_file_type.cc',
144         'source_file_type.h',
145         'standard_out.cc',
146         'standard_out.h',
147         'string_utils.cc',
148         'string_utils.h',
149         'substitution_list.cc',
150         'substitution_list.h',
151         'substitution_pattern.cc',
152         'substitution_pattern.h',
153         'substitution_type.cc',
154         'substitution_type.h',
155         'substitution_writer.cc',
156         'substitution_writer.h',
157         'switches.cc',
158         'switches.h',
159         'target.cc',
160         'target.h',
161         'target_generator.cc',
162         'target_generator.h',
163         'template.cc',
164         'template.h',
165         'token.cc',
166         'token.h',
167         'tokenizer.cc',
168         'tokenizer.h',
169         'tool.cc',
170         'tool.h',
171         'toolchain.cc',
172         'toolchain.h',
173         'trace.cc',
174         'trace.h',
175         'unique_vector.h',
176         'value.cc',
177         'value.h',
178         'value_extractors.cc',
179         'value_extractors.h',
180         'variables.cc',
181         'variables.h',
182         'visibility.cc',
183         'visibility.h',
184       ],
185     },
186     {
187       'target_name': 'gn',
188       'type': 'executable',
189       'sources': [
190         'gn_main.cc',
191       ],
192       'dependencies': [
193         'gn_lib',
194         '../../base/base.gyp:base',
195         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
196       ],
197     },
198     {
199       'target_name': 'gn_unittests',
200       'type': '<(gtest_target_type)',
201       'sources': [
202         'action_target_generator_unittest.cc',
203         'builder_unittest.cc',
204         'c_include_iterator_unittest.cc',
205         'command_format_unittest.cc',
206         'config_values_extractors_unittest.cc',
207         'escape_unittest.cc',
208         'exec_process_unittest.cc',
209         'filesystem_utils_unittest.cc',
210         'function_foreach_unittest.cc',
211         'function_get_label_info_unittest.cc',
212         'function_get_path_info_unittest.cc',
213         'function_get_target_outputs_unittest.cc',
214         'function_process_file_template_unittest.cc',
215         'function_rebase_path_unittest.cc',
216         'function_write_file_unittest.cc',
217         'functions_target_unittest.cc',
218         'functions_unittest.cc',
219         'header_checker_unittest.cc',
220         'input_conversion_unittest.cc',
221         'label_pattern_unittest.cc',
222         'label_unittest.cc',
223         'loader_unittest.cc',
224         'ninja_action_target_writer_unittest.cc',
225         'ninja_binary_target_writer_unittest.cc',
226         'ninja_copy_target_writer_unittest.cc',
227         'ninja_group_target_writer_unittest.cc',
228         'ninja_target_writer_unittest.cc',
229         'ninja_toolchain_writer_unittest.cc',
230         'operators_unittest.cc',
231         'parse_tree_unittest.cc',
232         'parser_unittest.cc',
233         'path_output_unittest.cc',
234         'pattern_unittest.cc',
235         'scope_per_file_provider_unittest.cc',
236         'scope_unittest.cc',
237         'source_dir_unittest.cc',
238         'string_utils_unittest.cc',
239         'substitution_pattern_unittest.cc',
240         'substitution_writer_unittest.cc',
241         'target_generator_unittest.cc',
242         'target_unittest.cc',
243         'template_unittest.cc',
244         'test_with_scope.cc',
245         'test_with_scope.h',
246         'tokenizer_unittest.cc',
247         'unique_vector_unittest.cc',
248         'value_unittest.cc',
249         'visibility_unittest.cc',
250       ],
251       'dependencies': [
252         'gn_lib',
253         '../../base/base.gyp:run_all_unittests',
254         '../../base/base.gyp:test_support_base',
255         '../../testing/gtest.gyp:gtest',
256       ],
257     },
258     {
259       'target_name': 'generate_test_gn_data',
260       'type': 'executable',
261       'sources': [
262         'generate_test_gn_data.cc',
263       ],
264       'dependencies': [
265         '../../base/base.gyp:base',
266       ],
267     }
268   ],