diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecontents.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecontents.cpp index 583552a862140906098b1f57533bb6dca81411ea..1185eaf408b49e8a77cb3ce7bc2a1a29f03110de 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecontents.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecontents.cpp @@ -33,6 +33,8 @@ #include "maemotoolchain.h" #include <qt4projectmanager/qt4buildconfiguration.h> +#include <qt4projectmanager/qt4project.h> +#include <qt4projectmanager/qt4target.h> #include <QtCore/QDir> #include <QtCore/QFileInfo> @@ -176,8 +178,14 @@ void MaemoPackageContents::fromMap(const QVariantMap &map) QString MaemoPackageContents::remoteExecutableFilePath() const { if (m_remoteExecutableFilePath.isEmpty()) { - m_remoteExecutableFilePath = QLatin1String("/usr/local/bin/") - + m_packageStep->executableFileName(); + const Qt4ProjectType projectType + = m_packageStep->qt4BuildConfiguration()->qt4Target()->qt4Project() + ->rootProjectNode()->projectType(); + const QString remoteDir = projectType == LibraryTemplate + ? QLatin1String("/usr/local/lib/") + : QLatin1String("/usr/local/bin/"); + m_remoteExecutableFilePath + = remoteDir + m_packageStep->executableFileName(); } return m_remoteExecutableFilePath; } diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp index 47a43892f5415d196d93d93c7e65b757062740f5..61ca0edc2132e6ab6d1fd214ada6d84f8b3475a0 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp @@ -254,14 +254,22 @@ QString MaemoPackageCreationStep::localExecutableFilePath() const ->qt4Project()->rootProjectNode()->targetInformation(); if (!ti.valid) return QString(); - return QDir::toNativeSeparators(QDir::cleanPath(ti.workingDir - + QLatin1Char('/') + ti.target)); + + QLatin1Char('/') + executableFileName())); } QString MaemoPackageCreationStep::executableFileName() const { - return QFileInfo(localExecutableFilePath()).fileName(); + const Qt4Project * const project + = qt4BuildConfiguration()->qt4Target()->qt4Project(); + const TargetInformation &ti + = project->rootProjectNode()->targetInformation(); + if (!ti.valid) + return QString(); + + return project->rootProjectNode()->projectType() == LibraryTemplate + ? QLatin1String("lib") + ti.target + QLatin1String(".so") + : ti.target; } const MaemoToolChain *MaemoPackageCreationStep::maemoToolChain() const diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h index 60f2bbce526c42096728d171240762b0627af4db..f0945db1ddf9f3ab749e4e5805b8ce1e434c03f2 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h @@ -67,6 +67,7 @@ public: QString localExecutableFilePath() const; QString executableFileName() const; MaemoPackageContents *packageContents() const { return m_packageContents; } + const Qt4BuildConfiguration *qt4BuildConfiguration() const; private: MaemoPackageCreationStep(ProjectExplorer::BuildConfiguration *buildConfig, @@ -81,7 +82,6 @@ private: bool createPackage(); bool runCommand(QProcess &proc, const QString &command); - const Qt4BuildConfiguration *qt4BuildConfiguration() const; const MaemoToolChain *maemoToolChain() const; QString maddeRoot() const; QString targetRoot() const;