From c0a922f742c23a33ec4ebd4d69c19dcbd9d1a7bf Mon Sep 17 00:00:00 2001 From: Christian Kandeler <christian.kandeler@nokia.com> Date: Mon, 23 Aug 2010 15:37:17 +0200 Subject: [PATCH] Maemo: Differentiate between Maemo versions. Reviewed-by: kh1 --- .../qt-maemo/maemopackagecreationstep.cpp | 5 +++++ .../qt-maemo/maemopackagecreationstep.h | 2 +- .../qt4projectmanager/qt-maemo/maemoremotemounter.cpp | 2 ++ .../qt-maemo/maemorunconfiguration.cpp | 5 +++++ .../qt-maemo/maemorunconfiguration.h | 2 +- .../qt4projectmanager/qt-maemo/maemotoolchain.cpp | 11 +++++++++++ .../qt4projectmanager/qt-maemo/maemotoolchain.h | 5 +++++ 7 files changed, 30 insertions(+), 2 deletions(-) diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp index 8a34daf39a2..5ea73b73a16 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp @@ -342,6 +342,11 @@ QString MaemoPackageCreationStep::packageFilePath() const % packageFileName(buildConfiguration()->target()->project(), version); } +bool MaemoPackageCreationStep::isPackagingEnabled() const +{ + return m_packagingEnabled || !maemoToolChain()->allowsPackagingDisabling(); +} + QString MaemoPackageCreationStep::versionString(QString *error) const { return MaemoTemplatesManager::instance() diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h index 2e1a530733f..e986176b21d 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h @@ -68,7 +68,7 @@ public: ~MaemoPackageCreationStep(); QString packageFilePath() const; - bool isPackagingEnabled() const { return m_packagingEnabled; } + bool isPackagingEnabled() const; void setPackagingEnabled(bool enabled) { m_packagingEnabled = enabled; } QString versionString(QString *error) const; diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp index 3d8d8d75a89..84066644a24 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp @@ -80,6 +80,8 @@ void MaemoRemoteMounter::mount() m_stop = false; Q_ASSERT(m_utfsServers.isEmpty()); + if (!m_toolChain->allowsRemoteMounts()) + m_mountSpecs.clear(); if (m_mountSpecs.isEmpty()) emit mounted(); else diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.cpp index eef64f68df0..ed82482a5bd 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.cpp @@ -282,6 +282,11 @@ MaemoPortList MaemoRunConfiguration::freePorts() const return devConfig.freePorts(); } +bool MaemoRunConfiguration::useRemoteGdb() const +{ + return m_useRemoteGdb && toolchain()->allowsRemoteMounts(); +} + void MaemoRunConfiguration::setArguments(const QStringList &args) { m_arguments = args; diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.h b/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.h index ffd8f4d5ce0..f4fea4fa142 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemorunconfiguration.h @@ -93,7 +93,7 @@ public: void setArguments(const QStringList &args); MaemoDeviceConfig deviceConfig() const; MaemoPortList freePorts() const; - bool useRemoteGdb() const { return m_useRemoteGdb; } + bool useRemoteGdb() const; void setUseRemoteGdb(bool useRemoteGdb) { m_useRemoteGdb = useRemoteGdb; } void updateFactoryState() { emit isEnabledChanged(true); } diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.cpp index a76b8007f31..ebbbde8cd99 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.cpp @@ -113,6 +113,17 @@ QString MaemoToolChain::sysrootRoot() const return m_sysrootRoot; } +MaemoToolChain::MaemoVersion MaemoToolChain::version() const +{ + const QString &name = targetName(); + if (name.startsWith(QLatin1String("fremantle"))) + return Maemo5; + if (name.startsWith(QLatin1String("harmattan"))) + return Maemo6; + qWarning("Unknown Maemo version!"); + return static_cast<MaemoVersion>(-1); +} + void MaemoToolChain::setMaddeRoot() const { QDir dir(targetRoot()); diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.h b/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.h index 7633d2cb1d7..a08220b25db 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemotoolchain.h @@ -52,6 +52,11 @@ public: QString sysrootRoot() const; QString madAdminCommand() const; + enum MaemoVersion { Maemo5, Maemo6 }; + MaemoVersion version() const; + bool allowsRemoteMounts() const { return version() == Maemo5; } + bool allowsPackagingDisabling() const { return version() == Maemo5; } + protected: bool equals(ToolChain *other) const; -- GitLab