device: Check CROSS_COMPILE in deviceSanityCheckCompiler
authorGirish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Fri, 18 May 2012 18:37:43 +0000 (11:37 -0700)
committerQt by Nokia <qt-info@nokia.com>
Tue, 22 May 2012 22:41:35 +0000 (00:41 +0200)
QMAKE_CXX is initialized by default to gcc. As a result,
'which $QMAKE_CXX' always succeeds.

This change removes the 'which' check and makes it explicit
that CROSS_COMPILE is a mandatory option to -device mkspecs.

Change-Id: Icefa9d14fc24086a60c9108ff7d9d16fd9990995
Done-with: Johannes Zellner
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
mkspecs/features/device_config.prf

index 020b3ad..b8991bb 100644 (file)
@@ -32,12 +32,14 @@ unset(DIR)
 
 # Provide a function to be used by mkspecs
 defineTest(deviceSanityCheckCompiler) {
-    # Check if the binary exists, e.g. with an absolute path
+    # Check if the binary exists with an absolute path
     exists($$QMAKE_CXX):return()
 
-    # Check if the compiler is in the path
-    system("which $$QMAKE_CXX > /dev/null"):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>")
 
-    error("Compiler $$QMAKE_CXX not found")
+    # CROSS_COMPILE is an incorrect path
+    error("Compiler $$QMAKE_CXX not found. Check the value of CROSS_COMPILE -device-option")
 }