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 1686 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1697 'debug_extra_cflags': '-g -fno-inline -fno-omit-frame-pointer ' | 1697 'debug_extra_cflags': '-g -fno-inline -fno-omit-frame-pointer ' |
1698 '-fno-builtin -fno-optimize-sibling-calls', | 1698 '-fno-builtin -fno-optimize-sibling-calls', |
1699 'release_extra_cflags': '-g -fno-inline -fno-omit-frame-pointer ' | 1699 'release_extra_cflags': '-g -fno-inline -fno-omit-frame-pointer ' |
1700 '-fno-builtin -fno-optimize-sibling-calls', | 1700 '-fno-builtin -fno-optimize-sibling-calls', |
1701 | 1701 |
1702 # MSVS flags for TSan on Pin and Windows. | 1702 # MSVS flags for TSan on Pin and Windows. |
1703 'win_debug_RuntimeChecks': '0', | 1703 'win_debug_RuntimeChecks': '0', |
1704 'win_debug_disable_iterator_debugging': '1', | 1704 'win_debug_disable_iterator_debugging': '1', |
1705 'win_debug_Optimization': '1', | 1705 'win_debug_Optimization': '1', |
1706 'win_debug_InlineFunctionExpansion': '0', | 1706 'win_debug_InlineFunctionExpansion': '0', |
1707 'win_release_disable_iterator_debugging': '1', | |
1708 'win_release_InlineFunctionExpansion': '0', | 1707 'win_release_InlineFunctionExpansion': '0', |
1709 'win_release_OmitFramePointers': '0', | 1708 'win_release_OmitFramePointers': '0', |
1710 | 1709 |
1711 'linux_use_tcmalloc': 1, | 1710 'linux_use_tcmalloc': 1, |
1712 'release_valgrind_build': 1, | 1711 'release_valgrind_build': 1, |
1713 'werror': '', | 1712 'werror': '', |
1714 'component': 'static_library', | 1713 'component': 'static_library', |
1715 'use_system_zlib': 0, | 1714 'use_system_zlib': 0, |
1716 }], | 1715 }], |
1717 | 1716 |
1718 # Build tweaks for DrMemory. | 1717 # Build tweaks for DrMemory. |
1719 # TODO(rnk): Combine with tsan config to share the builder. | 1718 # TODO(rnk): Combine with tsan config to share the builder. |
1720 # http://crbug.com/108155 | 1719 # http://crbug.com/108155 |
1721 ['build_for_tool=="drmemory"', { | 1720 ['build_for_tool=="drmemory"', { |
1722 # These runtime checks force initialization of stack vars which blocks | 1721 # These runtime checks force initialization of stack vars which blocks |
1723 # DrMemory's uninit detection. | 1722 # DrMemory's uninit detection. |
1724 'win_debug_RuntimeChecks': '0', | 1723 'win_debug_RuntimeChecks': '0', |
1725 # Iterator debugging is slow. Disable in both Debug and Release | 1724 # Iterator debugging is slow. |
1726 'win_debug_disable_iterator_debugging': '1', | 1725 'win_debug_disable_iterator_debugging': '1', |
1727 'win_release_disable_iterator_debugging': '1', | |
1728 # Try to disable optimizations that mess up stacks in a release build. | 1726 # Try to disable optimizations that mess up stacks in a release build. |
1729 # DrM-i#1054 (http://code.google.com/p/drmemory/issues/detail?id=1054) | 1727 # DrM-i#1054 (http://code.google.com/p/drmemory/issues/detail?id=1054) |
1730 # /O2 and /Ob0 (disable inline) cannot be used together because of a | 1728 # /O2 and /Ob0 (disable inline) cannot be used together because of a |
1731 # compiler bug, so we use /Ob1 instead. | 1729 # compiler bug, so we use /Ob1 instead. |
1732 'win_release_InlineFunctionExpansion': '1', | 1730 'win_release_InlineFunctionExpansion': '1', |
1733 'win_release_OmitFramePointers': '0', | 1731 'win_release_OmitFramePointers': '0', |
1734 # Ditto for debug, to support bumping win_debug_Optimization. | 1732 # Ditto for debug, to support bumping win_debug_Optimization. |
1735 'win_debug_InlineFunctionExpansion': 0, | 1733 'win_debug_InlineFunctionExpansion': 0, |
1736 'win_debug_OmitFramePointers': 0, | 1734 'win_debug_OmitFramePointers': 0, |
1737 # Keep the code under #ifndef NVALGRIND. | 1735 # Keep the code under #ifndef NVALGRIND. |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1841 'win_debug_InlineFunctionExpansion%': '', # empty = default, 0 = off, | 1839 'win_debug_InlineFunctionExpansion%': '', # empty = default, 0 = off, |
1842 'win_release_InlineFunctionExpansion%': '2', # 1 = only __inline, 2 = max | 1840 'win_release_InlineFunctionExpansion%': '2', # 1 = only __inline, 2 = max |
1843 | 1841 |
1844 # VS inserts quite a lot of extra checks to algorithms like | 1842 # VS inserts quite a lot of extra checks to algorithms like |
1845 # std::partial_sort in Debug build which make them O(N^2) | 1843 # std::partial_sort in Debug build which make them O(N^2) |
1846 # instead of O(N*logN). This is particularly slow under memory | 1844 # instead of O(N*logN). This is particularly slow under memory |
1847 # tools like ThreadSanitizer so we want it to be disablable. | 1845 # tools like ThreadSanitizer so we want it to be disablable. |
1848 # See http://msdn.microsoft.com/en-us/library/aa985982(v=VS.80).aspx | 1846 # See http://msdn.microsoft.com/en-us/library/aa985982(v=VS.80).aspx |
1849 'win_debug_disable_iterator_debugging%': '0', | 1847 'win_debug_disable_iterator_debugging%': '0', |
1850 | 1848 |
1851 # We now enable partial iterator debugging on Release builds but | |
1852 # we want to make it disablable for release tsan and drmemory builds | |
1853 # see http://crbug.com/289691 | |
1854 'win_release_disable_iterator_debugging%': '0', | |
1855 | |
1856 # An application manifest fragment to declare compatibility settings for | 1849 # An application manifest fragment to declare compatibility settings for |
1857 # 'executable' targets. Ignored in other target type. | 1850 # 'executable' targets. Ignored in other target type. |
1858 'win_exe_compatibility_manifest%': | 1851 'win_exe_compatibility_manifest%': |
1859 '<(DEPTH)\\build\\win\\compatibility.manifest', | 1852 '<(DEPTH)\\build\\win\\compatibility.manifest', |
1860 | 1853 |
1861 # Set to 1 to generate external manifest instead of embedding it for | 1854 # Set to 1 to generate external manifest instead of embedding it for |
1862 # 'executable' target. Does nothing for other target type. This flag is | 1855 # 'executable' target. Does nothing for other target type. This flag is |
1863 # used to make mini_installer compatible with the component build. | 1856 # used to make mini_installer compatible with the component build. |
1864 # See http://crbug.com/127233 | 1857 # See http://crbug.com/127233 |
1865 'win_use_external_manifest%': 0, | 1858 'win_use_external_manifest%': 0, |
(...skipping 802 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2668 }], | 2661 }], |
2669 ['win_release_OmitFramePointers==0', { | 2662 ['win_release_OmitFramePointers==0', { |
2670 'OmitFramePointers': 'false', | 2663 'OmitFramePointers': 'false', |
2671 # The above is not sufficient (http://crbug.com/106711): it | 2664 # The above is not sufficient (http://crbug.com/106711): it |
2672 # simply eliminates an explicit "/Oy", but both /O2 and /Ox | 2665 # simply eliminates an explicit "/Oy", but both /O2 and /Ox |
2673 # perform FPO regardless, so we must explicitly disable. | 2666 # perform FPO regardless, so we must explicitly disable. |
2674 # We still want the false setting above to avoid having | 2667 # We still want the false setting above to avoid having |
2675 # "/Oy /Oy-" and warnings about overriding. | 2668 # "/Oy /Oy-" and warnings about overriding. |
2676 'AdditionalOptions': ['/Oy-'], | 2669 'AdditionalOptions': ['/Oy-'], |
2677 }], | 2670 }], |
2678 ['win_release_disable_iterator_debugging!=1', { | |
2679 # VS2010 changed default _ITERATOR_DEBUG_LEVEL to 0 | |
2680 # on Release builds so we change it back to 1 to restore these | |
2681 # checks, except if explicitly disabled | |
2682 # See http://crbug.com/289691 | |
2683 'PreprocessorDefinitions': ['_ITERATOR_DEBUG_LEVEL=1'], | |
2684 }], | |
2685 ], | 2671 ], |
2686 'AdditionalOptions': [ '<@(win_release_extra_cflags)', ], | 2672 'AdditionalOptions': [ '<@(win_release_extra_cflags)', ], |
2687 }, | 2673 }, |
2688 'VCLinkerTool': { | 2674 'VCLinkerTool': { |
2689 # LinkIncremental is a tri-state boolean, where 0 means default | 2675 # LinkIncremental is a tri-state boolean, where 0 means default |
2690 # (i.e., inherit from parent solution), 1 means false, and | 2676 # (i.e., inherit from parent solution), 1 means false, and |
2691 # 2 means true. | 2677 # 2 means true. |
2692 'LinkIncremental': '1', | 2678 'LinkIncremental': '1', |
2693 # This corresponds to the /PROFILE flag which ensures the PDB | 2679 # This corresponds to the /PROFILE flag which ensures the PDB |
2694 # file contains FIXUP information (growing the PDB file by about | 2680 # file contains FIXUP information (growing the PDB file by about |
(...skipping 2046 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4741 # settings in target dicts. SYMROOT is a special case, because many other | 4727 # settings in target dicts. SYMROOT is a special case, because many other |
4742 # Xcode variables depend on it, including variables such as | 4728 # Xcode variables depend on it, including variables such as |
4743 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 4729 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
4744 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 4730 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
4745 # files to appear (when present) in the UI as actual files and not red | 4731 # files to appear (when present) in the UI as actual files and not red |
4746 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 4732 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
4747 # and therefore SYMROOT, needs to be set at the project level. | 4733 # and therefore SYMROOT, needs to be set at the project level. |
4748 'SYMROOT': '<(DEPTH)/xcodebuild', | 4734 'SYMROOT': '<(DEPTH)/xcodebuild', |
4749 }, | 4735 }, |
4750 } | 4736 } |
OLD | NEW |