diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp
index c5740cb0c775936e8b8d66dbf50f7544c4a25c5d..668f96ffc5adb90d0903a9dd2d64235e0d346d3f 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp
@@ -41,12 +41,14 @@ namespace Qt4ProjectManager {
 namespace Internal {
 
 MaemoDeployableListModel::MaemoDeployableListModel(const Qt4ProFileNode *proFileNode,
-    const QSharedPointer<ProFileOption> &proFileOption, QObject *parent)
+    const QSharedPointer<ProFileOption> &proFileOption,
+    ProFileUpdateSetting updateSetting, QObject *parent)
     : QAbstractTableModel(parent),
       m_proFileNode(proFileNode),
       m_modified(false),
       m_proFileWrapper(new MaemoProFileWrapper(m_proFileNode->path(),
-          m_proFileNode->buildDir(), proFileOption))
+      m_proFileNode->buildDir(), proFileOption)),
+      m_proFileUpdateSetting(updateSetting), m_hasTargetPath(false)
 {
     buildModel();
 }
@@ -58,7 +60,8 @@ bool MaemoDeployableListModel::buildModel()
     m_deployables.clear();
 
     const MaemoProFileWrapper::InstallsList &installs = m_proFileWrapper->installs();
-    if (installs.targetPath.isEmpty()) {
+    m_hasTargetPath = !installs.targetPath.isEmpty();
+    if (!m_hasTargetPath && m_proFileUpdateSetting == UpdateProFile) {
         const QString remoteDirSuffix
             = QLatin1String(m_proFileNode->projectType() == LibraryTemplate
                 ? "/lib" : "/bin");
@@ -223,8 +226,10 @@ QString MaemoDeployableListModel::localExecutableFilePath() const
 
 QString MaemoDeployableListModel::remoteExecutableFilePath() const
 {
-    return deployableAt(0).remoteDir + '/'
-        + QFileInfo(localExecutableFilePath()).fileName();
+    return m_hasTargetPath
+        ? deployableAt(0).remoteDir + '/'
+              + QFileInfo(localExecutableFilePath()).fileName()
+        : QString();
 }
 
 QString MaemoDeployableListModel::projectName() const
@@ -237,5 +242,12 @@ QString MaemoDeployableListModel::projectDir() const
     return QFileInfo(m_proFileNode->path()).dir().path();
 }
 
+void MaemoDeployableListModel::setProFileUpdateSetting(ProFileUpdateSetting updateSetting)
+{
+    m_proFileUpdateSetting = updateSetting;
+    if (updateSetting == UpdateProFile)
+        buildModel();
+}
+
 } // namespace Qt4ProjectManager
 } // namespace Internal
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.h b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.h
index ee615da474857fc4477016c4e203f04ad0e43cd4..1da79c411f3ed8722a7044ccc5b32193500fb700 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.h
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.h
@@ -52,8 +52,13 @@ class MaemoDeployableListModel : public QAbstractTableModel
 {
     Q_OBJECT
 public:
+    enum ProFileUpdateSetting {
+        UpdateProFile, DontUpdateProFile, AskToUpdateProFile
+    };
+
     MaemoDeployableListModel(const Qt4ProFileNode *proFileNode,
-        const QSharedPointer<ProFileOption> &proFileOption, QObject *parent);
+        const QSharedPointer<ProFileOption> &proFileOption,
+        ProFileUpdateSetting updateSetting, QObject *parent);
     ~MaemoDeployableListModel();
 
     virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
@@ -68,6 +73,11 @@ public:
     QString projectName() const;
     QString projectDir() const;
     const Qt4ProFileNode *proFileNode() const { return m_proFileNode; }
+    bool hasTargetPath() const { return m_hasTargetPath; }
+    ProFileUpdateSetting proFileUpdateSetting() const {
+        return m_proFileUpdateSetting;
+    }
+    void setProFileUpdateSetting(ProFileUpdateSetting updateSetting);
 
 private:
     virtual int columnCount(const QModelIndex &parent = QModelIndex()) const;
@@ -85,6 +95,8 @@ private:
     QList<MaemoDeployable> m_deployables;
     mutable bool m_modified;
     const QScopedPointer<MaemoProFileWrapper> m_proFileWrapper;
+    ProFileUpdateSetting m_proFileUpdateSetting;
+    bool m_hasTargetPath;
 };
 
 } // namespace Qt4ProjectManager
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.cpp
index df008ceebdb6e3c186513b8457e437a4db54ffcf..ee872e08e6d22e173a88cc83429fd6ff85292a8e 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.cpp
@@ -72,6 +72,7 @@ MaemoDeployableListWidget::MaemoDeployableListWidget(QWidget *parent,
         SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this,
         SLOT(enableOrDisableRemoveButton()));
     m_ui->deployablesView->resizeColumnsToContents();
+    m_ui->deployablesView->resizeRowsToContents();
     m_ui->deployablesView->horizontalHeader()->setStretchLastSection(true);
     enableOrDisableRemoveButton();
 }
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.h b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.h
index fcbf75249e5a3803a09c5f4cd4a1d75a999a53d9..2652afabbb7ef0ba2d93cf8e627e1c752dc79c27 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.h
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistwidget.h
@@ -61,6 +61,7 @@ class MaemoDeployableListWidget : public QWidget
 public:
     MaemoDeployableListWidget(QWidget *parent, MaemoDeployableListModel *model);
     ~MaemoDeployableListWidget();
+    MaemoDeployableListModel *model() const { return m_model; }
 
 private slots:
     void addFile();
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp
index 9ec886958417b45cd3c54f2f8f46a3b2014bfd0e..7549386d70520a986d6b17d3f1d79c972a873506 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp
@@ -41,10 +41,11 @@
 
 #include "maemodeployables.h"
 
-#include "maemodeployablelistmodel.h"
+#include "maemoprofilesupdatedialog.h"
 
 #include <profileevaluator.h>
 #include <projectexplorer/buildstep.h>
+#include <qt4projectmanager/qt4projectmanagerconstants.h>
 #include <qt4projectmanager/qt4buildconfiguration.h>
 #include <qt4projectmanager/qt4project.h>
 #include <qt4projectmanager/qt4target.h>
@@ -55,46 +56,91 @@ namespace Qt4ProjectManager {
 namespace Internal {
 
 MaemoDeployables::MaemoDeployables(const ProjectExplorer::BuildStep *buildStep)
-    : m_buildStep(buildStep)
+    : m_buildStep(buildStep), m_updateTimer(new QTimer(this))
 {
     QTimer::singleShot(0, this, SLOT(init()));
+    m_updateTimer->setInterval(1500);
+    connect(m_updateTimer, SIGNAL(timeout()), this, SLOT(createModels()));
 }
 
 MaemoDeployables::~MaemoDeployables() {}
 
 void MaemoDeployables::init()
 {
-    createModels();
     connect(qt4BuildConfiguration()->qt4Target()->qt4Project(),
         SIGNAL(proFileUpdated(Qt4ProjectManager::Internal::Qt4ProFileNode*)),
-        this, SLOT(createModels()));
+        m_updateTimer, SLOT(start()));
+    createModels();
 }
 
 void MaemoDeployables::createModels()
 {
-    qDeleteAll(m_listModels);
-    m_listModels.clear();
+    if (!qt4BuildConfiguration() || !qt4BuildConfiguration()->qt4Target()
+        || qt4BuildConfiguration()->qt4Target()->project()->activeTarget()->id()
+            != QLatin1String(Qt4ProjectManager::Constants::MAEMO_DEVICE_TARGET_ID))
+        return;
+    disconnect(qt4BuildConfiguration()->qt4Target()->qt4Project(),
+        SIGNAL(proFileUpdated(Qt4ProjectManager::Internal::Qt4ProFileNode*)),
+        m_updateTimer, SLOT(start()));
+    m_updateTimer->stop();
     m_proFileOption = QSharedPointer<ProFileOption>(new ProFileOption);
     m_proFileOption->properties
         = qt4BuildConfiguration()->qtVersion()->versionInfo();
     m_proFileOption->target_mode = ProFileOption::TARG_UNIX_MODE;
-    createModels(qt4BuildConfiguration()->qt4Target()->qt4Project()
-        ->rootProjectNode());
+    const Qt4ProFileNode *const rootNode
+        = qt4BuildConfiguration()->qt4Target()->qt4Project()->rootProjectNode();
+    if (!rootNode) // Happens on project creation by wizard.
+        return;
+    qDeleteAll(m_listModels);
+    m_listModels.clear();
+    createModels(rootNode);
+    QList<MaemoDeployableListModel *> modelsWithoutTargetPath;
+    foreach (MaemoDeployableListModel *const model, m_listModels) {
+        if (!model->hasTargetPath()) {
+            if (model->proFileUpdateSetting() == MaemoDeployableListModel::AskToUpdateProFile)
+                modelsWithoutTargetPath << model;
+        }
+    }
+
+    if (!modelsWithoutTargetPath.isEmpty()) {
+        MaemoProFilesUpdateDialog dialog(modelsWithoutTargetPath);
+        dialog.exec();
+        const QList<MaemoProFilesUpdateDialog::UpdateSetting> &settings
+            = dialog.getUpdateSettings();
+        foreach (const MaemoProFilesUpdateDialog::UpdateSetting &setting, settings) {
+            const MaemoDeployableListModel::ProFileUpdateSetting updateSetting
+                = setting.second
+                    ? MaemoDeployableListModel::UpdateProFile
+                    : MaemoDeployableListModel::DontUpdateProFile;
+            m_updateSettings.insert(setting.first->proFileNode()->path(),
+                updateSetting);
+            setting.first->setProFileUpdateSetting(updateSetting);
+        }
+    }
+
     emit modelsCreated();
+    connect(qt4BuildConfiguration()->qt4Target()->qt4Project(),
+        SIGNAL(proFileUpdated(Qt4ProjectManager::Internal::Qt4ProFileNode*)),
+        m_updateTimer, SLOT(start()));
 }
 
 void MaemoDeployables::createModels(const Qt4ProFileNode *proFileNode)
 {
-    if (!proFileNode) // Happens on project creation by wizard.
-        return;
-    const Qt4ProjectType type = proFileNode->projectType() ;
-    switch (type) {
+    switch (proFileNode->projectType()) {
     case ApplicationTemplate:
     case LibraryTemplate:
-    case ScriptTemplate:
-        m_listModels
-            << new MaemoDeployableListModel(proFileNode, m_proFileOption, this);
+    case ScriptTemplate: {
+        UpdateSettingsMap::ConstIterator it
+            = m_updateSettings.find(proFileNode->path());
+        const MaemoDeployableListModel::ProFileUpdateSetting updateSetting
+            = it != m_updateSettings.end()
+                  ? it.value() : MaemoDeployableListModel::AskToUpdateProFile;
+        MaemoDeployableListModel *const newModel
+            = new MaemoDeployableListModel(proFileNode, m_proFileOption,
+                      updateSetting, this);
+        m_listModels << newModel;
         break;
+    }
     case SubDirsTemplate: {
         const QList<ProjectExplorer::ProjectNode *> &subProjects
             = proFileNode->subProjectNodes();
@@ -160,7 +206,6 @@ const Qt4BuildConfiguration *MaemoDeployables::qt4BuildConfiguration() const
 {
     const Qt4BuildConfiguration * const bc
         = qobject_cast<Qt4BuildConfiguration *>(m_buildStep->target()->activeBuildConfiguration());
-    Q_ASSERT(bc);
     return bc;
 }
 
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h
index 0b9eff689c0f343fc3b57d8a039174c4ef390154..b056427aae2f8e901cd7388f50a2991ebbd44d53 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h
@@ -43,21 +43,21 @@
 #define MAEMODEPLOYABLES_H
 
 #include "maemodeployable.h"
+#include "maemodeployablelistmodel.h"
 
+#include <QtCore/QHash>
 #include <QtCore/QList>
 #include <QtCore/QObject>
 #include <QtCore/QSharedPointer>
 
-QT_BEGIN_NAMESPACE
-struct ProFileOption;
-QT_END_NAMESPACE
+QT_FORWARD_DECLARE_CLASS(QTimer);
+QT_FORWARD_DECLARE_STRUCT(ProFileOption)
 
 namespace ProjectExplorer { class BuildStep; }
 
 namespace Qt4ProjectManager {
 namespace Internal {
 
-class MaemoDeployableListModel;
 class Qt4BuildConfiguration;
 class Qt4ProFileNode;
 
@@ -80,6 +80,8 @@ signals:
     void modelsCreated();
 
 private:
+    typedef QHash<QString, MaemoDeployableListModel::ProFileUpdateSetting> UpdateSettingsMap;
+
     Q_SLOT void createModels();
     Q_SLOT void init();
     void createModels(const Qt4ProFileNode *proFileNode);
@@ -87,7 +89,9 @@ private:
 
     QList<MaemoDeployableListModel *> m_listModels;
     QSharedPointer<ProFileOption> m_proFileOption;
+    UpdateSettingsMap m_updateSettings;
     const ProjectExplorer::BuildStep * const m_buildStep;
+    QTimer *const m_updateTimer;
 };
 
 } // namespace Qt4ProjectManager
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..1aba79772a37401f7934d9ba55d56995ec805cdf
--- /dev/null
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.cpp
@@ -0,0 +1,99 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file.  Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://qt.nokia.com/contact.
+**
+**************************************************************************/
+#include "maemoprofilesupdatedialog.h"
+#include "ui_maemoprofilesupdatedialog.h"
+
+#include "maemodeployablelistmodel.h"
+
+#include <qt4projectmanager/qt4nodes.h>
+
+#include <QtGui/QTableWidgetItem>
+
+namespace Qt4ProjectManager {
+namespace Internal {
+
+MaemoProFilesUpdateDialog::MaemoProFilesUpdateDialog(const QList<MaemoDeployableListModel *> &models,
+    QWidget *parent)
+    : QDialog(parent),
+    m_models(models),
+    ui(new Ui::MaemoProFilesUpdateDialog)
+{
+    ui->setupUi(this);
+    ui->tableWidget->setRowCount(models.count());
+    ui->tableWidget->setHorizontalHeaderItem(0,
+        new QTableWidgetItem(tr("Updateable Project Files")));
+    for (int row = 0; row < models.count(); ++row) {
+        QTableWidgetItem *const item
+            = new QTableWidgetItem(models.at(row)->proFileNode()->path());
+        item->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+        item->setCheckState(Qt::Unchecked);
+        ui->tableWidget->setItem(row, 0, item);
+    }
+    ui->tableWidget->horizontalHeader()->setResizeMode(QHeaderView::ResizeToContents);
+    ui->tableWidget->resizeRowsToContents();
+    connect(ui->checkAllButton, SIGNAL(clicked()), this, SLOT(checkAll()));
+    connect(ui->uncheckAllButton, SIGNAL(clicked()), this, SLOT(uncheckAll()));
+}
+
+MaemoProFilesUpdateDialog::~MaemoProFilesUpdateDialog()
+{
+    delete ui;
+}
+
+void MaemoProFilesUpdateDialog::checkAll()
+{
+    setCheckStateForAll(Qt::Checked);
+}
+
+void MaemoProFilesUpdateDialog::uncheckAll()
+{
+    setCheckStateForAll(Qt::Unchecked);
+}
+
+void MaemoProFilesUpdateDialog::setCheckStateForAll(Qt::CheckState checkState)
+{
+    for (int row = 0; row < ui->tableWidget->rowCount(); ++row)  {
+        ui->tableWidget->item(row, 0)->setCheckState(checkState);
+    }
+}
+
+QList<MaemoProFilesUpdateDialog::UpdateSetting>
+MaemoProFilesUpdateDialog::getUpdateSettings() const
+{
+    QList<UpdateSetting> settings;
+    for (int row = 0; row < m_models.count(); ++row) {
+        const bool doUpdate = result() != Rejected
+            && ui->tableWidget->item(row, 0)->checkState() == Qt::Checked;
+        settings << UpdateSetting(m_models.at(row), doUpdate);
+    }
+    return settings;
+}
+
+} // namespace Qt4ProjectManager
+} // namespace Internal
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.h b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.h
new file mode 100644
index 0000000000000000000000000000000000000000..e7849060c6b2b6bcdb879316a666a5799c769203
--- /dev/null
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.h
@@ -0,0 +1,71 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file.  Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://qt.nokia.com/contact.
+**
+**************************************************************************/
+#ifndef MAEMOPROFILESUPDATEDIALOG_H
+#define MAEMOPROFILESUPDATEDIALOG_H
+
+#include <QtCore/QList>
+#include <QtCore/QPair>
+#include <QtCore/QString>
+#include <QtGui/QDialog>
+
+QT_BEGIN_NAMESPACE
+namespace Ui {
+    class MaemoProFilesUpdateDialog;
+}
+QT_END_NAMESPACE
+
+namespace Qt4ProjectManager {
+namespace Internal {
+class MaemoDeployableListModel;
+
+class MaemoProFilesUpdateDialog : public QDialog
+{
+    Q_OBJECT
+
+public:
+    typedef QPair<MaemoDeployableListModel *, bool> UpdateSetting;
+
+    explicit MaemoProFilesUpdateDialog(const QList<MaemoDeployableListModel *> &models,
+        QWidget *parent = 0);
+    ~MaemoProFilesUpdateDialog();
+    QList<UpdateSetting> getUpdateSettings() const;
+
+private:
+    Q_SLOT void checkAll();
+    Q_SLOT void uncheckAll();
+    void setCheckStateForAll(Qt::CheckState checkState);
+
+    const QList<MaemoDeployableListModel *> m_models;
+    Ui::MaemoProFilesUpdateDialog *ui;
+};
+
+} // namespace Qt4ProjectManager
+} // namespace Internal
+
+#endif // MAEMOPROFILESUPDATEDIALOG_H
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.ui b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.ui
new file mode 100644
index 0000000000000000000000000000000000000000..60eaa627ebb8a7c939d3a9eed9c16b8510713176
--- /dev/null
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilesupdatedialog.ui
@@ -0,0 +1,139 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MaemoProFilesUpdateDialog</class>
+ <widget class="QDialog" name="MaemoProFilesUpdateDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>659</width>
+    <height>494</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Maemo Deployment Issue</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <widget class="QLabel" name="infoLabel">
+     <property name="text">
+      <string>The project files listed below do not contain Maemo deployment information, which means the respective targets cannot be deployed to and/or run on a device. Qt Creator can add the missing information to these files. </string>
+     </property>
+     <property name="wordWrap">
+      <bool>true</bool>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayout">
+     <item>
+      <widget class="QPushButton" name="checkAllButton">
+       <property name="text">
+        <string>Check all</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="uncheckAllButton">
+       <property name="text">
+        <string>Uncheck All</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="horizontalSpacer">
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>40</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="Line" name="line_2">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QTableWidget" name="tableWidget">
+     <property name="showGrid">
+      <bool>false</bool>
+     </property>
+     <property name="columnCount">
+      <number>1</number>
+     </property>
+     <attribute name="horizontalHeaderDefaultSectionSize">
+      <number>200</number>
+     </attribute>
+     <attribute name="horizontalHeaderStretchLastSection">
+      <bool>true</bool>
+     </attribute>
+     <attribute name="verticalHeaderVisible">
+      <bool>false</bool>
+     </attribute>
+     <column/>
+    </widget>
+   </item>
+   <item>
+    <widget class="Line" name="line">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QDialogButtonBox" name="buttonBox">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="standardButtons">
+      <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>accepted()</signal>
+   <receiver>MaemoProFilesUpdateDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>248</x>
+     <y>254</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>157</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>rejected()</signal>
+   <receiver>MaemoProFilesUpdateDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>316</x>
+     <y>260</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>286</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoprofilewrapper.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilewrapper.cpp
index ffb4107af37d5c1a143871f4ac918074c0922095..2e70d891d139acf8191c06e526b5a4108fd5ea8f 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemoprofilewrapper.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemoprofilewrapper.cpp
@@ -222,6 +222,8 @@ QString MaemoProFileWrapper::absFilePath(const QString &relFilePath) const
 
 void MaemoProFileWrapper::parseProFile(ParseType type) const
 {
+    if (m_proFileReader)
+        m_proFile->deref();
     m_proFileReader.reset(new ProFileReader(m_proFileOption.data()));
     m_proFileReader->setOutputDir(m_buildDir);
     m_proFileReader->setCumulative(false);
@@ -241,7 +243,6 @@ void MaemoProFileWrapper::parseProFile(ParseType type) const
     }
 
     m_proFileReader->accept(m_proFile);
-    m_proFile->deref();
 }
 
 bool MaemoProFileWrapper::writeProFileContents()
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemotemplatesmanager.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemotemplatesmanager.cpp
index c64c35e6237e5b2ceff7c6d1d72358f68499ed68..f5e809a6eeb5b97b2f9573154e2c6b0dce6b748f 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemotemplatesmanager.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemotemplatesmanager.cpp
@@ -402,9 +402,9 @@ void MaemoTemplatesManager::handleProFileUpdated()
         = qobject_cast<MaemoDeployables *>(sender());
     if (!deployables)
         return;
-    const Target * const target = deployables->buildStep()->target();
-    if (m_maemoProjects.contains(target->project()))
-        updateDesktopFiles(qobject_cast<const Qt4Target *>(target));
+//    const Target * const target = deployables->buildStep()->target();
+//    if (m_maemoProjects.contains(target->project()))
+//        updateDesktopFiles(qobject_cast<const Qt4Target *>(target));
 }
 
 QString MaemoTemplatesManager::version(const Project *project,
diff --git a/src/plugins/qt4projectmanager/qt-maemo/qt-maemo.pri b/src/plugins/qt4projectmanager/qt-maemo/qt-maemo.pri
index 7ce8871c4cba371fe9283c9adafc6084482a523e..a36c4a3365e579fe6aeda60d837d2ddd3a6d1e41 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/qt-maemo.pri
+++ b/src/plugins/qt4projectmanager/qt-maemo/qt-maemo.pri
@@ -31,7 +31,8 @@ HEADERS += \
     $$PWD/maemodeviceenvreader.h \
     $$PWD/maemotemplatesmanager.h \
     $$PWD/maemomountspecification.h \
-    $$PWD/maemoremotemounter.h
+    $$PWD/maemoremotemounter.h \
+    $$PWD/maemoprofilesupdatedialog.h
 
 SOURCES += \
     $$PWD/maemoconfigtestdialog.cpp \
@@ -64,7 +65,8 @@ SOURCES += \
     $$PWD/maemodeviceenvreader.cpp \
     $$PWD/maemotemplatesmanager.cpp \
     $$PWD/maemomountspecification.cpp \
-    $$PWD/maemoremotemounter.cpp
+    $$PWD/maemoremotemounter.cpp \
+    $$PWD/maemoprofilesupdatedialog.cpp
 
 FORMS += \
     $$PWD/maemoconfigtestdialog.ui \
@@ -72,6 +74,7 @@ FORMS += \
     $$PWD/maemosshconfigdialog.ui \
     $$PWD/maemopackagecreationwidget.ui \
     $$PWD/maemodeployablelistwidget.ui \
-    $$PWD/maemodeploystepwidget.ui
+    $$PWD/maemodeploystepwidget.ui \
+    $$PWD/maemoprofilesupdatedialog.ui
 
 RESOURCES += $$PWD/qt-maemo.qrc