| OLD | NEW |
| 1 # Copyright 2013 the V8 project authors. All rights reserved. | 1 # Copyright 2013 the V8 project authors. All rights reserved. |
| 2 # Redistribution and use in source and binary forms, with or without | 2 # Redistribution and use in source and binary forms, with or without |
| 3 # modification, are permitted provided that the following conditions are | 3 # modification, are permitted provided that the following conditions are |
| 4 # met: | 4 # met: |
| 5 # | 5 # |
| 6 # * Redistributions of source code must retain the above copyright | 6 # * Redistributions of source code must retain the above copyright |
| 7 # notice, this list of conditions and the following disclaimer. | 7 # notice, this list of conditions and the following disclaimer. |
| 8 # * Redistributions in binary form must reproduce the above | 8 # * Redistributions in binary form must reproduce the above |
| 9 # copyright notice, this list of conditions and the following | 9 # copyright notice, this list of conditions and the following |
| 10 # disclaimer in the documentation and/or other materials provided | 10 # disclaimer in the documentation and/or other materials provided |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 # Similar to vfp but on MIPS. | 52 # Similar to vfp but on MIPS. |
| 53 'v8_can_use_fpu_instructions%': 'true', | 53 'v8_can_use_fpu_instructions%': 'true', |
| 54 | 54 |
| 55 # Similar to the ARM hard float ABI but on MIPS. | 55 # Similar to the ARM hard float ABI but on MIPS. |
| 56 'v8_use_mips_abi_hardfloat%': 'true', | 56 'v8_use_mips_abi_hardfloat%': 'true', |
| 57 | 57 |
| 58 # Default arch variant for MIPS. | 58 # Default arch variant for MIPS. |
| 59 'mips_arch_variant%': 'mips32r2', | 59 'mips_arch_variant%': 'mips32r2', |
| 60 | 60 |
| 61 'v8_enable_backtrace%': 0, | 61 'v8_enable_backtrace%': 0, |
| 62 |
| 63 # Turns on compiler optimizations in Debug builds (#defines are unaffected). |
| 64 'v8_optimized_debug%': 0, |
| 65 |
| 62 # Enable profiling support. Only required on Windows. | 66 # Enable profiling support. Only required on Windows. |
| 63 'v8_enable_prof%': 0, | 67 'v8_enable_prof%': 0, |
| 64 | 68 |
| 65 # Some versions of GCC 4.5 seem to need -fno-strict-aliasing. | 69 # Some versions of GCC 4.5 seem to need -fno-strict-aliasing. |
| 66 'v8_no_strict_aliasing%': 0, | 70 'v8_no_strict_aliasing%': 0, |
| 67 | 71 |
| 68 # Chrome needs this definition unconditionally. For standalone V8 builds, | 72 # Chrome needs this definition unconditionally. For standalone V8 builds, |
| 69 # it's handled in build/standalone.gypi. | 73 # it's handled in build/standalone.gypi. |
| 70 'want_separate_host_toolset%': 1, | 74 'want_separate_host_toolset%': 1, |
| 71 | 75 |
| 72 'host_os%': '<(OS)', | 76 'host_os%': '<(OS)', |
| 73 'werror%': '-Werror', | 77 'werror%': '-Werror', |
| 74 # For a shared library build, results in "libv8-<(soname_version).so". | 78 # For a shared library build, results in "libv8-<(soname_version).so". |
| 75 'soname_version%': '', | 79 'soname_version%': '', |
| 80 |
| 81 # Allow to suppress the array bounds warning (default is no suppression). |
| 82 'wno_array_bounds%': '', |
| 76 }, | 83 }, |
| 77 'target_defaults': { | 84 'target_defaults': { |
| 78 'conditions': [ | 85 'conditions': [ |
| 79 ['v8_target_arch=="arm"', { | 86 ['v8_target_arch=="arm"', { |
| 80 'defines': [ | 87 'defines': [ |
| 81 'V8_TARGET_ARCH_ARM', | 88 'V8_TARGET_ARCH_ARM', |
| 82 ], | 89 ], |
| 83 'target_conditions': [ | 90 'target_conditions': [ |
| 84 ['_toolset=="host"', { | 91 ['_toolset=="host"', { |
| 85 'variables': { | 92 'variables': { |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 434 'Debug': { | 441 'Debug': { |
| 435 'defines': [ | 442 'defines': [ |
| 436 'DEBUG', | 443 'DEBUG', |
| 437 'ENABLE_DISASSEMBLER', | 444 'ENABLE_DISASSEMBLER', |
| 438 'V8_ENABLE_CHECKS', | 445 'V8_ENABLE_CHECKS', |
| 439 'OBJECT_PRINT', | 446 'OBJECT_PRINT', |
| 440 'VERIFY_HEAP', | 447 'VERIFY_HEAP', |
| 441 ], | 448 ], |
| 442 'msvs_settings': { | 449 'msvs_settings': { |
| 443 'VCCLCompilerTool': { | 450 'VCCLCompilerTool': { |
| 444 'Optimization': '0', | |
| 445 | |
| 446 'conditions': [ | 451 'conditions': [ |
| 447 ['OS=="win" and component=="shared_library"', { | 452 ['component=="shared_library"', { |
| 448 'RuntimeLibrary': '3', # /MDd | 453 'RuntimeLibrary': '3', # /MDd |
| 449 }, { | 454 }, { |
| 450 'RuntimeLibrary': '1', # /MTd | 455 'RuntimeLibrary': '1', # /MTd |
| 451 }], | 456 }], |
| 457 ['v8_optimized_debug==1', { |
| 458 'Optimization': '1', |
| 459 'InlineFunctionExpansion': '2', |
| 460 'EnableIntrinsicFunctions': 'true', |
| 461 'FavorSizeOrSpeed': '0', |
| 462 'StringPooling': 'true', |
| 463 'BasicRuntimeChecks': '0', |
| 464 }, { |
| 465 'Optimization': '0', |
| 466 }], |
| 452 ], | 467 ], |
| 453 }, | 468 }, |
| 454 'VCLinkerTool': { | 469 'VCLinkerTool': { |
| 455 'LinkIncremental': '2', | 470 'LinkIncremental': '2', |
| 456 }, | 471 }, |
| 457 }, | 472 }, |
| 458 'conditions': [ | 473 'conditions': [ |
| 459 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { | 474 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { |
| 460 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter', | 475 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter', |
| 461 '-Wnon-virtual-dtor', '-Woverloaded-virtual', | 476 '-Wnon-virtual-dtor', '-Woverloaded-virtual', |
| 477 '<(wno_array_bounds)', |
| 462 # Hide some GCC 4.8 warnings: | 478 # Hide some GCC 4.8 warnings: |
| 463 # TODO(jbramley): Only enable these on GCC 4.8. | 479 # TODO(jbramley): Only enable these on GCC 4.8. |
| 464 '-Wno-unused-local-typedefs', | 480 '-Wno-unused-local-typedefs', |
| 465 '-Wno-maybe-uninitialized' ], | 481 '-Wno-maybe-uninitialized' ], |
| 482 'conditions': [ |
| 483 ['v8_optimized_debug==1', { |
| 484 'cflags!': [ |
| 485 '-O0', |
| 486 '-O2', |
| 487 '-Os', |
| 488 ], |
| 489 'cflags': [ |
| 490 '-fdata-sections', |
| 491 '-ffunction-sections', |
| 492 '-O1', |
| 493 ], |
| 494 }], |
| 495 ['v8_optimized_debug==1 and gcc_version==44 and clang==0', { |
| 496 'cflags': [ |
| 497 # Avoid crashes with gcc 4.4 in the v8 test suite. |
| 498 '-fno-tree-vrp', |
| 499 ], |
| 500 }], |
| 501 ], |
| 466 }], | 502 }], |
| 467 ['OS=="linux" and v8_enable_backtrace==1', { | 503 ['OS=="linux" and v8_enable_backtrace==1', { |
| 468 # Support for backtrace_symbols. | 504 # Support for backtrace_symbols. |
| 469 'ldflags': [ '-rdynamic' ], | 505 'ldflags': [ '-rdynamic' ], |
| 470 }], | 506 }], |
| 471 ['OS=="android"', { | 507 ['OS=="android"', { |
| 472 'variables': { | 508 'variables': { |
| 473 'android_full_debug%': 1, | 509 'android_full_debug%': 1, |
| 474 }, | 510 }, |
| 475 'conditions': [ | 511 'conditions': [ |
| 476 ['android_full_debug==0', { | 512 ['android_full_debug==0', { |
| 477 # Disable full debug if we want a faster v8 in a debug build. | 513 # Disable full debug if we want a faster v8 in a debug build. |
| 478 # TODO(2304): pass DISABLE_DEBUG_ASSERT instead of hiding DEBUG. | 514 # TODO(2304): pass DISABLE_DEBUG_ASSERT instead of hiding DEBUG. |
| 479 'defines!': [ | 515 'defines!': [ |
| 480 'DEBUG', | 516 'DEBUG', |
| 481 ], | 517 ], |
| 482 }], | 518 }], |
| 483 ], | 519 ], |
| 484 }], | 520 }], |
| 485 ['OS=="mac"', { | 521 ['OS=="mac"', { |
| 486 'xcode_settings': { | 522 'xcode_settings': { |
| 487 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 | 523 'conditions': [ |
| 524 ['v8_optimized_debug==1', { |
| 525 'GCC_OPTIMIZATION_LEVEL': '1', # -O1 |
| 526 'GCC_STRICT_ALIASING': 'YES', |
| 527 }, { |
| 528 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 |
| 529 }], |
| 530 ], |
| 488 }, | 531 }, |
| 489 }], | 532 }], |
| 490 ], | 533 ], |
| 491 }, # Debug | 534 }, # Debug |
| 492 'Release': { | 535 'Release': { |
| 493 'conditions': [ | 536 'conditions': [ |
| 494 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { | 537 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { |
| 495 'cflags!': [ | 538 'cflags!': [ |
| 496 '-O2', | 539 '-O2', |
| 497 '-Os', | 540 '-Os', |
| 498 ], | 541 ], |
| 499 'cflags': [ | 542 'cflags': [ |
| 500 '-fdata-sections', | 543 '-fdata-sections', |
| 501 '-ffunction-sections', | 544 '-ffunction-sections', |
| 502 '-O3', | 545 '-O3', |
| 546 '<(wno_array_bounds)', |
| 503 # Hide some GCC 4.8 warnings: | 547 # Hide some GCC 4.8 warnings: |
| 504 # TODO(jbramley): Only enable these on GCC 4.8. | 548 # TODO(jbramley): Only enable these on GCC 4.8. |
| 505 '-Wno-unused-local-typedefs', | 549 '-Wno-unused-local-typedefs', |
| 506 '-Wno-maybe-uninitialized', | 550 '-Wno-maybe-uninitialized', |
| 507 ], | 551 ], |
| 508 'conditions': [ | 552 'conditions': [ |
| 509 [ 'gcc_version==44 and clang==0', { | 553 [ 'gcc_version==44 and clang==0', { |
| 510 'cflags': [ | 554 'cflags': [ |
| 511 # Avoid crashes with gcc 4.4 in the v8 test suite. | 555 # Avoid crashes with gcc 4.4 in the v8 test suite. |
| 512 '-fno-tree-vrp', | 556 '-fno-tree-vrp', |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 546 }], # OS=="mac" | 590 }], # OS=="mac" |
| 547 ['OS=="win"', { | 591 ['OS=="win"', { |
| 548 'msvs_settings': { | 592 'msvs_settings': { |
| 549 'VCCLCompilerTool': { | 593 'VCCLCompilerTool': { |
| 550 'Optimization': '2', | 594 'Optimization': '2', |
| 551 'InlineFunctionExpansion': '2', | 595 'InlineFunctionExpansion': '2', |
| 552 'EnableIntrinsicFunctions': 'true', | 596 'EnableIntrinsicFunctions': 'true', |
| 553 'FavorSizeOrSpeed': '0', | 597 'FavorSizeOrSpeed': '0', |
| 554 'StringPooling': 'true', | 598 'StringPooling': 'true', |
| 555 'conditions': [ | 599 'conditions': [ |
| 556 ['OS=="win" and component=="shared_library"', { | 600 ['component=="shared_library"', { |
| 557 'RuntimeLibrary': '2', #/MD | 601 'RuntimeLibrary': '2', #/MD |
| 558 }, { | 602 }, { |
| 559 'RuntimeLibrary': '0', #/MT | 603 'RuntimeLibrary': '0', #/MT |
| 560 }], | 604 }], |
| 561 ['v8_target_arch=="x64"', { | 605 ['v8_target_arch=="x64"', { |
| 562 # TODO(2207): remove this option once the bug is fixed. | 606 # TODO(2207): remove this option once the bug is fixed. |
| 563 'WholeProgramOptimization': 'true', | 607 'WholeProgramOptimization': 'true', |
| 564 }], | 608 }], |
| 565 ], | 609 ], |
| 566 }, | 610 }, |
| 567 'VCLinkerTool': { | 611 'VCLinkerTool': { |
| 568 'LinkIncremental': '1', | 612 'LinkIncremental': '1', |
| 569 'OptimizeReferences': '2', | 613 'OptimizeReferences': '2', |
| 570 'EnableCOMDATFolding': '2', | 614 'EnableCOMDATFolding': '2', |
| 571 }, | 615 }, |
| 572 }, | 616 }, |
| 573 }], # OS=="win" | 617 }], # OS=="win" |
| 574 ], # conditions | 618 ], # conditions |
| 575 }, # Release | 619 }, # Release |
| 576 }, # configurations | 620 }, # configurations |
| 577 }, # target_defaults | 621 }, # target_defaults |
| 578 } | 622 } |
| OLD | NEW |