deps: update v8 to 4.3.61.21
[platform/upstream/nodejs.git] / deps / v8 / tools / gyp / v8.gyp
1 # Copyright 2012 the V8 project authors. All rights reserved.
2 # Redistribution and use in source and binary forms, with or without
3 # modification, are permitted provided that the following conditions are
4 # met:
5 #
6 #     * Redistributions of source code must retain the above copyright
7 #       notice, this list of conditions and the following disclaimer.
8 #     * Redistributions in binary form must reproduce the above
9 #       copyright notice, this list of conditions and the following
10 #       disclaimer in the documentation and/or other materials provided
11 #       with the distribution.
12 #     * Neither the name of Google Inc. nor the names of its
13 #       contributors may be used to endorse or promote products derived
14 #       from this software without specific prior written permission.
15 #
16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
28 {
29   'variables': {
30     'icu_use_data_file_flag%': 0,
31     'v8_code': 1,
32     'v8_random_seed%': 314159265,
33     'embed_script%': "",
34     'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)',
35   },
36   'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
37   'targets': [
38     {
39       'target_name': 'v8',
40       'dependencies_traverse': 1,
41       'conditions': [
42         ['want_separate_host_toolset==1', {
43           'toolsets': ['host', 'target'],
44         }, {
45           'toolsets': ['target'],
46         }],
47
48         ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', {
49           # The dependency on v8_base should come from a transitive
50           # dependency however the Android toolchain requires libv8_base.a
51           # to appear before libv8_snapshot.a so it's listed explicitly.
52           'dependencies': ['v8_base', 'v8_snapshot'],
53         }],
54         ['v8_use_snapshot!="true" and v8_use_external_startup_data==0', {
55           # The dependency on v8_base should come from a transitive
56           # dependency however the Android toolchain requires libv8_base.a
57           # to appear before libv8_snapshot.a so it's listed explicitly.
58           'dependencies': ['v8_base', 'v8_nosnapshot'],
59         }],
60         ['v8_use_external_startup_data==1 and want_separate_host_toolset==1', {
61           'dependencies': ['v8_base', 'v8_external_snapshot'],
62           'target_conditions': [
63             ['_toolset=="host"', {
64               'inputs': [
65                 '<(PRODUCT_DIR)/snapshot_blob_host.bin',
66               ],
67             }, {
68               'inputs': [
69                 '<(PRODUCT_DIR)/snapshot_blob.bin',
70               ],
71             }],
72           ],
73         }],
74         ['v8_use_external_startup_data==1 and want_separate_host_toolset==0', {
75           'dependencies': ['v8_base', 'v8_external_snapshot'],
76           'inputs': [ '<(PRODUCT_DIR)/snapshot_blob.bin', ],
77         }],
78         ['component=="shared_library"', {
79           'type': '<(component)',
80           'sources': [
81             # Note: on non-Windows we still build this file so that gyp
82             # has some sources to link into the component.
83             '../../src/v8dll-main.cc',
84           ],
85           'include_dirs': [
86             '../..',
87           ],
88           'defines': [
89             'V8_SHARED',
90             'BUILDING_V8_SHARED',
91           ],
92           'direct_dependent_settings': {
93             'defines': [
94               'V8_SHARED',
95               'USING_V8_SHARED',
96             ],
97           },
98           'target_conditions': [
99             ['OS=="android" and _toolset=="target"', {
100               'libraries': [
101                 '-llog',
102               ],
103               'include_dirs': [
104                 'src/common/android/include',
105               ],
106             }],
107           ],
108           'conditions': [
109             ['OS=="mac"', {
110               'xcode_settings': {
111                 'OTHER_LDFLAGS': ['-dynamiclib', '-all_load']
112               },
113             }],
114             ['soname_version!=""', {
115               'product_extension': 'so.<(soname_version)',
116             }],
117           ],
118         },
119         {
120           'type': 'none',
121         }],
122       ],
123       'direct_dependent_settings': {
124         'include_dirs': [
125           '../../include',
126         ],
127       },
128     },
129     {
130       'target_name': 'v8_snapshot',
131       'type': 'static_library',
132       'conditions': [
133         ['want_separate_host_toolset==1', {
134           'toolsets': ['host', 'target'],
135           'dependencies': [
136             'mksnapshot#host',
137             'js2c#host',
138           ],
139         }, {
140           'toolsets': ['target'],
141           'dependencies': [
142             'mksnapshot',
143             'js2c',
144           ],
145         }],
146         ['component=="shared_library"', {
147           'defines': [
148             'V8_SHARED',
149             'BUILDING_V8_SHARED',
150           ],
151           'direct_dependent_settings': {
152             'defines': [
153               'V8_SHARED',
154               'USING_V8_SHARED',
155             ],
156           },
157         }],
158       ],
159       'dependencies': [
160         'v8_base',
161       ],
162       'include_dirs+': [
163         '../..',
164       ],
165       'sources': [
166         '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
167         '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
168         '<(INTERMEDIATE_DIR)/snapshot.cc',
169       ],
170       'actions': [
171         {
172           'action_name': 'run_mksnapshot',
173           'inputs': [
174             '<(mksnapshot_exec)',
175             '<(embed_script)',
176           ],
177           'outputs': [
178             '<(INTERMEDIATE_DIR)/snapshot.cc',
179           ],
180           'variables': {
181             'mksnapshot_flags': [
182               '--log-snapshot-positions',
183               '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
184             ],
185             'conditions': [
186               ['v8_random_seed!=0', {
187                 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
188               }],
189             ],
190           },
191           'action': [
192             '<(mksnapshot_exec)',
193             '<@(mksnapshot_flags)',
194             '<@(INTERMEDIATE_DIR)/snapshot.cc',
195             '<(embed_script)',
196           ],
197         },
198       ],
199     },
200     {
201       'target_name': 'v8_nosnapshot',
202       'type': 'static_library',
203       'dependencies': [
204         'v8_base',
205       ],
206       'include_dirs+': [
207         '../..',
208       ],
209       'sources': [
210         '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
211         '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
212         '../../src/snapshot/snapshot-empty.cc',
213       ],
214       'conditions': [
215         ['want_separate_host_toolset==1', {
216           'toolsets': ['host', 'target'],
217           'dependencies': ['js2c#host'],
218         }, {
219           'toolsets': ['target'],
220           'dependencies': ['js2c'],
221         }],
222         ['component=="shared_library"', {
223           'defines': [
224             'BUILDING_V8_SHARED',
225             'V8_SHARED',
226           ],
227         }],
228       ]
229     },
230     {
231       'target_name': 'v8_external_snapshot',
232       'type': 'static_library',
233       'conditions': [
234         [ 'v8_use_external_startup_data==1', {
235           'conditions': [
236             ['want_separate_host_toolset==1', {
237               'toolsets': ['host', 'target'],
238               'dependencies': [
239                 'mksnapshot#host',
240                 'js2c#host',
241                 'natives_blob',
242             ]}, {
243               'toolsets': ['target'],
244               'dependencies': [
245                 'mksnapshot',
246                 'js2c',
247                 'natives_blob',
248               ],
249             }],
250             ['component=="shared_library"', {
251               'defines': [
252                 'V8_SHARED',
253                 'BUILDING_V8_SHARED',
254               ],
255               'direct_dependent_settings': {
256                 'defines': [
257                   'V8_SHARED',
258                   'USING_V8_SHARED',
259                 ],
260               },
261             }],
262           ],
263           'dependencies': [
264             'v8_base',
265           ],
266           'include_dirs+': [
267             '../..',
268           ],
269           'sources': [
270             '../../src/snapshot/natives-external.cc',
271             '../../src/snapshot/snapshot-external.cc',
272           ],
273           'actions': [
274             {
275               'action_name': 'run_mksnapshot (external)',
276               'inputs': [
277                 '<(mksnapshot_exec)',
278               ],
279               'variables': {
280                 'mksnapshot_flags': [
281                   '--log-snapshot-positions',
282                   '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
283                 ],
284                 'conditions': [
285                   ['v8_random_seed!=0', {
286                     'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
287                   }],
288                 ],
289               },
290               'conditions': [
291                 ['want_separate_host_toolset==1', {
292                   'target_conditions': [
293                     ['_toolset=="host"', {
294                       'outputs': [
295                         '<(INTERMEDIATE_DIR)/snapshot.cc',
296                         '<(PRODUCT_DIR)/snapshot_blob_host.bin',
297                       ],
298                       'action': [
299                         '<(mksnapshot_exec)',
300                         '<@(mksnapshot_flags)',
301                         '<@(INTERMEDIATE_DIR)/snapshot.cc',
302                         '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_host.bin',
303                         '<(embed_script)',
304                       ],
305                     }, {
306                       'outputs': [
307                         '<(INTERMEDIATE_DIR)/snapshot.cc',
308                         '<(PRODUCT_DIR)/snapshot_blob.bin',
309                       ],
310                       'action': [
311                         '<(mksnapshot_exec)',
312                         '<@(mksnapshot_flags)',
313                         '<@(INTERMEDIATE_DIR)/snapshot.cc',
314                         '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob.bin',
315                         '<(embed_script)',
316                       ],
317                     }],
318                   ],
319                 }, {
320                   'outputs': [
321                     '<(INTERMEDIATE_DIR)/snapshot.cc',
322                     '<(PRODUCT_DIR)/snapshot_blob.bin',
323                   ],
324                   'action': [
325                     '<(mksnapshot_exec)',
326                     '<@(mksnapshot_flags)',
327                     '<@(INTERMEDIATE_DIR)/snapshot.cc',
328                     '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob.bin',
329                     '<(embed_script)',
330                   ],
331                 }],
332               ],
333             },
334           ],
335         }],
336       ],
337     },
338     {
339       'target_name': 'v8_base',
340       'type': 'static_library',
341       'dependencies': [
342         'v8_libbase',
343       ],
344       'variables': {
345         'optimize': 'max',
346       },
347       'include_dirs+': [
348         '../..',
349       ],
350       'sources': [  ### gcmole(all) ###
351         '../../src/accessors.cc',
352         '../../src/accessors.h',
353         '../../src/allocation.cc',
354         '../../src/allocation.h',
355         '../../src/allocation-site-scopes.cc',
356         '../../src/allocation-site-scopes.h',
357         '../../src/allocation-tracker.cc',
358         '../../src/allocation-tracker.h',
359         '../../src/api.cc',
360         '../../src/api.h',
361         '../../src/api-natives.cc',
362         '../../src/api-natives.h',
363         '../../src/arguments.cc',
364         '../../src/arguments.h',
365         '../../src/assembler.cc',
366         '../../src/assembler.h',
367         '../../src/assert-scope.h',
368         '../../src/assert-scope.cc',
369         '../../src/ast-value-factory.cc',
370         '../../src/ast-value-factory.h',
371         '../../src/ast-numbering.cc',
372         '../../src/ast-numbering.h',
373         '../../src/ast.cc',
374         '../../src/ast.h',
375         '../../src/background-parsing-task.cc',
376         '../../src/background-parsing-task.h',
377         '../../src/bailout-reason.cc',
378         '../../src/bailout-reason.h',
379         '../../src/basic-block-profiler.cc',
380         '../../src/basic-block-profiler.h',
381         '../../src/bignum-dtoa.cc',
382         '../../src/bignum-dtoa.h',
383         '../../src/bignum.cc',
384         '../../src/bignum.h',
385         '../../src/bit-vector.cc',
386         '../../src/bit-vector.h',
387         '../../src/bootstrapper.cc',
388         '../../src/bootstrapper.h',
389         '../../src/builtins.cc',
390         '../../src/builtins.h',
391         '../../src/bytecodes-irregexp.h',
392         '../../src/cached-powers.cc',
393         '../../src/cached-powers.h',
394         '../../src/char-predicates.cc',
395         '../../src/char-predicates-inl.h',
396         '../../src/char-predicates.h',
397         '../../src/checks.cc',
398         '../../src/checks.h',
399         '../../src/circular-queue-inl.h',
400         '../../src/circular-queue.h',
401         '../../src/code-factory.cc',
402         '../../src/code-factory.h',
403         '../../src/code-stubs.cc',
404         '../../src/code-stubs.h',
405         '../../src/code-stubs-hydrogen.cc',
406         '../../src/code.h',
407         '../../src/codegen.cc',
408         '../../src/codegen.h',
409         '../../src/compilation-cache.cc',
410         '../../src/compilation-cache.h',
411         '../../src/compilation-statistics.cc',
412         '../../src/compilation-statistics.h',
413         '../../src/compiler/access-builder.cc',
414         '../../src/compiler/access-builder.h',
415         '../../src/compiler/all-nodes.cc',
416         '../../src/compiler/all-nodes.h',
417         '../../src/compiler/ast-graph-builder.cc',
418         '../../src/compiler/ast-graph-builder.h',
419         '../../src/compiler/ast-loop-assignment-analyzer.cc',
420         '../../src/compiler/ast-loop-assignment-analyzer.h',
421         '../../src/compiler/basic-block-instrumentor.cc',
422         '../../src/compiler/basic-block-instrumentor.h',
423         '../../src/compiler/change-lowering.cc',
424         '../../src/compiler/change-lowering.h',
425         '../../src/compiler/code-generator-impl.h',
426         '../../src/compiler/code-generator.cc',
427         '../../src/compiler/code-generator.h',
428         '../../src/compiler/common-node-cache.cc',
429         '../../src/compiler/common-node-cache.h',
430         '../../src/compiler/common-operator-reducer.cc',
431         '../../src/compiler/common-operator-reducer.h',
432         '../../src/compiler/common-operator.cc',
433         '../../src/compiler/common-operator.h',
434         '../../src/compiler/control-builders.cc',
435         '../../src/compiler/control-builders.h',
436         '../../src/compiler/control-equivalence.h',
437         '../../src/compiler/control-flow-optimizer.cc',
438         '../../src/compiler/control-flow-optimizer.h',
439         '../../src/compiler/control-reducer.cc',
440         '../../src/compiler/control-reducer.h',
441         '../../src/compiler/diamond.h',
442         '../../src/compiler/frame.h',
443         '../../src/compiler/gap-resolver.cc',
444         '../../src/compiler/gap-resolver.h',
445         '../../src/compiler/graph-builder.h',
446         '../../src/compiler/graph-reducer.cc',
447         '../../src/compiler/graph-reducer.h',
448         '../../src/compiler/graph-replay.cc',
449         '../../src/compiler/graph-replay.h',
450         '../../src/compiler/graph-visualizer.cc',
451         '../../src/compiler/graph-visualizer.h',
452         '../../src/compiler/graph.cc',
453         '../../src/compiler/graph.h',
454         '../../src/compiler/instruction-codes.h',
455         '../../src/compiler/instruction-selector-impl.h',
456         '../../src/compiler/instruction-selector.cc',
457         '../../src/compiler/instruction-selector.h',
458         '../../src/compiler/instruction.cc',
459         '../../src/compiler/instruction.h',
460         '../../src/compiler/js-builtin-reducer.cc',
461         '../../src/compiler/js-builtin-reducer.h',
462         '../../src/compiler/js-context-specialization.cc',
463         '../../src/compiler/js-context-specialization.h',
464         '../../src/compiler/js-generic-lowering.cc',
465         '../../src/compiler/js-generic-lowering.h',
466         '../../src/compiler/js-graph.cc',
467         '../../src/compiler/js-graph.h',
468         '../../src/compiler/js-inlining.cc',
469         '../../src/compiler/js-inlining.h',
470         '../../src/compiler/js-intrinsic-lowering.cc',
471         '../../src/compiler/js-intrinsic-lowering.h',
472         '../../src/compiler/js-operator.cc',
473         '../../src/compiler/js-operator.h',
474         '../../src/compiler/js-type-feedback.cc',
475         '../../src/compiler/js-type-feedback.h',
476         '../../src/compiler/js-typed-lowering.cc',
477         '../../src/compiler/js-typed-lowering.h',
478         '../../src/compiler/jump-threading.cc',
479         '../../src/compiler/jump-threading.h',
480         '../../src/compiler/linkage-impl.h',
481         '../../src/compiler/linkage.cc',
482         '../../src/compiler/linkage.h',
483         '../../src/compiler/liveness-analyzer.cc',
484         '../../src/compiler/liveness-analyzer.h',
485         '../../src/compiler/load-elimination.cc',
486         '../../src/compiler/load-elimination.h',
487         '../../src/compiler/loop-analysis.cc',
488         '../../src/compiler/loop-analysis.h',
489         '../../src/compiler/loop-peeling.cc',
490         '../../src/compiler/loop-peeling.h',
491         '../../src/compiler/machine-operator-reducer.cc',
492         '../../src/compiler/machine-operator-reducer.h',
493         '../../src/compiler/machine-operator.cc',
494         '../../src/compiler/machine-operator.h',
495         '../../src/compiler/machine-type.cc',
496         '../../src/compiler/machine-type.h',
497         '../../src/compiler/move-optimizer.cc',
498         '../../src/compiler/move-optimizer.h',
499         '../../src/compiler/node-aux-data.h',
500         '../../src/compiler/node-cache.cc',
501         '../../src/compiler/node-cache.h',
502         '../../src/compiler/node-marker.cc',
503         '../../src/compiler/node-marker.h',
504         '../../src/compiler/node-matchers.cc',
505         '../../src/compiler/node-matchers.h',
506         '../../src/compiler/node-properties.cc',
507         '../../src/compiler/node-properties.h',
508         '../../src/compiler/node.cc',
509         '../../src/compiler/node.h',
510         '../../src/compiler/opcodes.cc',
511         '../../src/compiler/opcodes.h',
512         '../../src/compiler/operator-properties.cc',
513         '../../src/compiler/operator-properties.h',
514         '../../src/compiler/operator.cc',
515         '../../src/compiler/operator.h',
516         '../../src/compiler/osr.cc',
517         '../../src/compiler/osr.h',
518         '../../src/compiler/pipeline.cc',
519         '../../src/compiler/pipeline.h',
520         '../../src/compiler/pipeline-statistics.cc',
521         '../../src/compiler/pipeline-statistics.h',
522         '../../src/compiler/raw-machine-assembler.cc',
523         '../../src/compiler/raw-machine-assembler.h',
524         '../../src/compiler/register-allocator.cc',
525         '../../src/compiler/register-allocator.h',
526         '../../src/compiler/register-allocator-verifier.cc',
527         '../../src/compiler/register-allocator-verifier.h',
528         '../../src/compiler/register-configuration.cc',
529         '../../src/compiler/register-configuration.h',
530         '../../src/compiler/representation-change.h',
531         '../../src/compiler/schedule.cc',
532         '../../src/compiler/schedule.h',
533         '../../src/compiler/scheduler.cc',
534         '../../src/compiler/scheduler.h',
535         '../../src/compiler/select-lowering.cc',
536         '../../src/compiler/select-lowering.h',
537         '../../src/compiler/simplified-lowering.cc',
538         '../../src/compiler/simplified-lowering.h',
539         '../../src/compiler/simplified-operator-reducer.cc',
540         '../../src/compiler/simplified-operator-reducer.h',
541         '../../src/compiler/simplified-operator.cc',
542         '../../src/compiler/simplified-operator.h',
543         '../../src/compiler/source-position.cc',
544         '../../src/compiler/source-position.h',
545         '../../src/compiler/state-values-utils.cc',
546         '../../src/compiler/state-values-utils.h',
547         '../../src/compiler/typer.cc',
548         '../../src/compiler/typer.h',
549         '../../src/compiler/value-numbering-reducer.cc',
550         '../../src/compiler/value-numbering-reducer.h',
551         '../../src/compiler/verifier.cc',
552         '../../src/compiler/verifier.h',
553         '../../src/compiler/zone-pool.cc',
554         '../../src/compiler/zone-pool.h',
555         '../../src/compiler.cc',
556         '../../src/compiler.h',
557         '../../src/contexts.cc',
558         '../../src/contexts.h',
559         '../../src/conversions-inl.h',
560         '../../src/conversions.cc',
561         '../../src/conversions.h',
562         '../../src/counters.cc',
563         '../../src/counters.h',
564         '../../src/cpu-profiler-inl.h',
565         '../../src/cpu-profiler.cc',
566         '../../src/cpu-profiler.h',
567         '../../src/date.cc',
568         '../../src/date.h',
569         '../../src/dateparser-inl.h',
570         '../../src/dateparser.cc',
571         '../../src/dateparser.h',
572         '../../src/debug.cc',
573         '../../src/debug.h',
574         '../../src/deoptimizer.cc',
575         '../../src/deoptimizer.h',
576         '../../src/disasm.h',
577         '../../src/disassembler.cc',
578         '../../src/disassembler.h',
579         '../../src/diy-fp.cc',
580         '../../src/diy-fp.h',
581         '../../src/double.h',
582         '../../src/dtoa.cc',
583         '../../src/dtoa.h',
584         '../../src/effects.h',
585         '../../src/elements-kind.cc',
586         '../../src/elements-kind.h',
587         '../../src/elements.cc',
588         '../../src/elements.h',
589         '../../src/execution.cc',
590         '../../src/execution.h',
591         '../../src/extensions/externalize-string-extension.cc',
592         '../../src/extensions/externalize-string-extension.h',
593         '../../src/extensions/free-buffer-extension.cc',
594         '../../src/extensions/free-buffer-extension.h',
595         '../../src/extensions/gc-extension.cc',
596         '../../src/extensions/gc-extension.h',
597         '../../src/extensions/statistics-extension.cc',
598         '../../src/extensions/statistics-extension.h',
599         '../../src/extensions/trigger-failure-extension.cc',
600         '../../src/extensions/trigger-failure-extension.h',
601         '../../src/factory.cc',
602         '../../src/factory.h',
603         '../../src/fast-dtoa.cc',
604         '../../src/fast-dtoa.h',
605         '../../src/field-index.h',
606         '../../src/field-index-inl.h',
607         '../../src/fixed-dtoa.cc',
608         '../../src/fixed-dtoa.h',
609         '../../src/flag-definitions.h',
610         '../../src/flags.cc',
611         '../../src/flags.h',
612         '../../src/frames-inl.h',
613         '../../src/frames.cc',
614         '../../src/frames.h',
615         '../../src/full-codegen.cc',
616         '../../src/full-codegen.h',
617         '../../src/func-name-inferrer.cc',
618         '../../src/func-name-inferrer.h',
619         '../../src/gdb-jit.cc',
620         '../../src/gdb-jit.h',
621         '../../src/global-handles.cc',
622         '../../src/global-handles.h',
623         '../../src/globals.h',
624         '../../src/handles-inl.h',
625         '../../src/handles.cc',
626         '../../src/handles.h',
627         '../../src/hashmap.h',
628         '../../src/heap-profiler.cc',
629         '../../src/heap-profiler.h',
630         '../../src/heap-snapshot-generator-inl.h',
631         '../../src/heap-snapshot-generator.cc',
632         '../../src/heap-snapshot-generator.h',
633         '../../src/heap/gc-idle-time-handler.cc',
634         '../../src/heap/gc-idle-time-handler.h',
635         '../../src/heap/gc-tracer.cc',
636         '../../src/heap/gc-tracer.h',
637         '../../src/heap/heap-inl.h',
638         '../../src/heap/heap.cc',
639         '../../src/heap/heap.h',
640         '../../src/heap/incremental-marking-inl.h',
641         '../../src/heap/incremental-marking.cc',
642         '../../src/heap/incremental-marking.h',
643         '../../src/heap/mark-compact-inl.h',
644         '../../src/heap/mark-compact.cc',
645         '../../src/heap/mark-compact.h',
646         '../../src/heap/objects-visiting-inl.h',
647         '../../src/heap/objects-visiting.cc',
648         '../../src/heap/objects-visiting.h',
649         '../../src/heap/spaces-inl.h',
650         '../../src/heap/spaces.cc',
651         '../../src/heap/spaces.h',
652         '../../src/heap/store-buffer-inl.h',
653         '../../src/heap/store-buffer.cc',
654         '../../src/heap/store-buffer.h',
655         '../../src/hydrogen-alias-analysis.h',
656         '../../src/hydrogen-bce.cc',
657         '../../src/hydrogen-bce.h',
658         '../../src/hydrogen-bch.cc',
659         '../../src/hydrogen-bch.h',
660         '../../src/hydrogen-canonicalize.cc',
661         '../../src/hydrogen-canonicalize.h',
662         '../../src/hydrogen-check-elimination.cc',
663         '../../src/hydrogen-check-elimination.h',
664         '../../src/hydrogen-dce.cc',
665         '../../src/hydrogen-dce.h',
666         '../../src/hydrogen-dehoist.cc',
667         '../../src/hydrogen-dehoist.h',
668         '../../src/hydrogen-environment-liveness.cc',
669         '../../src/hydrogen-environment-liveness.h',
670         '../../src/hydrogen-escape-analysis.cc',
671         '../../src/hydrogen-escape-analysis.h',
672         '../../src/hydrogen-flow-engine.h',
673         '../../src/hydrogen-instructions.cc',
674         '../../src/hydrogen-instructions.h',
675         '../../src/hydrogen.cc',
676         '../../src/hydrogen.h',
677         '../../src/hydrogen-gvn.cc',
678         '../../src/hydrogen-gvn.h',
679         '../../src/hydrogen-infer-representation.cc',
680         '../../src/hydrogen-infer-representation.h',
681         '../../src/hydrogen-infer-types.cc',
682         '../../src/hydrogen-infer-types.h',
683         '../../src/hydrogen-load-elimination.cc',
684         '../../src/hydrogen-load-elimination.h',
685         '../../src/hydrogen-mark-deoptimize.cc',
686         '../../src/hydrogen-mark-deoptimize.h',
687         '../../src/hydrogen-mark-unreachable.cc',
688         '../../src/hydrogen-mark-unreachable.h',
689         '../../src/hydrogen-osr.cc',
690         '../../src/hydrogen-osr.h',
691         '../../src/hydrogen-range-analysis.cc',
692         '../../src/hydrogen-range-analysis.h',
693         '../../src/hydrogen-redundant-phi.cc',
694         '../../src/hydrogen-redundant-phi.h',
695         '../../src/hydrogen-removable-simulates.cc',
696         '../../src/hydrogen-removable-simulates.h',
697         '../../src/hydrogen-representation-changes.cc',
698         '../../src/hydrogen-representation-changes.h',
699         '../../src/hydrogen-sce.cc',
700         '../../src/hydrogen-sce.h',
701         '../../src/hydrogen-store-elimination.cc',
702         '../../src/hydrogen-store-elimination.h',
703         '../../src/hydrogen-types.cc',
704         '../../src/hydrogen-types.h',
705         '../../src/hydrogen-uint32-analysis.cc',
706         '../../src/hydrogen-uint32-analysis.h',
707         '../../src/i18n.cc',
708         '../../src/i18n.h',
709         '../../src/icu_util.cc',
710         '../../src/icu_util.h',
711         '../../src/ic/access-compiler.cc',
712         '../../src/ic/access-compiler.h',
713         '../../src/ic/call-optimization.cc',
714         '../../src/ic/call-optimization.h',
715         '../../src/ic/handler-compiler.cc',
716         '../../src/ic/handler-compiler.h',
717         '../../src/ic/ic-inl.h',
718         '../../src/ic/ic-state.cc',
719         '../../src/ic/ic-state.h',
720         '../../src/ic/ic.cc',
721         '../../src/ic/ic.h',
722         '../../src/ic/ic-compiler.cc',
723         '../../src/ic/ic-compiler.h',
724         '../../src/interface-descriptors.cc',
725         '../../src/interface-descriptors.h',
726         '../../src/interpreter-irregexp.cc',
727         '../../src/interpreter-irregexp.h',
728         '../../src/isolate.cc',
729         '../../src/isolate.h',
730         '../../src/json-parser.h',
731         '../../src/json-stringifier.h',
732         '../../src/jsregexp-inl.h',
733         '../../src/jsregexp.cc',
734         '../../src/jsregexp.h',
735         '../../src/layout-descriptor-inl.h',
736         '../../src/layout-descriptor.cc',
737         '../../src/layout-descriptor.h',
738         '../../src/list-inl.h',
739         '../../src/list.h',
740         '../../src/lithium-allocator-inl.h',
741         '../../src/lithium-allocator.cc',
742         '../../src/lithium-allocator.h',
743         '../../src/lithium-codegen.cc',
744         '../../src/lithium-codegen.h',
745         '../../src/lithium.cc',
746         '../../src/lithium.h',
747         '../../src/lithium-inl.h',
748         '../../src/liveedit.cc',
749         '../../src/liveedit.h',
750         '../../src/log-inl.h',
751         '../../src/log-utils.cc',
752         '../../src/log-utils.h',
753         '../../src/log.cc',
754         '../../src/log.h',
755         '../../src/lookup-inl.h',
756         '../../src/lookup.cc',
757         '../../src/lookup.h',
758         '../../src/macro-assembler.h',
759         '../../src/messages.cc',
760         '../../src/messages.h',
761         '../../src/modules.cc',
762         '../../src/modules.h',
763         '../../src/msan.h',
764         '../../src/objects-debug.cc',
765         '../../src/objects-inl.h',
766         '../../src/objects-printer.cc',
767         '../../src/objects.cc',
768         '../../src/objects.h',
769         '../../src/optimizing-compiler-thread.cc',
770         '../../src/optimizing-compiler-thread.h',
771         '../../src/ostreams.cc',
772         '../../src/ostreams.h',
773         '../../src/parser.cc',
774         '../../src/parser.h',
775         '../../src/pending-compilation-error-handler.cc',
776         '../../src/pending-compilation-error-handler.h',
777         '../../src/perf-jit.cc',
778         '../../src/perf-jit.h',
779         '../../src/preparse-data-format.h',
780         '../../src/preparse-data.cc',
781         '../../src/preparse-data.h',
782         '../../src/preparser.cc',
783         '../../src/preparser.h',
784         '../../src/prettyprinter.cc',
785         '../../src/prettyprinter.h',
786         '../../src/profile-generator-inl.h',
787         '../../src/profile-generator.cc',
788         '../../src/profile-generator.h',
789         '../../src/property-details.h',
790         '../../src/property.cc',
791         '../../src/property.h',
792         '../../src/prototype.h',
793         '../../src/regexp-macro-assembler-irregexp-inl.h',
794         '../../src/regexp-macro-assembler-irregexp.cc',
795         '../../src/regexp-macro-assembler-irregexp.h',
796         '../../src/regexp-macro-assembler-tracer.cc',
797         '../../src/regexp-macro-assembler-tracer.h',
798         '../../src/regexp-macro-assembler.cc',
799         '../../src/regexp-macro-assembler.h',
800         '../../src/regexp-stack.cc',
801         '../../src/regexp-stack.h',
802         '../../src/rewriter.cc',
803         '../../src/rewriter.h',
804         '../../src/runtime-profiler.cc',
805         '../../src/runtime-profiler.h',
806         '../../src/runtime/runtime-array.cc',
807         '../../src/runtime/runtime-classes.cc',
808         '../../src/runtime/runtime-collections.cc',
809         '../../src/runtime/runtime-compiler.cc',
810         '../../src/runtime/runtime-date.cc',
811         '../../src/runtime/runtime-debug.cc',
812         '../../src/runtime/runtime-function.cc',
813         '../../src/runtime/runtime-generator.cc',
814         '../../src/runtime/runtime-i18n.cc',
815         '../../src/runtime/runtime-internal.cc',
816         '../../src/runtime/runtime-json.cc',
817         '../../src/runtime/runtime-literals.cc',
818         '../../src/runtime/runtime-liveedit.cc',
819         '../../src/runtime/runtime-maths.cc',
820         '../../src/runtime/runtime-numbers.cc',
821         '../../src/runtime/runtime-object.cc',
822         '../../src/runtime/runtime-observe.cc',
823         '../../src/runtime/runtime-proxy.cc',
824         '../../src/runtime/runtime-regexp.cc',
825         '../../src/runtime/runtime-scopes.cc',
826         '../../src/runtime/runtime-strings.cc',
827         '../../src/runtime/runtime-symbol.cc',
828         '../../src/runtime/runtime-test.cc',
829         '../../src/runtime/runtime-typedarray.cc',
830         '../../src/runtime/runtime-uri.cc',
831         '../../src/runtime/runtime-utils.h',
832         '../../src/runtime/runtime.cc',
833         '../../src/runtime/runtime.h',
834         '../../src/safepoint-table.cc',
835         '../../src/safepoint-table.h',
836         '../../src/sampler.cc',
837         '../../src/sampler.h',
838         '../../src/scanner-character-streams.cc',
839         '../../src/scanner-character-streams.h',
840         '../../src/scanner.cc',
841         '../../src/scanner.h',
842         '../../src/scopeinfo.cc',
843         '../../src/scopeinfo.h',
844         '../../src/scopes.cc',
845         '../../src/scopes.h',
846         '../../src/small-pointer-list.h',
847         '../../src/smart-pointers.h',
848         '../../src/snapshot/natives.h',
849         '../../src/snapshot/serialize.cc',
850         '../../src/snapshot/serialize.h',
851         '../../src/snapshot/snapshot.h',
852         '../../src/snapshot/snapshot-common.cc',
853         '../../src/snapshot/snapshot-source-sink.cc',
854         '../../src/snapshot/snapshot-source-sink.h',
855         '../../src/string-builder.cc',
856         '../../src/string-builder.h',
857         '../../src/string-search.cc',
858         '../../src/string-search.h',
859         '../../src/string-stream.cc',
860         '../../src/string-stream.h',
861         '../../src/strings-storage.cc',
862         '../../src/strings-storage.h',
863         '../../src/strtod.cc',
864         '../../src/strtod.h',
865         '../../src/ic/stub-cache.cc',
866         '../../src/ic/stub-cache.h',
867         '../../src/token.cc',
868         '../../src/token.h',
869         '../../src/transitions-inl.h',
870         '../../src/transitions.cc',
871         '../../src/transitions.h',
872         '../../src/type-feedback-vector-inl.h',
873         '../../src/type-feedback-vector.cc',
874         '../../src/type-feedback-vector.h',
875         '../../src/type-info.cc',
876         '../../src/type-info.h',
877         '../../src/types-inl.h',
878         '../../src/types.cc',
879         '../../src/types.h',
880         '../../src/typing.cc',
881         '../../src/typing.h',
882         '../../src/unbound-queue-inl.h',
883         '../../src/unbound-queue.h',
884         '../../src/unicode-inl.h',
885         '../../src/unicode.cc',
886         '../../src/unicode.h',
887         '../../src/unicode-decoder.cc',
888         '../../src/unicode-decoder.h',
889         '../../src/unique.h',
890         '../../src/utils-inl.h',
891         '../../src/utils.cc',
892         '../../src/utils.h',
893         '../../src/v8.cc',
894         '../../src/v8.h',
895         '../../src/v8memory.h',
896         '../../src/v8threads.cc',
897         '../../src/v8threads.h',
898         '../../src/variables.cc',
899         '../../src/variables.h',
900         '../../src/vector.h',
901         '../../src/version.cc',
902         '../../src/version.h',
903         '../../src/vm-state-inl.h',
904         '../../src/vm-state.h',
905         '../../src/zone.cc',
906         '../../src/zone.h',
907         '../../src/third_party/fdlibm/fdlibm.cc',
908         '../../src/third_party/fdlibm/fdlibm.h',
909       ],
910       'conditions': [
911         ['want_separate_host_toolset==1', {
912           'toolsets': ['host', 'target'],
913         }, {
914           'toolsets': ['target'],
915         }],
916         ['v8_target_arch=="arm"', {
917           'sources': [  ### gcmole(arch:arm) ###
918             '../../src/arm/assembler-arm-inl.h',
919             '../../src/arm/assembler-arm.cc',
920             '../../src/arm/assembler-arm.h',
921             '../../src/arm/builtins-arm.cc',
922             '../../src/arm/code-stubs-arm.cc',
923             '../../src/arm/code-stubs-arm.h',
924             '../../src/arm/codegen-arm.cc',
925             '../../src/arm/codegen-arm.h',
926             '../../src/arm/constants-arm.h',
927             '../../src/arm/constants-arm.cc',
928             '../../src/arm/cpu-arm.cc',
929             '../../src/arm/debug-arm.cc',
930             '../../src/arm/deoptimizer-arm.cc',
931             '../../src/arm/disasm-arm.cc',
932             '../../src/arm/frames-arm.cc',
933             '../../src/arm/frames-arm.h',
934             '../../src/arm/full-codegen-arm.cc',
935             '../../src/arm/interface-descriptors-arm.cc',
936             '../../src/arm/interface-descriptors-arm.h',
937             '../../src/arm/lithium-arm.cc',
938             '../../src/arm/lithium-arm.h',
939             '../../src/arm/lithium-codegen-arm.cc',
940             '../../src/arm/lithium-codegen-arm.h',
941             '../../src/arm/lithium-gap-resolver-arm.cc',
942             '../../src/arm/lithium-gap-resolver-arm.h',
943             '../../src/arm/macro-assembler-arm.cc',
944             '../../src/arm/macro-assembler-arm.h',
945             '../../src/arm/regexp-macro-assembler-arm.cc',
946             '../../src/arm/regexp-macro-assembler-arm.h',
947             '../../src/arm/simulator-arm.cc',
948             '../../src/compiler/arm/code-generator-arm.cc',
949             '../../src/compiler/arm/instruction-codes-arm.h',
950             '../../src/compiler/arm/instruction-selector-arm.cc',
951             '../../src/compiler/arm/linkage-arm.cc',
952             '../../src/ic/arm/access-compiler-arm.cc',
953             '../../src/ic/arm/handler-compiler-arm.cc',
954             '../../src/ic/arm/ic-arm.cc',
955             '../../src/ic/arm/ic-compiler-arm.cc',
956             '../../src/ic/arm/stub-cache-arm.cc',
957           ],
958         }],
959         ['v8_target_arch=="arm64"', {
960           'sources': [  ### gcmole(arch:arm64) ###
961             '../../src/arm64/assembler-arm64.cc',
962             '../../src/arm64/assembler-arm64.h',
963             '../../src/arm64/assembler-arm64-inl.h',
964             '../../src/arm64/builtins-arm64.cc',
965             '../../src/arm64/codegen-arm64.cc',
966             '../../src/arm64/codegen-arm64.h',
967             '../../src/arm64/code-stubs-arm64.cc',
968             '../../src/arm64/code-stubs-arm64.h',
969             '../../src/arm64/constants-arm64.h',
970             '../../src/arm64/cpu-arm64.cc',
971             '../../src/arm64/debug-arm64.cc',
972             '../../src/arm64/decoder-arm64.cc',
973             '../../src/arm64/decoder-arm64.h',
974             '../../src/arm64/decoder-arm64-inl.h',
975             '../../src/arm64/delayed-masm-arm64.cc',
976             '../../src/arm64/delayed-masm-arm64.h',
977             '../../src/arm64/delayed-masm-arm64-inl.h',
978             '../../src/arm64/deoptimizer-arm64.cc',
979             '../../src/arm64/disasm-arm64.cc',
980             '../../src/arm64/disasm-arm64.h',
981             '../../src/arm64/frames-arm64.cc',
982             '../../src/arm64/frames-arm64.h',
983             '../../src/arm64/full-codegen-arm64.cc',
984             '../../src/arm64/instructions-arm64.cc',
985             '../../src/arm64/instructions-arm64.h',
986             '../../src/arm64/instrument-arm64.cc',
987             '../../src/arm64/instrument-arm64.h',
988             '../../src/arm64/interface-descriptors-arm64.cc',
989             '../../src/arm64/interface-descriptors-arm64.h',
990             '../../src/arm64/lithium-arm64.cc',
991             '../../src/arm64/lithium-arm64.h',
992             '../../src/arm64/lithium-codegen-arm64.cc',
993             '../../src/arm64/lithium-codegen-arm64.h',
994             '../../src/arm64/lithium-gap-resolver-arm64.cc',
995             '../../src/arm64/lithium-gap-resolver-arm64.h',
996             '../../src/arm64/macro-assembler-arm64.cc',
997             '../../src/arm64/macro-assembler-arm64.h',
998             '../../src/arm64/macro-assembler-arm64-inl.h',
999             '../../src/arm64/regexp-macro-assembler-arm64.cc',
1000             '../../src/arm64/regexp-macro-assembler-arm64.h',
1001             '../../src/arm64/simulator-arm64.cc',
1002             '../../src/arm64/simulator-arm64.h',
1003             '../../src/arm64/utils-arm64.cc',
1004             '../../src/arm64/utils-arm64.h',
1005             '../../src/compiler/arm64/code-generator-arm64.cc',
1006             '../../src/compiler/arm64/instruction-codes-arm64.h',
1007             '../../src/compiler/arm64/instruction-selector-arm64.cc',
1008             '../../src/compiler/arm64/linkage-arm64.cc',
1009             '../../src/ic/arm64/access-compiler-arm64.cc',
1010             '../../src/ic/arm64/handler-compiler-arm64.cc',
1011             '../../src/ic/arm64/ic-arm64.cc',
1012             '../../src/ic/arm64/ic-compiler-arm64.cc',
1013             '../../src/ic/arm64/stub-cache-arm64.cc',
1014           ],
1015         }],
1016         ['v8_target_arch=="ia32"', {
1017           'sources': [  ### gcmole(arch:ia32) ###
1018             '../../src/ia32/assembler-ia32-inl.h',
1019             '../../src/ia32/assembler-ia32.cc',
1020             '../../src/ia32/assembler-ia32.h',
1021             '../../src/ia32/builtins-ia32.cc',
1022             '../../src/ia32/code-stubs-ia32.cc',
1023             '../../src/ia32/code-stubs-ia32.h',
1024             '../../src/ia32/codegen-ia32.cc',
1025             '../../src/ia32/codegen-ia32.h',
1026             '../../src/ia32/cpu-ia32.cc',
1027             '../../src/ia32/debug-ia32.cc',
1028             '../../src/ia32/deoptimizer-ia32.cc',
1029             '../../src/ia32/disasm-ia32.cc',
1030             '../../src/ia32/frames-ia32.cc',
1031             '../../src/ia32/frames-ia32.h',
1032             '../../src/ia32/full-codegen-ia32.cc',
1033             '../../src/ia32/interface-descriptors-ia32.cc',
1034             '../../src/ia32/lithium-codegen-ia32.cc',
1035             '../../src/ia32/lithium-codegen-ia32.h',
1036             '../../src/ia32/lithium-gap-resolver-ia32.cc',
1037             '../../src/ia32/lithium-gap-resolver-ia32.h',
1038             '../../src/ia32/lithium-ia32.cc',
1039             '../../src/ia32/lithium-ia32.h',
1040             '../../src/ia32/macro-assembler-ia32.cc',
1041             '../../src/ia32/macro-assembler-ia32.h',
1042             '../../src/ia32/regexp-macro-assembler-ia32.cc',
1043             '../../src/ia32/regexp-macro-assembler-ia32.h',
1044             '../../src/compiler/ia32/code-generator-ia32.cc',
1045             '../../src/compiler/ia32/instruction-codes-ia32.h',
1046             '../../src/compiler/ia32/instruction-selector-ia32.cc',
1047             '../../src/compiler/ia32/linkage-ia32.cc',
1048             '../../src/ic/ia32/access-compiler-ia32.cc',
1049             '../../src/ic/ia32/handler-compiler-ia32.cc',
1050             '../../src/ic/ia32/ic-ia32.cc',
1051             '../../src/ic/ia32/ic-compiler-ia32.cc',
1052             '../../src/ic/ia32/stub-cache-ia32.cc',
1053           ],
1054         }],
1055         ['v8_target_arch=="x87"', {
1056           'sources': [  ### gcmole(arch:x87) ###
1057             '../../src/x87/assembler-x87-inl.h',
1058             '../../src/x87/assembler-x87.cc',
1059             '../../src/x87/assembler-x87.h',
1060             '../../src/x87/builtins-x87.cc',
1061             '../../src/x87/code-stubs-x87.cc',
1062             '../../src/x87/code-stubs-x87.h',
1063             '../../src/x87/codegen-x87.cc',
1064             '../../src/x87/codegen-x87.h',
1065             '../../src/x87/cpu-x87.cc',
1066             '../../src/x87/debug-x87.cc',
1067             '../../src/x87/deoptimizer-x87.cc',
1068             '../../src/x87/disasm-x87.cc',
1069             '../../src/x87/frames-x87.cc',
1070             '../../src/x87/frames-x87.h',
1071             '../../src/x87/full-codegen-x87.cc',
1072             '../../src/x87/interface-descriptors-x87.cc',
1073             '../../src/x87/lithium-codegen-x87.cc',
1074             '../../src/x87/lithium-codegen-x87.h',
1075             '../../src/x87/lithium-gap-resolver-x87.cc',
1076             '../../src/x87/lithium-gap-resolver-x87.h',
1077             '../../src/x87/lithium-x87.cc',
1078             '../../src/x87/lithium-x87.h',
1079             '../../src/x87/macro-assembler-x87.cc',
1080             '../../src/x87/macro-assembler-x87.h',
1081             '../../src/x87/regexp-macro-assembler-x87.cc',
1082             '../../src/x87/regexp-macro-assembler-x87.h',
1083             '../../src/ic/x87/access-compiler-x87.cc',
1084             '../../src/ic/x87/handler-compiler-x87.cc',
1085             '../../src/ic/x87/ic-x87.cc',
1086             '../../src/ic/x87/ic-compiler-x87.cc',
1087             '../../src/ic/x87/stub-cache-x87.cc',
1088           ],
1089         }],
1090         ['v8_target_arch=="mips" or v8_target_arch=="mipsel"', {
1091           'sources': [  ### gcmole(arch:mipsel) ###
1092             '../../src/mips/assembler-mips.cc',
1093             '../../src/mips/assembler-mips.h',
1094             '../../src/mips/assembler-mips-inl.h',
1095             '../../src/mips/builtins-mips.cc',
1096             '../../src/mips/codegen-mips.cc',
1097             '../../src/mips/codegen-mips.h',
1098             '../../src/mips/code-stubs-mips.cc',
1099             '../../src/mips/code-stubs-mips.h',
1100             '../../src/mips/constants-mips.cc',
1101             '../../src/mips/constants-mips.h',
1102             '../../src/mips/cpu-mips.cc',
1103             '../../src/mips/debug-mips.cc',
1104             '../../src/mips/deoptimizer-mips.cc',
1105             '../../src/mips/disasm-mips.cc',
1106             '../../src/mips/frames-mips.cc',
1107             '../../src/mips/frames-mips.h',
1108             '../../src/mips/full-codegen-mips.cc',
1109             '../../src/mips/interface-descriptors-mips.cc',
1110             '../../src/mips/lithium-codegen-mips.cc',
1111             '../../src/mips/lithium-codegen-mips.h',
1112             '../../src/mips/lithium-gap-resolver-mips.cc',
1113             '../../src/mips/lithium-gap-resolver-mips.h',
1114             '../../src/mips/lithium-mips.cc',
1115             '../../src/mips/lithium-mips.h',
1116             '../../src/mips/macro-assembler-mips.cc',
1117             '../../src/mips/macro-assembler-mips.h',
1118             '../../src/mips/regexp-macro-assembler-mips.cc',
1119             '../../src/mips/regexp-macro-assembler-mips.h',
1120             '../../src/mips/simulator-mips.cc',
1121             '../../src/compiler/mips/code-generator-mips.cc',
1122             '../../src/compiler/mips/instruction-codes-mips.h',
1123             '../../src/compiler/mips/instruction-selector-mips.cc',
1124             '../../src/compiler/mips/linkage-mips.cc',
1125             '../../src/ic/mips/access-compiler-mips.cc',
1126             '../../src/ic/mips/handler-compiler-mips.cc',
1127             '../../src/ic/mips/ic-mips.cc',
1128             '../../src/ic/mips/ic-compiler-mips.cc',
1129             '../../src/ic/mips/stub-cache-mips.cc',
1130           ],
1131         }],
1132         ['v8_target_arch=="mips64el"', {
1133           'sources': [  ### gcmole(arch:mips64el) ###
1134             '../../src/mips64/assembler-mips64.cc',
1135             '../../src/mips64/assembler-mips64.h',
1136             '../../src/mips64/assembler-mips64-inl.h',
1137             '../../src/mips64/builtins-mips64.cc',
1138             '../../src/mips64/codegen-mips64.cc',
1139             '../../src/mips64/codegen-mips64.h',
1140             '../../src/mips64/code-stubs-mips64.cc',
1141             '../../src/mips64/code-stubs-mips64.h',
1142             '../../src/mips64/constants-mips64.cc',
1143             '../../src/mips64/constants-mips64.h',
1144             '../../src/mips64/cpu-mips64.cc',
1145             '../../src/mips64/debug-mips64.cc',
1146             '../../src/mips64/deoptimizer-mips64.cc',
1147             '../../src/mips64/disasm-mips64.cc',
1148             '../../src/mips64/frames-mips64.cc',
1149             '../../src/mips64/frames-mips64.h',
1150             '../../src/mips64/full-codegen-mips64.cc',
1151             '../../src/mips64/interface-descriptors-mips64.cc',
1152             '../../src/mips64/lithium-codegen-mips64.cc',
1153             '../../src/mips64/lithium-codegen-mips64.h',
1154             '../../src/mips64/lithium-gap-resolver-mips64.cc',
1155             '../../src/mips64/lithium-gap-resolver-mips64.h',
1156             '../../src/mips64/lithium-mips64.cc',
1157             '../../src/mips64/lithium-mips64.h',
1158             '../../src/mips64/macro-assembler-mips64.cc',
1159             '../../src/mips64/macro-assembler-mips64.h',
1160             '../../src/mips64/regexp-macro-assembler-mips64.cc',
1161             '../../src/mips64/regexp-macro-assembler-mips64.h',
1162             '../../src/mips64/simulator-mips64.cc',
1163             '../../src/compiler/mips64/code-generator-mips64.cc',
1164             '../../src/compiler/mips64/instruction-codes-mips64.h',
1165             '../../src/compiler/mips64/instruction-selector-mips64.cc',
1166             '../../src/compiler/mips64/linkage-mips64.cc',
1167             '../../src/ic/mips64/access-compiler-mips64.cc',
1168             '../../src/ic/mips64/handler-compiler-mips64.cc',
1169             '../../src/ic/mips64/ic-mips64.cc',
1170             '../../src/ic/mips64/ic-compiler-mips64.cc',
1171             '../../src/ic/mips64/stub-cache-mips64.cc',
1172           ],
1173         }],
1174         ['v8_target_arch=="x64" or v8_target_arch=="x32"', {
1175           'sources': [  ### gcmole(arch:x64) ###
1176             '../../src/x64/assembler-x64-inl.h',
1177             '../../src/x64/assembler-x64.cc',
1178             '../../src/x64/assembler-x64.h',
1179             '../../src/x64/builtins-x64.cc',
1180             '../../src/x64/code-stubs-x64.cc',
1181             '../../src/x64/code-stubs-x64.h',
1182             '../../src/x64/codegen-x64.cc',
1183             '../../src/x64/codegen-x64.h',
1184             '../../src/x64/cpu-x64.cc',
1185             '../../src/x64/debug-x64.cc',
1186             '../../src/x64/deoptimizer-x64.cc',
1187             '../../src/x64/disasm-x64.cc',
1188             '../../src/x64/frames-x64.cc',
1189             '../../src/x64/frames-x64.h',
1190             '../../src/x64/full-codegen-x64.cc',
1191             '../../src/x64/interface-descriptors-x64.cc',
1192             '../../src/x64/lithium-codegen-x64.cc',
1193             '../../src/x64/lithium-codegen-x64.h',
1194             '../../src/x64/lithium-gap-resolver-x64.cc',
1195             '../../src/x64/lithium-gap-resolver-x64.h',
1196             '../../src/x64/lithium-x64.cc',
1197             '../../src/x64/lithium-x64.h',
1198             '../../src/x64/macro-assembler-x64.cc',
1199             '../../src/x64/macro-assembler-x64.h',
1200             '../../src/x64/regexp-macro-assembler-x64.cc',
1201             '../../src/x64/regexp-macro-assembler-x64.h',
1202             '../../src/ic/x64/access-compiler-x64.cc',
1203             '../../src/ic/x64/handler-compiler-x64.cc',
1204             '../../src/ic/x64/ic-x64.cc',
1205             '../../src/ic/x64/ic-compiler-x64.cc',
1206             '../../src/ic/x64/stub-cache-x64.cc',
1207           ],
1208         }],
1209         ['v8_target_arch=="x64"', {
1210           'sources': [
1211             '../../src/compiler/x64/code-generator-x64.cc',
1212             '../../src/compiler/x64/instruction-codes-x64.h',
1213             '../../src/compiler/x64/instruction-selector-x64.cc',
1214             '../../src/compiler/x64/linkage-x64.cc',
1215           ],
1216         }],
1217         ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
1218           'sources': [  ### gcmole(arch:ppc) ###
1219             '../../src/ppc/assembler-ppc-inl.h',
1220             '../../src/ppc/assembler-ppc.cc',
1221             '../../src/ppc/assembler-ppc.h',
1222             '../../src/ppc/builtins-ppc.cc',
1223             '../../src/ppc/code-stubs-ppc.cc',
1224             '../../src/ppc/code-stubs-ppc.h',
1225             '../../src/ppc/codegen-ppc.cc',
1226             '../../src/ppc/codegen-ppc.h',
1227             '../../src/ppc/constants-ppc.h',
1228             '../../src/ppc/constants-ppc.cc',
1229             '../../src/ppc/cpu-ppc.cc',
1230             '../../src/ppc/debug-ppc.cc',
1231             '../../src/ppc/deoptimizer-ppc.cc',
1232             '../../src/ppc/disasm-ppc.cc',
1233             '../../src/ppc/frames-ppc.cc',
1234             '../../src/ppc/frames-ppc.h',
1235             '../../src/ppc/full-codegen-ppc.cc',
1236             '../../src/ppc/interface-descriptors-ppc.cc',
1237             '../../src/ppc/interface-descriptors-ppc.h',
1238             '../../src/ppc/lithium-ppc.cc',
1239             '../../src/ppc/lithium-ppc.h',
1240             '../../src/ppc/lithium-codegen-ppc.cc',
1241             '../../src/ppc/lithium-codegen-ppc.h',
1242             '../../src/ppc/lithium-gap-resolver-ppc.cc',
1243             '../../src/ppc/lithium-gap-resolver-ppc.h',
1244             '../../src/ppc/macro-assembler-ppc.cc',
1245             '../../src/ppc/macro-assembler-ppc.h',
1246             '../../src/ppc/regexp-macro-assembler-ppc.cc',
1247             '../../src/ppc/regexp-macro-assembler-ppc.h',
1248             '../../src/ppc/simulator-ppc.cc',
1249             '../../src/compiler/ppc/code-generator-ppc.cc',
1250             '../../src/compiler/ppc/instruction-codes-ppc.h',
1251             '../../src/compiler/ppc/instruction-selector-ppc.cc',
1252             '../../src/compiler/ppc/linkage-ppc.cc',
1253             '../../src/ic/ppc/access-compiler-ppc.cc',
1254             '../../src/ic/ppc/handler-compiler-ppc.cc',
1255             '../../src/ic/ppc/ic-ppc.cc',
1256             '../../src/ic/ppc/ic-compiler-ppc.cc',
1257             '../../src/ic/ppc/stub-cache-ppc.cc',
1258           ],
1259         }],
1260         ['OS=="win"', {
1261           'variables': {
1262             'gyp_generators': '<!(echo $GYP_GENERATORS)',
1263           },
1264           'msvs_disabled_warnings': [4351, 4355, 4800],
1265         }],
1266         ['component=="shared_library"', {
1267           'defines': [
1268             'BUILDING_V8_SHARED',
1269             'V8_SHARED',
1270           ],
1271         }],
1272         ['v8_postmortem_support=="true"', {
1273           'sources': [
1274             '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
1275           ]
1276         }],
1277         ['v8_enable_i18n_support==1', {
1278           'dependencies': [
1279             '<(icu_gyp_path):icui18n',
1280             '<(icu_gyp_path):icuuc',
1281           ]
1282         }, {  # v8_enable_i18n_support==0
1283           'sources!': [
1284             '../../src/i18n.cc',
1285             '../../src/i18n.h',
1286           ],
1287         }],
1288         ['OS=="win" and v8_enable_i18n_support==1', {
1289           'dependencies': [
1290             '<(icu_gyp_path):icudata',
1291           ],
1292         }],
1293         ['icu_use_data_file_flag==1', {
1294           'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE'],
1295         }, { # else icu_use_data_file_flag !=1
1296           'conditions': [
1297             ['OS=="win"', {
1298               'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED'],
1299             }, {
1300               'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC'],
1301             }],
1302           ],
1303         }],
1304       ],
1305     },
1306     {
1307       'target_name': 'v8_libbase',
1308       'type': 'static_library',
1309       'variables': {
1310         'optimize': 'max',
1311       },
1312       'include_dirs+': [
1313         '../..',
1314       ],
1315       'sources': [
1316         '../../src/base/atomicops.h',
1317         '../../src/base/atomicops_internals_arm64_gcc.h',
1318         '../../src/base/atomicops_internals_arm_gcc.h',
1319         '../../src/base/atomicops_internals_atomicword_compat.h',
1320         '../../src/base/atomicops_internals_mac.h',
1321         '../../src/base/atomicops_internals_mips_gcc.h',
1322         '../../src/base/atomicops_internals_ppc_gcc.h',
1323         '../../src/base/atomicops_internals_tsan.h',
1324         '../../src/base/atomicops_internals_x86_gcc.cc',
1325         '../../src/base/atomicops_internals_x86_gcc.h',
1326         '../../src/base/atomicops_internals_x86_msvc.h',
1327         '../../src/base/bits.cc',
1328         '../../src/base/bits.h',
1329         '../../src/base/build_config.h',
1330         '../../src/base/compiler-specific.h',
1331         '../../src/base/cpu.cc',
1332         '../../src/base/cpu.h',
1333         '../../src/base/division-by-constant.cc',
1334         '../../src/base/division-by-constant.h',
1335         '../../src/base/flags.h',
1336         '../../src/base/functional.cc',
1337         '../../src/base/functional.h',
1338         '../../src/base/iterator.h',
1339         '../../src/base/lazy-instance.h',
1340         '../../src/base/logging.cc',
1341         '../../src/base/logging.h',
1342         '../../src/base/macros.h',
1343         '../../src/base/once.cc',
1344         '../../src/base/once.h',
1345         '../../src/base/platform/elapsed-timer.h',
1346         '../../src/base/platform/time.cc',
1347         '../../src/base/platform/time.h',
1348         '../../src/base/platform/condition-variable.cc',
1349         '../../src/base/platform/condition-variable.h',
1350         '../../src/base/platform/mutex.cc',
1351         '../../src/base/platform/mutex.h',
1352         '../../src/base/platform/platform.h',
1353         '../../src/base/platform/semaphore.cc',
1354         '../../src/base/platform/semaphore.h',
1355         '../../src/base/safe_conversions.h',
1356         '../../src/base/safe_conversions_impl.h',
1357         '../../src/base/safe_math.h',
1358         '../../src/base/safe_math_impl.h',
1359         '../../src/base/sys-info.cc',
1360         '../../src/base/sys-info.h',
1361         '../../src/base/utils/random-number-generator.cc',
1362         '../../src/base/utils/random-number-generator.h',
1363       ],
1364       'conditions': [
1365         ['want_separate_host_toolset==1', {
1366           'toolsets': ['host', 'target'],
1367         }, {
1368           'toolsets': ['target'],
1369         }],
1370         ['OS=="linux"', {
1371             'conditions': [
1372               ['nacl_target_arch=="none"', {
1373                 'link_settings': {
1374                   'libraries': [
1375                     '-ldl',
1376                     '-lrt'
1377                   ],
1378                 },
1379               }, {
1380                 'defines': [
1381                   'V8_LIBRT_NOT_AVAILABLE=1',
1382                 ],
1383               }],
1384             ],
1385             'sources': [
1386               '../../src/base/platform/platform-linux.cc',
1387               '../../src/base/platform/platform-posix.cc'
1388             ],
1389           }
1390         ],
1391         ['OS=="android"', {
1392             'sources': [
1393               '../../src/base/platform/platform-posix.cc'
1394             ],
1395             'link_settings': {
1396               'libraries': [
1397                 '-ldl'
1398               ]
1399             },
1400             'conditions': [
1401               ['host_os=="mac"', {
1402                 'target_conditions': [
1403                   ['_toolset=="host"', {
1404                     'sources': [
1405                       '../../src/base/platform/platform-macos.cc'
1406                     ]
1407                   }, {
1408                     'sources': [
1409                       '../../src/base/platform/platform-linux.cc'
1410                     ]
1411                   }],
1412                 ],
1413               }, {
1414                 # TODO(bmeurer): What we really want here, is this:
1415                 #
1416                 # 'link_settings': {
1417                 #   'target_conditions': [
1418                 #     ['_toolset=="host"', {
1419                 #       'libraries': [
1420                 #         '-lrt'
1421                 #       ]
1422                 #     }]
1423                 #   ]
1424                 # },
1425                 #
1426                 # but we can't do this right now, as the AOSP does not support
1427                 # linking against the host librt, so we need to work around this
1428                 # for now, using the following hack (see platform/time.cc):
1429                 'target_conditions': [
1430                   ['_toolset=="host"', {
1431                     'defines': [
1432                       'V8_LIBRT_NOT_AVAILABLE=1',
1433                     ],
1434                   }],
1435                 ],
1436                 'sources': [
1437                   '../../src/base/platform/platform-linux.cc'
1438                 ]
1439               }],
1440             ],
1441           },
1442         ],
1443         ['OS=="qnx"', {
1444             'link_settings': {
1445               'target_conditions': [
1446                 ['_toolset=="host" and host_os=="linux"', {
1447                   'libraries': [
1448                     '-lrt'
1449                   ],
1450                 }],
1451                 ['_toolset=="target"', {
1452                   'libraries': [
1453                     '-lbacktrace'
1454                   ],
1455                 }],
1456               ],
1457             },
1458             'sources': [
1459               '../../src/base/platform/platform-posix.cc',
1460               '../../src/base/qnx-math.h',
1461             ],
1462             'target_conditions': [
1463               ['_toolset=="host" and host_os=="linux"', {
1464                 'sources': [
1465                   '../../src/base/platform/platform-linux.cc'
1466                 ],
1467               }],
1468               ['_toolset=="host" and host_os=="mac"', {
1469                 'sources': [
1470                   '../../src/base/platform/platform-macos.cc'
1471                 ],
1472               }],
1473               ['_toolset=="target"', {
1474                 'sources': [
1475                   '../../src/base/platform/platform-qnx.cc'
1476                 ],
1477               }],
1478             ],
1479           },
1480         ],
1481         ['OS=="freebsd"', {
1482             'link_settings': {
1483               'libraries': [
1484                 '-L/usr/local/lib -lexecinfo',
1485             ]},
1486             'sources': [
1487               '../../src/base/platform/platform-freebsd.cc',
1488               '../../src/base/platform/platform-posix.cc'
1489             ],
1490           }
1491         ],
1492         ['OS=="openbsd"', {
1493             'link_settings': {
1494               'libraries': [
1495                 '-L/usr/local/lib -lexecinfo',
1496             ]},
1497             'sources': [
1498               '../../src/base/platform/platform-openbsd.cc',
1499               '../../src/base/platform/platform-posix.cc'
1500             ],
1501           }
1502         ],
1503         ['OS=="netbsd"', {
1504             'link_settings': {
1505               'libraries': [
1506                 '-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -lexecinfo',
1507             ]},
1508             'sources': [
1509               '../../src/base/platform/platform-openbsd.cc',
1510               '../../src/base/platform/platform-posix.cc'
1511             ],
1512           }
1513         ],
1514         ['OS=="aix"', {
1515           'sources': [
1516             '../../src/base/platform/platform-aix.cc',
1517             '../../src/base/platform/platform-posix.cc'
1518           ]},
1519         ],
1520         ['OS=="solaris"', {
1521             'link_settings': {
1522               'libraries': [
1523                 '-lnsl -lrt',
1524             ]},
1525             'sources': [
1526               '../../src/base/platform/platform-solaris.cc',
1527               '../../src/base/platform/platform-posix.cc'
1528             ],
1529           }
1530         ],
1531         ['OS=="mac"', {
1532           'sources': [
1533             '../../src/base/platform/platform-macos.cc',
1534             '../../src/base/platform/platform-posix.cc'
1535           ]},
1536         ],
1537         ['OS=="win"', {
1538           'defines': [
1539             '_CRT_RAND_S'  # for rand_s()
1540           ],
1541           'variables': {
1542             'gyp_generators': '<!(echo $GYP_GENERATORS)',
1543           },
1544           'conditions': [
1545             ['gyp_generators=="make"', {
1546               'variables': {
1547                 'build_env': '<!(uname -o)',
1548               },
1549               'conditions': [
1550                 ['build_env=="Cygwin"', {
1551                   'sources': [
1552                     '../../src/base/platform/platform-cygwin.cc',
1553                     '../../src/base/platform/platform-posix.cc'
1554                   ],
1555                 }, {
1556                   'sources': [
1557                     '../../src/base/platform/platform-win32.cc',
1558                     '../../src/base/win32-headers.h',
1559                   ],
1560                 }],
1561               ],
1562               'link_settings':  {
1563                 'libraries': [ '-lwinmm', '-lws2_32' ],
1564               },
1565             }, {
1566               'sources': [
1567                 '../../src/base/platform/platform-win32.cc',
1568                 '../../src/base/win32-headers.h',
1569               ],
1570               'msvs_disabled_warnings': [4351, 4355, 4800],
1571               'link_settings':  {
1572                 'libraries': [ '-lwinmm.lib', '-lws2_32.lib' ],
1573               },
1574             }],
1575           ],
1576         }],
1577       ],
1578     },
1579     {
1580       'target_name': 'v8_libplatform',
1581       'type': 'static_library',
1582       'variables': {
1583         'optimize': 'max',
1584       },
1585       'dependencies': [
1586         'v8_libbase',
1587       ],
1588       'include_dirs+': [
1589         '../..',
1590       ],
1591       'sources': [
1592         '../../include/libplatform/libplatform.h',
1593         '../../src/libplatform/default-platform.cc',
1594         '../../src/libplatform/default-platform.h',
1595         '../../src/libplatform/task-queue.cc',
1596         '../../src/libplatform/task-queue.h',
1597         '../../src/libplatform/worker-thread.cc',
1598         '../../src/libplatform/worker-thread.h',
1599       ],
1600       'conditions': [
1601         ['want_separate_host_toolset==1', {
1602           'toolsets': ['host', 'target'],
1603         }, {
1604           'toolsets': ['target'],
1605         }],
1606       ],
1607     },
1608     {
1609       'target_name': 'natives_blob',
1610       'type': 'none',
1611       'conditions': [
1612         [ 'v8_use_external_startup_data==1', {
1613           'conditions': [
1614             ['want_separate_host_toolset==1', {
1615               'dependencies': ['js2c#host'],
1616             }, {
1617               'dependencies': ['js2c'],
1618             }],
1619           ],
1620           'actions': [{
1621             'action_name': 'concatenate_natives_blob',
1622             'inputs': [
1623               '../../tools/concatenate-files.py',
1624               '<(SHARED_INTERMEDIATE_DIR)/libraries.bin',
1625               '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental.bin',
1626             ],
1627             'conditions': [
1628               ['want_separate_host_toolset==1', {
1629                 'target_conditions': [
1630                   ['_toolset=="host"', {
1631                     'outputs': [
1632                       '<(PRODUCT_DIR)/natives_blob_host.bin',
1633                     ],
1634                     'action': [
1635                       'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_host.bin'
1636                     ],
1637                   }, {
1638                     'outputs': [
1639                       '<(PRODUCT_DIR)/natives_blob.bin',
1640                     ],
1641                     'action': [
1642                       'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin'
1643                     ],
1644                   }],
1645                 ],
1646               }, {
1647                 'outputs': [
1648                   '<(PRODUCT_DIR)/natives_blob.bin',
1649                 ],
1650                 'action': [
1651                   'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin'
1652                 ],
1653               }],
1654             ],
1655           }],
1656         }],
1657         ['want_separate_host_toolset==1', {
1658           'toolsets': ['host', 'target'],
1659         }, {
1660           'toolsets': ['target'],
1661         }],
1662       ]
1663     },
1664     {
1665       'target_name': 'js2c',
1666       'type': 'none',
1667       'conditions': [
1668         ['want_separate_host_toolset==1', {
1669           'toolsets': ['host'],
1670         }, {
1671           'toolsets': ['target'],
1672         }],
1673         ['v8_enable_i18n_support==1', {
1674           'variables': {
1675             'i18n_library_files': [
1676               '../../src/i18n.js',
1677             ],
1678           },
1679         }, {
1680           'variables': {
1681             'i18n_library_files': [],
1682           },
1683         }],
1684       ],
1685       'variables': {
1686         'library_files': [
1687           '../../src/runtime.js',
1688           '../../src/v8natives.js',
1689           '../../src/symbol.js',
1690           '../../src/array.js',
1691           '../../src/string.js',
1692           '../../src/uri.js',
1693           '../../src/math.js',
1694           '../../src/third_party/fdlibm/fdlibm.js',
1695           '../../src/date.js',
1696           '../../src/regexp.js',
1697           '../../src/arraybuffer.js',
1698           '../../src/typedarray.js',
1699           '../../src/generator.js',
1700           '../../src/object-observe.js',
1701           '../../src/collection.js',
1702           '../../src/weak-collection.js',
1703           '../../src/collection-iterator.js',
1704           '../../src/promise.js',
1705           '../../src/messages.js',
1706           '../../src/json.js',
1707           '../../src/array-iterator.js',
1708           '../../src/string-iterator.js',
1709           '../../src/debug-debugger.js',
1710           '../../src/mirror-debugger.js',
1711           '../../src/liveedit-debugger.js',
1712           '../../src/templates.js',
1713           '../../src/macros.py',
1714         ],
1715         'experimental_library_files': [
1716           '../../src/macros.py',
1717           '../../src/proxy.js',
1718           '../../src/generator.js',
1719           '../../src/harmony-array.js',
1720           '../../src/harmony-array-includes.js',
1721           '../../src/harmony-tostring.js',
1722           '../../src/harmony-typedarray.js',
1723           '../../src/harmony-regexp.js',
1724           '../../src/harmony-reflect.js'
1725         ],
1726         'libraries_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries.bin',
1727         'libraries_experimental_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental.bin',
1728       },
1729       'actions': [
1730         {
1731           'action_name': 'js2c',
1732           'inputs': [
1733             '../../tools/js2c.py',
1734             '<@(library_files)',
1735             '<@(i18n_library_files)',
1736           ],
1737           'outputs': [
1738             '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
1739           ],
1740           'action': [
1741             'python',
1742             '../../tools/js2c.py',
1743             '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
1744             'CORE',
1745             '<@(library_files)',
1746             '<@(i18n_library_files)',
1747           ],
1748           'conditions': [
1749             [ 'v8_use_external_startup_data==1', {
1750               'outputs': ['<@(libraries_bin_file)'],
1751               'action': [
1752                 '--startup_blob', '<@(libraries_bin_file)',
1753               ],
1754             }],
1755           ],
1756         },
1757         {
1758           'action_name': 'js2c_experimental',
1759           'inputs': [
1760             '../../tools/js2c.py',
1761             '<@(experimental_library_files)',
1762           ],
1763           'outputs': [
1764             '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
1765           ],
1766           'action': [
1767             'python',
1768             '../../tools/js2c.py',
1769             '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
1770             'EXPERIMENTAL',
1771             '<@(experimental_library_files)'
1772           ],
1773           'conditions': [
1774             [ 'v8_use_external_startup_data==1', {
1775               'outputs': ['<@(libraries_experimental_bin_file)'],
1776               'action': [
1777                 '--startup_blob', '<@(libraries_experimental_bin_file)'
1778               ],
1779             }],
1780           ],
1781         },
1782       ],
1783     },
1784     {
1785       'target_name': 'postmortem-metadata',
1786       'type': 'none',
1787       'variables': {
1788         'heapobject_files': [
1789             '../../src/objects.h',
1790             '../../src/objects-inl.h',
1791         ],
1792       },
1793       'actions': [
1794           {
1795             'action_name': 'gen-postmortem-metadata',
1796             'inputs': [
1797               '../../tools/gen-postmortem-metadata.py',
1798               '<@(heapobject_files)',
1799             ],
1800             'outputs': [
1801               '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
1802             ],
1803             'action': [
1804               'python',
1805               '../../tools/gen-postmortem-metadata.py',
1806               '<@(_outputs)',
1807               '<@(heapobject_files)'
1808             ]
1809           }
1810         ]
1811     },
1812     {
1813       'target_name': 'mksnapshot',
1814       'type': 'executable',
1815       'dependencies': ['v8_base', 'v8_nosnapshot', 'v8_libplatform'],
1816       'include_dirs+': [
1817         '../..',
1818       ],
1819       'sources': [
1820         '../../src/snapshot/mksnapshot.cc',
1821       ],
1822       'conditions': [
1823         ['v8_enable_i18n_support==1', {
1824           'dependencies': [
1825             '<(icu_gyp_path):icui18n',
1826             '<(icu_gyp_path):icuuc',
1827           ]
1828         }],
1829         ['want_separate_host_toolset==1', {
1830           'toolsets': ['host'],
1831         }, {
1832           'toolsets': ['target'],
1833         }],
1834       ],
1835     },
1836   ],
1837 }