From ba6952b28d17b6b34f65510be645e414fa1ef6a2 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Tue, 14 Feb 2012 10:01:17 +0100 Subject: Remove -arch argument and #define QT_ARCH from configures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Do not try to detect the host or target architectures using uname or similar, and do not override with the -arch or -host-arch configure arguments. The configures will still accept the -arch and -host-arch arguments, but it ignores them and instead outputs a warning stating that these arguments are obsolete and should not be used. Set QT_ARCH and QT_HOST_ARCH qconfig.pri variables based on the compiler target. This is done by running qmake (twice when cross-compiling) on config.tests/arch/arch.pro, which preprocesses a file that contains all knowns processors. On Windows, configure.exe has never run any config.tests before, and does not currently have a function to run a program and capture its output. Use _popen() to accomplish this (as qmake does for its system() function). This needs to be done after qmake is built, as does the mkspecs/qconfig.pri generation. As a side effect, the configure steps have been slightly re-ordered, but the overall result is the same. The displayConfig() call is moved to just before generating Makefiles, so that it can show the detected architecture(s). Change-Id: I77666c77a93b48848f87648d08e79a42f721683f Reviewed-by: Morten Johan Sørvig Reviewed-by: Oswald Buddenhagen --- tools/configure/main.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'tools/configure/main.cpp') diff --git a/tools/configure/main.cpp b/tools/configure/main.cpp index 51abd7aa82..08cd691875 100644 --- a/tools/configure/main.cpp +++ b/tools/configure/main.cpp @@ -86,12 +86,18 @@ int runConfigure( int argc, char** argv ) app.generateBuildKey(); if( !app.isDone() ) app.generateConfigfiles(); - if( !app.isDone() ) - app.displayConfig(); if( !app.isDone() ) app.generateHeaders(); if( !app.isDone() ) app.buildQmake(); + // must be done after buildQmake() + if (!app.isDone()) + app.detectArch(); + // must be done after detectArch() + if (!app.isDone()) + app.generateQConfigPri(); + if (!app.isDone()) + app.displayConfig(); #endif if( !app.isDone() ) app.generateMakefiles(); -- cgit v1.2.3