qmake/generators/symbian/symbiancommon.cpp
changeset 33 3e2da88830cd
parent 30 5dc02b23752f
child 37 758a864f9613
--- a/qmake/generators/symbian/symbiancommon.cpp	Tue Jul 06 15:10:48 2010 +0300
+++ b/qmake/generators/symbian/symbiancommon.cpp	Wed Aug 18 10:37:55 2010 +0300
@@ -63,6 +63,8 @@
 #define RSS_TAG_FOOTER "footer"
 #define RSS_TAG_DEFAULT "default_rules" // Same as just giving rules without tag
 
+#define PLUGIN_COMMON_DEF_FILE_ACTUAL "plugin_commonu.def"
+
 #define MANUFACTURER_NOTE_FILE "manufacturer_note.txt"
 #define DEFAULT_MANUFACTURER_NOTE \
     "The package is not supported for devices from this manufacturer. Please try the selfsigned " \
@@ -448,10 +450,10 @@
                 if (from.size() > 1 && from.at(1) == QLatin1Char(':'))
                     from = from.mid(2);
                 from.prepend(zDir);
-            } else {
-                if (from.size() > 1 && from.at(1) == QLatin1Char(':'))
-                    from = from.mid(2);
-            }
+                } else { 
+                if (from.size() > 1 && from.at(1) == QLatin1Char(':')) 
+                from = from.mid(2); 
+                }
         }
 
         t << QString("\"%1\" - \"%2\"").arg(from.replace('\\','/')).arg(to) << endl;
@@ -518,7 +520,7 @@
         // Wrapped files deployment
         QString currentPath = qmake_getpwd();
         QString sisName = QString("%1.sis").arg(pkgTarget);
-        twf << "\"" << currentPath << "/" << sisName << "\" - \"c:\\adm\\" << sisName << "\"" << endl;
+        twf << "\"" << currentPath << "/" << sisName << "\" - \"c:\\private\\2002CCCE\\import\\" << sisName << "\"" << endl;
 
         QString bootStrapPath = QLibraryInfo::location(QLibraryInfo::PrefixPath);
         bootStrapPath.append("/smartinstaller.sis");
@@ -973,6 +975,40 @@
     }
 }
 
+void SymbianCommonGenerator::writeCustomDefFile()
+{
+    if (targetType == TypePlugin && !generator->project->isActiveConfig("stdbinary")) {
+        // Create custom def file for plugin
+        QFile ft(Option::output_dir + QLatin1Char('/') + QLatin1String(PLUGIN_COMMON_DEF_FILE_ACTUAL));
+
+        if (ft.open(QIODevice::WriteOnly)) {
+            generatedFiles << ft.fileName();
+            QTextStream t(&ft);
+
+            t << "; ==============================================================================" << endl;
+            t << "; Generated by qmake (" << qmake_version() << ") (Qt " QT_VERSION_STR ") on: ";
+            t << QDateTime::currentDateTime().toString(Qt::ISODate) << endl;
+            t << "; This file is generated by qmake and should not be modified by the" << endl;
+            t << "; user." << endl;
+            t << ";  Name        : " PLUGIN_COMMON_DEF_FILE_ACTUAL << endl;
+            t << ";  Part of     : " << generator->project->values("TARGET").join(" ") << endl;
+            t << ";  Description : Fixes common plugin symbols to known ordinals" << endl;
+            t << ";  Version     : " << endl;
+            t << ";" << endl;
+            t << "; ==============================================================================" << "\n" << endl;
+
+            t << endl;
+
+            t << "EXPORTS" << endl;
+            t << "\tqt_plugin_query_verification_data @ 1 NONAME" << endl;
+            t << "\tqt_plugin_instance @ 2 NONAME" << endl;
+            t << endl;
+        } else {
+            PRINT_FILE_CREATE_ERROR(QString(PLUGIN_COMMON_DEF_FILE_ACTUAL))
+        }
+    }
+}
+
 QStringList SymbianCommonGenerator::symbianLangCodesFromTsFiles()
 {
     QStringList tsfiles;