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 4220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4231 'cflags!': [ | 4231 'cflags!': [ |
4232 '-fstack-protector', | 4232 '-fstack-protector', |
4233 ], | 4233 ], |
4234 'cflags': [ | 4234 'cflags': [ |
4235 '-fno-stack-protector', | 4235 '-fno-stack-protector', |
4236 ], | 4236 ], |
4237 }], | 4237 }], |
4238 ], | 4238 ], |
4239 'target_conditions': [ | 4239 'target_conditions': [ |
4240 ['_type=="executable"', { | 4240 ['_type=="executable"', { |
| 4241 # Force android tools to export the "main" symbol so they can be |
| 4242 # loaded on ICS using the run_pie wrapper. See crbug.com/373219. |
| 4243 # TODO(primiano): remove -fvisibility and -rdynamic flags below |
| 4244 # when ICS support will be dropped. |
| 4245 'cflags': [ |
| 4246 '-fPIE', |
| 4247 '-fvisibility=default', |
| 4248 ], |
4241 'ldflags': [ | 4249 'ldflags': [ |
4242 '-Bdynamic', | 4250 '-Bdynamic', |
4243 '-Wl,--gc-sections', | 4251 '-Wl,--gc-sections', |
4244 '-Wl,-z,nocopyreloc', | 4252 '-Wl,-z,nocopyreloc', |
| 4253 '-pie', |
| 4254 '-rdynamic', |
4245 # crtbegin_dynamic.o should be the last item in ldflags. | 4255 # crtbegin_dynamic.o should be the last item in ldflags. |
4246 '<(android_ndk_lib)/crtbegin_dynamic.o', | 4256 '<(android_ndk_lib)/crtbegin_dynamic.o', |
4247 ], | 4257 ], |
4248 'libraries': [ | 4258 'libraries': [ |
4249 # crtend_android.o needs to be the last item in libraries. | 4259 # crtend_android.o needs to be the last item in libraries. |
4250 # Do not add any libraries after this! | 4260 # Do not add any libraries after this! |
4251 '<(android_ndk_lib)/crtend_android.o', | 4261 '<(android_ndk_lib)/crtend_android.o', |
4252 ], | 4262 ], |
4253 'conditions': [ | |
4254 ['asan==1', { | |
4255 'cflags': [ | |
4256 '-fPIE', | |
4257 ], | |
4258 'ldflags': [ | |
4259 '-pie', | |
4260 ], | |
4261 }], | |
4262 ], | |
4263 }], | 4263 }], |
4264 ['_type=="shared_library" or _type=="loadable_module"', { | 4264 ['_type=="shared_library" or _type=="loadable_module"', { |
4265 'ldflags': [ | 4265 'ldflags': [ |
4266 '-Wl,-shared,-Bsymbolic', | 4266 '-Wl,-shared,-Bsymbolic', |
4267 ], | 4267 ], |
4268 'conditions': [ | 4268 'conditions': [ |
4269 ['android_webview_build==0', { | 4269 ['android_webview_build==0', { |
4270 'ldflags': [ | 4270 'ldflags': [ |
4271 # crtbegin_so.o should be the last item in ldflags. | 4271 # crtbegin_so.o should be the last item in ldflags. |
4272 '<(android_ndk_lib)/crtbegin_so.o', | 4272 '<(android_ndk_lib)/crtbegin_so.o', |
(...skipping 1004 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5277 # settings in target dicts. SYMROOT is a special case, because many other | 5277 # settings in target dicts. SYMROOT is a special case, because many other |
5278 # Xcode variables depend on it, including variables such as | 5278 # Xcode variables depend on it, including variables such as |
5279 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5279 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5280 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5280 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5281 # files to appear (when present) in the UI as actual files and not red | 5281 # files to appear (when present) in the UI as actual files and not red |
5282 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5282 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5283 # and therefore SYMROOT, needs to be set at the project level. | 5283 # and therefore SYMROOT, needs to be set at the project level. |
5284 'SYMROOT': '<(DEPTH)/xcodebuild', | 5284 'SYMROOT': '<(DEPTH)/xcodebuild', |
5285 }, | 5285 }, |
5286 } | 5286 } |
OLD | NEW |