From ec6fc83c5d6865550caf49de67b877d632020e7a Mon Sep 17 00:00:00 2001 From: kh1 <qt-info@nokia.com> Date: Fri, 21 May 2010 14:43:18 +0200 Subject: [PATCH] Make sure we can compile the debugging help for maemo. This boils down to the same problem as other calls to qmake, if we don't pass the target mode, qmake will prepend the current platform as target. Reviewed-by: dt --- src/plugins/projectexplorer/debugginghelper.cpp | 15 ++++----------- src/plugins/projectexplorer/debugginghelper.h | 4 ++-- .../qt4projectmanager/qtversionmanager.cpp | 7 +++++-- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/src/plugins/projectexplorer/debugginghelper.cpp b/src/plugins/projectexplorer/debugginghelper.cpp index ef1f9a9363a..495996e4506 100644 --- a/src/plugins/projectexplorer/debugginghelper.cpp +++ b/src/plugins/projectexplorer/debugginghelper.cpp @@ -130,15 +130,6 @@ QString DebuggingHelperLibrary::debuggingHelperLibraryByInstallData(const QStrin return QString(); } -QString DebuggingHelperLibrary::buildDebuggingHelperLibrary(const QString &qmakePath, const QString &make, const Environment &env) -{ - QString errorMessage; - const QString directory = copyDebuggingHelperLibrary(qtInstallDataDir(qmakePath), &errorMessage); - if (directory.isEmpty()) - return errorMessage; - return buildDebuggingHelperLibrary(directory, make, qmakePath, QString(), env); -} - // Copy helper source files to a target directory, replacing older files. static bool copyDebuggingHelperFiles(const QStringList &files, const QString &targetDirectory, @@ -192,7 +183,9 @@ QString DebuggingHelperLibrary::copyDebuggingHelperLibrary(const QString &qtInst return QString(); } -QString DebuggingHelperLibrary::buildDebuggingHelperLibrary(const QString &directory, const QString &makeCommand, const QString &qmakeCommand, const QString &mkspec, const Environment &env) +QString DebuggingHelperLibrary::buildDebuggingHelperLibrary(const QString &directory, const QString &makeCommand, + const QString &qmakeCommand, const QString &mkspec, + const Environment &env, const QString &targetMode) { QString output; const QChar newline = QLatin1Char('\n'); @@ -222,7 +215,7 @@ QString DebuggingHelperLibrary::buildDebuggingHelperLibrary(const QString &direc output += QCoreApplication::translate("ProjectExplorer::DebuggingHelperLibrary", "Running %1 ...\n").arg(qmakeCommand); QStringList makeArgs; - makeArgs << QLatin1String("-spec")<< (mkspec.isEmpty() ? QString(QLatin1String("default")) : mkspec) << QLatin1String("gdbmacros.pro"); + makeArgs << targetMode << QLatin1String("-spec") << (mkspec.isEmpty() ? QString(QLatin1String("default")) : mkspec) << QLatin1String("gdbmacros.pro"); proc.start(qmakeCommand, makeArgs); proc.waitForFinished(); diff --git a/src/plugins/projectexplorer/debugginghelper.h b/src/plugins/projectexplorer/debugginghelper.h index 1017751f519..ddb6a296b88 100644 --- a/src/plugins/projectexplorer/debugginghelper.h +++ b/src/plugins/projectexplorer/debugginghelper.h @@ -52,8 +52,8 @@ public: static QStringList debuggingHelperLibraryLocationsByInstallData(const QString &qtInstallData); // Build the helpers and return the output log/errormessage. - static QString buildDebuggingHelperLibrary(const QString &qmakePath, const QString &make, const Environment &env); - static QString buildDebuggingHelperLibrary(const QString &directory, const QString &makeCommand, const QString &qmakeCommand, const QString &mkspec, const Environment &env); + static QString buildDebuggingHelperLibrary(const QString &directory, const QString &makeCommand, + const QString &qmakeCommand, const QString &mkspec, const Environment &env, const QString &targetMode); // Copy the source files to a target location and return the chosen target location. static QString copyDebuggingHelperLibrary(const QString &qtInstallData, QString *errorMessage); diff --git a/src/plugins/qt4projectmanager/qtversionmanager.cpp b/src/plugins/qt4projectmanager/qtversionmanager.cpp index 62587205d94..b84098ad3c5 100644 --- a/src/plugins/qt4projectmanager/qtversionmanager.cpp +++ b/src/plugins/qt4projectmanager/qtversionmanager.cpp @@ -1657,8 +1657,11 @@ QString QtVersion::buildDebuggingHelperLibrary() tc->addToEnvironment(env); QString output; QString directory = DebuggingHelperLibrary::copyDebuggingHelperLibrary(qtInstallData, &output); - if (!directory.isEmpty()) - output += DebuggingHelperLibrary::buildDebuggingHelperLibrary(directory, tc->makeCommand(), qmakeCommand(), mkspec(), env); + if (!directory.isEmpty()) { + output += DebuggingHelperLibrary::buildDebuggingHelperLibrary(directory, tc->makeCommand(), + qmakeCommand(), mkspec(), env, + (tc->type() == ToolChain::GCC_MAEMO ? QLatin1String("-unix") : QLatin1String(""))); + } m_hasDebuggingHelper = !debuggingHelperLibrary().isEmpty(); return output; } -- GitLab