| 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 |