| OLD | NEW |
| 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 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 1661 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1672 ['_type!="static_library"', { | 1672 ['_type!="static_library"', { |
| 1673 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']}, | 1673 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']}, |
| 1674 }], | 1674 }], |
| 1675 ['_mac_bundle', { | 1675 ['_mac_bundle', { |
| 1676 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']}, | 1676 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']}, |
| 1677 }], | 1677 }], |
| 1678 ['_type=="executable"', { | 1678 ['_type=="executable"', { |
| 1679 'postbuilds': [ | 1679 'postbuilds': [ |
| 1680 { | 1680 { |
| 1681 # Arranges for data (heap) pages to be protected against | 1681 # Arranges for data (heap) pages to be protected against |
| 1682 # code execution when running on Mac OS X 10.7 ("Lion"). | 1682 # code execution when running on Mac OS X 10.7 ("Lion"), and |
| 1683 # ensures that the position-independent executable (PIE) bit |
| 1684 # is set for ASLR when running on Mac OS X 10.5 ("Leopard"). |
| 1683 'variables': { | 1685 'variables': { |
| 1684 # Define make_heap_non_executable in a variable ending in | 1686 # Define change_mach_o_flags in a variable ending in _path |
| 1685 # _path so that gyp understands it's a path and performs | 1687 # so that GYP understands it's a path and performs proper |
| 1686 # proper relativization during dict merging. | 1688 # relativization during dict merging. |
| 1687 'make_heap_non_executable_path': | 1689 'change_mach_o_flags_path': |
| 1688 'mac/make_heap_non_executable_from_xcode.sh', | 1690 'mac/change_mach_o_flags_from_xcode.sh', |
| 1689 }, | 1691 }, |
| 1690 'postbuild_name': 'Make Heap Non-Executable', | 1692 'postbuild_name': 'Change Mach-O Flags', |
| 1691 'action': ['<(make_heap_non_executable_path)'], | 1693 'action': [ |
| 1694 '<(change_mach_o_flags_path)', |
| 1695 ], |
| 1692 }, | 1696 }, |
| 1693 ], | 1697 ], |
| 1694 }], | 1698 }], |
| 1695 ['_type=="executable" and release_valgrind_build==0', { | 1699 ['_type=="executable" and release_valgrind_build==0', { |
| 1696 # Turn on position-independence (ASLR) for executables. When PIE | 1700 # Turn on position-independence (ASLR) for executables. When PIE |
| 1697 # is on for the Chrome executables, the framework will also be | 1701 # is on for the Chrome executables, the framework will also be |
| 1698 # subject to ASLR. | 1702 # subject to ASLR. |
| 1699 # Don't do this when building for Valgrind because Valgrind | 1703 # Don't do this when building for Valgrind because Valgrind |
| 1700 # doesn't understand slide. TODO: Make Valgrind on Mac OS X | 1704 # doesn't understand slide. TODO: Make Valgrind on Mac OS X |
| 1701 # understand slide, and get rid of the Valgrind check. | 1705 # understand slide, and get rid of the Valgrind check. |
| (...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1967 # settings in target dicts. SYMROOT is a special case, because many other | 1971 # settings in target dicts. SYMROOT is a special case, because many other |
| 1968 # Xcode variables depend on it, including variables such as | 1972 # Xcode variables depend on it, including variables such as |
| 1969 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 1973 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
| 1970 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 1974 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
| 1971 # files to appear (when present) in the UI as actual files and not red | 1975 # files to appear (when present) in the UI as actual files and not red |
| 1972 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 1976 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
| 1973 # and therefore SYMROOT, needs to be set at the project level. | 1977 # and therefore SYMROOT, needs to be set at the project level. |
| 1974 'SYMROOT': '<(DEPTH)/xcodebuild', | 1978 'SYMROOT': '<(DEPTH)/xcodebuild', |
| 1975 }, | 1979 }, |
| 1976 } | 1980 } |
| OLD | NEW |