michael@0: # Copyright (c) 2011 The Chromium Authors. All rights reserved. michael@0: # Use of this source code is governed by a BSD-style license that can be michael@0: # found in the LICENSE file. michael@0: { michael@0: 'includes': ['release_defaults.gypi'], michael@0: 'defines': ['OFFICIAL_BUILD'], michael@0: 'msvs_settings': { michael@0: 'VCCLCompilerTool': { michael@0: 'InlineFunctionExpansion': '2', michael@0: 'EnableIntrinsicFunctions': 'true', michael@0: 'EnableFiberSafeOptimizations': 'true', michael@0: 'OmitFramePointers': 'false', michael@0: # The above is not sufficient (http://crbug.com/106711): it michael@0: # simply eliminates an explicit "/Oy", but both /O2 and /Ox michael@0: # perform FPO regardless, so we must explicitly disable. michael@0: # We still want the false setting above to avoid having michael@0: # "/Oy /Oy-" and warnings about overriding. michael@0: 'AdditionalOptions': ['/Oy-'], michael@0: }, michael@0: 'VCLibrarianTool': { michael@0: 'AdditionalOptions': [ michael@0: '/ltcg', michael@0: '/expectedoutputsize:120000000' michael@0: ], michael@0: }, michael@0: 'VCLinkerTool': { michael@0: 'AdditionalOptions': [ michael@0: '/time', michael@0: # This may reduce memory fragmentation during linking. michael@0: # The expected size is 40*1024*1024, which gives us about 10M of michael@0: # headroom as of Dec 16, 2011. michael@0: '/expectedoutputsize:41943040', michael@0: ], michael@0: 'LinkTimeCodeGeneration': '1', michael@0: # The /PROFILE flag causes the linker to add a "FIXUP" debug stream to michael@0: # the generated PDB. According to MSDN documentation, this flag is only michael@0: # available (or perhaps supported) in the Enterprise (team development) michael@0: # version of Visual Studio. If this blocks your official build, simply michael@0: # comment out this line, then re-run "gclient runhooks". michael@0: 'Profile': 'true', michael@0: }, michael@0: }, michael@0: }