diff --git a/src/plugins/android/androidconfigurations.cpp b/src/plugins/android/androidconfigurations.cpp
index 8a3a3a8316896ef14b3d4ff4953c6dd0b0e33527..d2064ace8e882766e52dd69d48e85e8db0d5fac9 100644
--- a/src/plugins/android/androidconfigurations.cpp
+++ b/src/plugins/android/androidconfigurations.cpp
@@ -775,7 +775,7 @@ void AndroidConfigurations::updateAutomaticKitList()
         foreach (QtSupport::BaseQtVersion *qt, qtVersions) {
             Kit *newKit = new Kit;
             newKit->setAutoDetected(true);
-            newKit->setIconPath(QLatin1String(Constants::ANDROID_SETTINGS_CATEGORY_ICON));
+            newKit->setIconPath(Utils::FileName::fromString(QLatin1String(Constants::ANDROID_SETTINGS_CATEGORY_ICON)));
             DeviceTypeKitInformation::setDeviceTypeId(newKit, Core::Id(Constants::ANDROID_DEVICE_TYPE));
             ToolChainKitInformation::setToolChain(newKit, tc);
             QtSupport::QtKitInformation::setQtVersion(newKit, qt);
diff --git a/src/plugins/projectexplorer/kit.cpp b/src/plugins/projectexplorer/kit.cpp
index 5a9a3bc9eaa90ed0e6e04ac6e0a43a288f1cebad..6f233524925bf16446cb1af537f5a41935e42d8d 100644
--- a/src/plugins/projectexplorer/kit.cpp
+++ b/src/plugins/projectexplorer/kit.cpp
@@ -100,7 +100,7 @@ public:
     bool m_isValid;
     bool m_hasWarning;
     QIcon m_icon;
-    QString m_iconPath;
+    Utils::FileName m_iconPath;
     int m_nestedBlockingLevel;
     bool m_mustNotify;
     bool m_mustNotifyAboutDisplayName;
@@ -123,7 +123,7 @@ Kit::Kit(Core::Id id) :
         setValue(sti->dataId(), sti->defaultValue(this));
 
     setDisplayName(QCoreApplication::translate("ProjectExplorer::Kit", "Unnamed"));
-    setIconPath(QLatin1String(":///DESKTOP///"));
+    setIconPath(Utils::FileName::fromString(QLatin1String(":///DESKTOP///")));
 }
 
 Kit::~Kit()
@@ -298,25 +298,25 @@ QIcon Kit::icon() const
     return d->m_icon;
 }
 
-QIcon Kit::icon(const QString &path)
+QIcon Kit::icon(const Utils::FileName &path)
 {
     if (path.isEmpty())
         return QIcon();
-    if (path == QLatin1String(":///DESKTOP///"))
+    if (path == Utils::FileName::fromString(QLatin1String(":///DESKTOP///")))
         return qApp->style()->standardIcon(QStyle::SP_ComputerIcon);
 
-    QFileInfo fi(path);
+    QFileInfo fi(path.toString());
     if (fi.isFile() && fi.isReadable())
-        return QIcon(path);
+        return QIcon(path.toString());
     return QIcon();
 }
 
-QString Kit::iconPath() const
+Utils::FileName Kit::iconPath() const
 {
     return d->m_iconPath;
 }
 
-void Kit::setIconPath(const QString &path)
+void Kit::setIconPath(const Utils::FileName &path)
 {
     if (d->m_iconPath == path)
         return;
@@ -378,7 +378,7 @@ QVariantMap Kit::toMap() const
     data.insert(QLatin1String(DISPLAYNAME_KEY), d->m_displayName);
     data.insert(QLatin1String(AUTODETECTED_KEY), d->m_autodetected);
     data.insert(QLatin1String(SDK_PROVIDED_KEY), d->m_sdkProvided);
-    data.insert(QLatin1String(ICON_KEY), d->m_iconPath);
+    data.insert(QLatin1String(ICON_KEY), d->m_iconPath.toString());
 
     QVariantMap extra;
 
@@ -465,7 +465,7 @@ bool Kit::fromMap(const QVariantMap &data)
     else
         d->m_sdkProvided = d->m_autodetected;
     setDisplayName(data.value(QLatin1String(DISPLAYNAME_KEY)).toString());
-    setIconPath(data.value(QLatin1String(ICON_KEY)).toString());
+    setIconPath(Utils::FileName::fromString(data.value(QLatin1String(ICON_KEY)).toString()));
 
     QVariantMap extra = data.value(QLatin1String(DATA_KEY)).toMap();
     d->m_data.clear(); // remove default values
diff --git a/src/plugins/projectexplorer/kit.h b/src/plugins/projectexplorer/kit.h
index 5d11b548e274f26169f180fe6f5de5785003e244..50b345f8b3219847314316c9542e2d44261f7103 100644
--- a/src/plugins/projectexplorer/kit.h
+++ b/src/plugins/projectexplorer/kit.h
@@ -80,9 +80,9 @@ public:
     Core::Id id() const;
 
     QIcon icon() const;
-    static QIcon icon(const QString &path);
-    QString iconPath() const;
-    void setIconPath(const QString &path);
+    static QIcon icon(const Utils::FileName &path);
+    Utils::FileName iconPath() const;
+    void setIconPath(const Utils::FileName &path);
 
     QVariant value(Core::Id key, const QVariant &unset = QVariant()) const;
     bool hasValue(Core::Id key) const;
diff --git a/src/plugins/projectexplorer/kitmanager.cpp b/src/plugins/projectexplorer/kitmanager.cpp
index 2f59e7f37cd6b48dcf3c8961f9d7d74a67a73cf0..fbbaeb4a71bb7f6d9bd1f451c4284e1519e28be2 100644
--- a/src/plugins/projectexplorer/kitmanager.cpp
+++ b/src/plugins/projectexplorer/kitmanager.cpp
@@ -244,7 +244,7 @@ void KitManager::restoreKits()
         defaultKit->setDisplayName(tr("Desktop"));
         defaultKit->setSdkProvided(false);
         defaultKit->setAutoDetected(false);
-        defaultKit->setIconPath(QLatin1String(":///DESKTOP///"));
+        defaultKit->setIconPath(Utils::FileName::fromString(QLatin1String(":///DESKTOP///")));
 
         defaultKit->setup();
 
diff --git a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
index e083bddbfd1f5ed542da00c32f0281b513cfcb21..a670b455d2083284d40e0d149d905d359e641932 100644
--- a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
+++ b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
@@ -242,11 +242,14 @@ void KitManagerConfigWidget::removeKit()
 
 void KitManagerConfigWidget::setIcon()
 {
-    const QString path = QFileDialog::getOpenFileName(this, tr("Select Icon"), m_modifiedKit->iconPath(), tr("Images (*.png *.xpm *.jpg)"));
+    const Utils::FileName path = Utils::FileName::fromString(
+                QFileDialog::getOpenFileName(this, tr("Select Icon"),
+                                             m_modifiedKit->iconPath().toString(),
+                                             tr("Images (*.png *.xpm *.jpg)")));
     if (path.isEmpty())
         return;
 
-    const QIcon icon = QIcon(path);
+    const QIcon icon = Kit::icon(path);
     if (icon.isNull())
         return;
 
diff --git a/src/plugins/projectexplorer/settingsaccessor.cpp b/src/plugins/projectexplorer/settingsaccessor.cpp
index a5273322e28cef77d4af875764ad73cd08e205e9..84991e5652e8eae13e8d5fea3d4b96fe1e049e00 100644
--- a/src/plugins/projectexplorer/settingsaccessor.cpp
+++ b/src/plugins/projectexplorer/settingsaccessor.cpp
@@ -2396,35 +2396,35 @@ QVariantMap Version11Handler::update(Project *project, const QVariantMap &map)
             Kit *tmpKit = rawKit;
 
             if (oldTargetId == QLatin1String("Qt4ProjectManager.Target.AndroidDeviceTarget")) {
-                tmpKit->setIconPath(QLatin1String(":/android/images/QtAndroid.png"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":/android/images/QtAndroid.png")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("Desktop"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString());
             } else if (oldTargetId == QLatin1String("RemoteLinux.EmbeddedLinuxTarget")) {
-                tmpKit->setIconPath(QLatin1String(":///DESKTOP///"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":///DESKTOP///")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("GenericLinuxOsType"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString());
             } else if (oldTargetId == QLatin1String("Qt4ProjectManager.Target.HarmattanDeviceTarget")) {
-                tmpKit->setIconPath(QLatin1String(":/projectexplorer/images/MaemoDevice.png"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":/projectexplorer/images/MaemoDevice.png")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("HarmattanOsType"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString());
             } else if (oldTargetId == QLatin1String("Qt4ProjectManager.Target.MaemoDeviceTarget")) {
-                tmpKit->setIconPath(QLatin1String(":/projectexplorer/images/MaemoDevice.png"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":/projectexplorer/images/MaemoDevice.png")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("Maemo5OsType"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString());
             } else if (oldTargetId == QLatin1String("Qt4ProjectManager.Target.MeegoDeviceTarget")) {
-                tmpKit->setIconPath(QLatin1String(":/projectexplorer/images/MaemoDevice.png"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":/projectexplorer/images/MaemoDevice.png")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("MeegoOsType"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString());
             } else if (oldTargetId == QLatin1String("Qt4ProjectManager.Target.S60DeviceTarget")) {
-                tmpKit->setIconPath(QLatin1String(":/projectexplorer/images/SymbianDevice.png"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":/projectexplorer/images/SymbianDevice.png")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("Qt4ProjectManager.SymbianDevice"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString::fromLatin1("Symbian Device"));
             } else if (oldTargetId == QLatin1String("Qt4ProjectManager.Target.QtSimulatorTarget")) {
-                tmpKit->setIconPath(QLatin1String(":/projectexplorer/images/Simulator.png"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":/projectexplorer/images/Simulator.png")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("Desktop"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString::fromLatin1("Desktop Device"));
             } else {
-                tmpKit->setIconPath(QLatin1String(":///DESKTOP///"));
+                tmpKit->setIconPath(Utils::FileName::fromString(QLatin1String(":///DESKTOP///")));
                 tmpKit->setValue(Core::Id("PE.Profile.DeviceType"), QString::fromLatin1("Desktop"));
                 tmpKit->setValue(Core::Id("PE.Profile.Device"), QString::fromLatin1("Desktop Device"));
             }
diff --git a/src/plugins/qnx/blackberryconfiguration.cpp b/src/plugins/qnx/blackberryconfiguration.cpp
index 7417cb66c42dafbe2c701055c66e75692b805bc2..db449ef36e90b425f495bcf90e16bb165eafea87 100644
--- a/src/plugins/qnx/blackberryconfiguration.cpp
+++ b/src/plugins/qnx/blackberryconfiguration.cpp
@@ -264,7 +264,7 @@ ProjectExplorer::Kit *BlackBerryConfiguration::createKit(QnxArchitecture arch, Q
 
 
     kit->setAutoDetected(m_isAutoDetected);
-    kit->setIconPath(QLatin1String(Constants::QNX_BB_CATEGORY_ICON));
+    kit->setIconPath(Utils::FileName::fromString(QLatin1String(Constants::QNX_BB_CATEGORY_ICON)));
     setSticky(kit);
     ProjectExplorer::DeviceTypeKitInformation::setDeviceTypeId(kit, Constants::QNX_BB_OS_TYPE);
     ProjectExplorer::SysRootKitInformation::setSysRoot(kit, m_sysRoot);