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 'v8_code': 1, 31 'v8_random_seed%': 314159265, 32 'v8_vector_stores%': 0, 33 'embed_script%': "", 34 'warmup_script%': "", 35 'v8_extra_library_files%': [], 36 'v8_experimental_extra_library_files%': [], 37 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)', 38 }, 39 'includes': ['../gypfiles/toolchain.gypi', '../gypfiles/features.gypi'], 40 'targets': [ 41 { 42 'target_name': 'v8', 43 'dependencies_traverse': 1, 44 'dependencies': ['v8_maybe_snapshot'], 45 'conditions': [ 46 ['want_separate_host_toolset==1', { 47 'toolsets': ['host', 'target'], 48 }, { 49 'toolsets': ['target'], 50 }], 51 ['component=="shared_library"', { 52 'type': '<(component)', 53 'sources': [ 54 # Note: on non-Windows we still build this file so that gyp 55 # has some sources to link into the component. 56 'v8dll-main.cc', 57 ], 58 'include_dirs': [ 59 '..', 60 ], 61 'defines': [ 62 'V8_SHARED', 63 'BUILDING_V8_SHARED', 64 ], 65 'direct_dependent_settings': { 66 'defines': [ 67 'V8_SHARED', 68 'USING_V8_SHARED', 69 ], 70 }, 71 'target_conditions': [ 72 ['OS=="android" and _toolset=="target"', { 73 'libraries': [ 74 '-llog', 75 ], 76 'include_dirs': [ 77 'src/common/android/include', 78 ], 79 }], 80 ], 81 'conditions': [ 82 ['OS=="mac"', { 83 'xcode_settings': { 84 'OTHER_LDFLAGS': ['-dynamiclib', '-all_load'] 85 }, 86 }], 87 ['soname_version!=""', { 88 'product_extension': 'so.<(soname_version)', 89 }], 90 ], 91 }, 92 { 93 'type': 'none', 94 }], 95 ], 96 'direct_dependent_settings': { 97 'include_dirs': [ 98 '../include', 99 ], 100 }, 101 }, 102 { 103 # This rule delegates to either v8_snapshot, v8_nosnapshot, or 104 # v8_external_snapshot, depending on the current variables. 105 # The intention is to make the 'calling' rules a bit simpler. 106 'target_name': 'v8_maybe_snapshot', 107 'type': 'none', 108 'conditions': [ 109 ['v8_use_snapshot!="true"', { 110 # The dependency on v8_base should come from a transitive 111 # dependency however the Android toolchain requires libv8_base.a 112 # to appear before libv8_snapshot.a so it's listed explicitly. 113 'dependencies': ['v8_base', 'v8_nosnapshot'], 114 }], 115 ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', { 116 # The dependency on v8_base should come from a transitive 117 # dependency however the Android toolchain requires libv8_base.a 118 # to appear before libv8_snapshot.a so it's listed explicitly. 119 'dependencies': ['v8_base', 'v8_snapshot'], 120 }], 121 ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_separate_host_toolset==0', { 122 'dependencies': ['v8_base', 'v8_external_snapshot'], 123 'inputs': [ '<(PRODUCT_DIR)/snapshot_blob.bin', ], 124 }], 125 ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_separate_host_toolset==1', { 126 'dependencies': ['v8_base', 'v8_external_snapshot'], 127 'target_conditions': [ 128 ['_toolset=="host"', { 129 'inputs': [ 130 '<(PRODUCT_DIR)/snapshot_blob_host.bin', 131 ], 132 }, { 133 'inputs': [ 134 '<(PRODUCT_DIR)/snapshot_blob.bin', 135 ], 136 }], 137 ], 138 }], 139 ['want_separate_host_toolset==1', { 140 'toolsets': ['host', 'target'], 141 }, { 142 'toolsets': ['target'], 143 }], 144 ] 145 }, 146 { 147 'target_name': 'v8_snapshot', 148 'type': 'static_library', 149 'conditions': [ 150 ['want_separate_host_toolset==1', { 151 'toolsets': ['host', 'target'], 152 'dependencies': [ 153 'mksnapshot#host', 154 'js2c#host', 155 ], 156 }, { 157 'toolsets': ['target'], 158 'dependencies': [ 159 'mksnapshot', 160 'js2c', 161 ], 162 }], 163 ['component=="shared_library"', { 164 'defines': [ 165 'V8_SHARED', 166 'BUILDING_V8_SHARED', 167 ], 168 'direct_dependent_settings': { 169 'defines': [ 170 'V8_SHARED', 171 'USING_V8_SHARED', 172 ], 173 }, 174 }], 175 ], 176 'dependencies': [ 177 'v8_base', 178 ], 179 'include_dirs+': [ 180 '..', 181 ], 182 'sources': [ 183 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', 184 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', 185 '<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc', 186 '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries.cc', 187 '<(INTERMEDIATE_DIR)/snapshot.cc', 188 ], 189 'actions': [ 190 { 191 'action_name': 'run_mksnapshot', 192 'inputs': [ 193 '<(mksnapshot_exec)', 194 ], 195 'conditions': [ 196 ['embed_script!=""', { 197 'inputs': [ 198 '<(embed_script)', 199 ], 200 }], 201 ['warmup_script!=""', { 202 'inputs': [ 203 '<(warmup_script)', 204 ], 205 }], 206 ], 207 'outputs': [ 208 '<(INTERMEDIATE_DIR)/snapshot.cc', 209 ], 210 'variables': { 211 'mksnapshot_flags': [], 212 'conditions': [ 213 ['v8_random_seed!=0', { 214 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'], 215 }], 216 ['v8_vector_stores!=0', { 217 'mksnapshot_flags': ['--vector-stores'], 218 }], 219 ], 220 }, 221 'action': [ 222 '<(mksnapshot_exec)', 223 '<@(mksnapshot_flags)', 224 '--startup_src', '<@(INTERMEDIATE_DIR)/snapshot.cc', 225 '<(embed_script)', 226 '<(warmup_script)', 227 ], 228 }, 229 ], 230 }, 231 { 232 'target_name': 'v8_nosnapshot', 233 'type': 'static_library', 234 'dependencies': [ 235 'v8_base', 236 ], 237 'include_dirs+': [ 238 '..', 239 ], 240 'sources': [ 241 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', 242 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', 243 '<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc', 244 '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries.cc', 245 'snapshot/snapshot-empty.cc', 246 ], 247 'conditions': [ 248 ['want_separate_host_toolset==1', { 249 'toolsets': ['host', 'target'], 250 'dependencies': ['js2c#host'], 251 }, { 252 'toolsets': ['target'], 253 'dependencies': ['js2c'], 254 }], 255 ['component=="shared_library"', { 256 'defines': [ 257 'BUILDING_V8_SHARED', 258 'V8_SHARED', 259 ], 260 }], 261 ] 262 }, 263 { 264 'target_name': 'v8_external_snapshot', 265 'type': 'static_library', 266 'conditions': [ 267 [ 'v8_use_external_startup_data==1', { 268 'conditions': [ 269 ['want_separate_host_toolset==1', { 270 'toolsets': ['host', 'target'], 271 'dependencies': [ 272 'mksnapshot#host', 273 'js2c#host', 274 'natives_blob', 275 ]}, { 276 'toolsets': ['target'], 277 'dependencies': [ 278 'mksnapshot', 279 'js2c', 280 'natives_blob', 281 ], 282 }], 283 ['component=="shared_library"', { 284 'defines': [ 285 'V8_SHARED', 286 'BUILDING_V8_SHARED', 287 ], 288 'direct_dependent_settings': { 289 'defines': [ 290 'V8_SHARED', 291 'USING_V8_SHARED', 292 ], 293 }, 294 }], 295 ], 296 'dependencies': [ 297 'v8_base', 298 ], 299 'include_dirs+': [ 300 '..', 301 ], 302 'sources': [ 303 'snapshot/natives-external.cc', 304 'snapshot/snapshot-external.cc', 305 ], 306 'actions': [ 307 { 308 'action_name': 'run_mksnapshot (external)', 309 'inputs': [ 310 '<(mksnapshot_exec)', 311 ], 312 'variables': { 313 'mksnapshot_flags': [], 314 'conditions': [ 315 ['v8_random_seed!=0', { 316 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'], 317 }], 318 ['v8_vector_stores!=0', { 319 'mksnapshot_flags': ['--vector-stores'], 320 }], 321 ], 322 }, 323 'conditions': [ 324 ['embed_script!=""', { 325 'inputs': [ 326 '<(embed_script)', 327 ], 328 }], 329 ['warmup_script!=""', { 330 'inputs': [ 331 '<(warmup_script)', 332 ], 333 }], 334 ['want_separate_host_toolset==1', { 335 'target_conditions': [ 336 ['_toolset=="host"', { 337 'outputs': [ 338 '<(PRODUCT_DIR)/snapshot_blob_host.bin', 339 ], 340 'action': [ 341 '<(mksnapshot_exec)', 342 '<@(mksnapshot_flags)', 343 '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_host.bin', 344 '<(embed_script)', 345 '<(warmup_script)', 346 ], 347 }, { 348 'outputs': [ 349 '<(PRODUCT_DIR)/snapshot_blob.bin', 350 ], 351 'action': [ 352 '<(mksnapshot_exec)', 353 '<@(mksnapshot_flags)', 354 '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob.bin', 355 '<(embed_script)', 356 '<(warmup_script)', 357 ], 358 }], 359 ], 360 }, { 361 'outputs': [ 362 '<(PRODUCT_DIR)/snapshot_blob.bin', 363 ], 364 'action': [ 365 '<(mksnapshot_exec)', 366 '<@(mksnapshot_flags)', 367 '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob.bin', 368 '<(embed_script)', 369 '<(warmup_script)', 370 ], 371 }], 372 ], 373 }, 374 ], 375 }], 376 ], 377 }, 378 { 379 'target_name': 'v8_base', 380 'type': 'static_library', 381 'dependencies': [ 382 'v8_libbase', 383 'v8_libsampler', 384 ], 385 'variables': { 386 'optimize': 'max', 387 }, 388 'include_dirs+': [ 389 '..', 390 '<(DEPTH)', 391 ], 392 'sources': [ ### gcmole(all) ### 393 '../include/v8-debug.h', 394 '../include/v8-experimental.h', 395 '../include/v8-platform.h', 396 '../include/v8-profiler.h', 397 '../include/v8-testing.h', 398 '../include/v8-util.h', 399 '../include/v8-version.h', 400 '../include/v8.h', 401 '../include/v8config.h', 402 'accessors.cc', 403 'accessors.h', 404 'address-map.cc', 405 'address-map.h', 406 'allocation.cc', 407 'allocation.h', 408 'allocation-site-scopes.cc', 409 'allocation-site-scopes.h', 410 'api-experimental.cc', 411 'api-experimental.h', 412 'api.cc', 413 'api.h', 414 'api-arguments-inl.h', 415 'api-arguments.cc', 416 'api-arguments.h', 417 'api-natives.cc', 418 'api-natives.h', 419 'arguments.cc', 420 'arguments.h', 421 'assembler.cc', 422 'assembler.h', 423 'assert-scope.h', 424 'assert-scope.cc', 425 'ast/ast-expression-rewriter.cc', 426 'ast/ast-expression-rewriter.h', 427 'ast/ast-expression-visitor.cc', 428 'ast/ast-expression-visitor.h', 429 'ast/ast-literal-reindexer.cc', 430 'ast/ast-literal-reindexer.h', 431 'ast/ast-numbering.cc', 432 'ast/ast-numbering.h', 433 'ast/ast-type-bounds.h', 434 'ast/ast-value-factory.cc', 435 'ast/ast-value-factory.h', 436 'ast/ast.cc', 437 'ast/ast.h', 438 'ast/modules.cc', 439 'ast/modules.h', 440 'ast/prettyprinter.cc', 441 'ast/prettyprinter.h', 442 'ast/scopeinfo.cc', 443 'ast/scopeinfo.h', 444 'ast/scopes.cc', 445 'ast/scopes.h', 446 'ast/variables.cc', 447 'ast/variables.h', 448 'background-parsing-task.cc', 449 'background-parsing-task.h', 450 'bailout-reason.cc', 451 'bailout-reason.h', 452 'basic-block-profiler.cc', 453 'basic-block-profiler.h', 454 'bignum-dtoa.cc', 455 'bignum-dtoa.h', 456 'bignum.cc', 457 'bignum.h', 458 'bit-vector.cc', 459 'bit-vector.h', 460 'bootstrapper.cc', 461 'bootstrapper.h', 462 'builtins.cc', 463 'builtins.h', 464 'cached-powers.cc', 465 'cached-powers.h', 466 'cancelable-task.cc', 467 'cancelable-task.h', 468 'char-predicates.cc', 469 'char-predicates-inl.h', 470 'char-predicates.h', 471 'checks.h', 472 'code-events.h', 473 'code-factory.cc', 474 'code-factory.h', 475 'code-stub-assembler.cc', 476 'code-stub-assembler.h', 477 'code-stubs.cc', 478 'code-stubs.h', 479 'code-stubs-hydrogen.cc', 480 'codegen.cc', 481 'codegen.h', 482 'collector.h', 483 'compilation-cache.cc', 484 'compilation-cache.h', 485 'compilation-dependencies.cc', 486 'compilation-dependencies.h', 487 'compilation-statistics.cc', 488 'compilation-statistics.h', 489 'compiler/access-builder.cc', 490 'compiler/access-builder.h', 491 'compiler/access-info.cc', 492 'compiler/access-info.h', 493 'compiler/all-nodes.cc', 494 'compiler/all-nodes.h', 495 'compiler/ast-graph-builder.cc', 496 'compiler/ast-graph-builder.h', 497 'compiler/ast-loop-assignment-analyzer.cc', 498 'compiler/ast-loop-assignment-analyzer.h', 499 'compiler/basic-block-instrumentor.cc', 500 'compiler/basic-block-instrumentor.h', 501 'compiler/branch-elimination.cc', 502 'compiler/branch-elimination.h', 503 'compiler/bytecode-branch-analysis.cc', 504 'compiler/bytecode-branch-analysis.h', 505 'compiler/bytecode-graph-builder.cc', 506 'compiler/bytecode-graph-builder.h', 507 'compiler/c-linkage.cc', 508 'compiler/checkpoint-elimination.cc', 509 'compiler/checkpoint-elimination.h', 510 'compiler/code-generator-impl.h', 511 'compiler/code-generator.cc', 512 'compiler/code-generator.h', 513 'compiler/code-assembler.cc', 514 'compiler/code-assembler.h', 515 'compiler/common-node-cache.cc', 516 'compiler/common-node-cache.h', 517 'compiler/common-operator-reducer.cc', 518 'compiler/common-operator-reducer.h', 519 'compiler/common-operator.cc', 520 'compiler/common-operator.h', 521 'compiler/control-builders.cc', 522 'compiler/control-builders.h', 523 'compiler/control-equivalence.cc', 524 'compiler/control-equivalence.h', 525 'compiler/control-flow-optimizer.cc', 526 'compiler/control-flow-optimizer.h', 527 'compiler/dead-code-elimination.cc', 528 'compiler/dead-code-elimination.h', 529 'compiler/diamond.h', 530 'compiler/effect-control-linearizer.cc', 531 'compiler/effect-control-linearizer.h', 532 'compiler/escape-analysis.cc', 533 'compiler/escape-analysis.h', 534 "compiler/escape-analysis-reducer.cc", 535 "compiler/escape-analysis-reducer.h", 536 'compiler/frame.cc', 537 'compiler/frame.h', 538 'compiler/frame-elider.cc', 539 'compiler/frame-elider.h', 540 "compiler/frame-states.cc", 541 "compiler/frame-states.h", 542 'compiler/gap-resolver.cc', 543 'compiler/gap-resolver.h', 544 'compiler/graph-reducer.cc', 545 'compiler/graph-reducer.h', 546 'compiler/graph-replay.cc', 547 'compiler/graph-replay.h', 548 'compiler/graph-trimmer.cc', 549 'compiler/graph-trimmer.h', 550 'compiler/graph-visualizer.cc', 551 'compiler/graph-visualizer.h', 552 'compiler/graph.cc', 553 'compiler/graph.h', 554 'compiler/instruction-codes.h', 555 'compiler/instruction-selector-impl.h', 556 'compiler/instruction-selector.cc', 557 'compiler/instruction-selector.h', 558 'compiler/instruction-scheduler.cc', 559 'compiler/instruction-scheduler.h', 560 'compiler/instruction.cc', 561 'compiler/instruction.h', 562 'compiler/int64-lowering.cc', 563 'compiler/int64-lowering.h', 564 'compiler/js-builtin-reducer.cc', 565 'compiler/js-builtin-reducer.h', 566 'compiler/js-call-reducer.cc', 567 'compiler/js-call-reducer.h', 568 'compiler/js-context-specialization.cc', 569 'compiler/js-context-specialization.h', 570 'compiler/js-create-lowering.cc', 571 'compiler/js-create-lowering.h', 572 'compiler/js-frame-specialization.cc', 573 'compiler/js-frame-specialization.h', 574 'compiler/js-generic-lowering.cc', 575 'compiler/js-generic-lowering.h', 576 'compiler/js-global-object-specialization.cc', 577 'compiler/js-global-object-specialization.h', 578 'compiler/js-graph.cc', 579 'compiler/js-graph.h', 580 'compiler/js-inlining.cc', 581 'compiler/js-inlining.h', 582 'compiler/js-inlining-heuristic.cc', 583 'compiler/js-inlining-heuristic.h', 584 'compiler/js-intrinsic-lowering.cc', 585 'compiler/js-intrinsic-lowering.h', 586 'compiler/js-native-context-specialization.cc', 587 'compiler/js-native-context-specialization.h', 588 'compiler/js-operator.cc', 589 'compiler/js-operator.h', 590 'compiler/js-typed-lowering.cc', 591 'compiler/js-typed-lowering.h', 592 'compiler/jump-threading.cc', 593 'compiler/jump-threading.h', 594 'compiler/linkage.cc', 595 'compiler/linkage.h', 596 'compiler/liveness-analyzer.cc', 597 'compiler/liveness-analyzer.h', 598 'compiler/live-range-separator.cc', 599 'compiler/live-range-separator.h', 600 'compiler/load-elimination.cc', 601 'compiler/load-elimination.h', 602 'compiler/loop-analysis.cc', 603 'compiler/loop-analysis.h', 604 'compiler/loop-peeling.cc', 605 'compiler/loop-peeling.h', 606 'compiler/machine-operator-reducer.cc', 607 'compiler/machine-operator-reducer.h', 608 'compiler/machine-operator.cc', 609 'compiler/machine-operator.h', 610 'compiler/memory-optimizer.cc', 611 'compiler/memory-optimizer.h', 612 'compiler/move-optimizer.cc', 613 'compiler/move-optimizer.h', 614 'compiler/node-aux-data.h', 615 'compiler/node-cache.cc', 616 'compiler/node-cache.h', 617 'compiler/node-marker.cc', 618 'compiler/node-marker.h', 619 'compiler/node-matchers.cc', 620 'compiler/node-matchers.h', 621 'compiler/node-properties.cc', 622 'compiler/node-properties.h', 623 'compiler/node.cc', 624 'compiler/node.h', 625 'compiler/opcodes.cc', 626 'compiler/opcodes.h', 627 'compiler/operation-typer.cc', 628 'compiler/operation-typer.h', 629 'compiler/operator-properties.cc', 630 'compiler/operator-properties.h', 631 'compiler/operator.cc', 632 'compiler/operator.h', 633 'compiler/osr.cc', 634 'compiler/osr.h', 635 'compiler/pipeline.cc', 636 'compiler/pipeline.h', 637 'compiler/pipeline-statistics.cc', 638 'compiler/pipeline-statistics.h', 639 'compiler/raw-machine-assembler.cc', 640 'compiler/raw-machine-assembler.h', 641 'compiler/redundancy-elimination.cc', 642 'compiler/redundancy-elimination.h', 643 'compiler/register-allocator.cc', 644 'compiler/register-allocator.h', 645 'compiler/register-allocator-verifier.cc', 646 'compiler/register-allocator-verifier.h', 647 'compiler/representation-change.cc', 648 'compiler/representation-change.h', 649 'compiler/schedule.cc', 650 'compiler/schedule.h', 651 'compiler/scheduler.cc', 652 'compiler/scheduler.h', 653 'compiler/select-lowering.cc', 654 'compiler/select-lowering.h', 655 'compiler/simplified-lowering.cc', 656 'compiler/simplified-lowering.h', 657 'compiler/simplified-operator-reducer.cc', 658 'compiler/simplified-operator-reducer.h', 659 'compiler/simplified-operator.cc', 660 'compiler/simplified-operator.h', 661 'compiler/source-position.cc', 662 'compiler/source-position.h', 663 'compiler/state-values-utils.cc', 664 'compiler/state-values-utils.h', 665 'compiler/store-store-elimination.cc', 666 'compiler/store-store-elimination.h', 667 'compiler/tail-call-optimization.cc', 668 'compiler/tail-call-optimization.h', 669 'compiler/type-hint-analyzer.cc', 670 'compiler/type-hint-analyzer.h', 671 'compiler/type-hints.cc', 672 'compiler/type-hints.h', 673 'compiler/typer.cc', 674 'compiler/typer.h', 675 'compiler/value-numbering-reducer.cc', 676 'compiler/value-numbering-reducer.h', 677 'compiler/verifier.cc', 678 'compiler/verifier.h', 679 'compiler/wasm-compiler.cc', 680 'compiler/wasm-compiler.h', 681 'compiler/wasm-linkage.cc', 682 'compiler/zone-pool.cc', 683 'compiler/zone-pool.h', 684 'compiler.cc', 685 'compiler.h', 686 'context-measure.cc', 687 'context-measure.h', 688 'contexts-inl.h', 689 'contexts.cc', 690 'contexts.h', 691 'conversions-inl.h', 692 'conversions.cc', 693 'conversions.h', 694 'counters-inl.h', 695 'counters.cc', 696 'counters.h', 697 'crankshaft/compilation-phase.cc', 698 'crankshaft/compilation-phase.h', 699 'crankshaft/hydrogen-alias-analysis.h', 700 'crankshaft/hydrogen-bce.cc', 701 'crankshaft/hydrogen-bce.h', 702 'crankshaft/hydrogen-canonicalize.cc', 703 'crankshaft/hydrogen-canonicalize.h', 704 'crankshaft/hydrogen-check-elimination.cc', 705 'crankshaft/hydrogen-check-elimination.h', 706 'crankshaft/hydrogen-dce.cc', 707 'crankshaft/hydrogen-dce.h', 708 'crankshaft/hydrogen-dehoist.cc', 709 'crankshaft/hydrogen-dehoist.h', 710 'crankshaft/hydrogen-environment-liveness.cc', 711 'crankshaft/hydrogen-environment-liveness.h', 712 'crankshaft/hydrogen-escape-analysis.cc', 713 'crankshaft/hydrogen-escape-analysis.h', 714 'crankshaft/hydrogen-flow-engine.h', 715 'crankshaft/hydrogen-gvn.cc', 716 'crankshaft/hydrogen-gvn.h', 717 'crankshaft/hydrogen-infer-representation.cc', 718 'crankshaft/hydrogen-infer-representation.h', 719 'crankshaft/hydrogen-infer-types.cc', 720 'crankshaft/hydrogen-infer-types.h', 721 'crankshaft/hydrogen-instructions.cc', 722 'crankshaft/hydrogen-instructions.h', 723 'crankshaft/hydrogen-load-elimination.cc', 724 'crankshaft/hydrogen-load-elimination.h', 725 'crankshaft/hydrogen-mark-deoptimize.cc', 726 'crankshaft/hydrogen-mark-deoptimize.h', 727 'crankshaft/hydrogen-mark-unreachable.cc', 728 'crankshaft/hydrogen-mark-unreachable.h', 729 'crankshaft/hydrogen-osr.cc', 730 'crankshaft/hydrogen-osr.h', 731 'crankshaft/hydrogen-range-analysis.cc', 732 'crankshaft/hydrogen-range-analysis.h', 733 'crankshaft/hydrogen-redundant-phi.cc', 734 'crankshaft/hydrogen-redundant-phi.h', 735 'crankshaft/hydrogen-removable-simulates.cc', 736 'crankshaft/hydrogen-removable-simulates.h', 737 'crankshaft/hydrogen-representation-changes.cc', 738 'crankshaft/hydrogen-representation-changes.h', 739 'crankshaft/hydrogen-sce.cc', 740 'crankshaft/hydrogen-sce.h', 741 'crankshaft/hydrogen-store-elimination.cc', 742 'crankshaft/hydrogen-store-elimination.h', 743 'crankshaft/hydrogen-types.cc', 744 'crankshaft/hydrogen-types.h', 745 'crankshaft/hydrogen-uint32-analysis.cc', 746 'crankshaft/hydrogen-uint32-analysis.h', 747 'crankshaft/hydrogen.cc', 748 'crankshaft/hydrogen.h', 749 'crankshaft/lithium-allocator-inl.h', 750 'crankshaft/lithium-allocator.cc', 751 'crankshaft/lithium-allocator.h', 752 'crankshaft/lithium-codegen.cc', 753 'crankshaft/lithium-codegen.h', 754 'crankshaft/lithium.cc', 755 'crankshaft/lithium.h', 756 'crankshaft/lithium-inl.h', 757 'crankshaft/typing.cc', 758 'crankshaft/typing.h', 759 'crankshaft/unique.h', 760 'date.cc', 761 'date.h', 762 'dateparser-inl.h', 763 'dateparser.cc', 764 'dateparser.h', 765 'debug/debug-evaluate.cc', 766 'debug/debug-evaluate.h', 767 'debug/debug-frames.cc', 768 'debug/debug-frames.h', 769 'debug/debug-scopes.cc', 770 'debug/debug-scopes.h', 771 'debug/debug.cc', 772 'debug/debug.h', 773 'debug/liveedit.cc', 774 'debug/liveedit.h', 775 'deoptimizer.cc', 776 'deoptimizer.h', 777 'disasm.h', 778 'disassembler.cc', 779 'disassembler.h', 780 'diy-fp.cc', 781 'diy-fp.h', 782 'double.h', 783 'dtoa.cc', 784 'dtoa.h', 785 'effects.h', 786 'eh-frame.cc', 787 'eh-frame.h', 788 'elements-kind.cc', 789 'elements-kind.h', 790 'elements.cc', 791 'elements.h', 792 'execution.cc', 793 'execution.h', 794 'extensions/externalize-string-extension.cc', 795 'extensions/externalize-string-extension.h', 796 'extensions/free-buffer-extension.cc', 797 'extensions/free-buffer-extension.h', 798 'extensions/gc-extension.cc', 799 'extensions/gc-extension.h', 800 'extensions/ignition-statistics-extension.cc', 801 'extensions/ignition-statistics-extension.h', 802 'extensions/statistics-extension.cc', 803 'extensions/statistics-extension.h', 804 'extensions/trigger-failure-extension.cc', 805 'extensions/trigger-failure-extension.h', 806 'external-reference-table.cc', 807 'external-reference-table.h', 808 'factory.cc', 809 'factory.h', 810 'fast-accessor-assembler.cc', 811 'fast-accessor-assembler.h', 812 'fast-dtoa.cc', 813 'fast-dtoa.h', 814 'field-index.h', 815 'field-index-inl.h', 816 'field-type.cc', 817 'field-type.h', 818 'fixed-dtoa.cc', 819 'fixed-dtoa.h', 820 'flag-definitions.h', 821 'flags.cc', 822 'flags.h', 823 'frames-inl.h', 824 'frames.cc', 825 'frames.h', 826 'full-codegen/full-codegen.cc', 827 'full-codegen/full-codegen.h', 828 'futex-emulation.cc', 829 'futex-emulation.h', 830 'gdb-jit.cc', 831 'gdb-jit.h', 832 'global-handles.cc', 833 'global-handles.h', 834 'globals.h', 835 'handles-inl.h', 836 'handles.cc', 837 'handles.h', 838 'heap-symbols.h', 839 'heap/array-buffer-tracker-inl.h', 840 'heap/array-buffer-tracker.cc', 841 'heap/array-buffer-tracker.h', 842 'heap/memory-reducer.cc', 843 'heap/memory-reducer.h', 844 'heap/gc-idle-time-handler.cc', 845 'heap/gc-idle-time-handler.h', 846 'heap/gc-tracer.cc', 847 'heap/gc-tracer.h', 848 'heap/heap-inl.h', 849 'heap/heap.cc', 850 'heap/heap.h', 851 'heap/incremental-marking-inl.h', 852 'heap/incremental-marking-job.cc', 853 'heap/incremental-marking-job.h', 854 'heap/incremental-marking.cc', 855 'heap/incremental-marking.h', 856 'heap/mark-compact-inl.h', 857 'heap/mark-compact.cc', 858 'heap/mark-compact.h', 859 'heap/object-stats.cc', 860 'heap/object-stats.h', 861 'heap/objects-visiting-inl.h', 862 'heap/objects-visiting.cc', 863 'heap/objects-visiting.h', 864 'heap/page-parallel-job.h', 865 'heap/remembered-set.cc', 866 'heap/remembered-set.h', 867 'heap/scavenge-job.h', 868 'heap/scavenge-job.cc', 869 'heap/scavenger-inl.h', 870 'heap/scavenger.cc', 871 'heap/scavenger.h', 872 'heap/slot-set.h', 873 'heap/spaces-inl.h', 874 'heap/spaces.cc', 875 'heap/spaces.h', 876 'heap/store-buffer.cc', 877 'heap/store-buffer.h', 878 'i18n.cc', 879 'i18n.h', 880 'icu_util.cc', 881 'icu_util.h', 882 'ic/access-compiler.cc', 883 'ic/access-compiler.h', 884 'ic/call-optimization.cc', 885 'ic/call-optimization.h', 886 'ic/handler-compiler.cc', 887 'ic/handler-compiler.h', 888 'ic/ic-inl.h', 889 'ic/ic-state.cc', 890 'ic/ic-state.h', 891 'ic/ic.cc', 892 'ic/ic.h', 893 'ic/ic-compiler.cc', 894 'ic/ic-compiler.h', 895 'identity-map.cc', 896 'identity-map.h', 897 'interface-descriptors.cc', 898 'interface-descriptors.h', 899 'interpreter/bytecodes.cc', 900 'interpreter/bytecodes.h', 901 'interpreter/bytecode-array-builder.cc', 902 'interpreter/bytecode-array-builder.h', 903 'interpreter/bytecode-array-iterator.cc', 904 'interpreter/bytecode-array-iterator.h', 905 'interpreter/bytecode-array-writer.cc', 906 'interpreter/bytecode-array-writer.h', 907 'interpreter/bytecode-dead-code-optimizer.cc', 908 'interpreter/bytecode-dead-code-optimizer.h', 909 'interpreter/bytecode-label.h', 910 'interpreter/bytecode-generator.cc', 911 'interpreter/bytecode-generator.h', 912 'interpreter/bytecode-peephole-optimizer.cc', 913 'interpreter/bytecode-peephole-optimizer.h', 914 'interpreter/bytecode-pipeline.cc', 915 'interpreter/bytecode-pipeline.h', 916 'interpreter/bytecode-register-allocator.cc', 917 'interpreter/bytecode-register-allocator.h', 918 'interpreter/bytecode-register-optimizer.cc', 919 'interpreter/bytecode-register-optimizer.h', 920 'interpreter/bytecode-traits.h', 921 'interpreter/constant-array-builder.cc', 922 'interpreter/constant-array-builder.h', 923 'interpreter/control-flow-builders.cc', 924 'interpreter/control-flow-builders.h', 925 'interpreter/handler-table-builder.cc', 926 'interpreter/handler-table-builder.h', 927 'interpreter/interpreter.cc', 928 'interpreter/interpreter.h', 929 'interpreter/interpreter-assembler.cc', 930 'interpreter/interpreter-assembler.h', 931 'interpreter/interpreter-intrinsics.cc', 932 'interpreter/interpreter-intrinsics.h', 933 'interpreter/source-position-table.cc', 934 'interpreter/source-position-table.h', 935 'isolate-inl.h', 936 'isolate.cc', 937 'isolate.h', 938 'json-parser.cc', 939 'json-parser.h', 940 'json-stringifier.cc', 941 'json-stringifier.h', 942 'keys.h', 943 'keys.cc', 944 'layout-descriptor-inl.h', 945 'layout-descriptor.cc', 946 'layout-descriptor.h', 947 'list-inl.h', 948 'list.h', 949 'locked-queue-inl.h', 950 'locked-queue.h', 951 'log-inl.h', 952 'log-utils.cc', 953 'log-utils.h', 954 'log.cc', 955 'log.h', 956 'lookup.cc', 957 'lookup.h', 958 'macro-assembler.h', 959 'machine-type.cc', 960 'machine-type.h', 961 'messages.cc', 962 'messages.h', 963 'msan.h', 964 'objects-body-descriptors-inl.h', 965 'objects-body-descriptors.h', 966 'objects-debug.cc', 967 'objects-inl.h', 968 'objects-printer.cc', 969 'objects.cc', 970 'objects.h', 971 'optimizing-compile-dispatcher.cc', 972 'optimizing-compile-dispatcher.h', 973 'ostreams.cc', 974 'ostreams.h', 975 'parsing/expression-classifier.h', 976 'parsing/func-name-inferrer.cc', 977 'parsing/func-name-inferrer.h', 978 'parsing/parameter-initializer-rewriter.cc', 979 'parsing/parameter-initializer-rewriter.h', 980 'parsing/parser-base.h', 981 'parsing/parser.cc', 982 'parsing/parser.h', 983 'parsing/pattern-rewriter.cc', 984 'parsing/preparse-data-format.h', 985 'parsing/preparse-data.cc', 986 'parsing/preparse-data.h', 987 'parsing/preparser.cc', 988 'parsing/preparser.h', 989 'parsing/rewriter.cc', 990 'parsing/rewriter.h', 991 'parsing/scanner-character-streams.cc', 992 'parsing/scanner-character-streams.h', 993 'parsing/scanner.cc', 994 'parsing/scanner.h', 995 'parsing/token.cc', 996 'parsing/token.h', 997 'pending-compilation-error-handler.cc', 998 'pending-compilation-error-handler.h', 999 'perf-jit.cc', 1000 'perf-jit.h', 1001 'profiler/allocation-tracker.cc', 1002 'profiler/allocation-tracker.h', 1003 'profiler/circular-queue-inl.h', 1004 'profiler/circular-queue.h', 1005 'profiler/cpu-profiler-inl.h', 1006 'profiler/cpu-profiler.cc', 1007 'profiler/cpu-profiler.h', 1008 'profiler/heap-profiler.cc', 1009 'profiler/heap-profiler.h', 1010 'profiler/heap-snapshot-generator-inl.h', 1011 'profiler/heap-snapshot-generator.cc', 1012 'profiler/heap-snapshot-generator.h', 1013 'profiler/profiler-listener.cc', 1014 'profiler/profiler-listener.h', 1015 'profiler/profile-generator-inl.h', 1016 'profiler/profile-generator.cc', 1017 'profiler/profile-generator.h', 1018 'profiler/sampling-heap-profiler.cc', 1019 'profiler/sampling-heap-profiler.h', 1020 'profiler/strings-storage.cc', 1021 'profiler/strings-storage.h', 1022 'profiler/tick-sample.cc', 1023 'profiler/tick-sample.h', 1024 'profiler/unbound-queue-inl.h', 1025 'profiler/unbound-queue.h', 1026 'property-descriptor.cc', 1027 'property-descriptor.h', 1028 'property-details.h', 1029 'property.cc', 1030 'property.h', 1031 'prototype.h', 1032 'regexp/bytecodes-irregexp.h', 1033 'regexp/interpreter-irregexp.cc', 1034 'regexp/interpreter-irregexp.h', 1035 'regexp/jsregexp-inl.h', 1036 'regexp/jsregexp.cc', 1037 'regexp/jsregexp.h', 1038 'regexp/regexp-ast.cc', 1039 'regexp/regexp-ast.h', 1040 'regexp/regexp-macro-assembler-irregexp-inl.h', 1041 'regexp/regexp-macro-assembler-irregexp.cc', 1042 'regexp/regexp-macro-assembler-irregexp.h', 1043 'regexp/regexp-macro-assembler-tracer.cc', 1044 'regexp/regexp-macro-assembler-tracer.h', 1045 'regexp/regexp-macro-assembler.cc', 1046 'regexp/regexp-macro-assembler.h', 1047 'regexp/regexp-parser.cc', 1048 'regexp/regexp-parser.h', 1049 'regexp/regexp-stack.cc', 1050 'regexp/regexp-stack.h', 1051 'register-configuration.cc', 1052 'register-configuration.h', 1053 'runtime-profiler.cc', 1054 'runtime-profiler.h', 1055 'runtime/runtime-array.cc', 1056 'runtime/runtime-atomics.cc', 1057 'runtime/runtime-classes.cc', 1058 'runtime/runtime-collections.cc', 1059 'runtime/runtime-compiler.cc', 1060 'runtime/runtime-date.cc', 1061 'runtime/runtime-debug.cc', 1062 'runtime/runtime-forin.cc', 1063 'runtime/runtime-function.cc', 1064 'runtime/runtime-futex.cc', 1065 'runtime/runtime-generator.cc', 1066 'runtime/runtime-i18n.cc', 1067 'runtime/runtime-internal.cc', 1068 'runtime/runtime-interpreter.cc', 1069 'runtime/runtime-literals.cc', 1070 'runtime/runtime-liveedit.cc', 1071 'runtime/runtime-maths.cc', 1072 'runtime/runtime-numbers.cc', 1073 'runtime/runtime-object.cc', 1074 'runtime/runtime-operators.cc', 1075 'runtime/runtime-proxy.cc', 1076 'runtime/runtime-regexp.cc', 1077 'runtime/runtime-scopes.cc', 1078 'runtime/runtime-simd.cc', 1079 'runtime/runtime-strings.cc', 1080 'runtime/runtime-symbol.cc', 1081 'runtime/runtime-test.cc', 1082 'runtime/runtime-typedarray.cc', 1083 'runtime/runtime-utils.h', 1084 'runtime/runtime.cc', 1085 'runtime/runtime.h', 1086 'safepoint-table.cc', 1087 'safepoint-table.h', 1088 'signature.h', 1089 'simulator.h', 1090 'small-pointer-list.h', 1091 'snapshot/code-serializer.cc', 1092 'snapshot/code-serializer.h', 1093 'snapshot/deserializer.cc', 1094 'snapshot/deserializer.h', 1095 'snapshot/natives.h', 1096 'snapshot/natives-common.cc', 1097 'snapshot/partial-serializer.cc', 1098 'snapshot/partial-serializer.h', 1099 'snapshot/serializer.cc', 1100 'snapshot/serializer.h', 1101 'snapshot/serializer-common.cc', 1102 'snapshot/serializer-common.h', 1103 'snapshot/snapshot.h', 1104 'snapshot/snapshot-common.cc', 1105 'snapshot/snapshot-source-sink.cc', 1106 'snapshot/snapshot-source-sink.h', 1107 'snapshot/startup-serializer.cc', 1108 'snapshot/startup-serializer.h', 1109 'source-position.h', 1110 'splay-tree.h', 1111 'splay-tree-inl.h', 1112 'startup-data-util.cc', 1113 'startup-data-util.h', 1114 'string-builder.cc', 1115 'string-builder.h', 1116 'string-search.h', 1117 'string-stream.cc', 1118 'string-stream.h', 1119 'strtod.cc', 1120 'strtod.h', 1121 'ic/stub-cache.cc', 1122 'ic/stub-cache.h', 1123 'tracing/trace-event.cc', 1124 'tracing/trace-event.h', 1125 'transitions-inl.h', 1126 'transitions.cc', 1127 'transitions.h', 1128 'type-cache.cc', 1129 'type-cache.h', 1130 'type-feedback-vector-inl.h', 1131 'type-feedback-vector.cc', 1132 'type-feedback-vector.h', 1133 'type-info.cc', 1134 'type-info.h', 1135 'types.cc', 1136 'types.h', 1137 'typing-asm.cc', 1138 'typing-asm.h', 1139 'unicode-inl.h', 1140 'unicode.cc', 1141 'unicode.h', 1142 'unicode-cache-inl.h', 1143 'unicode-cache.h', 1144 'unicode-decoder.cc', 1145 'unicode-decoder.h', 1146 'uri.cc', 1147 'uri.h', 1148 'utils-inl.h', 1149 'utils.cc', 1150 'utils.h', 1151 'v8.cc', 1152 'v8.h', 1153 'v8memory.h', 1154 'v8threads.cc', 1155 'v8threads.h', 1156 'vector.h', 1157 'version.cc', 1158 'version.h', 1159 'vm-state-inl.h', 1160 'vm-state.h', 1161 'wasm/asm-types.cc', 1162 'wasm/asm-types.h', 1163 'wasm/asm-wasm-builder.cc', 1164 'wasm/asm-wasm-builder.h', 1165 'wasm/ast-decoder.cc', 1166 'wasm/ast-decoder.h', 1167 'wasm/decoder.h', 1168 'wasm/encoder.cc', 1169 'wasm/encoder.h', 1170 'wasm/leb-helper.h', 1171 'wasm/module-decoder.cc', 1172 'wasm/module-decoder.h', 1173 'wasm/switch-logic.h', 1174 'wasm/switch-logic.cc', 1175 'wasm/wasm-debug.cc', 1176 'wasm/wasm-debug.h', 1177 'wasm/wasm-external-refs.cc', 1178 'wasm/wasm-external-refs.h', 1179 'wasm/wasm-function-name-table.cc', 1180 'wasm/wasm-function-name-table.h', 1181 'wasm/wasm-js.cc', 1182 'wasm/wasm-js.h', 1183 'wasm/wasm-macro-gen.h', 1184 'wasm/wasm-module.cc', 1185 'wasm/wasm-module.h', 1186 'wasm/wasm-interpreter.cc', 1187 'wasm/wasm-interpreter.h', 1188 'wasm/wasm-opcodes.cc', 1189 'wasm/wasm-opcodes.h', 1190 'wasm/wasm-result.cc', 1191 'wasm/wasm-result.h', 1192 'zone.cc', 1193 'zone.h', 1194 'zone-allocator.h', 1195 'zone-containers.h', 1196 ], 1197 'conditions': [ 1198 ['want_separate_host_toolset==1', { 1199 'toolsets': ['host', 'target'], 1200 }, { 1201 'toolsets': ['target'], 1202 }], 1203 ['v8_target_arch=="arm"', { 1204 'sources': [ ### gcmole(arch:arm) ### 1205 'arm/assembler-arm-inl.h', 1206 'arm/assembler-arm.cc', 1207 'arm/assembler-arm.h', 1208 'arm/builtins-arm.cc', 1209 'arm/code-stubs-arm.cc', 1210 'arm/code-stubs-arm.h', 1211 'arm/codegen-arm.cc', 1212 'arm/codegen-arm.h', 1213 'arm/constants-arm.h', 1214 'arm/constants-arm.cc', 1215 'arm/cpu-arm.cc', 1216 'arm/deoptimizer-arm.cc', 1217 'arm/disasm-arm.cc', 1218 'arm/frames-arm.cc', 1219 'arm/frames-arm.h', 1220 'arm/interface-descriptors-arm.cc', 1221 'arm/interface-descriptors-arm.h', 1222 'arm/macro-assembler-arm.cc', 1223 'arm/macro-assembler-arm.h', 1224 'arm/simulator-arm.cc', 1225 'arm/simulator-arm.h', 1226 'compiler/arm/code-generator-arm.cc', 1227 'compiler/arm/instruction-codes-arm.h', 1228 'compiler/arm/instruction-scheduler-arm.cc', 1229 'compiler/arm/instruction-selector-arm.cc', 1230 'crankshaft/arm/lithium-arm.cc', 1231 'crankshaft/arm/lithium-arm.h', 1232 'crankshaft/arm/lithium-codegen-arm.cc', 1233 'crankshaft/arm/lithium-codegen-arm.h', 1234 'crankshaft/arm/lithium-gap-resolver-arm.cc', 1235 'crankshaft/arm/lithium-gap-resolver-arm.h', 1236 'debug/arm/debug-arm.cc', 1237 'full-codegen/arm/full-codegen-arm.cc', 1238 'ic/arm/access-compiler-arm.cc', 1239 'ic/arm/handler-compiler-arm.cc', 1240 'ic/arm/ic-arm.cc', 1241 'ic/arm/ic-compiler-arm.cc', 1242 'ic/arm/stub-cache-arm.cc', 1243 'regexp/arm/regexp-macro-assembler-arm.cc', 1244 'regexp/arm/regexp-macro-assembler-arm.h', 1245 ], 1246 }], 1247 ['v8_target_arch=="arm64"', { 1248 'sources': [ ### gcmole(arch:arm64) ### 1249 'arm64/assembler-arm64.cc', 1250 'arm64/assembler-arm64.h', 1251 'arm64/assembler-arm64-inl.h', 1252 'arm64/builtins-arm64.cc', 1253 'arm64/codegen-arm64.cc', 1254 'arm64/codegen-arm64.h', 1255 'arm64/code-stubs-arm64.cc', 1256 'arm64/code-stubs-arm64.h', 1257 'arm64/constants-arm64.h', 1258 'arm64/cpu-arm64.cc', 1259 'arm64/decoder-arm64.cc', 1260 'arm64/decoder-arm64.h', 1261 'arm64/decoder-arm64-inl.h', 1262 'arm64/deoptimizer-arm64.cc', 1263 'arm64/disasm-arm64.cc', 1264 'arm64/disasm-arm64.h', 1265 'arm64/frames-arm64.cc', 1266 'arm64/frames-arm64.h', 1267 'arm64/instructions-arm64.cc', 1268 'arm64/instructions-arm64.h', 1269 'arm64/instrument-arm64.cc', 1270 'arm64/instrument-arm64.h', 1271 'arm64/interface-descriptors-arm64.cc', 1272 'arm64/interface-descriptors-arm64.h', 1273 'arm64/macro-assembler-arm64.cc', 1274 'arm64/macro-assembler-arm64.h', 1275 'arm64/macro-assembler-arm64-inl.h', 1276 'arm64/simulator-arm64.cc', 1277 'arm64/simulator-arm64.h', 1278 'arm64/utils-arm64.cc', 1279 'arm64/utils-arm64.h', 1280 'compiler/arm64/code-generator-arm64.cc', 1281 'compiler/arm64/instruction-codes-arm64.h', 1282 'compiler/arm64/instruction-scheduler-arm64.cc', 1283 'compiler/arm64/instruction-selector-arm64.cc', 1284 'crankshaft/arm64/delayed-masm-arm64.cc', 1285 'crankshaft/arm64/delayed-masm-arm64.h', 1286 'crankshaft/arm64/delayed-masm-arm64-inl.h', 1287 'crankshaft/arm64/lithium-arm64.cc', 1288 'crankshaft/arm64/lithium-arm64.h', 1289 'crankshaft/arm64/lithium-codegen-arm64.cc', 1290 'crankshaft/arm64/lithium-codegen-arm64.h', 1291 'crankshaft/arm64/lithium-gap-resolver-arm64.cc', 1292 'crankshaft/arm64/lithium-gap-resolver-arm64.h', 1293 'debug/arm64/debug-arm64.cc', 1294 'full-codegen/arm64/full-codegen-arm64.cc', 1295 'ic/arm64/access-compiler-arm64.cc', 1296 'ic/arm64/handler-compiler-arm64.cc', 1297 'ic/arm64/ic-arm64.cc', 1298 'ic/arm64/ic-compiler-arm64.cc', 1299 'ic/arm64/stub-cache-arm64.cc', 1300 'regexp/arm64/regexp-macro-assembler-arm64.cc', 1301 'regexp/arm64/regexp-macro-assembler-arm64.h', 1302 ], 1303 }], 1304 ['v8_target_arch=="ia32"', { 1305 'sources': [ ### gcmole(arch:ia32) ### 1306 'ia32/assembler-ia32-inl.h', 1307 'ia32/assembler-ia32.cc', 1308 'ia32/assembler-ia32.h', 1309 'ia32/builtins-ia32.cc', 1310 'ia32/code-stubs-ia32.cc', 1311 'ia32/code-stubs-ia32.h', 1312 'ia32/codegen-ia32.cc', 1313 'ia32/codegen-ia32.h', 1314 'ia32/cpu-ia32.cc', 1315 'ia32/deoptimizer-ia32.cc', 1316 'ia32/disasm-ia32.cc', 1317 'ia32/frames-ia32.cc', 1318 'ia32/frames-ia32.h', 1319 'ia32/interface-descriptors-ia32.cc', 1320 'ia32/macro-assembler-ia32.cc', 1321 'ia32/macro-assembler-ia32.h', 1322 'compiler/ia32/code-generator-ia32.cc', 1323 'compiler/ia32/instruction-codes-ia32.h', 1324 'compiler/ia32/instruction-scheduler-ia32.cc', 1325 'compiler/ia32/instruction-selector-ia32.cc', 1326 'crankshaft/ia32/lithium-codegen-ia32.cc', 1327 'crankshaft/ia32/lithium-codegen-ia32.h', 1328 'crankshaft/ia32/lithium-gap-resolver-ia32.cc', 1329 'crankshaft/ia32/lithium-gap-resolver-ia32.h', 1330 'crankshaft/ia32/lithium-ia32.cc', 1331 'crankshaft/ia32/lithium-ia32.h', 1332 'debug/ia32/debug-ia32.cc', 1333 'full-codegen/ia32/full-codegen-ia32.cc', 1334 'ic/ia32/access-compiler-ia32.cc', 1335 'ic/ia32/handler-compiler-ia32.cc', 1336 'ic/ia32/ic-ia32.cc', 1337 'ic/ia32/ic-compiler-ia32.cc', 1338 'ic/ia32/stub-cache-ia32.cc', 1339 'regexp/ia32/regexp-macro-assembler-ia32.cc', 1340 'regexp/ia32/regexp-macro-assembler-ia32.h', 1341 ], 1342 }], 1343 ['v8_target_arch=="x87"', { 1344 'sources': [ ### gcmole(arch:x87) ### 1345 'x87/assembler-x87-inl.h', 1346 'x87/assembler-x87.cc', 1347 'x87/assembler-x87.h', 1348 'x87/builtins-x87.cc', 1349 'x87/code-stubs-x87.cc', 1350 'x87/code-stubs-x87.h', 1351 'x87/codegen-x87.cc', 1352 'x87/codegen-x87.h', 1353 'x87/cpu-x87.cc', 1354 'x87/deoptimizer-x87.cc', 1355 'x87/disasm-x87.cc', 1356 'x87/frames-x87.cc', 1357 'x87/frames-x87.h', 1358 'x87/interface-descriptors-x87.cc', 1359 'x87/macro-assembler-x87.cc', 1360 'x87/macro-assembler-x87.h', 1361 'compiler/x87/code-generator-x87.cc', 1362 'compiler/x87/instruction-codes-x87.h', 1363 'compiler/x87/instruction-scheduler-x87.cc', 1364 'compiler/x87/instruction-selector-x87.cc', 1365 'crankshaft/x87/lithium-codegen-x87.cc', 1366 'crankshaft/x87/lithium-codegen-x87.h', 1367 'crankshaft/x87/lithium-gap-resolver-x87.cc', 1368 'crankshaft/x87/lithium-gap-resolver-x87.h', 1369 'crankshaft/x87/lithium-x87.cc', 1370 'crankshaft/x87/lithium-x87.h', 1371 'debug/x87/debug-x87.cc', 1372 'full-codegen/x87/full-codegen-x87.cc', 1373 'ic/x87/access-compiler-x87.cc', 1374 'ic/x87/handler-compiler-x87.cc', 1375 'ic/x87/ic-x87.cc', 1376 'ic/x87/ic-compiler-x87.cc', 1377 'ic/x87/stub-cache-x87.cc', 1378 'regexp/x87/regexp-macro-assembler-x87.cc', 1379 'regexp/x87/regexp-macro-assembler-x87.h', 1380 ], 1381 }], 1382 ['v8_target_arch=="mips" or v8_target_arch=="mipsel"', { 1383 'sources': [ ### gcmole(arch:mipsel) ### 1384 'mips/assembler-mips.cc', 1385 'mips/assembler-mips.h', 1386 'mips/assembler-mips-inl.h', 1387 'mips/builtins-mips.cc', 1388 'mips/codegen-mips.cc', 1389 'mips/codegen-mips.h', 1390 'mips/code-stubs-mips.cc', 1391 'mips/code-stubs-mips.h', 1392 'mips/constants-mips.cc', 1393 'mips/constants-mips.h', 1394 'mips/cpu-mips.cc', 1395 'mips/deoptimizer-mips.cc', 1396 'mips/disasm-mips.cc', 1397 'mips/frames-mips.cc', 1398 'mips/frames-mips.h', 1399 'mips/interface-descriptors-mips.cc', 1400 'mips/macro-assembler-mips.cc', 1401 'mips/macro-assembler-mips.h', 1402 'mips/simulator-mips.cc', 1403 'mips/simulator-mips.h', 1404 'compiler/mips/code-generator-mips.cc', 1405 'compiler/mips/instruction-codes-mips.h', 1406 'compiler/mips/instruction-scheduler-mips.cc', 1407 'compiler/mips/instruction-selector-mips.cc', 1408 'crankshaft/mips/lithium-codegen-mips.cc', 1409 'crankshaft/mips/lithium-codegen-mips.h', 1410 'crankshaft/mips/lithium-gap-resolver-mips.cc', 1411 'crankshaft/mips/lithium-gap-resolver-mips.h', 1412 'crankshaft/mips/lithium-mips.cc', 1413 'crankshaft/mips/lithium-mips.h', 1414 'full-codegen/mips/full-codegen-mips.cc', 1415 'debug/mips/debug-mips.cc', 1416 'ic/mips/access-compiler-mips.cc', 1417 'ic/mips/handler-compiler-mips.cc', 1418 'ic/mips/ic-mips.cc', 1419 'ic/mips/ic-compiler-mips.cc', 1420 'ic/mips/stub-cache-mips.cc', 1421 'regexp/mips/regexp-macro-assembler-mips.cc', 1422 'regexp/mips/regexp-macro-assembler-mips.h', 1423 ], 1424 }], 1425 ['v8_target_arch=="mips64" or v8_target_arch=="mips64el"', { 1426 'sources': [ ### gcmole(arch:mips64el) ### 1427 'mips64/assembler-mips64.cc', 1428 'mips64/assembler-mips64.h', 1429 'mips64/assembler-mips64-inl.h', 1430 'mips64/builtins-mips64.cc', 1431 'mips64/codegen-mips64.cc', 1432 'mips64/codegen-mips64.h', 1433 'mips64/code-stubs-mips64.cc', 1434 'mips64/code-stubs-mips64.h', 1435 'mips64/constants-mips64.cc', 1436 'mips64/constants-mips64.h', 1437 'mips64/cpu-mips64.cc', 1438 'mips64/deoptimizer-mips64.cc', 1439 'mips64/disasm-mips64.cc', 1440 'mips64/frames-mips64.cc', 1441 'mips64/frames-mips64.h', 1442 'mips64/interface-descriptors-mips64.cc', 1443 'mips64/macro-assembler-mips64.cc', 1444 'mips64/macro-assembler-mips64.h', 1445 'mips64/simulator-mips64.cc', 1446 'mips64/simulator-mips64.h', 1447 'compiler/mips64/code-generator-mips64.cc', 1448 'compiler/mips64/instruction-codes-mips64.h', 1449 'compiler/mips64/instruction-scheduler-mips64.cc', 1450 'compiler/mips64/instruction-selector-mips64.cc', 1451 'crankshaft/mips64/lithium-codegen-mips64.cc', 1452 'crankshaft/mips64/lithium-codegen-mips64.h', 1453 'crankshaft/mips64/lithium-gap-resolver-mips64.cc', 1454 'crankshaft/mips64/lithium-gap-resolver-mips64.h', 1455 'crankshaft/mips64/lithium-mips64.cc', 1456 'crankshaft/mips64/lithium-mips64.h', 1457 'debug/mips64/debug-mips64.cc', 1458 'full-codegen/mips64/full-codegen-mips64.cc', 1459 'ic/mips64/access-compiler-mips64.cc', 1460 'ic/mips64/handler-compiler-mips64.cc', 1461 'ic/mips64/ic-mips64.cc', 1462 'ic/mips64/ic-compiler-mips64.cc', 1463 'ic/mips64/stub-cache-mips64.cc', 1464 'regexp/mips64/regexp-macro-assembler-mips64.cc', 1465 'regexp/mips64/regexp-macro-assembler-mips64.h', 1466 ], 1467 }], 1468 ['v8_target_arch=="x64" or v8_target_arch=="x32"', { 1469 'sources': [ ### gcmole(arch:x64) ### 1470 'crankshaft/x64/lithium-codegen-x64.cc', 1471 'crankshaft/x64/lithium-codegen-x64.h', 1472 'crankshaft/x64/lithium-gap-resolver-x64.cc', 1473 'crankshaft/x64/lithium-gap-resolver-x64.h', 1474 'crankshaft/x64/lithium-x64.cc', 1475 'crankshaft/x64/lithium-x64.h', 1476 'x64/assembler-x64-inl.h', 1477 'x64/assembler-x64.cc', 1478 'x64/assembler-x64.h', 1479 'x64/builtins-x64.cc', 1480 'x64/code-stubs-x64.cc', 1481 'x64/code-stubs-x64.h', 1482 'x64/codegen-x64.cc', 1483 'x64/codegen-x64.h', 1484 'x64/cpu-x64.cc', 1485 'x64/deoptimizer-x64.cc', 1486 'x64/disasm-x64.cc', 1487 'x64/frames-x64.cc', 1488 'x64/frames-x64.h', 1489 'x64/interface-descriptors-x64.cc', 1490 'x64/macro-assembler-x64.cc', 1491 'x64/macro-assembler-x64.h', 1492 'debug/x64/debug-x64.cc', 1493 'full-codegen/x64/full-codegen-x64.cc', 1494 'ic/x64/access-compiler-x64.cc', 1495 'ic/x64/handler-compiler-x64.cc', 1496 'ic/x64/ic-x64.cc', 1497 'ic/x64/ic-compiler-x64.cc', 1498 'ic/x64/stub-cache-x64.cc', 1499 'regexp/x64/regexp-macro-assembler-x64.cc', 1500 'regexp/x64/regexp-macro-assembler-x64.h', 1501 ], 1502 }], 1503 ['v8_target_arch=="x64"', { 1504 'sources': [ 1505 'compiler/x64/code-generator-x64.cc', 1506 'compiler/x64/instruction-codes-x64.h', 1507 'compiler/x64/instruction-scheduler-x64.cc', 1508 'compiler/x64/instruction-selector-x64.cc', 1509 ], 1510 }], 1511 ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', { 1512 'sources': [ ### gcmole(arch:ppc) ### 1513 'compiler/ppc/code-generator-ppc.cc', 1514 'compiler/ppc/instruction-codes-ppc.h', 1515 'compiler/ppc/instruction-scheduler-ppc.cc', 1516 'compiler/ppc/instruction-selector-ppc.cc', 1517 'crankshaft/ppc/lithium-ppc.cc', 1518 'crankshaft/ppc/lithium-ppc.h', 1519 'crankshaft/ppc/lithium-codegen-ppc.cc', 1520 'crankshaft/ppc/lithium-codegen-ppc.h', 1521 'crankshaft/ppc/lithium-gap-resolver-ppc.cc', 1522 'crankshaft/ppc/lithium-gap-resolver-ppc.h', 1523 'debug/ppc/debug-ppc.cc', 1524 'full-codegen/ppc/full-codegen-ppc.cc', 1525 'ic/ppc/access-compiler-ppc.cc', 1526 'ic/ppc/handler-compiler-ppc.cc', 1527 'ic/ppc/ic-ppc.cc', 1528 'ic/ppc/ic-compiler-ppc.cc', 1529 'ic/ppc/stub-cache-ppc.cc', 1530 'ppc/assembler-ppc-inl.h', 1531 'ppc/assembler-ppc.cc', 1532 'ppc/assembler-ppc.h', 1533 'ppc/builtins-ppc.cc', 1534 'ppc/code-stubs-ppc.cc', 1535 'ppc/code-stubs-ppc.h', 1536 'ppc/codegen-ppc.cc', 1537 'ppc/codegen-ppc.h', 1538 'ppc/constants-ppc.h', 1539 'ppc/constants-ppc.cc', 1540 'ppc/cpu-ppc.cc', 1541 'ppc/deoptimizer-ppc.cc', 1542 'ppc/disasm-ppc.cc', 1543 'ppc/frames-ppc.cc', 1544 'ppc/frames-ppc.h', 1545 'ppc/interface-descriptors-ppc.cc', 1546 'ppc/macro-assembler-ppc.cc', 1547 'ppc/macro-assembler-ppc.h', 1548 'ppc/simulator-ppc.cc', 1549 'ppc/simulator-ppc.h', 1550 'regexp/ppc/regexp-macro-assembler-ppc.cc', 1551 'regexp/ppc/regexp-macro-assembler-ppc.h', 1552 ], 1553 }], 1554 ['v8_target_arch=="s390" or v8_target_arch=="s390x"', { 1555 'sources': [ ### gcmole(arch:s390) ### 1556 'compiler/s390/code-generator-s390.cc', 1557 'compiler/s390/instruction-codes-s390.h', 1558 'compiler/s390/instruction-scheduler-s390.cc', 1559 'compiler/s390/instruction-selector-s390.cc', 1560 'crankshaft/s390/lithium-codegen-s390.cc', 1561 'crankshaft/s390/lithium-codegen-s390.h', 1562 'crankshaft/s390/lithium-gap-resolver-s390.cc', 1563 'crankshaft/s390/lithium-gap-resolver-s390.h', 1564 'crankshaft/s390/lithium-s390.cc', 1565 'crankshaft/s390/lithium-s390.h', 1566 'debug/s390/debug-s390.cc', 1567 'full-codegen/s390/full-codegen-s390.cc', 1568 'ic/s390/access-compiler-s390.cc', 1569 'ic/s390/handler-compiler-s390.cc', 1570 'ic/s390/ic-compiler-s390.cc', 1571 'ic/s390/ic-s390.cc', 1572 'ic/s390/stub-cache-s390.cc', 1573 'regexp/s390/regexp-macro-assembler-s390.cc', 1574 'regexp/s390/regexp-macro-assembler-s390.h', 1575 's390/assembler-s390.cc', 1576 's390/assembler-s390.h', 1577 's390/assembler-s390-inl.h', 1578 's390/builtins-s390.cc', 1579 's390/codegen-s390.cc', 1580 's390/codegen-s390.h', 1581 's390/code-stubs-s390.cc', 1582 's390/code-stubs-s390.h', 1583 's390/constants-s390.cc', 1584 's390/constants-s390.h', 1585 's390/cpu-s390.cc', 1586 's390/deoptimizer-s390.cc', 1587 's390/disasm-s390.cc', 1588 's390/frames-s390.cc', 1589 's390/frames-s390.h', 1590 's390/interface-descriptors-s390.cc', 1591 's390/macro-assembler-s390.cc', 1592 's390/macro-assembler-s390.h', 1593 's390/simulator-s390.cc', 1594 's390/simulator-s390.h', 1595 ], 1596 }], 1597 ['OS=="win"', { 1598 'variables': { 1599 'gyp_generators': '<!(echo $GYP_GENERATORS)', 1600 }, 1601 'msvs_disabled_warnings': [4351, 4355, 4800], 1602 # When building Official, the .lib is too large and exceeds the 2G 1603 # limit. This breaks it into multiple pieces to avoid the limit. 1604 # See http://crbug.com/485155. 1605 'msvs_shard': 4, 1606 }], 1607 ['component=="shared_library"', { 1608 'defines': [ 1609 'BUILDING_V8_SHARED', 1610 'V8_SHARED', 1611 ], 1612 }], 1613 ['v8_postmortem_support=="true"', { 1614 'sources': [ 1615 '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc', 1616 ] 1617 }], 1618 ['v8_enable_i18n_support==1', { 1619 'dependencies': [ 1620 '<(icu_gyp_path):icui18n', 1621 '<(icu_gyp_path):icuuc', 1622 ], 1623 'conditions': [ 1624 ['icu_use_data_file_flag==1', { 1625 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE'], 1626 }, { # else icu_use_data_file_flag !=1 1627 'conditions': [ 1628 ['OS=="win"', { 1629 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED'], 1630 }, { 1631 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC'], 1632 }], 1633 ], 1634 }], 1635 ], 1636 }, { # v8_enable_i18n_support==0 1637 'sources!': [ 1638 'i18n.cc', 1639 'i18n.h', 1640 ], 1641 }], 1642 ['OS=="win" and v8_enable_i18n_support==1', { 1643 'dependencies': [ 1644 '<(icu_gyp_path):icudata', 1645 ], 1646 }], 1647 ], 1648 }, 1649 { 1650 'target_name': 'v8_libbase', 1651 'type': 'static_library', 1652 'variables': { 1653 'optimize': 'max', 1654 }, 1655 'include_dirs+': [ 1656 '..', 1657 ], 1658 'sources': [ 1659 'base/accounting-allocator.cc', 1660 'base/accounting-allocator.h', 1661 'base/adapters.h', 1662 'base/atomic-utils.h', 1663 'base/atomicops.h', 1664 'base/atomicops_internals_arm64_gcc.h', 1665 'base/atomicops_internals_arm_gcc.h', 1666 'base/atomicops_internals_atomicword_compat.h', 1667 'base/atomicops_internals_mac.h', 1668 'base/atomicops_internals_mips_gcc.h', 1669 'base/atomicops_internals_mips64_gcc.h', 1670 'base/atomicops_internals_portable.h', 1671 'base/atomicops_internals_ppc_gcc.h', 1672 'base/atomicops_internals_s390_gcc.h', 1673 'base/atomicops_internals_tsan.h', 1674 'base/atomicops_internals_x86_gcc.cc', 1675 'base/atomicops_internals_x86_gcc.h', 1676 'base/atomicops_internals_x86_msvc.h', 1677 'base/bits.cc', 1678 'base/bits.h', 1679 'base/build_config.h', 1680 'base/compiler-specific.h', 1681 'base/cpu.cc', 1682 'base/cpu.h', 1683 'base/division-by-constant.cc', 1684 'base/division-by-constant.h', 1685 'base/file-utils.cc', 1686 'base/file-utils.h', 1687 'base/flags.h', 1688 'base/format-macros.h', 1689 'base/functional.cc', 1690 'base/functional.h', 1691 'base/hashmap.h', 1692 'base/ieee754.cc', 1693 'base/ieee754.h', 1694 'base/iterator.h', 1695 'base/lazy-instance.h', 1696 'base/logging.cc', 1697 'base/logging.h', 1698 'base/macros.h', 1699 'base/once.cc', 1700 'base/once.h', 1701 'base/platform/elapsed-timer.h', 1702 'base/platform/time.cc', 1703 'base/platform/time.h', 1704 'base/platform/condition-variable.cc', 1705 'base/platform/condition-variable.h', 1706 'base/platform/mutex.cc', 1707 'base/platform/mutex.h', 1708 'base/platform/platform.h', 1709 'base/platform/semaphore.cc', 1710 'base/platform/semaphore.h', 1711 'base/safe_conversions.h', 1712 'base/safe_conversions_impl.h', 1713 'base/safe_math.h', 1714 'base/safe_math_impl.h', 1715 'base/smart-pointers.h', 1716 'base/sys-info.cc', 1717 'base/sys-info.h', 1718 'base/utils/random-number-generator.cc', 1719 'base/utils/random-number-generator.h', 1720 ], 1721 'conditions': [ 1722 ['want_separate_host_toolset==1', { 1723 'toolsets': ['host', 'target'], 1724 }, { 1725 'toolsets': ['target'], 1726 }], 1727 ['OS=="linux"', { 1728 'conditions': [ 1729 ['nacl_target_arch=="none"', { 1730 'link_settings': { 1731 'libraries': [ 1732 '-ldl', 1733 '-lrt' 1734 ], 1735 }, 1736 }, { 1737 'defines': [ 1738 'V8_LIBRT_NOT_AVAILABLE=1', 1739 ], 1740 }], 1741 ], 1742 'sources': [ 1743 'base/platform/platform-linux.cc', 1744 'base/platform/platform-posix.cc' 1745 ], 1746 } 1747 ], 1748 ['OS=="android"', { 1749 'sources': [ 1750 'base/platform/platform-posix.cc' 1751 ], 1752 'link_settings': { 1753 'target_conditions': [ 1754 ['_toolset=="host" and host_os!="mac"', { 1755 # Only include libdl and librt on host builds because they 1756 # are included by default on Android target builds, and we 1757 # don't want to re-include them here since this will change 1758 # library order and break (see crbug.com/469973). 1759 # These libraries do not exist on Mac hosted builds. 1760 'libraries': [ 1761 '-ldl', 1762 '-lrt' 1763 ] 1764 }] 1765 ] 1766 }, 1767 'conditions': [ 1768 ['host_os=="mac"', { 1769 'target_conditions': [ 1770 ['_toolset=="host"', { 1771 'sources': [ 1772 'base/platform/platform-macos.cc' 1773 ] 1774 }, { 1775 'sources': [ 1776 'base/platform/platform-linux.cc' 1777 ] 1778 }], 1779 ], 1780 }, { 1781 'sources': [ 1782 'base/platform/platform-linux.cc' 1783 ] 1784 }], 1785 ], 1786 }, 1787 ], 1788 ['OS=="qnx"', { 1789 'link_settings': { 1790 'target_conditions': [ 1791 ['_toolset=="host" and host_os=="linux"', { 1792 'libraries': [ 1793 '-lrt' 1794 ], 1795 }], 1796 ['_toolset=="target"', { 1797 'libraries': [ 1798 '-lbacktrace' 1799 ], 1800 }], 1801 ], 1802 }, 1803 'sources': [ 1804 'base/platform/platform-posix.cc', 1805 'base/qnx-math.h', 1806 ], 1807 'target_conditions': [ 1808 ['_toolset=="host" and host_os=="linux"', { 1809 'sources': [ 1810 'base/platform/platform-linux.cc' 1811 ], 1812 }], 1813 ['_toolset=="host" and host_os=="mac"', { 1814 'sources': [ 1815 'base/platform/platform-macos.cc' 1816 ], 1817 }], 1818 ['_toolset=="target"', { 1819 'sources': [ 1820 'base/platform/platform-qnx.cc' 1821 ], 1822 }], 1823 ], 1824 }, 1825 ], 1826 ['OS=="freebsd"', { 1827 'link_settings': { 1828 'libraries': [ 1829 '-L/usr/local/lib -lexecinfo', 1830 ]}, 1831 'sources': [ 1832 'base/platform/platform-freebsd.cc', 1833 'base/platform/platform-posix.cc' 1834 ], 1835 } 1836 ], 1837 ['OS=="openbsd"', { 1838 'link_settings': { 1839 'libraries': [ 1840 '-L/usr/local/lib -lexecinfo', 1841 ]}, 1842 'sources': [ 1843 'base/platform/platform-openbsd.cc', 1844 'base/platform/platform-posix.cc' 1845 ], 1846 } 1847 ], 1848 ['OS=="netbsd"', { 1849 'link_settings': { 1850 'libraries': [ 1851 '-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -lexecinfo', 1852 ]}, 1853 'sources': [ 1854 'base/platform/platform-openbsd.cc', 1855 'base/platform/platform-posix.cc' 1856 ], 1857 } 1858 ], 1859 ['OS=="aix"', { 1860 'sources': [ 1861 'base/platform/platform-aix.cc', 1862 'base/platform/platform-posix.cc' 1863 ]}, 1864 ], 1865 ['OS=="solaris"', { 1866 'link_settings': { 1867 'libraries': [ 1868 '-lnsl -lrt', 1869 ]}, 1870 'sources': [ 1871 'base/platform/platform-solaris.cc', 1872 'base/platform/platform-posix.cc' 1873 ], 1874 } 1875 ], 1876 ['OS=="mac"', { 1877 'sources': [ 1878 'base/platform/platform-macos.cc', 1879 'base/platform/platform-posix.cc' 1880 ]}, 1881 ], 1882 ['OS=="win"', { 1883 'defines': [ 1884 '_CRT_RAND_S' # for rand_s() 1885 ], 1886 'variables': { 1887 'gyp_generators': '<!(echo $GYP_GENERATORS)', 1888 }, 1889 'conditions': [ 1890 ['gyp_generators=="make"', { 1891 'variables': { 1892 'build_env': '<!(uname -o)', 1893 }, 1894 'conditions': [ 1895 ['build_env=="Cygwin"', { 1896 'sources': [ 1897 'base/platform/platform-cygwin.cc', 1898 'base/platform/platform-posix.cc' 1899 ], 1900 }, { 1901 'sources': [ 1902 'base/platform/platform-win32.cc', 1903 'base/win32-headers.h', 1904 ], 1905 }], 1906 ], 1907 'link_settings': { 1908 'libraries': [ '-lwinmm', '-lws2_32' ], 1909 }, 1910 }, { 1911 'sources': [ 1912 'base/platform/platform-win32.cc', 1913 'base/win32-headers.h', 1914 ], 1915 'msvs_disabled_warnings': [4351, 4355, 4800], 1916 'link_settings': { 1917 'libraries': [ '-lwinmm.lib', '-lws2_32.lib' ], 1918 }, 1919 }], 1920 ], 1921 }], 1922 ], 1923 }, 1924 { 1925 'target_name': 'v8_libplatform', 1926 'type': 'static_library', 1927 'variables': { 1928 'optimize': 'max', 1929 }, 1930 'dependencies': [ 1931 'v8_libbase', 1932 ], 1933 'include_dirs+': [ 1934 '..', 1935 '../include', 1936 ], 1937 'sources': [ 1938 '../include/libplatform/libplatform.h', 1939 'libplatform/default-platform.cc', 1940 'libplatform/default-platform.h', 1941 'libplatform/task-queue.cc', 1942 'libplatform/task-queue.h', 1943 'libplatform/worker-thread.cc', 1944 'libplatform/worker-thread.h', 1945 ], 1946 'conditions': [ 1947 ['want_separate_host_toolset==1', { 1948 'toolsets': ['host', 'target'], 1949 }, { 1950 'toolsets': ['target'], 1951 }], 1952 ], 1953 'direct_dependent_settings': { 1954 'include_dirs': [ 1955 '../include', 1956 ], 1957 }, 1958 }, 1959 { 1960 'target_name': 'v8_libsampler', 1961 'type': 'static_library', 1962 'variables': { 1963 'optimize': 'max', 1964 }, 1965 'dependencies': [ 1966 'v8_libbase', 1967 ], 1968 'include_dirs+': [ 1969 '..', 1970 '../include', 1971 ], 1972 'sources': [ 1973 'libsampler/v8-sampler.cc', 1974 'libsampler/v8-sampler.h' 1975 ], 1976 'conditions': [ 1977 ['want_separate_host_toolset==1', { 1978 'toolsets': ['host', 'target'], 1979 }, { 1980 'toolsets': ['target'], 1981 }], 1982 ], 1983 'direct_dependent_settings': { 1984 'include_dirs': [ 1985 '../include', 1986 ], 1987 }, 1988 }, 1989 { 1990 'target_name': 'natives_blob', 1991 'type': 'none', 1992 'conditions': [ 1993 [ 'v8_use_external_startup_data==1', { 1994 'conditions': [ 1995 ['want_separate_host_toolset==1', { 1996 'dependencies': ['js2c#host'], 1997 }, { 1998 'dependencies': ['js2c'], 1999 }], 2000 ], 2001 'actions': [{ 2002 'action_name': 'concatenate_natives_blob', 2003 'inputs': [ 2004 '../tools/concatenate-files.py', 2005 '<(SHARED_INTERMEDIATE_DIR)/libraries.bin', 2006 '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental.bin', 2007 '<(SHARED_INTERMEDIATE_DIR)/libraries-extras.bin', 2008 '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental-extras.bin', 2009 ], 2010 'conditions': [ 2011 ['want_separate_host_toolset==1', { 2012 'target_conditions': [ 2013 ['_toolset=="host"', { 2014 'outputs': [ 2015 '<(PRODUCT_DIR)/natives_blob_host.bin', 2016 ], 2017 'action': [ 2018 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_host.bin' 2019 ], 2020 }, { 2021 'outputs': [ 2022 '<(PRODUCT_DIR)/natives_blob.bin', 2023 ], 2024 'action': [ 2025 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin' 2026 ], 2027 }], 2028 ], 2029 }, { 2030 'outputs': [ 2031 '<(PRODUCT_DIR)/natives_blob.bin', 2032 ], 2033 'action': [ 2034 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin' 2035 ], 2036 }], 2037 ], 2038 }], 2039 }], 2040 ['want_separate_host_toolset==1', { 2041 'toolsets': ['host', 'target'], 2042 }, { 2043 'toolsets': ['target'], 2044 }], 2045 ] 2046 }, 2047 { 2048 'target_name': 'js2c', 2049 'type': 'none', 2050 'conditions': [ 2051 ['want_separate_host_toolset==1', { 2052 'toolsets': ['host'], 2053 }, { 2054 'toolsets': ['target'], 2055 }], 2056 ], 2057 'variables': { 2058 'library_files': [ 2059 'js/macros.py', 2060 'messages.h', 2061 'js/prologue.js', 2062 'js/runtime.js', 2063 'js/v8natives.js', 2064 'js/symbol.js', 2065 'js/array.js', 2066 'js/string.js', 2067 'js/math.js', 2068 'third_party/fdlibm/fdlibm.js', 2069 'js/regexp.js', 2070 'js/arraybuffer.js', 2071 'js/typedarray.js', 2072 'js/iterator-prototype.js', 2073 'js/collection.js', 2074 'js/weak-collection.js', 2075 'js/collection-iterator.js', 2076 'js/promise.js', 2077 'js/messages.js', 2078 'js/array-iterator.js', 2079 'js/string-iterator.js', 2080 'js/templates.js', 2081 'js/spread.js', 2082 'js/proxy.js', 2083 'debug/mirrors.js', 2084 'debug/debug.js', 2085 'debug/liveedit.js', 2086 ], 2087 'experimental_library_files': [ 2088 'js/macros.py', 2089 'messages.h', 2090 'js/harmony-atomics.js', 2091 'js/harmony-sharedarraybuffer.js', 2092 'js/harmony-simd.js', 2093 'js/harmony-string-padding.js', 2094 'js/promise-extra.js', 2095 'js/harmony-async-await.js' 2096 ], 2097 'libraries_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries.bin', 2098 'libraries_experimental_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental.bin', 2099 'libraries_extras_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-extras.bin', 2100 'libraries_experimental_extras_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental-extras.bin', 2101 'conditions': [ 2102 ['v8_enable_i18n_support==1', { 2103 'library_files': ['js/i18n.js'], 2104 'experimental_library_files': [ 2105 'js/icu-case-mapping.js', 2106 'js/intl-extra.js', 2107 ], 2108 }], 2109 ], 2110 }, 2111 'actions': [ 2112 { 2113 'action_name': 'js2c', 2114 'inputs': [ 2115 '../tools/js2c.py', 2116 '<@(library_files)', 2117 ], 2118 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/libraries.cc'], 2119 'action': [ 2120 'python', 2121 '../tools/js2c.py', 2122 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', 2123 'CORE', 2124 '<@(library_files)', 2125 ], 2126 }, 2127 { 2128 'action_name': 'js2c_bin', 2129 'inputs': [ 2130 '../tools/js2c.py', 2131 '<@(library_files)', 2132 ], 2133 'outputs': ['<@(libraries_bin_file)'], 2134 'action': [ 2135 'python', 2136 '../tools/js2c.py', 2137 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', 2138 'CORE', 2139 '<@(library_files)', 2140 '--startup_blob', '<@(libraries_bin_file)', 2141 '--nojs', 2142 ], 2143 }, 2144 { 2145 'action_name': 'js2c_experimental', 2146 'inputs': [ 2147 '../tools/js2c.py', 2148 '<@(experimental_library_files)', 2149 ], 2150 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc'], 2151 'action': [ 2152 'python', 2153 '../tools/js2c.py', 2154 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', 2155 'EXPERIMENTAL', 2156 '<@(experimental_library_files)', 2157 ], 2158 }, 2159 { 2160 'action_name': 'js2c_experimental_bin', 2161 'inputs': [ 2162 '../tools/js2c.py', 2163 '<@(experimental_library_files)', 2164 ], 2165 'outputs': ['<@(libraries_experimental_bin_file)'], 2166 'action': [ 2167 'python', 2168 '../tools/js2c.py', 2169 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', 2170 'EXPERIMENTAL', 2171 '<@(experimental_library_files)', 2172 '--startup_blob', '<@(libraries_experimental_bin_file)', 2173 '--nojs', 2174 ], 2175 }, 2176 { 2177 'action_name': 'js2c_extras', 2178 'inputs': [ 2179 '../tools/js2c.py', 2180 '<@(v8_extra_library_files)', 2181 ], 2182 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc'], 2183 'action': [ 2184 'python', 2185 '../tools/js2c.py', 2186 '<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc', 2187 'EXTRAS', 2188 '<@(v8_extra_library_files)', 2189 ], 2190 }, 2191 { 2192 'action_name': 'js2c_extras_bin', 2193 'inputs': [ 2194 '../tools/js2c.py', 2195 '<@(v8_extra_library_files)', 2196 ], 2197 'outputs': ['<@(libraries_extras_bin_file)'], 2198 'action': [ 2199 'python', 2200 '../tools/js2c.py', 2201 '<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc', 2202 'EXTRAS', 2203 '<@(v8_extra_library_files)', 2204 '--startup_blob', '<@(libraries_extras_bin_file)', 2205 '--nojs', 2206 ], 2207 }, 2208 { 2209 'action_name': 'js2c_experimental_extras', 2210 'inputs': [ 2211 '../tools/js2c.py', 2212 '<@(v8_experimental_extra_library_files)', 2213 ], 2214 'outputs': [ 2215 '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries.cc', 2216 ], 2217 'action': [ 2218 'python', 2219 '../tools/js2c.py', 2220 '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries.cc', 2221 'EXPERIMENTAL_EXTRAS', 2222 '<@(v8_experimental_extra_library_files)', 2223 ], 2224 }, 2225 { 2226 'action_name': 'js2c_experimental_extras_bin', 2227 'inputs': [ 2228 '../tools/js2c.py', 2229 '<@(v8_experimental_extra_library_files)', 2230 ], 2231 'outputs': ['<@(libraries_experimental_extras_bin_file)'], 2232 'action': [ 2233 'python', 2234 '../tools/js2c.py', 2235 '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries.cc', 2236 'EXPERIMENTAL_EXTRAS', 2237 '<@(v8_experimental_extra_library_files)', 2238 '--startup_blob', '<@(libraries_experimental_extras_bin_file)', 2239 '--nojs', 2240 ], 2241 }, 2242 ], 2243 }, 2244 { 2245 'target_name': 'postmortem-metadata', 2246 'type': 'none', 2247 'variables': { 2248 'heapobject_files': [ 2249 'objects.h', 2250 'objects-inl.h', 2251 ], 2252 }, 2253 'actions': [ 2254 { 2255 'action_name': 'gen-postmortem-metadata', 2256 'inputs': [ 2257 '../tools/gen-postmortem-metadata.py', 2258 '<@(heapobject_files)', 2259 ], 2260 'outputs': [ 2261 '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc', 2262 ], 2263 'action': [ 2264 'python', 2265 '../tools/gen-postmortem-metadata.py', 2266 '<@(_outputs)', 2267 '<@(heapobject_files)' 2268 ] 2269 } 2270 ] 2271 }, 2272 { 2273 'target_name': 'mksnapshot', 2274 'type': 'executable', 2275 'dependencies': ['v8_base', 'v8_nosnapshot', 'v8_libplatform'], 2276 'include_dirs+': [ 2277 '..', 2278 ], 2279 'sources': [ 2280 'snapshot/mksnapshot.cc', 2281 ], 2282 'conditions': [ 2283 ['v8_enable_i18n_support==1', { 2284 'dependencies': [ 2285 '<(icu_gyp_path):icui18n', 2286 '<(icu_gyp_path):icuuc', 2287 ] 2288 }], 2289 ['want_separate_host_toolset==1', { 2290 'toolsets': ['host'], 2291 }, { 2292 'toolsets': ['target'], 2293 }], 2294 ], 2295 }, 2296 ], 2297 } 2298