qmake/generators/symbian/symmake_sbsv2.cpp
changeset 19 fcece45ef507
parent 18 2f34d5167611
child 22 79de32ba3296
--- a/qmake/generators/symbian/symmake_sbsv2.cpp	Fri Apr 16 15:50:13 2010 +0300
+++ b/qmake/generators/symbian/symmake_sbsv2.cpp	Mon May 03 13:17:34 2010 +0300
@@ -94,6 +94,23 @@
     }
 }
 
+void SymbianSbsv2MakefileGenerator::writeSbsDeploymentList(const DeploymentList& depList, QTextStream& t)
+{
+    for (int i = 0; i < depList.size(); ++i) {
+        t << "START EXTENSION qt/qmake_emulator_deployment" << endl;
+        QString fromItem = depList.at(i).from;
+        QString toItem = depList.at(i).to;
+        fromItem.replace("\\", "/");
+        toItem.replace("\\", "/");
+#if defined(Q_OS_WIN)
+        toItem.prepend(QDir::current().absolutePath().left(2)); // add drive
+#endif
+        t << "OPTION DEPLOY_SOURCE " << fromItem << endl;
+        t << "OPTION DEPLOY_TARGET " << toItem << endl;
+        t << "END" << endl;
+    }
+}
+
 void SymbianSbsv2MakefileGenerator::writeMkFile(const QString& wrapperFileName, bool deploymentOnly)
 {
     // Can't use extension makefile with sbsv2
@@ -113,7 +130,7 @@
     releasePlatforms.removeAll("winscw"); // No release for emulator
 
     QString testClause;
-    if (project->isActiveConfig("symbian_test"))
+    if (project->isActiveConfig(SYMBIAN_TEST_CONFIG))
         testClause = QLatin1String(".test");
     else
         testClause = QLatin1String("");
@@ -134,6 +151,8 @@
     t << "QMAKE             = " << Option::fixPathToTargetOS(var("QMAKE_QMAKE")) << endl;
     t << "DEL_FILE          = " << var("QMAKE_DEL_FILE") << endl;
     t << "DEL_DIR           = " << var("QMAKE_DEL_DIR") << endl;
+    t << "CHK_DIR_EXISTS    = " << var("QMAKE_CHK_DIR_EXISTS") << endl;
+    t << "MKDIR             = " << var("QMAKE_MKDIR") << endl;
     t << "MOVE              = " << var("QMAKE_MOVE") << endl;
     t << "DEBUG_PLATFORMS   = " << debugPlatforms.join(" ") << endl;
     t << "RELEASE_PLATFORMS = " << releasePlatforms.join(" ") << endl;
@@ -349,7 +368,7 @@
                     }
                 }
 
-                t << "START EXTENSION qt/qmake_extra_pre_targetdep" << endl;
+                t << "START EXTENSION qt/qmake_extra_pre_targetdep.export" << endl;
                 t << "OPTION PREDEP_TARGET " << absoluteTarget << endl;
                 t << "OPTION DEPS " << absoluteDeps << endl;
 
@@ -433,24 +452,23 @@
         }
     }
 
-    // Write winscw deployment rules
+    // Write deployment rules
     QString remoteTestPath = epocRoot() + QLatin1String("epoc32/winscw/c/private/") + privateDirUid;
     DeploymentList depList;
-    initProjectDeploySymbian(project, depList, remoteTestPath, false, QLatin1String("winscw"), QLatin1String("udeb"), generatedDirs, generatedFiles);
 
-    //:QTP:QTPROD-92 Deployment of plugins requires WINSCW build before ARM build
+    //write emulator deployment
     t << "#if defined(WINSCW)" << endl;
-    //write WINSCW deployment
-    writeSbsDeploymentList(depList, t);
-    t << "#else" << endl;
-    //write ARMV5 deployment
-	remoteTestPath = epocRoot() + QLatin1String("epoc32/data/z/private/") + privateDirUid;
-    depList.clear();
-    generatedDirs.clear();
-    generatedFiles.clear();
-    initProjectDeploySymbian(project, depList, remoteTestPath, false, QLatin1String("armv5"), QLatin1String("urel"), generatedDirs, generatedFiles);
+    initProjectDeploySymbian(project, depList, remoteTestPath, false,
+        QLatin1String(EMULATOR_DEPLOYMENT_PLATFORM), QString(), generatedDirs, generatedFiles);
     writeSbsDeploymentList(depList, t);
     t << "#endif" << endl;
+
+    //write ROM deployment
+    remoteTestPath = epocRoot() + QLatin1String("epoc32/data/z/private/") + privateDirUid;
+    depList.clear();
+    initProjectDeploySymbian(project, depList, remoteTestPath, false,
+        QLatin1String(ROM_DEPLOYMENT_PLATFORM), QString(), generatedDirs, generatedFiles);
+    writeSbsDeploymentList(depList, t);
     t << endl;
 
     // Write post link rules