summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-06-07 12:05:33 +0200
committerLiang Qi <liang.qi@qt.io>2017-06-07 14:02:43 +0200
commit7cbee5629604aa49c618829c8e3e55fc64e94df7 (patch)
treed12041105160c1cb21226b365edb9653d87b5853 /mkspecs
parente400b7e326c554ccd819448866265953d2a0f24d (diff)
parent5f0ce2333f7e11a3ffb5d16a27cd9303efa712d5 (diff)
Merge remote-tracking branch 'origin/5.9' into dev
Conflicts: src/widgets/widgets/qmenu.cpp Change-Id: I6d3baf56eb24501cddb129a3cb6b958ccc25a308
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/android-base-tail.conf4
-rw-r--r--mkspecs/common/ghs-integrity-armv8.conf27
-rw-r--r--mkspecs/common/msvc-version.conf4
-rw-r--r--mkspecs/common/qcc-base-qnx.conf6
-rw-r--r--mkspecs/devices/common/freebsd_device_pre.conf2
-rw-r--r--mkspecs/devices/common/linux_device_post.conf5
-rw-r--r--mkspecs/devices/integrity-armv8-drive-cx/qmake.conf39
-rw-r--r--mkspecs/devices/integrity-armv8-drive-cx/qplatformdefs.h45
-rw-r--r--mkspecs/devices/linux-arm-hisilicon-hix5hd2-g++/qmake.conf4
-rw-r--r--mkspecs/devices/linux-arm-trident-pnx8473-g++/qmake.conf6
-rw-r--r--mkspecs/devices/linux-drive-cx-g++/qmake.conf14
-rw-r--r--mkspecs/devices/linux-jetson-tk1-g++/qmake.conf12
-rw-r--r--mkspecs/devices/linux-jetson-tk1-pro-g++/qmake.conf14
-rw-r--r--mkspecs/devices/linux-jetson-tx1-g++/qmake.conf14
-rw-r--r--mkspecs/devices/linux-mipsel-broadcom-97425-g++/qmake.conf7
-rw-r--r--mkspecs/devices/linux-rasp-pi-g++/qmake.conf2
-rw-r--r--mkspecs/devices/linux-rasp-pi2-g++/qmake.conf2
-rw-r--r--mkspecs/devices/linux-rasp-pi3-g++/qmake.conf5
-rw-r--r--mkspecs/devices/linux-snowball-g++/qmake.conf5
-rw-r--r--mkspecs/devices/linux-tegra2-g++/qmake.conf11
-rw-r--r--mkspecs/features/configure_base.prf4
-rw-r--r--mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in2
-rw-r--r--mkspecs/features/default_post.prf11
-rw-r--r--mkspecs/features/qt_configure.prf3
-rw-r--r--mkspecs/freebsd-clang/qmake.conf4
-rw-r--r--mkspecs/freebsd-g++/qmake.conf4
-rw-r--r--mkspecs/netbsd-g++/qmake.conf4
-rw-r--r--mkspecs/openbsd-g++/qmake.conf4
28 files changed, 192 insertions, 72 deletions
diff --git a/mkspecs/common/android-base-tail.conf b/mkspecs/common/android-base-tail.conf
index 23bd6696de..2610918c4e 100644
--- a/mkspecs/common/android-base-tail.conf
+++ b/mkspecs/common/android-base-tail.conf
@@ -74,8 +74,8 @@ else: \
LIBGCC_PATH = $$dirname(LIBGCC_PATH_FULL)
-QMAKE_INCDIR = $$ANDROID_SOURCES_CXX_STL_INCDIR $$QMAKE_ANDROID_PLATFORM_INCDIR
-QMAKE_LIBDIR = $$ANDROID_SOURCES_CXX_STL_LIBDIR $$QMAKE_ANDROID_PLATFORM_LIBDIR $$LIBGCC_PATH
+QMAKE_INCDIR_POST = $$ANDROID_SOURCES_CXX_STL_INCDIR $$QMAKE_ANDROID_PLATFORM_INCDIR
+QMAKE_LIBDIR_POST = $$ANDROID_SOURCES_CXX_STL_LIBDIR $$QMAKE_ANDROID_PLATFORM_LIBDIR $$LIBGCC_PATH
QMAKE_INCDIR_X11 =
QMAKE_LIBDIR_X11 =
QMAKE_INCDIR_OPENGL = $$QMAKE_ANDROID_PLATFORM_INCDIR
diff --git a/mkspecs/common/ghs-integrity-armv8.conf b/mkspecs/common/ghs-integrity-armv8.conf
new file mode 100644
index 0000000000..e454cfd245
--- /dev/null
+++ b/mkspecs/common/ghs-integrity-armv8.conf
@@ -0,0 +1,27 @@
+#
+# Base qmake configuration for INTEGRITY armv8 targets
+#
+MAKEFILE_GENERATOR = UNIX
+
+QMAKE_PLATFORM = integrity
+
+include(unix.conf)
+
+include(ghs-base.conf)
+
+bsp_name = $$(INTEGRITY_BSP)
+isEmpty(bsp_name): \
+ error("This qmakespec requires $INTEGRITY_BSP to be set")
+
+os_directory = $$(INTEGRITY_DIR)
+isEmpty(os_directory): \
+ error("This qmakespec requires $INTEGRITY_DIR to be set")
+
+QMAKE_CC = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared
+QMAKE_CXX = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared
+QMAKE_LINK = $$QMAKE_CXX
+QMAKE_AR = $$QMAKE_CXX -archive -o
+
+QMAKE_CFLAGS += -bigswitch
+QMAKE_CXXFLAGS += -bigswitch
+QMAKE_LFLAGS += -bigswitch
diff --git a/mkspecs/common/msvc-version.conf b/mkspecs/common/msvc-version.conf
index 29f96b7abf..d8ec089f55 100644
--- a/mkspecs/common/msvc-version.conf
+++ b/mkspecs/common/msvc-version.conf
@@ -81,6 +81,10 @@ greaterThan(QMAKE_MSC_VER, 1909) {
MSVC_VER = 15.0
COMPAT_MKSPEC = win32-msvc2017
QMAKE_CXXFLAGS += -Zc:referenceBinding
+ # For now permissive fails as soon as UWP API comes into play. In qtbase this
+ # API is used in direct2d, but also in multimedia, positioning and sensors.
+ # We can try again with a later version of Visual Studio.
+ # QMAKE_CXXFLAGS_STRICTCXX = -permissive-
}
greaterThan(QMAKE_MSC_VER, 1910) {
diff --git a/mkspecs/common/qcc-base-qnx.conf b/mkspecs/common/qcc-base-qnx.conf
index 624bdd3656..148645b4e9 100644
--- a/mkspecs/common/qcc-base-qnx.conf
+++ b/mkspecs/common/qcc-base-qnx.conf
@@ -38,9 +38,9 @@ isEmpty(QNX_DIR) {
error("QNX_TARGET environment variable not set")
}
-QMAKE_INCDIR = $${QNX_DIR}/usr/include $${QNX_DIR}/usr/include/freetype2
-QMAKE_LIBDIR = $${QNX_DIR}/$${QNX_CPUDIR}/lib $${QNX_DIR}/$${QNX_CPUDIR}/usr/lib
-QMAKE_LFLAGS += -Wl,-rpath-link,$${QNX_DIR}/$${QNX_CPUDIR}/lib -Wl,-rpath-link,$${QNX_DIR}/$${QNX_CPUDIR}/usr/lib
+QMAKE_INCDIR_POST = $${QNX_DIR}/usr/include $${QNX_DIR}/usr/include/freetype2
+QMAKE_LIBDIR_POST = $${QNX_DIR}/$${QNX_CPUDIR}/lib $${QNX_DIR}/$${QNX_CPUDIR}/usr/lib
+QMAKE_RPATHLINKDIR_POST += $${QNX_DIR}/$${QNX_CPUDIR}/lib $${QNX_DIR}/$${QNX_CPUDIR}/usr/lib
QMAKE_CXXFLAGS_CXX11 = -Wc,-std=gnu++11
QMAKE_CXXFLAGS_CXX14 = -Wc,-std=gnu++1y
diff --git a/mkspecs/devices/common/freebsd_device_pre.conf b/mkspecs/devices/common/freebsd_device_pre.conf
index 97d70b5265..8eb76f60f1 100644
--- a/mkspecs/devices/common/freebsd_device_pre.conf
+++ b/mkspecs/devices/common/freebsd_device_pre.conf
@@ -24,4 +24,4 @@ QMAKE_STRIP = $${CROSS_COMPILE}strip
# it messes up system include order. --sysroot is
# sufficient. See link for details:
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213217
-QMAKE_LIBDIR = $$[QT_SYSROOT]/usr/lib
+QMAKE_LIBDIR_POST = $$[QT_SYSROOT]/usr/lib
diff --git a/mkspecs/devices/common/linux_device_post.conf b/mkspecs/devices/common/linux_device_post.conf
index cf1608f32b..9a434dba77 100644
--- a/mkspecs/devices/common/linux_device_post.conf
+++ b/mkspecs/devices/common/linux_device_post.conf
@@ -3,8 +3,9 @@ defineTest(qtConfSanitizeMkspec) {
}
contains(DISTRO_OPTS, deb-multi-arch) {
- QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/$${GCC_MACHINE_DUMP} \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/$${GCC_MACHINE_DUMP}
+ QMAKE_RPATHLINKDIR_POST += \
+ $$[QT_SYSROOT]/usr/lib/$${GCC_MACHINE_DUMP} \
+ $$[QT_SYSROOT]/lib/$${GCC_MACHINE_DUMP}
}
contains(DISTRO_OPTS, boot2qt) {
diff --git a/mkspecs/devices/integrity-armv8-drive-cx/qmake.conf b/mkspecs/devices/integrity-armv8-drive-cx/qmake.conf
new file mode 100644
index 0000000000..37474e9dea
--- /dev/null
+++ b/mkspecs/devices/integrity-armv8-drive-cx/qmake.conf
@@ -0,0 +1,39 @@
+#
+# qmake configuration for 64-bit Tegra X1 boards, like the DRIVE CX, using Vibrante Integrity
+#
+# A typical configure line might look like:
+# configure \
+# -device integrity-armv8-drive-cx \
+# -device-option VIBRANTE_INTEGRITY_PDK_TOPDIR=/opt/nvidia/vibrante-t186ref-integrity
+# -static \
+# -opengl es2
+
+load(device_config)
+
+include(../../common/ghs-integrity-armv8.conf)
+
+DEFINES += WIN_INTERFACE_CUSTOM
+
+QT_QPA_DEFAULT_PLATFORM = eglfs
+
+QMAKE_LIBS_EGL += -lEGL -lGLESv2 -lnvidia-glsi -lnvidia-eglcore -lnvidia-rmapi-tegra -lposix -livfs -ldrm-nvdc -lnvll -lnvdc -lnvrm -lnvrm_gpu -lnvrm_graphics -lnvos -lsocket -lnet -lnvtegrahv
+QMAKE_LIBS_OPENGL_ES2 += $${QMAKE_LIBS_EGL}
+
+EGLFS_DEVICE_INTEGRATION = eglfs_kms_egldevice
+
+# Vibrante Integrity PDK headers & libraries
+QMAKE_INCDIR += $${VIBRANTE_INTEGRITY_PDK_TOPDIR}/include
+QMAKE_LIBDIR += $${VIBRANTE_INTEGRITY_PDK_TOPDIR}/libs
+
+# OpenGL libraries have a dependency on libEGL
+QMAKE_INCDIR_EGL = $${VIBRANTE_INTEGRITY_PDK_TOPDIR}/include
+QMAKE_LIBDIR_EGL = $${VIBRANTE_INTEGRITY_PDK_TOPDIR}/libs
+QMAKE_INCDIR_OPENGL_ES2 = $${VIBRANTE_INTEGRITY_PDK_TOPDIR}/include
+QMAKE_LIBDIR_OPENGL_ES2 = $${VIBRANTE_INTEGRITY_PDK_TOPDIR}/libs
+
+defineTest(qtConfSanitizeMkspec) {
+ isEmpty(VIBRANTE_INTEGRITY_PDK_TOPDIR): \
+ error("You must pass -device-option VIBRANTE_INTEGRITY_PDK_TOPDIR=/path/to/pdk")
+}
+
+load(qt_config)
diff --git a/mkspecs/devices/integrity-armv8-drive-cx/qplatformdefs.h b/mkspecs/devices/integrity-armv8-drive-cx/qplatformdefs.h
new file mode 100644
index 0000000000..c8361113a0
--- /dev/null
+++ b/mkspecs/devices/integrity-armv8-drive-cx/qplatformdefs.h
@@ -0,0 +1,45 @@
+/****************************************************************************
+**
+** 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$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+#include "../../common/integrity/qplatformdefs.h"
+
+#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/devices/linux-arm-hisilicon-hix5hd2-g++/qmake.conf b/mkspecs/devices/linux-arm-hisilicon-hix5hd2-g++/qmake.conf
index 99b8f22f97..f65e9730d0 100644
--- a/mkspecs/devices/linux-arm-hisilicon-hix5hd2-g++/qmake.conf
+++ b/mkspecs/devices/linux-arm-hisilicon-hix5hd2-g++/qmake.conf
@@ -19,8 +19,8 @@
include(../common/linux_device_pre.conf)
-QMAKE_INCDIR += /usr/arm-linux-gnueabihf/include
-QMAKE_LIBDIR += /usr/arm-linux-gnueabihf/lib
+QMAKE_INCDIR_POST += /usr/arm-linux-gnueabihf/include
+QMAKE_LIBDIR_POST += /usr/arm-linux-gnueabihf/lib
QMAKE_LIBS += -lrt
diff --git a/mkspecs/devices/linux-arm-trident-pnx8473-g++/qmake.conf b/mkspecs/devices/linux-arm-trident-pnx8473-g++/qmake.conf
index b131f65a79..5619c205fb 100644
--- a/mkspecs/devices/linux-arm-trident-pnx8473-g++/qmake.conf
+++ b/mkspecs/devices/linux-arm-trident-pnx8473-g++/qmake.conf
@@ -50,9 +50,9 @@ QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
QMAKE_NM = $${CROSS_COMPILE}nm -P
QMAKE_STRIP = $${CROSS_COMPILE}strip
-QMAKE_INCDIR += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/include
-QMAKE_LIBDIR += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/lib
-QMAKE_LIBDIR += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generated/lib/armgnu_linux_el_cortex-a9
+QMAKE_INCDIR_POST += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/include
+QMAKE_LIBDIR_POST += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/lib
+QMAKE_LIBDIR_POST += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generated/lib/armgnu_linux_el_cortex-a9
QMAKE_INCDIR_EGL = $${TRIDENT_SHINER_SDK_INCDIR_EGL_OPENGL_ES2}
QMAKE_LIBDIR_EGL = $${TRIDENT_SHINER_SDK_LIBDIR_EGL_OPENGL_ES2}
diff --git a/mkspecs/devices/linux-drive-cx-g++/qmake.conf b/mkspecs/devices/linux-drive-cx-g++/qmake.conf
index a658f29deb..a0dcaddec9 100644
--- a/mkspecs/devices/linux-drive-cx-g++/qmake.conf
+++ b/mkspecs/devices/linux-drive-cx-g++/qmake.conf
@@ -16,21 +16,21 @@
include(../common/linux_device_pre.conf)
-QMAKE_INCDIR += \
+QMAKE_INCDIR_POST += \
$${VIBRANTE_SDK_TOPDIR}/include \
$$[QT_SYSROOT]/usr/include
-QMAKE_LIBDIR += \
+QMAKE_LIBDIR_POST += \
$${VIBRANTE_SDK_TOPDIR}/lib-target \
$$[QT_SYSROOT]/usr/lib \
$$[QT_SYSROOT]/lib/aarch64-linux-gnu \
$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu
-QMAKE_LFLAGS += \
- -Wl,-rpath-link,$${VIBRANTE_SDK_TOPDIR}/lib-target \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/aarch64-linux-gnu
+QMAKE_RPATHLINKDIR_POST += \
+ $${VIBRANTE_SDK_TOPDIR}/lib-target \
+ $$[QT_SYSROOT]/usr/lib \
+ $$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu \
+ $$[QT_SYSROOT]/lib/aarch64-linux-gnu
DISTRO_OPTS += aarch64
diff --git a/mkspecs/devices/linux-jetson-tk1-g++/qmake.conf b/mkspecs/devices/linux-jetson-tk1-g++/qmake.conf
index 493b55384f..4c733e8b77 100644
--- a/mkspecs/devices/linux-jetson-tk1-g++/qmake.conf
+++ b/mkspecs/devices/linux-jetson-tk1-g++/qmake.conf
@@ -11,19 +11,19 @@
include(../common/linux_device_pre.conf)
-QMAKE_INCDIR += \
+QMAKE_INCDIR_POST += \
$$[QT_SYSROOT]/usr/include \
$$[QT_SYSROOT]/usr/include/arm-linux-gnueabihf
-QMAKE_LIBDIR += \
+QMAKE_LIBDIR_POST += \
$$[QT_SYSROOT]/usr/lib \
$$[QT_SYSROOT]/lib/arm-linux-gnueabihf \
$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf
-QMAKE_LFLAGS += \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/arm-linux-gnueabihf
+QMAKE_RPATHLINKDIR_POST += \
+ $$[QT_SYSROOT]/usr/lib \
+ $$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf \
+ $$[QT_SYSROOT]/lib/arm-linux-gnueabihf
DISTRO_OPTS += hard-float
COMPILER_FLAGS += -mtune=cortex-a15 -march=armv7-a -mfpu=neon-vfpv4
diff --git a/mkspecs/devices/linux-jetson-tk1-pro-g++/qmake.conf b/mkspecs/devices/linux-jetson-tk1-pro-g++/qmake.conf
index 1f44c47151..fb89721798 100644
--- a/mkspecs/devices/linux-jetson-tk1-pro-g++/qmake.conf
+++ b/mkspecs/devices/linux-jetson-tk1-pro-g++/qmake.conf
@@ -14,21 +14,21 @@
include(../common/linux_device_pre.conf)
-QMAKE_INCDIR += \
+QMAKE_INCDIR_POST += \
$${VIBRANTE_SDK_TOPDIR}/include \
$$[QT_SYSROOT]/usr/include
-QMAKE_LIBDIR += \
+QMAKE_LIBDIR_POST += \
$${VIBRANTE_SDK_TOPDIR}/lib-target \
$$[QT_SYSROOT]/usr/lib \
$$[QT_SYSROOT]/lib/arm-linux-gnueabihf \
$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf
-QMAKE_LFLAGS += \
- -Wl,-rpath-link,$${VIBRANTE_SDK_TOPDIR}/lib-target \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/arm-linux-gnueabihf
+QMAKE_RPATHLINKDIR_POST += \
+ $${VIBRANTE_SDK_TOPDIR}/lib-target \
+ $$[QT_SYSROOT]/usr/lib \
+ $$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf \
+ $$[QT_SYSROOT]/lib/arm-linux-gnueabihf
DISTRO_OPTS += hard-float
COMPILER_FLAGS += -mtune=cortex-a15 -march=armv7-a -mfpu=neon-vfpv4 -DWIN_INTERFACE_CUSTOM
diff --git a/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf b/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf
index 06cf329f3a..f9dec441f6 100644
--- a/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf
+++ b/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf
@@ -25,20 +25,20 @@
include(../common/linux_device_pre.conf)
-QMAKE_INCDIR += \
+QMAKE_INCDIR_POST += \
$$[QT_SYSROOT]/usr/include \
$$[QT_SYSROOT]/usr/include/aarch64-linux-gnu
-QMAKE_LIBDIR += \
+QMAKE_LIBDIR_POST += \
$$[QT_SYSROOT]/usr/lib \
$$[QT_SYSROOT]/lib/aarch64-linux-gnu \
$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu
-QMAKE_LFLAGS += \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu/tegra \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/aarch64-linux-gnu
+QMAKE_RPATHLINKDIR_POST += \
+ $$[QT_SYSROOT]/usr/lib \
+ $$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu \
+ $$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu/tegra \
+ $$[QT_SYSROOT]/lib/aarch64-linux-gnu
DISTRO_OPTS += aarch64
COMPILER_FLAGS += -mtune=cortex-a57.cortex-a53 -march=armv8-a
diff --git a/mkspecs/devices/linux-mipsel-broadcom-97425-g++/qmake.conf b/mkspecs/devices/linux-mipsel-broadcom-97425-g++/qmake.conf
index 9211551daf..c7b6970fea 100644
--- a/mkspecs/devices/linux-mipsel-broadcom-97425-g++/qmake.conf
+++ b/mkspecs/devices/linux-mipsel-broadcom-97425-g++/qmake.conf
@@ -52,10 +52,9 @@ QMAKE_LIBDIR_OPENGL_ES2 = $${BRCM_ROCKFORD_PATH}/middleware/v3d/lib_$${BRCM_PLAT
QMAKE_LIBS_OPENGL_ES2 = -lv3ddriver -lrt
QMAKE_LIBS_EGL =
-INCLUDEPATH += $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
-QMAKE_LIBDIR += $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
-
-QMAKE_LFLAGS += -Wl,-rpath-link,$$QMAKE_LIBDIR_OPENGL_ES2 -Wl,-rpath-link,$${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
+QMAKE_INCDIR_POST += $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
+QMAKE_LIBDIR_POST += $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
+QMAKE_RPATHLINKDIR_POST += $$QMAKE_LIBDIR_OPENGL_ES2 $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
# DirectFB platform hooks for this hardware
QT_CONFIG += directfb_egl egl
diff --git a/mkspecs/devices/linux-rasp-pi-g++/qmake.conf b/mkspecs/devices/linux-rasp-pi-g++/qmake.conf
index 8f0edbc6e6..b72091373d 100644
--- a/mkspecs/devices/linux-rasp-pi-g++/qmake.conf
+++ b/mkspecs/devices/linux-rasp-pi-g++/qmake.conf
@@ -5,7 +5,7 @@
include(../common/linux_device_pre.conf)
-QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/opt/vc/lib
+QMAKE_RPATHLINKDIR_POST += $$[QT_SYSROOT]/opt/vc/lib
QMAKE_LIBDIR_OPENGL_ES2 = $$[QT_SYSROOT]/opt/vc/lib
QMAKE_LIBDIR_EGL = $$QMAKE_LIBDIR_OPENGL_ES2
diff --git a/mkspecs/devices/linux-rasp-pi2-g++/qmake.conf b/mkspecs/devices/linux-rasp-pi2-g++/qmake.conf
index 2911f08873..ffe8f5739a 100644
--- a/mkspecs/devices/linux-rasp-pi2-g++/qmake.conf
+++ b/mkspecs/devices/linux-rasp-pi2-g++/qmake.conf
@@ -2,7 +2,7 @@
include(../common/linux_device_pre.conf)
-QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/opt/vc/lib
+QMAKE_RPATHLINKDIR_POST += $$[QT_SYSROOT]/opt/vc/lib
QMAKE_LIBDIR_OPENGL_ES2 = $$[QT_SYSROOT]/opt/vc/lib
QMAKE_LIBDIR_EGL = $$QMAKE_LIBDIR_OPENGL_ES2
diff --git a/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf b/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf
index 10862ccd70..2bb70ffb5a 100644
--- a/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf
+++ b/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf
@@ -8,13 +8,12 @@ include(../common/linux_device_pre.conf)
# and possibly no pkg-config, have some static values as well:
# I consider it a bug that this is required, but our EGL config.test _requires_ it
-QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/opt/vc/lib
+QMAKE_RPATHLINKDIR_POST += $$[QT_SYSROOT]/opt/vc/lib
VC_LIBRARY_PATH = /opt/vc/lib
VC_INCLUDE_PATH = =/opt/vc/include
-# terrible, they do not appear to resolve "=" in rpath!
-VC_LINK_LINE = -L=$${VC_LIBRARY_PATH} -Wl,-rpath-link,$$[QT_SYSROOT]$${VC_LIBRARY_PATH}
+VC_LINK_LINE = -L=$${VC_LIBRARY_PATH}
QMAKE_LIBDIR_OPENGL_ES2 = =$${VC_LIBRARY_PATH}
QMAKE_LIBDIR_EGL = $$QMAKE_LIBDIR_OPENGL_ES2
diff --git a/mkspecs/devices/linux-snowball-g++/qmake.conf b/mkspecs/devices/linux-snowball-g++/qmake.conf
index 9791119363..ff0f3ab1ae 100644
--- a/mkspecs/devices/linux-snowball-g++/qmake.conf
+++ b/mkspecs/devices/linux-snowball-g++/qmake.conf
@@ -27,7 +27,8 @@ QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
QMAKE_NM = $${CROSS_COMPILE}nm -P
QMAKE_STRIP = $${CROSS_COMPILE}strip
-QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/arm-linux-gnueabihf
+QMAKE_RPATHLINKDIR_POST += \
+ $$[QT_SYSROOT]/usr/lib/arm-linux-gnueabihf \
+ $$[QT_SYSROOT]/lib/arm-linux-gnueabihf
load(qt_config)
diff --git a/mkspecs/devices/linux-tegra2-g++/qmake.conf b/mkspecs/devices/linux-tegra2-g++/qmake.conf
index adadc4d5b0..3f6da7668d 100644
--- a/mkspecs/devices/linux-tegra2-g++/qmake.conf
+++ b/mkspecs/devices/linux-tegra2-g++/qmake.conf
@@ -10,15 +10,16 @@
include(../common/linux_device_pre.conf)
-QMAKE_INCDIR += $$[QT_SYSROOT]/usr/include
+QMAKE_INCDIR_POST += $$[QT_SYSROOT]/usr/include
-QMAKE_LIBDIR += $$[QT_SYSROOT]/usr/lib \
+QMAKE_LIBDIR_POST += $$[QT_SYSROOT]/usr/lib \
$$[QT_SYSROOT]/lib/arm-linux-gnueabi \
$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabi
-QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib \
- -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/arm-linux-gnueabi \
- -Wl,-rpath-link,$$[QT_SYSROOT]/lib/arm-linux-gnueabi
+QMAKE_RPATHLINKDIR_POST += \
+ $$[QT_SYSROOT]/usr/lib \
+ $$[QT_SYSROOT]/usr/lib/arm-linux-gnueabi \
+ $$[QT_SYSROOT]/lib/arm-linux-gnueabi
TEGRA2_CFLAGS = -mtune=cortex-a9 -march=armv7-a -mhard-float -mfloat-abi=softfp -mfpu=vfpv3-d16
QMAKE_CFLAGS += $$TEGRA2_CFLAGS
diff --git a/mkspecs/features/configure_base.prf b/mkspecs/features/configure_base.prf
index a4464528b4..e870e2ee10 100644
--- a/mkspecs/features/configure_base.prf
+++ b/mkspecs/features/configure_base.prf
@@ -31,7 +31,9 @@ defineTest(qtLog) {
defineTest(qtRunLoggedCommand) {
qtLog("+ $$1")
- output = $$system("( $$1 ) 2>&1", lines, result)
+ !equals(3, false): \
+ 1 = "( $$1 ) 2>&1"
+ output = $$system("$$1", lines, result)
lg =
for (l, output): \
lg += "> $$l"
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
index 4f342d67d7..17da8b979e 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -35,7 +35,7 @@ set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
!!IF !equals(TEMPLATE, aux)
# For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead.
-set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.MAJOR_VERSION).$$eval(QT.$${MODULE}.MINOR_VERSION).$$eval(QT.$${MODULE}.PATCH_VERSION)")
+set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)")
set(Qt5$${CMAKE_MODULE_NAME}_LIBRARIES Qt5::$${CMAKE_MODULE_NAME})
!!ENDIF // TEMPLATE != aux
diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf
index d6caf870f7..d18604e0b8 100644
--- a/mkspecs/features/default_post.prf
+++ b/mkspecs/features/default_post.prf
@@ -124,8 +124,12 @@ c++11|c++14|c++1z {
cxxstd = CXX11
}
- # Check if we should disable the GNU extensions or not
- !strict_c++:!isEmpty(QMAKE_CXXFLAGS_GNU$$cxxstd): cxxstd = GNU$$cxxstd
+ # Check if we should disable compiler extensions or not
+ isEmpty(QMAKE_CXXFLAGS_GNU$$cxxstd) {
+ strict_c++: QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_STRICTCXX
+ } else {
+ !strict_c++: cxxstd = GNU$$cxxstd
+ }
QMAKE_CXXFLAGS += $$eval(QMAKE_CXXFLAGS_$$cxxstd)
QMAKE_LFLAGS += $$eval(QMAKE_LFLAGS_$$cxxstd)
@@ -139,6 +143,3 @@ utf8_source {
}
!precompile_header: SOURCES += $$NO_PCH_SOURCES
-
-QMAKE_INCDIR += $$QMAKE_INCDIR_POST
-QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf
index 5cbc0d4bfd..964c2393c2 100644
--- a/mkspecs/features/qt_configure.prf
+++ b/mkspecs/features/qt_configure.prf
@@ -581,7 +581,8 @@ defineTest(qtConfLibrary_pkgConfig) {
version ~= s/[^0-9.].*$//
$${1}.version = $$first(version)
export($${1}.version)
- $${1}.libs = $$libpaths $$libs
+ libpaths += $$libs
+ $${1}.libs = "$$libpaths"
export($${1}.libs)
return(true)
}
diff --git a/mkspecs/freebsd-clang/qmake.conf b/mkspecs/freebsd-clang/qmake.conf
index 10bb4a3723..f59fbd3c7d 100644
--- a/mkspecs/freebsd-clang/qmake.conf
+++ b/mkspecs/freebsd-clang/qmake.conf
@@ -8,8 +8,8 @@ QMAKE_PLATFORM = freebsd
include(../common/bsd/bsd.conf)
# Addon software goes into /usr/local on FreeBSD, by default we will look there
-QMAKE_INCDIR = /usr/local/include
-QMAKE_LIBDIR = /usr/local/lib
+QMAKE_INCDIR_POST = /usr/local/include
+QMAKE_LIBDIR_POST = /usr/local/lib
QMAKE_LFLAGS_NOUNDEF = -Wl,--no-undefined
diff --git a/mkspecs/freebsd-g++/qmake.conf b/mkspecs/freebsd-g++/qmake.conf
index 1f4448889e..4df444480d 100644
--- a/mkspecs/freebsd-g++/qmake.conf
+++ b/mkspecs/freebsd-g++/qmake.conf
@@ -8,8 +8,8 @@ QMAKE_PLATFORM = freebsd
include(../common/bsd/bsd.conf)
# Addon software goes into /usr/local on FreeBSD, by default we will look there
-QMAKE_INCDIR = /usr/local/include
-QMAKE_LIBDIR = /usr/local/lib
+QMAKE_INCDIR_POST = /usr/local/include
+QMAKE_LIBDIR_POST = /usr/local/lib
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)
diff --git a/mkspecs/netbsd-g++/qmake.conf b/mkspecs/netbsd-g++/qmake.conf
index a4b26837ce..c7e067a5c7 100644
--- a/mkspecs/netbsd-g++/qmake.conf
+++ b/mkspecs/netbsd-g++/qmake.conf
@@ -8,8 +8,8 @@ QMAKE_PLATFORM = netbsd
include(../common/bsd/bsd.conf)
# Addon software goes into /usr/pkg on NetBSD, by default we will look there
-QMAKE_INCDIR = /usr/pkg/include
-QMAKE_LIBDIR = /usr/pkg/lib
+QMAKE_INCDIR_POST = /usr/pkg/include
+QMAKE_LIBDIR_POST = /usr/pkg/lib
# System provided X11 defaults to X11R7 path on NetBSD since 5.0
QMAKE_INCDIR_X11 = /usr/X11R7/include
diff --git a/mkspecs/openbsd-g++/qmake.conf b/mkspecs/openbsd-g++/qmake.conf
index 6124d31439..4a142e476e 100644
--- a/mkspecs/openbsd-g++/qmake.conf
+++ b/mkspecs/openbsd-g++/qmake.conf
@@ -8,8 +8,8 @@ QMAKE_PLATFORM = openbsd
include(../common/bsd/bsd.conf)
# Addon software goes into /usr/local on OpenBSD, by default we will look there
-QMAKE_INCDIR = /usr/local/include
-QMAKE_LIBDIR = /usr/local/lib
+QMAKE_INCDIR_POST = /usr/local/include
+QMAKE_LIBDIR_POST = /usr/local/lib
# System provided X11 defaults to X11R6 path on OpenBSD
QMAKE_INCDIR_X11 = /usr/X11R6/include