Index: build/config/win/BUILD.gn |
diff --git a/build/config/win/BUILD.gn b/build/config/win/BUILD.gn |
index 9b6ac7423f2b9d4d12bdea8302a200507d706e6e..13f52847c71a7f7f21a45edd1ecd3623aae4fbf1 100644 |
--- a/build/config/win/BUILD.gn |
+++ b/build/config/win/BUILD.gn |
@@ -264,6 +264,17 @@ config("common_linker_setup") { |
} |
} |
+# Control Flow Guard (CFG) |
+# https://msdn.microsoft.com/en-us/library/windows/desktop/mt637065(v=vs.85).aspx |
scottmg
2016/10/13 22:21:57
even nittier; remove the (v=vs8.5) part to make it
penny
2016/10/13 23:10:21
Good one.
|
+config("win_msvc_cfg") { |
+ # /DYNAMICBASE (ASLR) is turned off in debug builds, |
scottmg
2016/10/13 22:21:57
nit; rewrap this comment.
penny
2016/10/13 23:10:21
Done.
|
+ # therefore CFG can’t be turned on either. |
+ if (!is_clang && !is_debug) { |
+ cflags = [ "/guard:cf" ] |
+ ldflags = [ "/guard:cf" ] |
+ } |
+} |
+ |
# CRT -------------------------------------------------------------------------- |
# Configures how the runtime library (CRT) is going to be used. |