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 |
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
429 'Debug': { | 433 'Debug': { |
430 'defines': [ | 434 'defines': [ |
431 'DEBUG', | 435 'DEBUG', |
432 'ENABLE_DISASSEMBLER', | 436 'ENABLE_DISASSEMBLER', |
433 'V8_ENABLE_CHECKS', | 437 'V8_ENABLE_CHECKS', |
434 'OBJECT_PRINT', | 438 'OBJECT_PRINT', |
435 'VERIFY_HEAP', | 439 'VERIFY_HEAP', |
436 ], | 440 ], |
437 'msvs_settings': { | 441 'msvs_settings': { |
438 'VCCLCompilerTool': { | 442 'VCCLCompilerTool': { |
439 'Optimization': '0', | |
440 | |
441 'conditions': [ | 443 'conditions': [ |
442 ['OS=="win" and component=="shared_library"', { | 444 ['component=="shared_library"', { |
443 'RuntimeLibrary': '3', # /MDd | 445 'RuntimeLibrary': '3', # /MDd |
444 }, { | 446 }, { |
445 'RuntimeLibrary': '1', # /MTd | 447 'RuntimeLibrary': '1', # /MTd |
446 }], | 448 }], |
449 ['v8_optimized_debug==1', { | |
450 'Optimization': '1', | |
451 'InlineFunctionExpansion': '2', | |
452 'EnableIntrinsicFunctions': 'true', | |
453 'FavorSizeOrSpeed': '0', | |
454 'StringPooling': 'true', | |
455 'BasicRuntimeChecks': '0', | |
456 }, { | |
457 'Optimization': '0', | |
458 }], | |
447 ], | 459 ], |
448 }, | 460 }, |
449 'VCLinkerTool': { | 461 'VCLinkerTool': { |
450 'LinkIncremental': '2', | 462 'LinkIncremental': '2', |
451 }, | 463 }, |
452 }, | 464 }, |
453 'conditions': [ | 465 'conditions': [ |
454 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { | 466 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { |
455 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter', | 467 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter', |
456 '-Wnon-virtual-dtor', '-Woverloaded-virtual' ], | 468 '-Wnon-virtual-dtor', '-Woverloaded-virtual' ], |
469 'conditions': [ | |
470 ['v8_optimized_debug==1', { | |
471 'cflags!': [ | |
472 '-O0', | |
473 '-O2', | |
474 '-Os', | |
475 ], | |
476 'cflags': [ | |
477 '-fdata-sections', | |
478 '-ffunction-sections', | |
479 '-O1', | |
480 ], | |
481 }], | |
482 ['v8_optimized_debug==1 and gcc_version==44 and clang==0', { | |
483 'cflags': [ | |
484 # Avoid crashes with gcc 4.4 in the v8 test suite. | |
485 '-fno-tree-vrp', | |
486 ], | |
487 }], | |
488 ], | |
457 }], | 489 }], |
458 ['OS=="linux" and v8_enable_backtrace==1', { | 490 ['OS=="linux" and v8_enable_backtrace==1', { |
459 # Support for backtrace_symbols. | 491 # Support for backtrace_symbols. |
460 'ldflags': [ '-rdynamic' ], | 492 'ldflags': [ '-rdynamic' ], |
461 }], | 493 }], |
462 ['OS=="android"', { | 494 ['OS=="android"', { |
463 'variables': { | 495 'variables': { |
464 'android_full_debug%': 1, | 496 'android_full_debug%': 1, |
465 }, | 497 }, |
466 'conditions': [ | 498 'conditions': [ |
467 ['android_full_debug==0', { | 499 ['android_full_debug==0', { |
468 # Disable full debug if we want a faster v8 in a debug build. | 500 # Disable full debug if we want a faster v8 in a debug build. |
469 # TODO(2304): pass DISABLE_DEBUG_ASSERT instead of hiding DEBUG. | 501 # TODO(2304): pass DISABLE_DEBUG_ASSERT instead of hiding DEBUG. |
470 'defines!': [ | 502 'defines!': [ |
471 'DEBUG', | 503 'DEBUG', |
472 ], | 504 ], |
473 }], | 505 }], |
474 ], | 506 ], |
475 }], | 507 }], |
476 ['OS=="mac"', { | 508 ['OS=="mac"', { |
477 'xcode_settings': { | 509 'xcode_settings': { |
478 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 | 510 'conditions': [ |
511 ['v8_optimized_debug==1', { | |
512 'GCC_OPTIMIZATION_LEVEL': '1', # -O1 | |
513 'GCC_STRICT_ALIASING': 'YES', | |
514 }, { | |
515 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 | |
516 }], | |
517 ], | |
479 }, | 518 }, |
480 }], | 519 }], |
481 ], | 520 ], |
482 }, # Debug | 521 }, # Debug |
483 'Release': { | 522 'Release': { |
484 'conditions': [ | 523 'conditions': [ |
485 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { | 524 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', { |
486 'cflags!': [ | 525 'cflags!': [ |
526 '-O0', | |
Jakob Kummerow
2013/07/10 13:24:55
I don't see why this change makes sense.
| |
487 '-O2', | 527 '-O2', |
488 '-Os', | 528 '-Os', |
489 ], | 529 ], |
490 'cflags': [ | 530 'cflags': [ |
491 '-fdata-sections', | 531 '-fdata-sections', |
492 '-ffunction-sections', | 532 '-ffunction-sections', |
493 '-O3', | 533 '-O3', |
494 ], | 534 ], |
495 'conditions': [ | 535 'conditions': [ |
496 [ 'gcc_version==44 and clang==0', { | 536 [ 'gcc_version==44 and clang==0', { |
497 'cflags': [ | 537 'cflags': [ |
498 # Avoid crashes with gcc 4.4 in the v8 test suite. | 538 # Avoid crashes with gcc 4.4 in the v8 test suite. |
499 '-fno-tree-vrp', | 539 '-fno-tree-vrp', |
500 ], | 540 ], |
501 }], | 541 }], |
502 ], | 542 ], |
503 }], | 543 }], |
504 ['OS=="android"', { | 544 ['OS=="android"', { |
505 'cflags!': [ | 545 'cflags!': [ |
546 '-O0', | |
506 '-O3', | 547 '-O3', |
507 '-Os', | 548 '-Os', |
508 ], | 549 ], |
509 'cflags': [ | 550 'cflags': [ |
510 '-fdata-sections', | 551 '-fdata-sections', |
511 '-ffunction-sections', | 552 '-ffunction-sections', |
512 '-O2', | 553 '-O2', |
513 ], | 554 ], |
514 'conditions': [ | 555 'conditions': [ |
515 [ 'gcc_version==44 and clang==0', { | 556 [ 'gcc_version==44 and clang==0', { |
(...skipping 17 matching lines...) Expand all Loading... | |
533 }], # OS=="mac" | 574 }], # OS=="mac" |
534 ['OS=="win"', { | 575 ['OS=="win"', { |
535 'msvs_settings': { | 576 'msvs_settings': { |
536 'VCCLCompilerTool': { | 577 'VCCLCompilerTool': { |
537 'Optimization': '2', | 578 'Optimization': '2', |
538 'InlineFunctionExpansion': '2', | 579 'InlineFunctionExpansion': '2', |
539 'EnableIntrinsicFunctions': 'true', | 580 'EnableIntrinsicFunctions': 'true', |
540 'FavorSizeOrSpeed': '0', | 581 'FavorSizeOrSpeed': '0', |
541 'StringPooling': 'true', | 582 'StringPooling': 'true', |
542 'conditions': [ | 583 'conditions': [ |
543 ['OS=="win" and component=="shared_library"', { | 584 ['component=="shared_library"', { |
544 'RuntimeLibrary': '2', #/MD | 585 'RuntimeLibrary': '2', #/MD |
545 }, { | 586 }, { |
546 'RuntimeLibrary': '0', #/MT | 587 'RuntimeLibrary': '0', #/MT |
547 }], | 588 }], |
548 ['v8_target_arch=="x64"', { | 589 ['v8_target_arch=="x64"', { |
549 # TODO(2207): remove this option once the bug is fixed. | 590 # TODO(2207): remove this option once the bug is fixed. |
550 'WholeProgramOptimization': 'true', | 591 'WholeProgramOptimization': 'true', |
551 }], | 592 }], |
552 ], | 593 ], |
553 }, | 594 }, |
554 'VCLinkerTool': { | 595 'VCLinkerTool': { |
555 'LinkIncremental': '1', | 596 'LinkIncremental': '1', |
556 'OptimizeReferences': '2', | 597 'OptimizeReferences': '2', |
557 'EnableCOMDATFolding': '2', | 598 'EnableCOMDATFolding': '2', |
558 }, | 599 }, |
559 }, | 600 }, |
560 }], # OS=="win" | 601 }], # OS=="win" |
561 ], # conditions | 602 ], # conditions |
562 }, # Release | 603 }, # Release |
563 }, # configurations | 604 }, # configurations |
564 }, # target_defaults | 605 }, # target_defaults |
565 } | 606 } |
OLD | NEW |