summaryrefslogtreecommitdiffstats
path: root/mkspecs/features
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-04-06 13:52:45 +0200
committerLiang Qi <liang.qi@qt.io>2017-04-06 14:16:31 +0200
commit0fc569184cf0fb6663e955e68bfa14baf3f3fe0d (patch)
tree0161df2f2ac28b554e77d62498647054198d8e1e /mkspecs/features
parent280e321e52fd4e86545f3f0d4bd4e047786a897e (diff)
parentefb84b6189f9e98c6dd29c22f00ad760445196c2 (diff)
Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts: src/platformsupport/fontdatabases/freetype/qfontengine_ft.cpp src/platformsupport/fontdatabases/freetype/qfreetypefontdatabase.cpp src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp src/widgets/widgets/qtabbar.cpp Change-Id: Iaa9daee5f7a6490d56257a3824730a35751ceb05
Diffstat (limited to 'mkspecs/features')
-rw-r--r--mkspecs/features/data/macros.cpp1
-rw-r--r--mkspecs/features/default_post.prf5
-rw-r--r--mkspecs/features/toolchain.prf1
3 files changed, 7 insertions, 0 deletions
diff --git a/mkspecs/features/data/macros.cpp b/mkspecs/features/data/macros.cpp
index 88473fb980..e677dace12 100644
--- a/mkspecs/features/data/macros.cpp
+++ b/mkspecs/features/data/macros.cpp
@@ -1,4 +1,5 @@
// Keep this file small. The pre-processed contents are eval'd by qmake.
+QT_COMPILER_STDCXX = __cplusplus
#ifdef _MSC_VER
QMAKE_MSC_VER = _MSC_VER
QMAKE_MSC_FULL_VER = _MSC_FULL_VER
diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf
index d1ec0ce637..6d6707d6bb 100644
--- a/mkspecs/features/default_post.prf
+++ b/mkspecs/features/default_post.prf
@@ -100,6 +100,11 @@ breakpad {
!isEmpty(QMAKE_STRIP):QMAKE_POST_LINK = $$QMAKE_POST_LINK$$escape_expand(\\n\\t)$$quote($$QMAKE_STRIP $$DEBUGFILENAME)
}
+!c++11:!c++14:!c++1z {
+ # Qt requires C++11 since 5.7, check if we need to force a compiler option
+ QT_COMPILER_STDCXX_no_L = $$replace(QT_COMPILER_STDCXX, "L$", "")
+ !greaterThan(QT_COMPILER_STDCXX_no_L, 199711): CONFIG += c++11
+}
c++11|c++14|c++1z {
# Disable special compiler flags for host builds
!host_build|!cross_compile {
diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf
index 6d96eaf689..46a9c5707a 100644
--- a/mkspecs/features/toolchain.prf
+++ b/mkspecs/features/toolchain.prf
@@ -137,6 +137,7 @@ unset(target_prefix)
# Populate QMAKE_COMPILER_DEFINES and some compatibility variables.
# The $$format_number() calls strip leading zeros to avoid misinterpretation as octal.
+QMAKE_COMPILER_DEFINES += __cplusplus=$$QT_COMPILER_STDCXX
!isEmpty(QMAKE_MSC_VER) {
QMAKE_COMPILER_DEFINES += _MSC_VER=$$QMAKE_MSC_VER _MSC_FULL_VER=$$QMAKE_MSC_FULL_VER
QT_MSVC_MAJOR_VERSION = $$replace(QMAKE_MSC_FULL_VER, "(..)(..)(.*)", "\\1")