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 { | 5 { |
6 'includes': [ | 6 'includes': [ |
7 '../../../../ppapi/ppapi_nacl_test_common.gypi', | 7 '../../../../ppapi/ppapi_nacl_test_common.gypi', |
8 ], | 8 ], |
9 'targets': [ | 9 'targets': [ |
10 { | 10 { |
(...skipping 1121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1132 # The program does not apply any dynamic relocations at start up, | 1132 # The program does not apply any dynamic relocations at start up, |
1133 # so it cannot rely on relocations having been applied. | 1133 # so it cannot rely on relocations having been applied. |
1134 # In addition, -fvisibility=hidden avoids creating some types | 1134 # In addition, -fvisibility=hidden avoids creating some types |
1135 # of relocation. | 1135 # of relocation. |
1136 'cflags': [ | 1136 'cflags': [ |
1137 '-fPIC', | 1137 '-fPIC', |
1138 '-fvisibility=hidden', | 1138 '-fvisibility=hidden', |
1139 | 1139 |
1140 # Stack-Smashing protector does not work with libc-free context. | 1140 # Stack-Smashing protector does not work with libc-free context. |
1141 '-fno-stack-protector', | 1141 '-fno-stack-protector', |
| 1142 # Optimizers may translate the original code to code which |
| 1143 # requires builtin functions and/or relocations. Specifically, |
| 1144 # the LLVM's optimizer translates for-loop based zero |
| 1145 # clear to memset. |
| 1146 '-O0', |
1142 ], | 1147 ], |
1143 'cflags!': [ | 1148 'cflags!': [ |
1144 # We filter these out because release_extra_cflags or another | 1149 # We filter these out because release_extra_cflags or another |
1145 # such thing might be adding them in, and those options wind up | 1150 # such thing might be adding them in, and those options wind up |
1146 # coming after the -fno-stack-protector we added above. | 1151 # coming after the -fno-stack-protector we added above. |
1147 '-fstack-protector', | 1152 '-fstack-protector', |
1148 '-fstack-protector-all', | 1153 '-fstack-protector-all', |
1149 '-fprofile-generate', | 1154 '-fprofile-generate', |
1150 '-finstrument-functions', | 1155 '-finstrument-functions', |
| 1156 '-O2', |
1151 ], | 1157 ], |
1152 'ldflags': [ | 1158 'ldflags': [ |
1153 '-nostdlib', | 1159 '-nostdlib', |
1154 '-shared', | 1160 '-shared', |
| 1161 # This binary cannot relocate itself, so we should have no |
| 1162 # undefined references left. |
| 1163 '-Wl,--no-undefined', |
1155 ], | 1164 ], |
1156 'ldflags!': [ | 1165 'ldflags!': [ |
1157 # Explicitly remove the -pthread flag to avoid a link time warning. | 1166 # Explicitly remove the -pthread flag to avoid a link time warning. |
1158 '-pthread', | 1167 '-pthread', |
1159 ], | 1168 ], |
1160 'defines': [ | 1169 'defines': [ |
1161 # The code depends on NaCl's headers. This is a macro for them. | 1170 # The code depends on NaCl's headers. This is a macro for them. |
1162 'NACL_LINUX=1', | 1171 'NACL_LINUX=1', |
1163 ], | 1172 ], |
1164 # For native_client/src/include/... | 1173 # For native_client/src/include/... |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1208 'files': [ | 1217 'files': [ |
1209 '>@(test_files)', | 1218 '>@(test_files)', |
1210 ], | 1219 ], |
1211 }, | 1220 }, |
1212 ], | 1221 ], |
1213 }, | 1222 }, |
1214 ], | 1223 ], |
1215 }], | 1224 }], |
1216 ], | 1225 ], |
1217 } | 1226 } |
OLD | NEW |