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