summaryrefslogtreecommitdiffstats
path: root/mkspecs
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
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')
-rw-r--r--mkspecs/features/data/macros.cpp1
-rw-r--r--mkspecs/features/default_post.prf5
-rw-r--r--mkspecs/features/toolchain.prf1
-rw-r--r--mkspecs/linux-aarch64-gnu-g++/qmake.conf24
-rw-r--r--mkspecs/linux-aarch64-gnu-g++/qplatformdefs.h40
5 files changed, 71 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")
diff --git a/mkspecs/linux-aarch64-gnu-g++/qmake.conf b/mkspecs/linux-aarch64-gnu-g++/qmake.conf
new file mode 100644
index 0000000000..2dc57b09fa
--- /dev/null
+++ b/mkspecs/linux-aarch64-gnu-g++/qmake.conf
@@ -0,0 +1,24 @@
+#
+# qmake configuration for building with aarch64-linux-gnu-g++
+#
+
+MAKEFILE_GENERATOR = UNIX
+CONFIG += incremental
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
+
+# modifications to g++.conf
+QMAKE_CC = aarch64-linux-gnu-gcc
+QMAKE_CXX = aarch64-linux-gnu-g++
+QMAKE_LINK = aarch64-linux-gnu-g++
+QMAKE_LINK_SHLIB = aarch64-linux-gnu-g++
+
+# modifications to linux.conf
+QMAKE_AR = aarch64-linux-gnu-ar cqs
+QMAKE_OBJCOPY = aarch64-linux-gnu-objcopy
+QMAKE_NM = aarch64-linux-gnu-nm -P
+QMAKE_STRIP = aarch64-linux-gnu-strip
+load(qt_config)
diff --git a/mkspecs/linux-aarch64-gnu-g++/qplatformdefs.h b/mkspecs/linux-aarch64-gnu-g++/qplatformdefs.h
new file mode 100644
index 0000000000..2697a75e44
--- /dev/null
+++ b/mkspecs/linux-aarch64-gnu-g++/qplatformdefs.h
@@ -0,0 +1,40 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "../linux-g++/qplatformdefs.h"