diff --git a/src/plugins/remotelinux/maemodeploystepfactory.cpp b/src/plugins/remotelinux/maemodeploystepfactory.cpp index 82b90fbe347c8904364ae75131472a6de75ce576..3fcea78e2093b262c39841c1ffd5049e2d7f24b1 100644 --- a/src/plugins/remotelinux/maemodeploystepfactory.cpp +++ b/src/plugins/remotelinux/maemodeploystepfactory.cpp @@ -81,6 +81,8 @@ QStringList MaemoDeployStepFactory::availableCreationIds(BuildStepList *parent) ids << MaemoInstallRpmPackageToSysrootStep::Id; ids << MaemoUploadAndInstallRpmPackageStep::Id; } + if (qobject_cast<Qt4HarmattanTarget *>(parent->target())) + ids << MaemoDirectDeviceUploadStep::Id; if (qobject_cast<Qt4Maemo5Target *>(parent->target())) { ids << MaemoMountAndInstallDeployStep::Id << MaemoMountAndCopyDeployStep::Id; diff --git a/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp b/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp index a1273471634c1dcc3c0924923c4e2c88663d58c8..6994a2321081f22ad3fc95ad877d988c3d673f19 100644 --- a/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp +++ b/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp @@ -217,6 +217,15 @@ void MaemoDirectDeviceUploadStep::handleUploadFinished(Utils::SftpJobId jobId, setFinished(); } else { setDeployed(connection()->connectionParameters().host, d); + + // Terrible hack for Windows. + if (d.remoteDir.contains(QLatin1String("bin"))) { + const QString remoteFilePath = d.remoteDir + QLatin1Char('/') + + QFileInfo(d.localFilePath).fileName(); + const QString command = QLatin1String("chmod a+x ") + remoteFilePath; + connection()->createRemoteProcess(command.toUtf8())->start(); + } + uploadNextFile(); } }