diff --git a/configure b/configure
index a4180bccc4d260e56f11e1f3901406ba776f6e29..9e17df68ce59cae57b06c8259b2b59504927cc6a 100755
--- a/configure
+++ b/configure
@@ -6290,13 +6290,11 @@ for file in .projects .projects.3; do
             if [ "$CFG_NOPROCESS" = "yes" ] || [ "$XPLATFORM_MINGW" != "yes" ]; then
                 continue
             fi
-            SPEC=$XQMAKESPEC ;;
+            ;;
         */qmake/qmake.pro) continue ;;
-        *tools/bootstrap*|*tools/moc*|*tools/rcc*|*tools/uic*|*tools/qdoc*|*tools/qdbusxml2cpp*|*tools/qdbuscpp2xml*) SPEC=$QMAKESPEC ;;
+        *tools/bootstrap*|*tools/moc*|*tools/rcc*|*tools/uic*|*tools/qdoc*|*tools/qdbusxml2cpp*|*tools/qdbuscpp2xml*) ;;
         *) if [ "$CFG_NOPROCESS" = "yes" ]; then
               continue
-           else
-              SPEC=$XQMAKESPEC
            fi;;
         esac
         dir=`dirname "$a" | sed -e "s;$sepath;.;g"`
@@ -6310,11 +6308,9 @@ for file in .projects .projects.3; do
             [ "$OPT_VERBOSE" = "yes" ] && echo "  skipping $a"
             continue;
         fi
-        QMAKE_SPEC_ARGS="-spec $SPEC"
         echo $ECHO_N "  for $a$ECHO_C"
 
         QMAKE="$outpath/bin/qmake"
-	QMAKE_ARGS="$QMAKE_SWITCHES $QMAKE_SPEC_ARGS"
         if [ "$file" = ".projects.3" ]; then
             echo " (fast)"
 
@@ -6329,7 +6325,7 @@ EOF
             cat >>"${OUTDIR}/Makefile" <<EOF
 QMAKE = "$QMAKE"
 all clean install qmake first Makefile: FORCE
-	\$(QMAKE) $QMAKE_ARGS -o "$OUTDIR" "$a"
+	\$(QMAKE) $QMAKE_SWITCHES -o "$OUTDIR" "$a"
 	cd "$OUTDIR"
 	\$(MAKE) \$@
 
@@ -6337,15 +6333,13 @@ FORCE:
 
 EOF
         else
+            echo
             if [ "$OPT_VERBOSE" = "yes" ]; then
-                echo " (`basename $SPEC`)"
-                echo "$QMAKE" $QMAKE_ARGS -o "$OUTDIR" "$a"
-	    else
-		echo
+                echo "$QMAKE" $QMAKE_SWITCHES -o "$OUTDIR" "$a"
             fi
 
             [ -f "${OUTDIR}/Makefile" ] && chmod +w "${OUTDIR}/Makefile"
-            QTDIR="$outpath" "$QMAKE" $QMAKE_ARGS -o "$OUTDIR" "$a"
+            QTDIR="$outpath" "$QMAKE" $QMAKE_SWITCHES -o "$OUTDIR" "$a"
        fi
     done
 done
diff --git a/qmake/qmake.pro b/qmake/qmake.pro
index 5a5010ff6ab811d53bbfb922d01ea5d78dc23260..0693d9a4ac24f183f4c8baf5566437f5d1200333 100644
--- a/qmake/qmake.pro
+++ b/qmake/qmake.pro
@@ -3,6 +3,7 @@
 #once you are boot strapped though, the qmake.pro will offer better coverage of a
 #platform than either of the generic makefiles
 
+option(host_build)
 CONFIG += console bootstrap
 CONFIG -= qt shared app_bundle uic
 DEFINES += QT_BUILD_QMAKE QT_BOOTSTRAPPED
diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro
index 239f9e58b3fa2f643a9fd467ab5af2f4333b6d9e..8f29393be2b9de109b063f68b8830963fd3affc6 100644
--- a/src/tools/bootstrap/bootstrap.pro
+++ b/src/tools/bootstrap/bootstrap.pro
@@ -1,3 +1,4 @@
+option(host_build)
 TEMPLATE = lib
 TARGET = bootstrap
 CONFIG += staticlib
diff --git a/src/tools/moc/moc.pro b/src/tools/moc/moc.pro
index 62d692844fff35ca7b19924bfd265b1108cfd7eb..b40f21396d75fe879bd3e223f30254de69777bfe 100644
--- a/src/tools/moc/moc.pro
+++ b/src/tools/moc/moc.pro
@@ -1,3 +1,4 @@
+option(host_build)
 TEMPLATE	= app
 TARGET		= moc
 
diff --git a/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro b/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro
index 33f7937c5bf305cc825cfae0a587699f9c3515d0..ae1edf07cdeeec41a9d02ef68a992d9c98425503 100644
--- a/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro
+++ b/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro
@@ -1,4 +1,4 @@
-
+option(host_build)
 TEMPLATE = app
 TARGET = qdbuscpp2xml
 
diff --git a/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro b/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro
index 5c430fdfb17716dead8528a2739e607b49d20756..ac7183775a105634a5de0d35530a6b889fdde8c2 100644
--- a/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro
+++ b/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro
@@ -1,3 +1,4 @@
+option(host_build)
 TEMPLATE = app
 TARGET = qdbusxml2cpp
 
diff --git a/src/tools/qdoc/qdoc.pro b/src/tools/qdoc/qdoc.pro
index 348593d74ad0720866f806fcb379ba132f4a990b..37ec63ab049017405fd17ee208a8b890d9f286e9 100644
--- a/src/tools/qdoc/qdoc.pro
+++ b/src/tools/qdoc/qdoc.pro
@@ -1,3 +1,4 @@
+option(host_build)
 TEMPLATE = app
 TARGET = qdoc
 
diff --git a/src/tools/rcc/rcc.pro b/src/tools/rcc/rcc.pro
index e87ef605b9943853251478b6ed607b3109a30555..8debb0339872fc4c4bf3e46beeac981d5baca625 100644
--- a/src/tools/rcc/rcc.pro
+++ b/src/tools/rcc/rcc.pro
@@ -1,3 +1,4 @@
+option(host_build)
 TEMPLATE = app
 TARGET = rcc
 
diff --git a/src/tools/uic/uic.pro b/src/tools/uic/uic.pro
index 0acc6e77c803da9d4d8309a7cb6ad2a7279b42f9..d03645eb4589731bc5b70c7a1f9b3fe49e497e3f 100644
--- a/src/tools/uic/uic.pro
+++ b/src/tools/uic/uic.pro
@@ -1,3 +1,4 @@
+option(host_build)
 TEMPLATE = app
 TARGET = uic
 
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index ff2744397d5403a9b936822eaadedbf6fd9c42fd..9633bb686268912e5e4e48fd63b2d0ea7ff5cfe3 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -3642,7 +3642,6 @@ void Configure::generateMakefiles()
                     printf("Generating Makefiles...\n");
                     generate = false; // Now Makefiles will be done
                 }
-                // don't pass -spec - .qmake.cache has it already
                 args << "-r";
                 args << (sourcePath + "/qtbase.pro");
                 args << "-o";
@@ -3682,8 +3681,6 @@ void Configure::generateMakefiles()
                     cout << "For " << qPrintable(dirPath + projectName) << endl;
                     args << "-o";
                     args << it->target;
-                    args << "-spec";
-                    args << spec;
                     if (!dictionary[ "QMAKEADDITIONALARGS" ].isEmpty())
                         args << dictionary[ "QMAKEADDITIONALARGS" ];