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