diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2015-07-08 17:21:30 -0700 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-09-05 23:05:40 +0000 |
commit | 4684c1afe5fdb3774d56d85a52b2feaab1b8de2c (patch) | |
tree | a1b6ffe6e16c9a699dbae5e5d15bb905b6692662 /mkspecs/common | |
parent | 041fae00351164fbd72763e4bd947fdeb9956a5d (diff) |
Add detection of C++14 and C++1z compiler features
[ChangeLog][General Improvements] Qt's buildsystem now detects whether
the compiler supports C++14 and experimental support for C++1z. If the
compiler supports it, then Qt is automatically compiled using that
support.
\
This does not apply to user applications built using qmake: those are
still built with C++11 support only. To enable support for C++14 in your
application, add to your .pro file: CONFIG += c++14 (similarly for
C++1z).
Change-Id: Ib056b47dde3341ef9a52ffff13ef1f5d01c42596
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Diffstat (limited to 'mkspecs/common')
-rw-r--r-- | mkspecs/common/clang.conf | 6 | ||||
-rw-r--r-- | mkspecs/common/g++-base.conf | 6 | ||||
-rw-r--r-- | mkspecs/common/qcc-base-qnx.conf | 2 |
3 files changed, 14 insertions, 0 deletions
diff --git a/mkspecs/common/clang.conf b/mkspecs/common/clang.conf index ee5fc14458..ee9c1b8371 100644 --- a/mkspecs/common/clang.conf +++ b/mkspecs/common/clang.conf @@ -27,9 +27,15 @@ QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE QMAKE_CXXFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG QMAKE_CXXFLAGS_DISABLE_LTCG = $$QMAKE_CFLAGS_DISABLE_LTCG QMAKE_CXXFLAGS_CXX11 = -std=c++11 +QMAKE_CXXFLAGS_CXX14 = -std=c++1y +QMAKE_CXXFLAGS_CXX1Z = -std=c++1z QMAKE_CXXFLAGS_GNUCXX11 = -std=gnu++11 +QMAKE_CXXFLAGS_GNUCXX14 = -std=gnu++1y +QMAKE_CXXFLAGS_GNUCXX1Z = -std=gnu++1z QMAKE_LFLAGS_CXX11 = +QMAKE_LFLAGS_CXX14 = +QMAKE_LFLAGS_CXX1Z = QMAKE_LFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG # Wrapper tools that understand .o/.a files with LLVM bytecode instead of machine code diff --git a/mkspecs/common/g++-base.conf b/mkspecs/common/g++-base.conf index 114a441687..4254551994 100644 --- a/mkspecs/common/g++-base.conf +++ b/mkspecs/common/g++-base.conf @@ -28,5 +28,11 @@ QMAKE_CXXFLAGS_PRECOMPILE = -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_P QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE QMAKE_CXXFLAGS_CXX11 = -std=c++0x +QMAKE_CXXFLAGS_CXX14 = -std=c++1y +QMAKE_CXXFLAGS_CXX1Z = -std=c++1z QMAKE_CXXFLAGS_GNUCXX11 = -std=gnu++0x +QMAKE_CXXFLAGS_GNUCXX14 = -std=gnu++1y +QMAKE_CXXFLAGS_GNUCXX1Z = -std=gnu++1z QMAKE_LFLAGS_CXX11 = +QMAKE_LFLAGS_CXX14 = +QMAKE_LFLAGS_CXX1Z = diff --git a/mkspecs/common/qcc-base-qnx.conf b/mkspecs/common/qcc-base-qnx.conf index a0a88b9605..f7da151a41 100644 --- a/mkspecs/common/qcc-base-qnx.conf +++ b/mkspecs/common/qcc-base-qnx.conf @@ -45,6 +45,8 @@ QMAKE_LIBDIR = $${QNX_DIR}/$${QNX_CPUDIR}/lib $${QNX_DIR}/$${QNX_CPUD QMAKE_LFLAGS += -Wl,-rpath-link,$${QNX_DIR}/$${QNX_CPUDIR}/lib -Wl,-rpath-link,$${QNX_DIR}/$${QNX_CPUDIR}/usr/lib QMAKE_CXXFLAGS_CXX11 = -Wc,-std=gnu++0x +QMAKE_CXXFLAGS_CXX14 = -Wc,-std=gnu++1y +QMAKE_CXXFLAGS_CXX1Z = -Wc,-std=gnu++1z QMAKE_LINK_C = $$QMAKE_CC QMAKE_LINK_C_SHLIB = $$QMAKE_CC |