340 addAttr(rv, "CompileAs", "Default");
341 // Set /W3 option.
342 addAttr(rv, "WarningLevel", "Level3");
343 // Set /WX option,
344 addAttr(rv, "TreatWarningAsError", "true");
345 // Set /GS option
346 addAttr(rv, "BufferSecurityCheck", "false");
347 // Set /Zi option.
348 addAttr(rv, "DebugInformationFormat", "ProgramDatabase");
349 // Set /Yu option.
350 addAttr(rv, "PrecompiledHeader", "Use");
351 // Set /EHsc- option
352 addAttr(rv, "ExceptionHandling", "");
353
354 addAttr(rv, "MultiProcessorCompilation", "true");
355
356 return rv;
357 }
358
359 @Override
360 Vector getDebugCompilerFlags(String opt) {
361 Vector rv = new Vector();
362
363 // Set /On option
364 addAttr(rv, "Optimization", opt);
365 // Set /FR option.
366 addAttr(rv, "BrowseInformation", "true");
367 addAttr(rv, "BrowseInformationFile", "$(IntDir)");
368 // Set /MD option.
369 addAttr(rv, "RuntimeLibrary", "MultiThreadedDLL");
370 // Set /Oy- option
371 addAttr(rv, "OmitFramePointers", "false");
372
373 return rv;
374 }
375
376 @Override
377 Vector getProductCompilerFlags() {
378 Vector rv = new Vector();
379
380 // Set /O2 option.
381 addAttr(rv, "Optimization", "MaxSpeed");
382 // Set /Oy- option
383 addAttr(rv, "OmitFramePointers", "false");
384 // Set /Ob option. 1 is expandOnlyInline
385 addAttr(rv, "InlineFunctionExpansion", "OnlyExplicitInline");
386 // Set /GF option.
387 addAttr(rv, "StringPooling", "true");
388 // Set /MD option. 2 is rtMultiThreadedDLL
389 addAttr(rv, "RuntimeLibrary", "MultiThreadedDLL");
390 // Set /Gy option
391 addAttr(rv, "FunctionLevelLinking", "true");
|
340 addAttr(rv, "CompileAs", "Default");
341 // Set /W3 option.
342 addAttr(rv, "WarningLevel", "Level3");
343 // Set /WX option,
344 addAttr(rv, "TreatWarningAsError", "true");
345 // Set /GS option
346 addAttr(rv, "BufferSecurityCheck", "false");
347 // Set /Zi option.
348 addAttr(rv, "DebugInformationFormat", "ProgramDatabase");
349 // Set /Yu option.
350 addAttr(rv, "PrecompiledHeader", "Use");
351 // Set /EHsc- option
352 addAttr(rv, "ExceptionHandling", "");
353
354 addAttr(rv, "MultiProcessorCompilation", "true");
355
356 return rv;
357 }
358
359 @Override
360 Vector getDebugCompilerFlags(String opt, String platformName) {
361 Vector rv = new Vector();
362
363 // Set /On option
364 addAttr(rv, "Optimization", opt);
365 // Set /FR option.
366 addAttr(rv, "BrowseInformation", "true");
367 addAttr(rv, "BrowseInformationFile", "$(IntDir)");
368 // Set /MD option.
369 addAttr(rv, "RuntimeLibrary", "MultiThreadedDLL");
370 // Set /Oy- option
371 addAttr(rv, "OmitFramePointers", "false");
372 // Set /homeparams for x64 debug builds
373 if(platformName.equals("x64")) {
374 addAttr(rv, "AdditionalOptions", "/homeparams");
375 }
376
377 return rv;
378 }
379
380 @Override
381 Vector getProductCompilerFlags() {
382 Vector rv = new Vector();
383
384 // Set /O2 option.
385 addAttr(rv, "Optimization", "MaxSpeed");
386 // Set /Oy- option
387 addAttr(rv, "OmitFramePointers", "false");
388 // Set /Ob option. 1 is expandOnlyInline
389 addAttr(rv, "InlineFunctionExpansion", "OnlyExplicitInline");
390 // Set /GF option.
391 addAttr(rv, "StringPooling", "true");
392 // Set /MD option. 2 is rtMultiThreadedDLL
393 addAttr(rv, "RuntimeLibrary", "MultiThreadedDLL");
394 // Set /Gy option
395 addAttr(rv, "FunctionLevelLinking", "true");
|