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