CMake: Fix for QT 5.7 overwriting -std=c++1y flag
In QT 5.7 they added a new check for CXX features which appends a minimum required standard to the CXX_FLAGS. Because we were writing the flag directly previously, cmake assumed it needed to add a c++11 flag to the build. This tells cmake to use c++14 on every build.
This commit is contained in:
parent
e91327c86a
commit
a976c2e3ba
|
@ -9,7 +9,7 @@ if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then
|
||||||
export CXX=g++-6
|
export CXX=g++-6
|
||||||
mkdir -p $HOME/.local
|
mkdir -p $HOME/.local
|
||||||
|
|
||||||
curl -L http://www.cmake.org/files/v3.1/cmake-3.1.0-Linux-i386.tar.gz \
|
curl -L http://www.cmake.org/files/v3.2/cmake-3.2.0-Linux-i386.tar.gz \
|
||||||
| tar -xz -C $HOME/.local --strip-components=1
|
| tar -xz -C $HOME/.local --strip-components=1
|
||||||
|
|
||||||
(
|
(
|
||||||
|
@ -21,6 +21,6 @@ if [ "$TRAVIS_OS_NAME" = "linux" -o -z "$TRAVIS_OS_NAME" ]; then
|
||||||
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
||||||
brew update > /dev/null # silence the very verbose output
|
brew update > /dev/null # silence the very verbose output
|
||||||
brew unlink cmake
|
brew unlink cmake
|
||||||
brew install cmake31 qt5 sdl2 dylibbundler
|
brew install cmake qt5 sdl2 dylibbundler
|
||||||
gem install xcpretty
|
gem install xcpretty
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
# CMake 3.1 required for Qt5 settings to be applied automatically on
|
# CMake 3.2 required for cmake to know the right flags for CXX standard on OSX
|
||||||
# dependent libraries and IMPORTED targets.
|
cmake_minimum_required(VERSION 3.2)
|
||||||
cmake_minimum_required(VERSION 3.1)
|
|
||||||
|
|
||||||
function(download_bundled_external remote_path lib_name prefix_var)
|
function(download_bundled_external remote_path lib_name prefix_var)
|
||||||
set(prefix "${CMAKE_BINARY_DIR}/externals/${lib_name}")
|
set(prefix "${CMAKE_BINARY_DIR}/externals/${lib_name}")
|
||||||
|
@ -63,8 +62,11 @@ if (NOT DEFINED ARCHITECTURE)
|
||||||
endif()
|
endif()
|
||||||
message(STATUS "Target architecture: ${ARCHITECTURE}")
|
message(STATUS "Target architecture: ${ARCHITECTURE}")
|
||||||
|
|
||||||
|
set(CMAKE_CXX_STANDARD 14)
|
||||||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
if (NOT MSVC)
|
if (NOT MSVC)
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++1y -Wno-attributes")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-attributes")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
||||||
else()
|
else()
|
||||||
# Silence "deprecation" warnings
|
# Silence "deprecation" warnings
|
||||||
|
|
Reference in New Issue