OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 # IMPORTANT: | 5 # IMPORTANT: |
6 # Please don't directly include this file if you are building via gyp_chromium, | 6 # Please don't directly include this file if you are building via gyp_chromium, |
7 # since gyp_chromium is automatically forcing its inclusion. | 7 # since gyp_chromium is automatically forcing its inclusion. |
8 { | 8 { |
9 # Variables expected to be overriden on the GYP command line (-D) or by | 9 # Variables expected to be overriden on the GYP command line (-D) or by |
10 # ~/.gyp/include.gypi. | 10 # ~/.gyp/include.gypi. |
(...skipping 5542 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5553 '_ATL_NO_OPENGL', | 5553 '_ATL_NO_OPENGL', |
5554 '_SECURE_ATL', | 5554 '_SECURE_ATL', |
5555 # _HAS_EXCEPTIONS must match ExceptionHandling in msvs_settings. | 5555 # _HAS_EXCEPTIONS must match ExceptionHandling in msvs_settings. |
5556 '_HAS_EXCEPTIONS=0', | 5556 '_HAS_EXCEPTIONS=0', |
5557 # Silence some warnings; we can't switch the the 'recommended' | 5557 # Silence some warnings; we can't switch the the 'recommended' |
5558 # versions as they're not available on old OSs. | 5558 # versions as they're not available on old OSs. |
5559 '_WINSOCK_DEPRECATED_NO_WARNINGS', | 5559 '_WINSOCK_DEPRECATED_NO_WARNINGS', |
5560 ], | 5560 ], |
5561 'conditions': [ | 5561 'conditions': [ |
5562 ['buildtype=="Official"', { | 5562 ['buildtype=="Official"', { |
5563 # In official builds, targets can self-select an optimization | 5563 # In official builds, targets can self-select an optimization |
5564 # level by defining a variable named 'optimize', and setting it | 5564 # level by defining a variable named 'optimize', and setting it |
5565 # to one of | 5565 # to one of |
5566 # - "size", optimizes for minimal code size - the default. | 5566 # - "size", optimizes for minimal code size - the default. |
5567 # - "speed", optimizes for speed over code size. | 5567 # - "speed", optimizes for speed over code size. |
5568 # - "max", whole program optimization and link-time code | 5568 # - "max", whole program optimization and link-time code |
5569 # generation. This is very expensive and should be used | 5569 # generation. This is very expensive and should be used |
5570 # sparingly. | 5570 # sparingly. |
5571 'variables': { | 5571 'variables': { |
5572 'optimize%': 'size', | 5572 'optimize%': 'size', |
| 5573 }, |
| 5574 'msvs_settings': { |
| 5575 'VCLinkerTool': { |
| 5576 # Set /LTCG for the official builds. |
| 5577 'LinkTimeCodeGeneration': '1', |
| 5578 'AdditionalOptions': [ |
| 5579 # Set the number of LTCG code-gen threads to eight. |
| 5580 # The default is four. This gives a 5-10% link speedup. |
| 5581 '/cgthreads:8', |
| 5582 ], |
5573 }, | 5583 }, |
5574 'msvs_settings': { | 5584 }, |
5575 'VCLinkerTool': { | 5585 'target_conditions': [ |
5576 # Set /LTCG for the official builds. | 5586 ['optimize=="size"', { |
5577 'LinkTimeCodeGeneration': '1', | 5587 'msvs_settings': { |
5578 'AdditionalOptions': [ | 5588 'VCCLCompilerTool': { |
5579 # Set the number of LTCG code-gen threads to eight. | 5589 # 1, optimizeMinSpace, Minimize Size (/O1) |
5580 # The default is four. This gives a 5-10% link speedup. | 5590 'Optimization': '1', |
5581 '/cgthreads:8', | 5591 # 2, favorSize - Favor small code (/Os) |
5582 ], | 5592 'FavorSizeOrSpeed': '2', |
| 5593 }, |
5583 }, | 5594 }, |
5584 }, | 5595 }], |
5585 'target_conditions': [ | 5596 # This config is used to avoid a problem in ffmpeg, see |
5586 ['optimize=="size"', { | 5597 # http://crbug.com/264459. |
5587 'msvs_settings': { | 5598 ['optimize=="size_no_ltcg"', { |
5588 'VCCLCompilerTool': { | 5599 'msvs_settings': { |
5589 # 1, optimizeMinSpace, Minimize Size (/O1) | 5600 'VCCLCompilerTool': { |
5590 'Optimization': '1', | 5601 # 1, optimizeMinSpace, Minimize Size (/O1) |
5591 # 2, favorSize - Favor small code (/Os) | 5602 'Optimization': '1', |
5592 'FavorSizeOrSpeed': '2', | 5603 # 2, favorSize - Favor small code (/Os) |
5593 }, | 5604 'FavorSizeOrSpeed': '2', |
5594 }, | |
5595 }, | 5605 }, |
| 5606 }, |
| 5607 }], |
| 5608 ['optimize=="speed"', { |
| 5609 'msvs_settings': { |
| 5610 'VCCLCompilerTool': { |
| 5611 # 2, optimizeMaxSpeed, Maximize Speed (/O2) |
| 5612 'Optimization': '2', |
| 5613 # 1, favorSpeed - Favor fast code (/Ot) |
| 5614 'FavorSizeOrSpeed': '1', |
| 5615 }, |
| 5616 }, |
| 5617 }], |
| 5618 ['optimize=="max"', { |
| 5619 # Disable Warning 4702 ("Unreachable code") for the WPO/PGO |
| 5620 # builds. Probably anything that this would catch that |
| 5621 # wouldn't be caught in a normal build isn't going to |
| 5622 # actually be a bug, so the incremental value of C4702 for |
| 5623 # PGO builds is likely very small. |
| 5624 'msvs_disabled_warnings': [ |
| 5625 4702 |
5596 ], | 5626 ], |
5597 # This config is used to avoid a problem in ffmpeg, see | 5627 'msvs_settings': { |
5598 # http://crbug.com/264459. | 5628 'VCCLCompilerTool': { |
5599 ['optimize=="size_no_ltcg"', { | 5629 # 2, optimizeMaxSpeed, Maximize Speed (/O2) |
5600 'msvs_settings': { | 5630 'Optimization': '2', |
5601 'VCCLCompilerTool': { | 5631 # 1, favorSpeed - Favor fast code (/Ot) |
5602 # 1, optimizeMinSpace, Minimize Size (/O1) | 5632 'FavorSizeOrSpeed': '1', |
5603 'Optimization': '1', | 5633 # This implies link time code generation. |
5604 # 2, favorSize - Favor small code (/Os) | 5634 'WholeProgramOptimization': 'true', |
5605 'FavorSizeOrSpeed': '2', | |
5606 }, | |
5607 }, | |
5608 }, | 5635 }, |
5609 ], | 5636 }, |
5610 ['optimize=="speed"', { | 5637 }], |
5611 'msvs_settings': { | 5638 ], |
5612 'VCCLCompilerTool': { | 5639 }], |
5613 # 2, optimizeMaxSpeed, Maximize Speed (/O2) | |
5614 'Optimization': '2', | |
5615 # 1, favorSpeed - Favor fast code (/Ot) | |
5616 'FavorSizeOrSpeed': '1', | |
5617 }, | |
5618 }, | |
5619 }, | |
5620 ], | |
5621 ['optimize=="max"', { | |
5622 # Disable Warning 4702 ("Unreachable code") for the WPO/PGO | |
5623 # builds. Probably anything that this would catch that | |
5624 # wouldn't be caught in a normal build isn't going to | |
5625 # actually be a bug, so the incremental value of C4702 for | |
5626 # PGO builds is likely very small. | |
5627 'msvs_disabled_warnings': [ | |
5628 4702 | |
5629 ], | |
5630 'msvs_settings': { | |
5631 'VCCLCompilerTool': { | |
5632 # 2, optimizeMaxSpeed, Maximize Speed (/O2) | |
5633 'Optimization': '2', | |
5634 # 1, favorSpeed - Favor fast code (/Ot) | |
5635 'FavorSizeOrSpeed': '1', | |
5636 # This implies link time code generation. | |
5637 'WholeProgramOptimization': 'true', | |
5638 }, | |
5639 }, | |
5640 }, | |
5641 ], | |
5642 ], | |
5643 }, | |
5644 ], | |
5645 ['msvs_xtree_patched!=1', { | 5640 ['msvs_xtree_patched!=1', { |
5646 # If xtree hasn't been patched, then we disable C4702. Otherwise, | 5641 # If xtree hasn't been patched, then we disable C4702. Otherwise, |
5647 # it's enabled. This will generally only be true for system-level | 5642 # it's enabled. This will generally only be true for system-level |
5648 # installed Express users. | 5643 # installed Express users. |
5649 'msvs_disabled_warnings': [ | 5644 'msvs_disabled_warnings': [ |
5650 4702, # unreachable code | 5645 4702, # unreachable code |
5651 ], | 5646 ], |
5652 }], | 5647 }], |
5653 ], | 5648 ], |
5654 # Add extra include directories here that need to be in front of the | 5649 # Add extra include directories here that need to be in front of the |
(...skipping 726 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6381 # settings in target dicts. SYMROOT is a special case, because many other | 6376 # settings in target dicts. SYMROOT is a special case, because many other |
6382 # Xcode variables depend on it, including variables such as | 6377 # Xcode variables depend on it, including variables such as |
6383 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 6378 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
6384 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 6379 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
6385 # files to appear (when present) in the UI as actual files and not red | 6380 # files to appear (when present) in the UI as actual files and not red |
6386 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 6381 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
6387 # and therefore SYMROOT, needs to be set at the project level. | 6382 # and therefore SYMROOT, needs to be set at the project level. |
6388 'SYMROOT': '<(DEPTH)/xcodebuild', | 6383 'SYMROOT': '<(DEPTH)/xcodebuild', |
6389 }, | 6384 }, |
6390 } | 6385 } |
OLD | NEW |