summaryrefslogtreecommitdiffstats
path: root/qmake/generators/symbian/symbian_makefile.h
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-03-17 23:53:41 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-03-17 23:53:41 (GMT)
commit09c2a804b700ec51f44bda567b806181d00bc161 (patch)
tree8a4752daf2aa95d7879b782f807dc30c23216b3b /qmake/generators/symbian/symbian_makefile.h
parentf9ca0df998a8a3a942816f2954603ad996210d8d (diff)
parente1653cf50426d979447c6dcde44a3ab21988cc49 (diff)
downloadQt-09c2a804b700ec51f44bda567b806181d00bc161.zip
Qt-09c2a804b700ec51f44bda567b806181d00bc161.tar.gz
Qt-09c2a804b700ec51f44bda567b806181d00bc161.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: (192 commits) Fix dependency so it works also on massive parrallel systems This should likely get webkit linking again on windows/sbsv2 Fixed Symbian applications with DESTDIR set. Removed a warning about generated rss files. Revert "Temporarily disable problematic dll." Fixed "Cannot install protected application" message on Symbian. Worked around a crash in the elf2e32 postlinker tool. Worked around case differences in Symbian^3 and Gnupoc. Enabled compilation of plugins again. Fixed a building bug where the DLL entry point was undefined. Moved UID2 processing from cpp code to profiles. Added rpp and rsg files to ignore filter. Moved two profiles to the correct directory. Fix build break caused by undefined symbol SetDialogPreference Temporarily disable problematic dll. Use the same concept for per-lib tweaks as armcc Consistently use the * in configure Symbian doesn't have large file support currently, just turn it off Remove largefile config test Make sure that we have all compile flags available always ...
Diffstat (limited to 'qmake/generators/symbian/symbian_makefile.h')
-rw-r--r--qmake/generators/symbian/symbian_makefile.h101
1 files changed, 101 insertions, 0 deletions
diff --git a/qmake/generators/symbian/symbian_makefile.h b/qmake/generators/symbian/symbian_makefile.h
new file mode 100644
index 0000000..f9d3c24
--- /dev/null
+++ b/qmake/generators/symbian/symbian_makefile.h
@@ -0,0 +1,101 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake application of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** 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.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SYMBIAN_MAKEFILE_H
+#define SYMBIAN_MAKEFILE_H
+
+#include "symbiancommon.h"
+
+// This allows us to reuse the code for both win32 and unix makefile generators.
+template <class T>
+class SymbianMakefileTemplate : public T, public SymbianCommonGenerator
+{
+public:
+ SymbianMakefileTemplate() : SymbianCommonGenerator(this) {}
+
+ void init()
+ {
+ T::init();
+ SymbianCommonGenerator::init();
+ }
+
+ bool writeMakefile(QTextStream &t)
+ {
+ QString numberOfIcons;
+ QString iconFile;
+ QMap<QString, QStringList> userRssRules;
+ readRssRules(numberOfIcons, iconFile, userRssRules);
+
+ // Generate pkg files if there are any actual files to deploy
+ bool generatePkg = false;
+ DeploymentList depList;
+
+ if (targetType == TypeExe) {
+ generatePkg = true;
+ } else {
+ foreach(QString item, this->project->values("DEPLOYMENT")) {
+ if (!this->project->values(item + ".sources").isEmpty()) {
+ generatePkg = true;
+ break;
+ }
+ }
+ }
+
+ if (generatePkg) {
+ generatePkgFile(iconFile, depList, false);
+ }
+
+ // Get the application translations and convert to symbian OS lang code, i.e. decical number
+ QStringList symbianLangCodes = symbianLangCodesFromTsFiles();
+
+ if (targetType == TypeExe) {
+ if (!this->project->values("CONFIG").contains("no_icon", Qt::CaseInsensitive)) {
+ writeRegRssFile(userRssRules);
+ writeRssFile(numberOfIcons, iconFile);
+ writeLocFile(symbianLangCodes);
+ }
+ }
+
+ return T::writeMakefile(t);
+ }
+};
+
+#endif // SYMBIAN_MAKEFILE_H