|
137 | 137 | 'Debug': {
|
138 | 138 | 'variables': {
|
139 | 139 | 'v8_enable_handle_zapping': 1,
|
| 140 | + 'conditions': [ |
| 141 | + ['node_shared != "true"', { |
| 142 | + 'MSVC_runtimeType': 1, # MultiThreadedDebug (/MTd) |
| 143 | + }, { |
| 144 | + 'MSVC_runtimeType': 3, # MultiThreadedDebugDLL (/MDd) |
| 145 | + }], |
| 146 | + ], |
140 | 147 | },
|
141 | 148 | 'defines': [ 'DEBUG', '_DEBUG', 'V8_ENABLE_CHECKS' ],
|
142 | 149 | 'cflags': [ '-g', '-O0' ],
|
143 | 150 | 'conditions': [
|
144 |
| - ['target_arch=="x64"', { |
145 |
| - 'msvs_configuration_platform': 'x64', |
146 |
| - }], |
147 | 151 | ['OS=="aix"', {
|
148 | 152 | 'cflags': [ '-gxcoff' ],
|
149 | 153 | 'ldflags': [ '-Wl,-bbigtoc' ],
|
|
152 | 156 | 'cflags': [ '-fPIE' ],
|
153 | 157 | 'ldflags': [ '-fPIE', '-pie' ]
|
154 | 158 | }],
|
155 |
| - ['node_shared=="true"', { |
156 |
| - 'msvs_settings': { |
157 |
| - 'VCCLCompilerTool': { |
158 |
| - 'RuntimeLibrary': 3, # MultiThreadedDebugDLL (/MDd) |
159 |
| - } |
160 |
| - } |
161 |
| - }], |
162 |
| - ['node_shared=="false"', { |
163 |
| - 'msvs_settings': { |
164 |
| - 'VCCLCompilerTool': { |
165 |
| - 'RuntimeLibrary': 1 # MultiThreadedDebug (/MTd) |
166 |
| - } |
167 |
| - } |
168 |
| - }] |
169 | 159 | ],
|
170 | 160 | 'msvs_settings': {
|
171 | 161 | 'VCCLCompilerTool': {
|
172 |
| - 'Optimization': 0, # /Od, no optimization |
| 162 | + 'BasicRuntimeChecks': 3, # /RTC1 |
173 | 163 | 'MinimalRebuild': 'false',
|
174 | 164 | 'OmitFramePointers': 'false',
|
175 |
| - 'BasicRuntimeChecks': 3, # /RTC1 |
176 |
| - 'MultiProcessorCompilation': 'true', |
177 |
| - 'AdditionalOptions': [ |
178 |
| - '/bigobj', # prevent error C1128 in VS2015 |
179 |
| - ], |
| 165 | + 'Optimization': 0, # /Od, no optimization |
| 166 | + 'RuntimeLibrary': '<(MSVC_runtimeType)', |
180 | 167 | },
|
181 | 168 | 'VCLinkerTool': {
|
182 | 169 | 'LinkIncremental': 2, # enable incremental linking
|
|
189 | 176 | 'Release': {
|
190 | 177 | 'variables': {
|
191 | 178 | 'v8_enable_handle_zapping': 0,
|
| 179 | + 'pgo_generate': ' -fprofile-generate ', |
| 180 | + 'pgo_use': ' -fprofile-use -fprofile-correction ', |
| 181 | + 'lto': ' -flto=4 -fuse-linker-plugin -ffat-lto-objects ', |
| 182 | + 'conditions': [ |
| 183 | + ['node_shared != "true"', { |
| 184 | + 'MSVC_runtimeType': 0 # MultiThreaded (/MT) |
| 185 | + }, { |
| 186 | + 'MSVC_runtimeType': 2 # MultiThreadedDLL (/MD) |
| 187 | + }], |
| 188 | + ], |
192 | 189 | },
|
193 | 190 | 'cflags': [ '-O3' ],
|
194 | 191 | 'conditions': [
|
195 |
| - ['target_arch=="x64"', { |
196 |
| - 'msvs_configuration_platform': 'x64', |
197 |
| - }], |
198 | 192 | ['OS=="solaris"', {
|
199 | 193 | # pull in V8's postmortem metadata
|
200 | 194 | 'ldflags': [ '-Wl,-z,allextract' ]
|
|
203 | 197 | 'cflags': [ '-fno-omit-frame-pointer' ],
|
204 | 198 | }],
|
205 | 199 | ['OS=="linux"', {
|
206 |
| - 'variables': { |
207 |
| - 'pgo_generate': ' -fprofile-generate ', |
208 |
| - 'pgo_use': ' -fprofile-use -fprofile-correction ', |
209 |
| - 'lto': ' -flto=4 -fuse-linker-plugin -ffat-lto-objects ', |
210 |
| - }, |
211 | 200 | 'conditions': [
|
212 | 201 | ['enable_pgo_generate=="true"', {
|
213 | 202 | 'cflags': ['<(pgo_generate)'],
|
|
227 | 216 | 'cflags': [ '-fPIE' ],
|
228 | 217 | 'ldflags': [ '-fPIE', '-pie' ]
|
229 | 218 | }],
|
230 |
| - ['node_shared=="true"', { |
231 |
| - 'msvs_settings': { |
232 |
| - 'VCCLCompilerTool': { |
233 |
| - 'RuntimeLibrary': 2 # MultiThreadedDLL (/MD) |
234 |
| - } |
235 |
| - } |
236 |
| - }], |
237 |
| - ['node_shared=="false"', { |
238 |
| - 'msvs_settings': { |
239 |
| - 'VCCLCompilerTool': { |
240 |
| - 'RuntimeLibrary': 0 # MultiThreaded (/MT) |
241 |
| - } |
242 |
| - } |
243 |
| - }], |
244 |
| - ['node_with_ltcg=="true"', { |
245 |
| - 'msvs_settings': { |
246 |
| - 'VCCLCompilerTool': { |
247 |
| - 'WholeProgramOptimization': 'true' # /GL, whole program optimization, needed for LTCG |
248 |
| - }, |
249 |
| - 'VCLibrarianTool': { |
250 |
| - 'AdditionalOptions': [ |
251 |
| - '/LTCG:INCREMENTAL', # link time code generation |
252 |
| - ] |
253 |
| - }, |
254 |
| - 'VCLinkerTool': { |
255 |
| - 'OptimizeReferences': 2, # /OPT:REF |
256 |
| - 'EnableCOMDATFolding': 2, # /OPT:ICF |
257 |
| - 'LinkIncremental': 1, # disable incremental linking |
258 |
| - 'AdditionalOptions': [ |
259 |
| - '/LTCG:INCREMENTAL', # incremental link-time code generation |
260 |
| - ] |
261 |
| - } |
262 |
| - } |
263 |
| - }, { |
264 |
| - 'msvs_settings': { |
265 |
| - 'VCCLCompilerTool': { |
266 |
| - 'WholeProgramOptimization': 'false' |
267 |
| - }, |
268 |
| - 'VCLinkerTool': { |
269 |
| - 'LinkIncremental': 2 # enable incremental linking |
270 |
| - } |
271 |
| - } |
272 |
| - }] |
273 | 219 | ],
|
274 | 220 | 'msvs_settings': {
|
275 | 221 | 'VCCLCompilerTool': {
|
276 |
| - 'Optimization': 3, # /Ox, full optimization |
277 |
| - 'FavorSizeOrSpeed': 1, # /Ot, favor speed over size |
278 |
| - 'InlineFunctionExpansion': 2, # /Ob2, inline anything eligible |
279 |
| - 'OmitFramePointers': 'true', |
280 | 222 | 'EnableFunctionLevelLinking': 'true',
|
281 | 223 | 'EnableIntrinsicFunctions': 'true',
|
| 224 | + 'FavorSizeOrSpeed': 1, # /Ot, favor speed over size |
| 225 | + 'InlineFunctionExpansion': 2, # /Ob2, inline anything eligible |
| 226 | + 'OmitFramePointers': 'true', |
| 227 | + 'Optimization': 3, # /Ox, full optimization |
| 228 | + 'RuntimeLibrary': '<(MSVC_runtimeType)', |
282 | 229 | 'RuntimeTypeInfo': 'false',
|
283 |
| - 'MultiProcessorCompilation': 'true', |
284 |
| - 'AdditionalOptions': [ |
285 |
| - ], |
286 | 230 | }
|
287 | 231 | }
|
288 | 232 | }
|
|
301 | 245 | 'cflags!': ['-Werror'],
|
302 | 246 | 'msvs_settings': {
|
303 | 247 | 'VCCLCompilerTool': {
|
304 |
| - 'StringPooling': 'true', # pool string literals |
305 |
| - 'DebugInformationFormat': 1, # /Z7 embed info in .obj files |
306 |
| - 'WarningLevel': 3, |
307 | 248 | 'BufferSecurityCheck': 'true',
|
| 249 | + 'DebugInformationFormat': 1, # /Z7 embed info in .obj files |
308 | 250 | 'ExceptionHandling': 0, # /EHsc
|
| 251 | + 'MultiProcessorCompilation': 'true', |
| 252 | + 'StringPooling': 'true', # pool string literals |
309 | 253 | 'SuppressStartupBanner': 'true',
|
310 | 254 | 'WarnAsError': 'false',
|
| 255 | + 'WarningLevel': 3, # /W3 |
311 | 256 | },
|
312 | 257 | 'VCLinkerTool': {
|
313 | 258 | 'conditions': [
|
|
329 | 274 | }],
|
330 | 275 | ],
|
331 | 276 | 'GenerateDebugInformation': 'true',
|
332 |
| - 'GenerateMapFile': 'true', # /MAP |
333 |
| - 'MapExports': 'true', # /MAPINFO:EXPORTS |
334 |
| - 'RandomizedBaseAddress': 2, # enable ASLR |
335 |
| - 'DataExecutionPrevention': 2, # enable DEP |
336 |
| - 'AllowIsolation': 'true', |
337 | 277 | 'SuppressStartupBanner': 'true',
|
338 | 278 | },
|
339 | 279 | },
|
|
351 | 291 | # - "C4244: conversion from 'type1' to 'type2', possible loss of data"
|
352 | 292 | # Ususaly safe. Disable for `dep`, enable for `src`
|
353 | 293 | 'msvs_disabled_warnings': [4351, 4355, 4800, 4251, 4275, 4244, 4267],
|
| 294 | + 'msvs_cygwin_shell': 0, # prevent actions from trying to use cygwin |
| 295 | + |
354 | 296 | 'conditions': [
|
| 297 | + [ 'target_arch=="x64"', { |
| 298 | + 'msvs_configuration_platform': 'x64', |
| 299 | + }], |
355 | 300 | ['asan == 1 and OS != "mac"', {
|
356 | 301 | 'cflags+': [
|
357 | 302 | '-fno-omit-frame-pointer',
|
|
380 | 325 | ],
|
381 | 326 | }],
|
382 | 327 | ['OS == "win"', {
|
383 |
| - 'msvs_cygwin_shell': 0, # prevent actions from trying to use cygwin |
384 | 328 | 'defines': [
|
385 | 329 | 'WIN32',
|
386 | 330 | # we don't really want VC++ warning us about
|
|
0 commit comments