CMakeLists: Add standard-compliance flags for MSVC

Enforces standard compliant behavior capable by MSVC.
This commit is contained in:
Lioncash 2019-09-01 02:44:18 -04:00
parent 33a6e07e7a
commit 8073b3ea62
1 changed files with 19 additions and 0 deletions

View File

@ -63,6 +63,25 @@ add_library(specter
include/specter/specter.hpp
)
if (MSVC)
target_compile_options(specter PRIVATE
# Enforce various standards compliant behavior.
/permissive-
# Enable standard volatile semantics.
/volatile:iso
# Reports the proper value for the __cplusplus preprocessor macro.
/Zc:__cplusplus
# Allow constexpr variables to have explicit external linkage.
/Zc:externConstexpr
# Assume that new throws exceptions, allowing better code generation.
/Zc:throwingNew
)
endif()
target_link_libraries(specter PUBLIC
freetype
hecl-full