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/compiler/compiler.gni") | 5 import("//build/config/compiler/compiler.gni") |
6 import("//build/config/sanitizers/sanitizers.gni") | 6 import("//build/config/sanitizers/sanitizers.gni") |
7 import("//build/config/win/visual_studio_version.gni") | 7 import("//build/config/win/visual_studio_version.gni") |
8 | 8 |
9 assert(is_win) | 9 assert(is_win) |
10 | 10 |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 } | 77 } |
78 } | 78 } |
79 | 79 |
80 # This is included by reference in the //build/config/compiler:runtime_library | 80 # This is included by reference in the //build/config/compiler:runtime_library |
81 # config that is applied to all targets. It is here to separate out the logic | 81 # config that is applied to all targets. It is here to separate out the logic |
82 # that is Windows-only. Please see that target for advice on what should go in | 82 # that is Windows-only. Please see that target for advice on what should go in |
83 # :runtime_library vs. :compiler. | 83 # :runtime_library vs. :compiler. |
84 config("runtime_library") { | 84 config("runtime_library") { |
85 cflags = [] | 85 cflags = [] |
86 | 86 |
| 87 # Defines that set up the CRT. |
87 defines = [ | 88 defines = [ |
88 "__STD_C", | 89 "__STD_C", |
89 "_CRT_RAND_S", | 90 "_CRT_RAND_S", |
90 "_CRT_SECURE_NO_DEPRECATE", | 91 "_CRT_SECURE_NO_DEPRECATE", |
91 "_HAS_EXCEPTIONS=0", | 92 "_HAS_EXCEPTIONS=0", |
92 "_SCL_SECURE_NO_DEPRECATE", | 93 "_SCL_SECURE_NO_DEPRECATE", |
93 ] | 94 ] |
94 | 95 |
| 96 # Defines that set up the Windows SDK. |
| 97 defines += [ |
| 98 "_ATL_NO_OPENGL", |
| 99 "_WINDOWS", |
| 100 "CERT_CHAIN_PARA_HAS_EXTRA_FIELDS", |
| 101 "NTDDI_VERSION=0x06030000", |
| 102 "PSAPI_VERSION=1", |
| 103 "WIN32", |
| 104 "_SECURE_ATL", |
| 105 |
| 106 # This is required for ATL to use XP-safe versions of its functions. |
| 107 "_USING_V110_SDK71_", |
| 108 ] |
| 109 |
95 if (is_component_build) { | 110 if (is_component_build) { |
96 # Component mode: dynamic CRT. Since the library is shared, it requires | 111 # Component mode: dynamic CRT. Since the library is shared, it requires |
97 # exceptions or will give errors about things not matching, so keep | 112 # exceptions or will give errors about things not matching, so keep |
98 # exceptions on. | 113 # exceptions on. |
99 if (is_debug) { | 114 if (is_debug) { |
100 cflags += [ "/MDd" ] | 115 cflags += [ "/MDd" ] |
101 } else { | 116 } else { |
102 cflags += [ "/MD" ] | 117 cflags += [ "/MD" ] |
103 } | 118 } |
104 } else { | 119 } else { |
105 if (current_os != "win") { | 120 if (current_os != "win") { |
106 # WindowsRT: use the dynamic CRT. | 121 # WindowsRT: use the dynamic CRT. |
107 if (is_debug) { | 122 if (is_debug) { |
108 cflags += [ "/MDd" ] | 123 cflags += [ "/MDd" ] |
109 } else { | 124 } else { |
110 cflags += [ "/MD" ] | 125 cflags += [ "/MD" ] |
111 } | 126 } |
112 } else { | 127 } else { |
113 # Desktop Windows: static CRT. | 128 # Desktop Windows: static CRT. |
114 if (is_debug) { | 129 if (is_debug) { |
115 cflags += [ "/MTd" ] | 130 cflags += [ "/MTd" ] |
116 } else { | 131 } else { |
117 cflags += [ "/MT" ] | 132 cflags += [ "/MT" ] |
118 } | 133 } |
119 } | 134 } |
120 } | 135 } |
121 } | 136 } |
122 | 137 |
123 # Compiler setup for the Windows SDK. Applied to all targets. | |
124 config("sdk") { | |
125 # The include path is the stuff returned by the script. | |
126 #include_dirs = msvc_config[0] TODO(brettw) make this work. | |
127 | |
128 defines = [ | |
129 "_ATL_NO_OPENGL", | |
130 "_WINDOWS", | |
131 "CERT_CHAIN_PARA_HAS_EXTRA_FIELDS", | |
132 "NTDDI_VERSION=0x06030000", | |
133 "PSAPI_VERSION=1", | |
134 "WIN32", | |
135 "_SECURE_ATL", | |
136 | |
137 # This is required for ATL to use XP-safe versions of its functions. | |
138 "_USING_V110_SDK71_", | |
139 ] | |
140 } | |
141 | |
142 # Sets the default Windows build version. This is separated because some | 138 # Sets the default Windows build version. This is separated because some |
143 # targets need to manually override it for their compiles. | 139 # targets need to manually override it for their compiles. |
144 config("winver") { | 140 config("winver") { |
145 defines = [ | 141 defines = [ |
146 "_WIN32_WINNT=0x0603", | 142 "_WIN32_WINNT=0x0603", |
147 "WINVER=0x0603", | 143 "WINVER=0x0603", |
148 ] | 144 ] |
149 } | 145 } |
150 | 146 |
151 # Linker flags for Windows SDK setup, this is applied only to EXEs and DLLs. | 147 # Linker flags for Windows SDK setup, this is applied only to EXEs and DLLs. |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
313 | 309 |
314 # Internal stuff -------------------------------------------------------------- | 310 # Internal stuff -------------------------------------------------------------- |
315 | 311 |
316 # Config used by the MIDL template to disable warnings. | 312 # Config used by the MIDL template to disable warnings. |
317 config("midl_warnings") { | 313 config("midl_warnings") { |
318 if (is_clang) { | 314 if (is_clang) { |
319 # MIDL generates code like "#endif !_MIDL_USE_GUIDDEF_". | 315 # MIDL generates code like "#endif !_MIDL_USE_GUIDDEF_". |
320 cflags = [ "-Wno-extra-tokens" ] | 316 cflags = [ "-Wno-extra-tokens" ] |
321 } | 317 } |
322 } | 318 } |
OLD | NEW |