OLD | NEW |
---|---|
1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2009 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 'variables': { | 6 'variables': { |
7 # .gyp files should set chromium_code to 1 if they build Chromium-specific | 7 # .gyp files should set chromium_code to 1 if they build Chromium-specific |
8 # code, as opposed to external code. This variable is used to control | 8 # code, as opposed to external code. This variable is used to control |
9 # such things as the set of warnings to enable, and whether warnings are | 9 # such things as the set of warnings to enable, and whether warnings are |
10 # treated as errors. | 10 # treated as errors. |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
42 # can add the following line (without the #) to ~/.gyp/include.gypi | 42 # can add the following line (without the #) to ~/.gyp/include.gypi |
43 # {'variables': {'library': 'shared_library'}} | 43 # {'variables': {'library': 'shared_library'}} |
44 # to compile as shared by default | 44 # to compile as shared by default |
45 'library%': 'static_library', | 45 'library%': 'static_library', |
46 | 46 |
47 # TODO(bradnelson): eliminate this when possible. | 47 # TODO(bradnelson): eliminate this when possible. |
48 # To allow local gyp files to prevent release.vsprops from being included. | 48 # To allow local gyp files to prevent release.vsprops from being included. |
49 # Yes(1) means include release.vsprops. | 49 # Yes(1) means include release.vsprops. |
50 # Once all vsprops settings are migrated into gyp, this can go away. | 50 # Once all vsprops settings are migrated into gyp, this can go away. |
51 'msvs_use_common_release%': 1, | 51 'msvs_use_common_release%': 1, |
52 | |
53 # The architecture that we're building on. | |
54 'target_arch%': 'IA32', | |
Mark Mentovai
2009/05/06 21:08:27
I would prefer not using caps on the right-hand si
sgk
2009/05/06 22:38:08
Done.
| |
52 }, | 55 }, |
53 'target_defaults': { | 56 'target_defaults': { |
54 'conditions': [ | 57 'conditions': [ |
58 ['target_arch=="ARM"', { | |
59 'defines': ['__ARMEL__'], | |
Dean McNamee
2009/05/07 15:32:01
Why are we defining this? It should be defined by
| |
60 }], | |
55 ['branding=="Chrome"', { | 61 ['branding=="Chrome"', { |
56 'defines': ['GOOGLE_CHROME_BUILD'], | 62 'defines': ['GOOGLE_CHROME_BUILD'], |
57 }, { # else: branding!="Chrome" | 63 }, { # else: branding!="Chrome" |
58 'defines': ['CHROMIUM_BUILD'], | 64 'defines': ['CHROMIUM_BUILD'], |
59 }], | 65 }], |
60 ['coverage!=0', { | 66 ['coverage!=0', { |
61 'conditions': [ | 67 'conditions': [ |
62 ['OS=="mac"', { | 68 ['OS=="mac"', { |
63 'xcode_settings': { | 69 'xcode_settings': { |
64 'GCC_INSTRUMENT_PROGRAM_FLOW_ARCS': 'YES', | 70 'GCC_INSTRUMENT_PROGRAM_FLOW_ARCS': 'YES', |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
130 }], | 136 }], |
131 [ 'OS=="win" and msvs_use_common_release', { | 137 [ 'OS=="win" and msvs_use_common_release', { |
132 'configuration_platform': 'Win32', | 138 'configuration_platform': 'Win32', |
133 'msvs_props': ['release.vsprops'], | 139 'msvs_props': ['release.vsprops'], |
134 }], | 140 }], |
135 ], | 141 ], |
136 }, | 142 }, |
137 }, | 143 }, |
138 }, | 144 }, |
139 'conditions': [ | 145 'conditions': [ |
140 [ 'OS=="linux"', { | 146 ['OS=="linux"', { |
141 'target_defaults': { | 147 'target_defaults': { |
142 'asflags': [ | |
143 # Needed so that libs with .s files (e.g. libicudata.a) | |
144 # are compatible with the general 32-bit-ness. | |
145 '-32', | |
146 ], | |
147 # Enable -Werror by default, but put it in a variable so it can | 148 # Enable -Werror by default, but put it in a variable so it can |
148 # be disabled in ~/.gyp/include.gypi on the valgrind builders. | 149 # be disabled in ~/.gyp/include.gypi on the valgrind builders. |
149 'variables': { | 150 'variables': { |
150 'werror%': '-Werror', | 151 'werror%': '-Werror', |
151 }, | 152 }, |
152 # All floating-point computations on x87 happens in 80-bit | |
153 # precision. Because the C and C++ language standards allow | |
154 # the compiler to keep the floating-point values in higher | |
155 # precision than what's specified in the source and doing so | |
156 # is more efficient than constantly rounding up to 64-bit or | |
157 # 32-bit precision as specified in the source, the compiler, | |
158 # especially in the optimized mode, tries very hard to keep | |
159 # values in x87 floating-point stack (in 80-bit precision) | |
160 # as long as possible. This has important side effects, that | |
161 # the real value used in computation may change depending on | |
162 # how the compiler did the optimization - that is, the value | |
163 # kept in 80-bit is different than the value rounded down to | |
164 # 64-bit or 32-bit. There are possible compiler options to make | |
165 # this behavior consistent (e.g. -ffloat-store would keep all | |
166 # floating-values in the memory, thus force them to be rounded | |
167 # to its original precision) but they have significant runtime | |
168 # performance penalty. | |
169 # | |
170 # -mfpmath=sse -msse2 makes the compiler use SSE instructions | |
171 # which keep floating-point values in SSE registers in its | |
172 # native precision (32-bit for single precision, and 64-bit for | |
173 # double precision values). This means the floating-point value | |
174 # used during computation does not change depending on how the | |
175 # compiler optimized the code, since the value is always kept | |
176 # in its specified precision. | |
177 'cflags': [ | 153 'cflags': [ |
178 '-m32', | 154 '<(werror)', # See note above about the werror variable. |
179 '-pthread', | 155 '-pthread', |
180 '-march=pentium4', | |
181 '-fno-exceptions', | |
182 '-msse2', | |
183 '-mfpmath=sse', | |
184 '-Wall', | |
185 '<(werror)', # See note above about the werror variable. | |
186 ], | 156 ], |
187 'ldflags': [ | 157 'ldflags': [ |
188 '-m32', | |
189 '-pthread', | 158 '-pthread', |
190 ], | 159 ], |
191 'scons_variable_settings': { | 160 'scons_variable_settings': { |
192 'LIBPATH': ['$LIB_DIR'], | 161 'LIBPATH': ['$LIB_DIR'], |
193 # Linking of large files uses lots of RAM, so serialize links | 162 # Linking of large files uses lots of RAM, so serialize links |
194 # using the handy flock command from util-linux. | 163 # using the handy flock command from util-linux. |
195 'FLOCK_LINK': ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], | 164 'FLOCK_LINK': ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], |
196 'FLOCK_SHLINK': ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], | 165 'FLOCK_SHLINK': ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], |
197 'FLOCK_LDMODULE': ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], | 166 'FLOCK_LDMODULE': ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], |
198 | 167 |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
281 'ldflags': ['-fprofile-arcs'], | 250 'ldflags': ['-fprofile-arcs'], |
282 }, | 251 }, |
283 'profile': { | 252 'profile': { |
284 'cflags': ['-pg', '-g'], | 253 'cflags': ['-pg', '-g'], |
285 'ldflags': ['-pg'], | 254 'ldflags': ['-pg'], |
286 }, | 255 }, |
287 'symbols': { | 256 'symbols': { |
288 'cflags': ['-g'], | 257 'cflags': ['-g'], |
289 }, | 258 }, |
290 }, | 259 }, |
260 'conditions': [ | |
261 [ 'target_arch=="ARM"', { | |
262 'cflags': [ | |
263 '-fno-exceptions', | |
264 '-Wall', | |
265 ], | |
266 }, { # else: target_arch != ARM | |
267 'asflags': [ | |
268 # Needed so that libs with .s files (e.g. libicudata.a) | |
269 # are compatible with the general 32-bit-ness. | |
270 '-32', | |
271 ], | |
272 # All floating-point computations on x87 happens in 80-bit | |
273 # precision. Because the C and C++ language standards allow | |
274 # the compiler to keep the floating-point values in higher | |
275 # precision than what's specified in the source and doing so | |
276 # is more efficient than constantly rounding up to 64-bit or | |
277 # 32-bit precision as specified in the source, the compiler, | |
278 # especially in the optimized mode, tries very hard to keep | |
279 # values in x87 floating-point stack (in 80-bit precision) | |
280 # as long as possible. This has important side effects, that | |
281 # the real value used in computation may change depending on | |
282 # how the compiler did the optimization - that is, the value | |
283 # kept in 80-bit is different than the value rounded down to | |
284 # 64-bit or 32-bit. There are possible compiler options to make | |
285 # this behavior consistent (e.g. -ffloat-store would keep all | |
286 # floating-values in the memory, thus force them to be rounded | |
287 # to its original precision) but they have significant runtime | |
288 # performance penalty. | |
289 # | |
290 # -mfpmath=sse -msse2 makes the compiler use SSE instructions | |
291 # which keep floating-point values in SSE registers in its | |
292 # native precision (32-bit for single precision, and 64-bit for | |
293 # double precision values). This means the floating-point value | |
294 # used during computation does not change depending on how the | |
295 # compiler optimized the code, since the value is always kept | |
296 # in its specified precision. | |
297 'cflags': [ | |
298 '-m32', | |
299 '-march=pentium4', | |
300 '-fno-exceptions', | |
301 '-msse2', | |
302 '-mfpmath=sse', | |
303 '-Wall', | |
304 ], | |
305 'ldflags': [ | |
306 '-m32', | |
307 ], | |
308 }], | |
309 ], | |
291 }, | 310 }, |
292 }], | 311 }], |
293 ['OS=="mac"', { | 312 ['OS=="mac"', { |
294 'target_defaults': { | 313 'target_defaults': { |
295 'mac_bundle': 0, | 314 'mac_bundle': 0, |
296 'xcode_settings': { | 315 'xcode_settings': { |
297 'ALWAYS_SEARCH_USER_PATHS': 'NO', | 316 'ALWAYS_SEARCH_USER_PATHS': 'NO', |
298 'GCC_C_LANGUAGE_STANDARD': 'c99', | 317 'GCC_C_LANGUAGE_STANDARD': 'c99', |
299 'GCC_CW_ASM_SYNTAX': 'NO', | 318 'GCC_CW_ASM_SYNTAX': 'NO', |
300 'GCC_ENABLE_PASCAL_STRINGS': 'NO', | 319 'GCC_ENABLE_PASCAL_STRINGS': 'NO', |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
432 # settings in target dicts. SYMROOT is a special case, because many other | 451 # settings in target dicts. SYMROOT is a special case, because many other |
433 # Xcode variables depend on it, including variables such as | 452 # Xcode variables depend on it, including variables such as |
434 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 453 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
435 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 454 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
436 # files to appear (when present) in the UI as actual files and not red | 455 # files to appear (when present) in the UI as actual files and not red |
437 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 456 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
438 # and therefore SYMROOT, needs to be set at the project level. | 457 # and therefore SYMROOT, needs to be set at the project level. |
439 'SYMROOT': '<(DEPTH)/xcodebuild', | 458 'SYMROOT': '<(DEPTH)/xcodebuild', |
440 }, | 459 }, |
441 } | 460 } |
OLD | NEW |