diff --git a/CMakeLists.txt b/CMakeLists.txt index d2e6175f49e7..cf8066780819 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,9 +60,14 @@ option(ENABLE_OMP "Enables OpenMP, and has additional dependencies" OFF) option(ENABLE_LIBPNG "Enable support for writing png files (screenshots, images)" ON) option(ENABLE_HISTORY "Enable using GNU history for history in lua console" ON) +# set what std version to use +if(NOT CXX_STD) + set(CXX_STD "14") +endif() + if(NOT CMAKE_CROSSCOMPILING) try_run(IEEE754_TEST_RETURN_CODE IEEE754_TEST_COMPILED ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/src/compile_time_tests/ieee_754.cpp - CMAKE_FLAGS "-DCMAKE_CXX_STANDARD=14" COMPILE_OUTPUT_VARIABLE IEEE754_TEST_COMPILE_OUTPUT) + CMAKE_FLAGS "-DCMAKE_CXX_STANDARD=${CXX_STD}" COMPILE_OUTPUT_VARIABLE IEEE754_TEST_COMPILE_OUTPUT) if(NOT IEEE754_TEST_COMPILED) message(WARNING "Failed to compile the IEEE 754 test. Skipping it.") message(${IEEE754_TEST_COMPILE_OUTPUT}) @@ -199,7 +204,7 @@ if(NOT DEFINED CXX_FLAGS_USER) endif(NOT DEFINED CXX_FLAGS_USER) -set(COMPILER_FLAGS "-std=c++14 -Wall -Wextra -Werror=non-virtual-dtor -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wold-style-cast") +set(COMPILER_FLAGS "-std=c++${CXX_STD} -Wall -Wextra -Werror=non-virtual-dtor -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wold-style-cast") if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") set(COMPILER_FLAGS "${COMPILER_FLAGS} -Qunused-arguments -Wno-unknown-warning-option -Wmismatched-tags -Wno-conditional-uninitialized") diff --git a/utils/travis/docker_run.sh b/utils/travis/docker_run.sh index 8caf54c59644..b8b8af74a70e 100755 --- a/utils/travis/docker_run.sh +++ b/utils/travis/docker_run.sh @@ -54,7 +54,7 @@ else cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_GAME=true -DENABLE_SERVER=true -DENABLE_CAMPAIGN_SERVER=true -DENABLE_TESTS=true -DENABLE_NLS=false \ -DEXTRA_FLAGS_CONFIG="-pipe" -DEXTRA_FLAGS_RELEASE="$EXTRA_FLAGS_RELEASE" -DENABLE_STRICT_COMPILATION="$STRICT" -DENABLE_LTO="$LTO" -DLTO_JOBS=2 \ - -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache && \ + -DCXX_STD="$CXXSTD" -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache && \ make VERBOSE=1 -j2 BUILD_RET=$?