summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorKiritoDv <kiritodev01@gmail.com>2023-11-15 22:30:09 -0600
committerKiritoDv <kiritodev01@gmail.com>2023-11-15 22:30:09 -0600
commit0700ca68b1f3656a54ba15498152c55299451dae (patch)
tree262fae4a4c62132d7990817f490e5296a68190ea /CMakeLists.txt
parenteb2049983b956e856e3ddc4c16d6ab2314ac0198 (diff)
Added permissive flag
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt69
1 files changed, 69 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 068b32d..87a960c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -49,6 +49,75 @@ if(NOT CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
set(CMAKE_CXX_FLAGS_DEBUG "-g")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
set(CMAKE_CXX_FLAGS "-Wno-narrowing")
+else()
+ if("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "x64")
+ target_compile_options(${PROJECT_NAME} PRIVATE
+ $<$<CONFIG:Debug>:
+ /w;
+ /Od;
+ /MTd
+ >
+ $<$<CONFIG:Release>:
+ /Oi;
+ /Gy;
+ /W3;
+ /MT
+ >
+ /permissive-;
+ /MP;
+ ${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT};
+ ${DEFAULT_CXX_EXCEPTION_HANDLING}
+ )
+ target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:Debug>:/ZI;>)
+ elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
+ target_compile_options(${PROJECT_NAME} PRIVATE
+ $<$<CONFIG:Debug>:
+ /MTd
+ >
+ $<$<CONFIG:Release>:
+ /O2;
+ /Oi;
+ /Gy;
+ /MT
+ >
+ /permissive-;
+ /MP;
+ /w;
+ ${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT};
+ ${DEFAULT_CXX_EXCEPTION_HANDLING}
+ )
+ endif()
+ if("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "x64")
+ target_link_options(${PROJECT_NAME} PRIVATE
+ $<$<CONFIG:Debug>:
+ /INCREMENTAL
+ >
+ $<$<CONFIG:Release>:
+ /OPT:REF;
+ /OPT:ICF;
+ /INCREMENTAL:NO;
+ /FORCE:MULTIPLE
+ >
+ /MANIFEST:NO;
+ /DEBUG;
+ /SUBSYSTEM:WINDOWS
+ )
+ elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
+ target_link_options(${PROJECT_NAME} PRIVATE
+ $<$<CONFIG:Debug>:
+ /STACK:8777216
+ >
+ $<$<CONFIG:Release>:
+ /OPT:REF;
+ /OPT:ICF;
+ /INCREMENTAL:NO;
+ /FORCE:MULTIPLE
+ >
+ /MANIFEST:NO;
+ /DEBUG;
+ /SUBSYSTEM:WINDOWS
+ )
+ endif()
endif()
# Fetch Dependencies