diff options
author | Mattes D <github@xoft.cz> | 2014-11-02 08:09:22 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-11-02 08:09:22 +0100 |
commit | 65b5ae0aa2eeded3836e29ffe507737590ec85ba (patch) | |
tree | cbf19d624bc78f7027028503bd57d63a7a14a37a /CMakeLists.txt | |
parent | Fixed wrong url. (diff) | |
download | cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.tar cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.tar.gz cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.tar.bz2 cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.tar.lz cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.tar.xz cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.tar.zst cuberite-65b5ae0aa2eeded3836e29ffe507737590ec85ba.zip |
Diffstat (limited to '')
-rw-r--r-- | CMakeLists.txt | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 66281fe0c..d4e9d41e8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,6 +37,21 @@ if(DEFINED ENV{MCSERVER_BUILD_ID}) endif() endif() +# We need C++11 features, Visual Studio has those from VS2012, but it needs a new platform toolset for those; VS2013 supports them natively: +# Adapted from http://binglongx.wordpress.com/2013/06/28/set-non-default-platform-toolset-in-cmake/ +if(MSVC OR MSVC_IDE) + if( MSVC_VERSION LESS 1700 ) # VC10- / VS2010- + message(FATAL_ERROR "The project requires C++11 features. " + "You need at least Visual Studio 11 (Microsoft Visual Studio 2012), " + "with Microsoft Visual C++ Compiler Nov 2012 CTP (v120_CTP_Nov2012).") + elseif( MSVC_VERSION EQUAL 1700 ) # VC11 / VS2012 + message( "VC11: using Microsoft Visual Studio 2012 " + "with Microsoft Visual C++ Compiler Nov 2012 CTP (v120_CTP_Nov2012)" ) + set(CMAKE_GENERATOR_TOOLSET "v120_CTP_Nov2012" CACHE STRING "Platform Toolset" FORCE) + else() # VC12+, assuming C++11 supported. + endif() +endif() + # This has to be done before any flags have been set up. if(${BUILD_TOOLS}) add_subdirectory(Tools/MCADefrag/) |