summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2019-05-09 13:23:49 -0400
committerGravatar GitHub2019-05-09 13:23:49 -0400
commitf3317cf2db4c4f2248053e67dbe9ac27c89972d2 (patch)
tree5da8bc013ea6739a41568ea8dca09b30f2284f92 /src
parentMerge pull request #2442 from FernandoS27/astc-fix (diff)
parentsrc/CMakeLists: Add /Zc:externConstexpr to the MSVC build flags (diff)
downloadyuzu-f3317cf2db4c4f2248053e67dbe9ac27c89972d2.tar.gz
yuzu-f3317cf2db4c4f2248053e67dbe9ac27c89972d2.tar.xz
yuzu-f3317cf2db4c4f2248053e67dbe9ac27c89972d2.zip
Merge pull request #2454 from lioncash/cflag
src/CMakeLists: Add /Zc:externConstexpr to the MSVC build flags
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt30
1 files changed, 21 insertions, 9 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 9aea4af87..a1d87bbbc 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -21,15 +21,27 @@ if (MSVC)
21 # Ensure that projects build with Unicode support. 21 # Ensure that projects build with Unicode support.
22 add_definitions(-DUNICODE -D_UNICODE) 22 add_definitions(-DUNICODE -D_UNICODE)
23 23
24 # /W3 - Level 3 warnings 24 # /W3 - Level 3 warnings
25 # /MP - Multi-threaded compilation 25 # /MP - Multi-threaded compilation
26 # /Zi - Output debugging information 26 # /Zi - Output debugging information
27 # /Zo - enhanced debug info for optimized builds 27 # /Zo - Enhanced debug info for optimized builds
28 # /permissive- - enables stricter C++ standards conformance checks 28 # /permissive- - Enables stricter C++ standards conformance checks
29 # /EHsc - C++-only exception handling semantics 29 # /EHsc - C++-only exception handling semantics
30 # /Zc:throwingNew - let codegen assume `operator new` will never return null 30 # /Zc:externConstexpr - Allow extern constexpr variables to have external linkage, like the standard mandates
31 # /Zc:inline - let codegen omit inline functions in object files 31 # /Zc:inline - Let codegen omit inline functions in object files
32 add_compile_options(/W3 /MP /Zi /Zo /permissive- /EHsc /std:c++latest /Zc:throwingNew,inline) 32 # /Zc:throwingNew - Let codegen assume `operator new` (without std::nothrow) will never return null
33 add_compile_options(
34 /W3
35 /MP
36 /Zi
37 /Zo
38 /permissive-
39 /EHsc
40 /std:c++latest
41 /Zc:externConstexpr
42 /Zc:inline
43 /Zc:throwingNew
44 )
33 45
34 # /GS- - No stack buffer overflow checks 46 # /GS- - No stack buffer overflow checks
35 add_compile_options("$<$<CONFIG:Release>:/GS->") 47 add_compile_options("$<$<CONFIG:Release>:/GS->")