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 4131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4142 # '-march=armv7-a' is actually redundant anyway because | 4142 # '-march=armv7-a' is actually redundant anyway because |
4143 # it is enabled by default when we built the toolchain. | 4143 # it is enabled by default when we built the toolchain. |
4144 # And using '-mcpu=cortex-a9' should be sufficient. | 4144 # And using '-mcpu=cortex-a9' should be sufficient. |
4145 '-mcpu=cortex-a9', | 4145 '-mcpu=cortex-a9', |
4146 '-funwind-tables', | 4146 '-funwind-tables', |
4147 # Breakpad requires symbols with debugging information | 4147 # Breakpad requires symbols with debugging information |
4148 '-g', | 4148 '-g', |
4149 ], | 4149 ], |
4150 'ldflags': [ | 4150 'ldflags': [ |
4151 # We want to statically link libstdc++/libgcc_s. | 4151 # We want to statically link libstdc++/libgcc_s. |
4152 # Export the libstdc++ symbols so multiple copies merge | |
4153 # at runtime. | |
4154 '-Wl,--export-dynamic', | |
slan
2015/12/01 19:29:32
If we go this route, this needs to be echoed in GN
bcf
2015/12/01 19:52:30
Done.
| |
4152 '-static-libstdc++', | 4155 '-static-libstdc++', |
4153 '-static-libgcc', | 4156 '-static-libgcc', |
4154 ], | 4157 ], |
4155 'cflags!': [ | 4158 'cflags!': [ |
4156 # Some components in Chromium (e.g. v8, skia, ffmpeg) | 4159 # Some components in Chromium (e.g. v8, skia, ffmpeg) |
4157 # define their own cflags for arm builds that could | 4160 # define their own cflags for arm builds that could |
4158 # conflict with the flags we set here (e.g. | 4161 # conflict with the flags we set here (e.g. |
4159 # '-mcpu=cortex-a9'). Remove these flags explicitly. | 4162 # '-mcpu=cortex-a9'). Remove these flags explicitly. |
4160 '-march=armv7-a', | 4163 '-march=armv7-a', |
4161 '-mtune=cortex-a8', | 4164 '-mtune=cortex-a8', |
4162 ], | 4165 ], |
4166 'target_conditions': [ | |
4167 [ '_type=="executable"', { | |
4168 # Statically link whole libstdc++ and libgcc in | |
4169 # executables to ensure only one copy at runtime. | |
4170 'ldflags': [ | |
4171 '-lm', # stdlibc++ requires math.h | |
4172 | |
4173 # In case we redefined stdlibc++ symbols | |
4174 # (e.g. tc_malloc) | |
4175 '-Wl,--allow-multiple-definition', | |
4176 | |
4177 '-Wl,--whole-archive', | |
4178 '-l:libstdc++.a', | |
4179 '-l:libgcc.a', | |
4180 '-Wl,--no-whole-archive', | |
4181 ], | |
4182 }] | |
4183 ], | |
4163 }], | 4184 }], |
4164 ], | 4185 ], |
4165 }], | 4186 }], |
4166 ], | 4187 ], |
4167 }], | 4188 }], |
4168 ['target_arch=="arm64"', { | 4189 ['target_arch=="arm64"', { |
4169 'target_conditions': [ | 4190 'target_conditions': [ |
4170 ['_toolset=="target"', { | 4191 ['_toolset=="target"', { |
4171 'conditions': [ | 4192 'conditions': [ |
4172 ['OS=="android"', { | 4193 ['OS=="android"', { |
(...skipping 2200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
6373 # settings in target dicts. SYMROOT is a special case, because many other | 6394 # settings in target dicts. SYMROOT is a special case, because many other |
6374 # Xcode variables depend on it, including variables such as | 6395 # Xcode variables depend on it, including variables such as |
6375 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 6396 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
6376 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 6397 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
6377 # files to appear (when present) in the UI as actual files and not red | 6398 # files to appear (when present) in the UI as actual files and not red |
6378 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 6399 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
6379 # and therefore SYMROOT, needs to be set at the project level. | 6400 # and therefore SYMROOT, needs to be set at the project level. |
6380 'SYMROOT': '<(DEPTH)/xcodebuild', | 6401 'SYMROOT': '<(DEPTH)/xcodebuild', |
6381 }, | 6402 }, |
6382 } | 6403 } |
OLD | NEW |