Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(54)

Unified Diff: build/config/win/BUILD.gn

Issue 306613002: Add support for VS express to the GN build. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | build/config/win/visual_studio_version.gni » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/config/win/BUILD.gn
diff --git a/build/config/win/BUILD.gn b/build/config/win/BUILD.gn
index 8f08e4fcdd36dd46a14560075a1802c88e83470f..3fed26abe8cca492da354ea6e3aa509254fef867 100644
--- a/build/config/win/BUILD.gn
+++ b/build/config/win/BUILD.gn
@@ -11,7 +11,6 @@ config("sdk") {
defines = [
"_ATL_NO_OPENGL",
- "_SECURE_ATL",
"_WIN32_WINNT=0x0602",
"_WINDOWS",
"CERT_CHAIN_PARA_HAS_EXTRA_FIELDS",
@@ -31,6 +30,21 @@ config("sdk") {
"$visual_studio_path\VC\include",
"$visual_studio_path\VC\atlmfc\include",
]
+
+ if (is_visual_studio_express) {
+ include_dirs += [
+ "$wdk_path/inc/atl71",
+ "$wdk_path/inc/mfc42",
+ ]
+
+ # https://code.google.com/p/chromium/issues/detail?id=372451#c20
+ # Warning 4702 ("Unreachable code") should be re-enabled once Express users
+ # are updated to VS2013 Update 2.
+ cflags = [ "/wd4702" ]
+ } else {
+ # Only supported on non-Express versions.
+ defines += [ "_SECURE_ATL" ]
+ }
}
# Linker flags for Windows SDK setup, this is applied only to EXEs and DLLs.
@@ -42,6 +56,9 @@ config("sdk_link") {
"$visual_studio_path\VC\lib\amd64",
"$visual_studio_path\VC\atlmfc\lib\amd64",
]
+ if (is_visual_studio_express) {
+ lib_dirs += [ "$wdk_path/lib/ATL/amd64" ]
+ }
} else {
ldflags = [
"/MACHINE:X86",
@@ -52,10 +69,26 @@ config("sdk_link") {
"$visual_studio_path\VC\lib",
"$visual_studio_path\VC\atlmfc\lib",
]
+ if (is_visual_studio_express) {
+ lib_dirs += [ "$wdk_path/lib/ATL/i386" ]
+ }
if (!is_asan) {
ldflags += [ "/largeaddressaware" ]
}
}
+
+ if (is_visual_studio_express) {
+ # Explicitly required when using the ATL with express.
+ libs = [ "atlthunk.lib" ]
+
+ # ATL 8.0 included in WDK 7.1 makes the linker to generate almost eight
+ # hundred LNK4254 and LNK4078 warnings:
+ # - warning LNK4254: section 'ATL' (50000040) merged into '.rdata'
+ # (40000040) with different attributes
+ # - warning LNK4078: multiple 'ATL' sections found with different
+ # attributes
+ ldflags += [ "/ignore:4254", "/ignore:4078" ]
+ }
}
# This default linker setup is provided separately from the SDK setup so
« no previous file with comments | « no previous file | build/config/win/visual_studio_version.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698