Build: Enable and require c++17

This commit is contained in:
Giacomo Pozzoni
2020-03-16 13:02:43 +01:00
committed by Ovahlord
parent fdd986ec46
commit c2913e608f
4 changed files with 4 additions and 3 deletions

View File

@@ -3,7 +3,7 @@ target_compile_definitions(trinity-compile-option-interface
INTERFACE
-D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}")
set(GCC_EXPECTED_VERSION 6.3.0)
set(GCC_EXPECTED_VERSION 7.1.0)
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS GCC_EXPECTED_VERSION)
message(FATAL_ERROR "GCC: TrinityCore requires version ${GCC_EXPECTED_VERSION} to build but found ${CMAKE_CXX_COMPILER_VERSION}")

View File

@@ -1,7 +1,7 @@
# set up output paths for executable binaries (.exe-files, and .dll-files on DLL-capable platforms)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(MSVC_EXPECTED_VERSION 19.10)
set(MSVC_EXPECTED_VERSION 19.16)
set(MSVC_EXPECTED_VERSION_STRING "MSVC 2017")
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS MSVC_EXPECTED_VERSION)

View File

@@ -19,6 +19,7 @@ add_library(trinity-feature-interface INTERFACE)
target_compile_features(trinity-feature-interface
INTERFACE
cxx_std_17
cxx_alias_templates
cxx_auto_type
cxx_constexpr

View File

@@ -20,7 +20,7 @@ function(ADD_CXX_PCH TARGET_NAME_LIST PCH_HEADER)
set_target_properties(${TARGET_NAME} PROPERTIES COTIRE_CXX_PREFIX_HEADER_INIT ${PCH_HEADER})
# Workaround for cotire bug: https://github.com/sakra/cotire/issues/138
set_property(TARGET ${TARGET_NAME} PROPERTY CXX_STANDARD 14)
set_property(TARGET ${TARGET_NAME} PROPERTY CXX_STANDARD 17)
endforeach()
cotire(${TARGET_NAME_LIST})