diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp
index 8a34daf39a2a9818469332e3c790e8c5fa9b0cfc..5ea73b73a16e6ecb61f9345e9e4c4be9f854fa86 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 2e1a530733fff9996971f158530e4361156fb795..e986176b21d26fbf3cc9317d72ecc07bfe4953b8 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 3d8d8d75a898d28bf9355537d70858da440f01bc..84066644a24a15510935ea200b020b1e1cff7472 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 eef64f68df0925439b7d38973839dba22c400452..ed82482a5bd5e9e34b491fe163c216c6ce63a7af 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 ffd8f4d5ce0e22bca6a3938812e60625ae78ff87..f4fea4fa14232e353d3ec25ef9ae4c5bd08d5de4 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 a76b8007f31ea89d873b8223ff84ddb28ce64f1b..ebbbde8cd99feb49fcda89d662344ae10d266734 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 7633d2cb1d7af552849bd940d57a9ee0bc8d997b..a08220b25dbbb250d3b5d6fbde37c1056f27227e 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;