OLD | NEW |
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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 import("//build/config/win/visual_studio_version.gni") | 5 import("//build/config/win/visual_studio_version.gni") |
6 | 6 |
7 # Compiler setup for the Windows SDK. Applied to all targets. | 7 # Compiler setup for the Windows SDK. Applied to all targets. |
8 config("sdk") { | 8 config("sdk") { |
9 # The include path is the stuff returned by the script. | 9 # The include path is the stuff returned by the script. |
10 #include_dirs = msvc_config[0] TODO(brettw) make this work. | 10 #include_dirs = msvc_config[0] TODO(brettw) make this work. |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 "/ignore:4199", | 66 "/ignore:4199", |
67 "/ignore:4221", | 67 "/ignore:4221", |
68 "/ignore:4197", # Disable multiple Dart_True export warning. | 68 "/ignore:4197", # Disable multiple Dart_True export warning. |
69 "/NXCOMPAT", | 69 "/NXCOMPAT", |
70 | 70 |
71 # Suggested by Microsoft Devrel to avoid | 71 # Suggested by Microsoft Devrel to avoid |
72 # LINK : fatal error LNK1248: image size (80000000) | 72 # LINK : fatal error LNK1248: image size (80000000) |
73 # exceeds maximum allowable size (80000000) | 73 # exceeds maximum allowable size (80000000) |
74 # which started happening more regularly after VS2013 Update 4. | 74 # which started happening more regularly after VS2013 Update 4. |
75 "/maxilksize:2147483647", | 75 "/maxilksize:2147483647", |
| 76 |
| 77 # Force the creation of a .lib file for all executable() targets. |
| 78 "/EXPORT:main", |
76 ] | 79 ] |
77 | 80 |
78 # ASLR makes debugging with windbg difficult because Chrome.exe and | 81 # ASLR makes debugging with windbg difficult because Chrome.exe and |
79 # Chrome.dll share the same base name. As result, windbg will name the | 82 # Chrome.dll share the same base name. As result, windbg will name the |
80 # Chrome.dll module like chrome_<base address>, where <base address> | 83 # Chrome.dll module like chrome_<base address>, where <base address> |
81 # typically changes with each launch. This in turn means that breakpoints in | 84 # typically changes with each launch. This in turn means that breakpoints in |
82 # Chrome.dll don't stick from one launch to the next. For this reason, we | 85 # Chrome.dll don't stick from one launch to the next. For this reason, we |
83 # turn ASLR off in debug builds. | 86 # turn ASLR off in debug builds. |
84 if (is_debug) { | 87 if (is_debug) { |
85 ldflags += [ "/DYNAMICBASE:NO" ] | 88 ldflags += [ "/DYNAMICBASE:NO" ] |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 | 168 |
166 # Nominmax -------------------------------------------------------------------- | 169 # Nominmax -------------------------------------------------------------------- |
167 | 170 |
168 # Some third party code defines NOMINMAX before including windows.h, which | 171 # Some third party code defines NOMINMAX before including windows.h, which |
169 # then causes warnings when it's been previously defined on the command line. | 172 # then causes warnings when it's been previously defined on the command line. |
170 # For such targets, this config can be removed. | 173 # For such targets, this config can be removed. |
171 | 174 |
172 config("nominmax") { | 175 config("nominmax") { |
173 defines = [ "NOMINMAX" ] | 176 defines = [ "NOMINMAX" ] |
174 } | 177 } |
OLD | NEW |