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 |