summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32
diff options
context:
space:
mode:
authorMark Brand <mabrand@mabrand.nl>2010-06-10 12:35:05 (GMT)
committerOswald Buddenhagen <oswald.buddenhagen@nokia.com>2010-06-10 12:35:05 (GMT)
commitb65a1e0be447abca16f20001efe1be43a0469808 (patch)
treef60e796b135030fbb734b8251b5e2deba3f5fd38 /qmake/generators/win32
parent0d5649713af91dcce58a623bbef7d38e2fbdf13b (diff)
downloadQt-b65a1e0be447abca16f20001efe1be43a0469808.zip
Qt-b65a1e0be447abca16f20001efe1be43a0469808.tar.gz
Qt-b65a1e0be447abca16f20001efe1be43a0469808.tar.bz2
support for cross building Qt for MinGW (win32-g++) on Unix
This changeset provides the basis for targetting win32-g++ on Unix using the configure shell script: support added to the configure script itself support added to relevant config.tests support added to mingw makefile generator in qmake new makespec: unsupported/win32-g++-cross The makespec is based on the win32-g++ makespec. Merge-request: 2407 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Diffstat (limited to 'qmake/generators/win32')
-rw-r--r--qmake/generators/win32/mingw_make.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/qmake/generators/win32/mingw_make.cpp b/qmake/generators/win32/mingw_make.cpp
index 0936d15..5685d6b 100644
--- a/qmake/generators/win32/mingw_make.cpp
+++ b/qmake/generators/win32/mingw_make.cpp
@@ -371,7 +371,12 @@ void MingwMakefileGenerator::writeObjectsPart(QTextStream &t)
ar_script_file += "." + var("BUILD_NAME");
}
createArObjectScriptFile(ar_script_file, var("DEST_TARGET"), project->values("OBJECTS"));
- objectsLinkLine = "ar -M < " + ar_script_file;
+ // QMAKE_LIB is used for win32, including mingw, whereas QMAKE_AR is used on Unix.
+ // Strip off any options since the ar commands will be read from file.
+ QString ar_cmd = var("QMAKE_LIB").section(" ", 0, 0);;
+ if (ar_cmd.isEmpty())
+ ar_cmd = "ar";
+ objectsLinkLine = ar_cmd + " -M < " + ar_script_file;
} else {
QString ld_script_file = var("QMAKE_LINK_OBJECT_SCRIPT") + "." + var("TARGET");
if (!var("BUILD_NAME").isEmpty()) {