summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorTor Arne Vestbø <torarnv@gmail.com>2013-06-24 10:58:03 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-06-24 14:51:50 +0200
commitd0d158f0921fbcc67ac33eedc69684c1b3b389a7 (patch)
tree5c053dcb76c9a783c8b6fc8d4aff9b39ea908e54 /mkspecs
parentd3190572cc9b10d7ae2d8a5066ef44c35056b34a (diff)
Mac: Ensure that C++11 is always used when linking against a static Qt build
If Qt was built with C++11, it links to libc++, and we need all projects that use Qt to link against the same library. Technically, we could do QMAKE_LFLAGS += -stdlib=libc++, but that hasn't been tested enough without also enabling C++11, so we keep the relationship between the two for now. Change-Id: Ic628bcbade60cc82f93707f372c2119c24d9dc8a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Liang Qi <liang.qi@digia.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/mac/default_post.prf13
1 files changed, 8 insertions, 5 deletions
diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf
index 0538a81771..b183814e63 100644
--- a/mkspecs/features/mac/default_post.prf
+++ b/mkspecs/features/mac/default_post.prf
@@ -1,12 +1,12 @@
load(default_post)
!no_objective_c:CONFIG += objective_c
-# Pick a suitable default architecture for qmake-based applications.
-# If the Qt package contains one of x86 and x86_64, pick that one. If it
-# contains both then use the compiler default. Make a similiar decision for
-# PowerPC-based systems. Note that this logic assumes that Qt has been
-# configured with an architecture that is usable on the system.
qt:!isEmpty(QT_CONFIG) {
+ # Pick a suitable default architecture for qmake-based applications.
+ # If the Qt package contains one of x86 and x86_64, pick that one. If it
+ # contains both then use the compiler default. Make a similar decision for
+ # PowerPC-based systems. Note that this logic assumes that Qt has been
+ # configured with an architecture that is usable on the system.
contains(QMAKE_HOST.arch, ppc)|contains(QMAKE_HOST.arch, "Power Macintosh") {
!contains(QT_CONFIG, ppc64):contains(QT_CONFIG, ppc):CONFIG += ppc
contains(QT_CONFIG, ppc64):!contains(QT_CONFIG, ppc):CONFIG += ppc64
@@ -14,6 +14,9 @@ qt:!isEmpty(QT_CONFIG) {
!contains(QT_CONFIG, x86_64):contains(QT_CONFIG, x86):CONFIG += x86
contains(QT_CONFIG, x86_64):!contains(QT_CONFIG, x86):CONFIG += x86_64
}
+
+ # Ensure that C++11 is always used when linking against a static Qt build
+ contains(QT_CONFIG, static):contains(QT_CONFIG, c++11): CONFIG += c++11
}
isEmpty(_QMAKE_CACHE_) {