summaryrefslogtreecommitdiffstats
path: root/config.tests
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-12-16 15:21:35 +0100
committerOswald Buddenhagen <oswald.buddenhagen@qt.io>2016-12-16 16:38:33 +0100
commitb13150336174083962d90922761fd96f07e173b4 (patch)
tree1655e9009efba21b008d7d2f810aacbde3e2c2d8 /config.tests
parentff19ebcc2d9c9668af24fe8add9f70c160776367 (diff)
parent9bfe3ab71e5291445e66be96d6cd1f63934a2d83 (diff)
Merge remote-tracking branch 'origin/5.8' into dev
Conflicts: configure configure.pri examples/widgets/painting/fontsampler/mainwindow.cpp examples/widgets/painting/fontsampler/mainwindow.h mkspecs/features/moc.prf src/corelib/global/qglobal.h src/gui/text/qtextdocument.cpp Change-Id: Ica65512e00871695190a14ccea5c275b0165f787
Diffstat (limited to 'config.tests')
-rw-r--r--config.tests/common/verifyspec/verifyspec.pro36
1 files changed, 36 insertions, 0 deletions
diff --git a/config.tests/common/verifyspec/verifyspec.pro b/config.tests/common/verifyspec/verifyspec.pro
index d78ed2985a..11a280e4ce 100644
--- a/config.tests/common/verifyspec/verifyspec.pro
+++ b/config.tests/common/verifyspec/verifyspec.pro
@@ -1 +1,37 @@
SOURCES = verifyspec.cpp
+
+# Provide a function to be used by mkspecs
+defineTest(deviceSanityCheckCompiler) {
+ equals(QMAKE_HOST.os, Windows): \
+ sfx = .exe
+ else: \
+ sfx =
+
+ # Build the compiler filename using the first value in QMAKE_CXX in order to
+ # support tools like ccache, which give QMAKE_CXX values of the form:
+ # ccache <path_to_compiler>
+ compiler = $$first(QMAKE_CXX)$$sfx
+
+ # Check if the binary exists with an absolute path. Do this check
+ # before the CROSS_COMPILE empty check below to allow the mkspec
+ # to derive the compiler path from other device options.
+ exists($$compiler): return()
+
+ # Check for possible reasons of failure
+ # check if CROSS_COMPILE device-option is set
+ isEmpty(CROSS_COMPILE): \
+ error("CROSS_COMPILE needs to be set via -device-option CROSS_COMPILE=<path>")
+
+ # Check if QMAKE_CXX points to an executable.
+ ensurePathEnv()
+ for (dir, QMAKE_PATH_ENV) {
+ exists($$dir/$${compiler}): \
+ return()
+ }
+
+ # QMAKE_CXX does not point to a compiler.
+ error("Compiler $$QMAKE_CXX not found. Check the value of CROSS_COMPILE -device-option")
+}
+
+defined(qtConfSanitizeMkspec, test): \
+ qtConfSanitizeMkspec()