author | Eckhart Koeppen <eckhart.koppen@nokia.com> |
Wed, 21 Apr 2010 20:15:53 +0300 | |
branch | RCL_3 |
changeset 13 | c0432d11811c |
parent 7 | 3f74d0d4af4c |
permissions | -rw-r--r-- |
0 | 1 |
/**************************************************************************** |
2 |
** |
|
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
3 |
** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
0 | 4 |
** All rights reserved. |
5 |
** Contact: Nokia Corporation (qt-info@nokia.com) |
|
6 |
** |
|
7 |
** This file is part of the qmake application of the Qt Toolkit. |
|
8 |
** |
|
9 |
** $QT_BEGIN_LICENSE:LGPL$ |
|
10 |
** No Commercial Usage |
|
11 |
** This file contains pre-release code and may not be distributed. |
|
12 |
** You may use this file in accordance with the terms and conditions |
|
13 |
** contained in the Technology Preview License Agreement accompanying |
|
14 |
** this package. |
|
15 |
** |
|
16 |
** GNU Lesser General Public License Usage |
|
17 |
** Alternatively, this file may be used under the terms of the GNU Lesser |
|
18 |
** General Public License version 2.1 as published by the Free Software |
|
19 |
** Foundation and appearing in the file LICENSE.LGPL included in the |
|
20 |
** packaging of this file. Please review the following information to |
|
21 |
** ensure the GNU Lesser General Public License version 2.1 requirements |
|
22 |
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. |
|
23 |
** |
|
24 |
** In addition, as a special exception, Nokia gives you certain additional |
|
25 |
** rights. These rights are described in the Nokia Qt LGPL Exception |
|
26 |
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. |
|
27 |
** |
|
28 |
** If you have questions regarding the use of this file, please contact |
|
29 |
** Nokia at qt-info@nokia.com. |
|
30 |
** |
|
31 |
** |
|
32 |
** |
|
33 |
** |
|
34 |
** |
|
35 |
** |
|
36 |
** |
|
37 |
** |
|
38 |
** $QT_END_LICENSE$ |
|
39 |
** |
|
40 |
****************************************************************************/ |
|
41 |
||
42 |
#include "symmake_sbsv2.h" |
|
43 |
#include "initprojectdeploy_symbian.h" |
|
44 |
||
45 |
#include <qstring.h> |
|
46 |
#include <qstringlist.h> |
|
47 |
#include <qdir.h> |
|
48 |
#include <qdatetime.h> |
|
49 |
#include <qdebug.h> |
|
50 |
||
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
51 |
// Included from tools/shared |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
52 |
#include <symbian/epocroot.h> |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
53 |
|
0 | 54 |
SymbianSbsv2MakefileGenerator::SymbianSbsv2MakefileGenerator() : SymbianMakefileGenerator() { } |
55 |
SymbianSbsv2MakefileGenerator::~SymbianSbsv2MakefileGenerator() { } |
|
56 |
||
57 |
#define FLM_DEST_DIR "epoc32/tools/makefile_templates/qt" |
|
58 |
#define FLM_SOURCE_DIR "/mkspecs/symbian-sbsv2/flm/qt" |
|
59 |
||
60 |
// Copies Qt FLMs to correct location under epocroot. |
|
61 |
// This is not done by configure as it is possible to change epocroot after configure. |
|
62 |
void SymbianSbsv2MakefileGenerator::exportFlm() |
|
63 |
{ |
|
64 |
static bool flmExportDone = false; |
|
65 |
||
66 |
if (!flmExportDone) { |
|
67 |
QDir sourceDir = QDir(QLibraryInfo::location(QLibraryInfo::PrefixPath) + FLM_SOURCE_DIR); |
|
68 |
QFileInfoList sourceInfos = sourceDir.entryInfoList(QDir::Files); |
|
69 |
||
70 |
QDir destDir(epocRoot() + FLM_DEST_DIR); |
|
71 |
if (!destDir.exists()) { |
|
72 |
if (destDir.mkpath(destDir.absolutePath())) |
|
73 |
generatedDirs << destDir.absolutePath(); |
|
74 |
} |
|
75 |
||
76 |
foreach(QFileInfo item, sourceInfos) { |
|
77 |
QFileInfo destInfo = QFileInfo(destDir.absolutePath() + "/" + item.fileName()); |
|
13
c0432d11811c
eb175c3290cd7ea85da4a590db9461504a4904bc
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
7
diff
changeset
|
78 |
if (!destInfo.exists() || destInfo.lastModified() != item.lastModified()) { |
0 | 79 |
if (destInfo.exists()) |
80 |
QFile::remove(destInfo.absoluteFilePath()); |
|
81 |
if (QFile::copy(item.absoluteFilePath(), destInfo.absoluteFilePath())) { |
|
82 |
if (Option::mkfile::listgen) { |
|
83 |
generatePrint(destInfo.absoluteFilePath()); |
|
84 |
} |
|
85 |
generatedFiles << destInfo.absoluteFilePath(); |
|
86 |
} |
|
87 |
else |
|
88 |
fprintf(stderr, "Error: Could not copy '%s' -> '%s'\n", |
|
89 |
qPrintable(item.absoluteFilePath()), |
|
90 |
qPrintable(destInfo.absoluteFilePath())); |
|
91 |
} |
|
92 |
} |
|
93 |
flmExportDone = true; |
|
94 |
} |
|
95 |
} |
|
96 |
||
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
97 |
void SymbianSbsv2MakefileGenerator::writeSbsDeploymentList(const DeploymentList& depList, QTextStream& t) |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
98 |
{ |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
99 |
for (int i = 0; i < depList.size(); ++i) { |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
100 |
t << "START EXTENSION qt/qmake_emulator_deployment" << endl; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
101 |
QString fromItem = depList.at(i).from; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
102 |
QString toItem = depList.at(i).to; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
103 |
fromItem.replace("\\", "/"); |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
104 |
toItem.replace("\\", "/"); |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
105 |
#if defined(Q_OS_WIN) |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
106 |
toItem.prepend(QDir::current().absolutePath().left(2)); // add drive |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
107 |
#endif |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
108 |
t << "OPTION DEPLOY_SOURCE " << fromItem << endl; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
109 |
t << "OPTION DEPLOY_TARGET " << toItem << endl; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
110 |
t << "END" << endl; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
111 |
} |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
112 |
} |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
113 |
|
0 | 114 |
void SymbianSbsv2MakefileGenerator::writeMkFile(const QString& wrapperFileName, bool deploymentOnly) |
115 |
{ |
|
116 |
// Can't use extension makefile with sbsv2 |
|
117 |
Q_UNUSED(wrapperFileName); |
|
118 |
Q_UNUSED(deploymentOnly); |
|
119 |
} |
|
120 |
||
121 |
void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool isPrimaryMakefile) |
|
122 |
{ |
|
123 |
QStringList allPlatforms; |
|
124 |
foreach(QString platform, project->values("SYMBIAN_PLATFORMS")) { |
|
125 |
allPlatforms << platform.toLower(); |
|
126 |
} |
|
127 |
||
128 |
QStringList debugPlatforms = allPlatforms; |
|
129 |
QStringList releasePlatforms = allPlatforms; |
|
130 |
releasePlatforms.removeAll("winscw"); // No release for emulator |
|
131 |
||
132 |
QString testClause; |
|
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
133 |
if (project->isActiveConfig(SYMBIAN_TEST_CONFIG)) |
0 | 134 |
testClause = QLatin1String(".test"); |
135 |
else |
|
136 |
testClause = QLatin1String(""); |
|
137 |
||
138 |
QTextStream t(&wrapperFile); |
|
139 |
||
140 |
t << "# ==============================================================================" << endl; |
|
141 |
t << "# Generated by qmake (" << qmake_version() << ") (Qt " << QT_VERSION_STR << ") on: "; |
|
142 |
t << QDateTime::currentDateTime().toString() << endl; |
|
143 |
t << "# This file is generated by qmake and should not be modified by the" << endl; |
|
144 |
t << "# user." << endl; |
|
145 |
t << "# Name : " << wrapperFile.fileName() << endl; |
|
146 |
t << "# Description : Wrapper Makefile for calling Symbian build tools" << endl; |
|
147 |
t << "#" << endl; |
|
148 |
t << "# ==============================================================================" << "\n" << endl; |
|
149 |
t << endl; |
|
150 |
t << "MAKEFILE = " << wrapperFile.fileName() << endl; |
|
151 |
t << "QMAKE = " << Option::fixPathToTargetOS(var("QMAKE_QMAKE")) << endl; |
|
152 |
t << "DEL_FILE = " << var("QMAKE_DEL_FILE") << endl; |
|
153 |
t << "DEL_DIR = " << var("QMAKE_DEL_DIR") << endl; |
|
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
154 |
t << "CHK_DIR_EXISTS = " << var("QMAKE_CHK_DIR_EXISTS") << endl; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
155 |
t << "MKDIR = " << var("QMAKE_MKDIR") << endl; |
0 | 156 |
t << "MOVE = " << var("QMAKE_MOVE") << endl; |
157 |
t << "DEBUG_PLATFORMS = " << debugPlatforms.join(" ") << endl; |
|
158 |
t << "RELEASE_PLATFORMS = " << releasePlatforms.join(" ") << endl; |
|
159 |
t << "MAKE = make" << endl; |
|
160 |
t << "SBS = sbs" << endl; |
|
161 |
t << endl; |
|
162 |
t << "DEFINES" << '\t' << " = " |
|
163 |
<< varGlue("PRL_EXPORT_DEFINES","-D"," -D"," ") |
|
164 |
<< varGlue("QMAKE_COMPILER_DEFINES", "-D", "-D", " ") |
|
165 |
<< varGlue("DEFINES","-D"," -D","") << endl; |
|
166 |
||
167 |
t << "INCPATH" << '\t' << " = "; |
|
168 |
||
169 |
for (QMap<QString, QStringList>::iterator it = systeminclude.begin(); it != systeminclude.end(); ++it) { |
|
170 |
QStringList values = it.value(); |
|
171 |
for (int i = 0; i < values.size(); ++i) { |
|
172 |
t << " -I\"" << values.at(i) << "\" "; |
|
173 |
} |
|
174 |
} |
|
175 |
t << endl; |
|
176 |
t << "first: default" << endl; |
|
177 |
if (debugPlatforms.contains("winscw")) |
|
178 |
t << "default: debug-winscw"; |
|
179 |
else if (debugPlatforms.contains("armv5")) |
|
180 |
t << "default: debug-armv5"; |
|
181 |
else if (debugPlatforms.size()) |
|
182 |
t << "default: debug-" << debugPlatforms.first(); |
|
183 |
else |
|
184 |
t << "default: all"; |
|
185 |
||
186 |
t << endl; |
|
187 |
if (!isPrimaryMakefile) { |
|
188 |
t << "all:" << endl; |
|
189 |
} else { |
|
190 |
t << "all: debug release" << endl; |
|
191 |
t << endl; |
|
192 |
t << "qmake:" << endl; |
|
193 |
t << "\t$(QMAKE) -spec symbian-sbsv2 -o \"" << fileInfo(Option::output.fileName()).fileName() |
|
194 |
<< "\" \"" << project->projectFile() << "\"" << endl; |
|
195 |
t << endl; |
|
196 |
t << BLD_INF_FILENAME ":" << endl; |
|
197 |
t << "\t$(QMAKE)" << endl; |
|
198 |
t << endl; |
|
199 |
||
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
200 |
QString winscw("winscw"); |
0 | 201 |
t << "debug: " << BLD_INF_FILENAME << endl; |
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
202 |
t << "\t$(SBS)"; |
0 | 203 |
foreach(QString item, debugPlatforms) { |
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
204 |
if(QString::compare(item, winscw) == 0) |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
205 |
t << " -c " << item << "_udeb.mwccinc" << testClause; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
206 |
else |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
207 |
t << " -c " << item << "_udeb" << testClause; |
0 | 208 |
} |
209 |
t << endl; |
|
210 |
t << "release: " << BLD_INF_FILENAME << endl; |
|
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
211 |
t << "\t$(SBS)"; |
0 | 212 |
foreach(QString item, releasePlatforms) { |
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
213 |
if(QString::compare(item, winscw) == 0) |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
214 |
t << " -c " << item << "_urel.mwccinc" << testClause; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
215 |
else |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
216 |
t << " -c " << item << "_urel" << testClause; |
0 | 217 |
} |
218 |
t << endl; |
|
219 |
||
220 |
// For more specific builds, targets are in this form: build-platform, e.g. release-armv5 |
|
221 |
foreach(QString item, debugPlatforms) { |
|
222 |
t << "debug-" << item << ": " << BLD_INF_FILENAME << endl; |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
223 |
if(QString::compare(item, winscw) == 0) |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
224 |
t << "\t$(SBS) -c " << item << "_udeb.mwccinc" << testClause << endl; |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
225 |
else |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
226 |
t << "\t$(SBS) -c " << item << "_udeb" << testClause << endl; |
0 | 227 |
} |
228 |
||
229 |
foreach(QString item, releasePlatforms) { |
|
230 |
t << "release-" << item << ": " << BLD_INF_FILENAME << endl; |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
231 |
if(QString::compare(item, winscw) == 0) |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
232 |
t << "\t$(SBS) -c " << item << "_urel.mwccinc" << testClause << endl; |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
233 |
else |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
234 |
t << "\t$(SBS) -c " << item << "_urel" << testClause << endl; |
0 | 235 |
} |
236 |
||
237 |
t << endl; |
|
238 |
t << "export: " << BLD_INF_FILENAME << endl; |
|
239 |
t << "\t$(SBS) export" << endl; |
|
240 |
t << endl; |
|
241 |
||
242 |
t << "cleanexport: " << BLD_INF_FILENAME << endl; |
|
243 |
t << "\t$(SBS) cleanexport" << endl; |
|
244 |
t << endl; |
|
245 |
||
246 |
} |
|
247 |
||
248 |
// Add all extra targets including extra compiler targest also to wrapper makefile, |
|
249 |
// even though many of them may have already been added to bld.inf as FLMs. |
|
250 |
// This is to enable use of targets like 'mocables', which call targets generated by extra compilers. |
|
251 |
if (targetType != TypeSubdirs) { |
|
252 |
t << extraTargetsCache; |
|
253 |
t << extraCompilersCache; |
|
254 |
} else { |
|
255 |
QList<MakefileGenerator::SubTarget*> subtargets = findSubDirsSubTargets(); |
|
256 |
writeSubTargets(t, subtargets, SubTargetSkipDefaultVariables|SubTargetSkipDefaultTargets); |
|
257 |
qDeleteAll(subtargets); |
|
258 |
} |
|
259 |
||
260 |
writeSisTargets(t); |
|
261 |
||
262 |
generateDistcleanTargets(t); |
|
263 |
||
264 |
t << "clean: " << BLD_INF_FILENAME << endl; |
|
265 |
t << "\t-$(SBS) reallyclean" << endl; |
|
266 |
t << endl; |
|
267 |
||
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
268 |
t << "clean-debug: " << BLD_INF_FILENAME << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
269 |
t << "\t$(SBS) reallyclean"; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
270 |
foreach(QString item, debugPlatforms) { |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
271 |
t << " -c " << item << "_udeb" << testClause; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
272 |
} |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
273 |
t << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
274 |
t << "clean-release: " << BLD_INF_FILENAME << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
275 |
t << "\t$(SBS) reallyclean"; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
276 |
foreach(QString item, releasePlatforms) { |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
277 |
t << " -c " << item << "_urel" << testClause; |
0 | 278 |
} |
4
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
279 |
t << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
280 |
|
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
281 |
// For more specific builds, targets are in this form: clean-build-platform, e.g. clean-release-armv5 |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
282 |
foreach(QString item, debugPlatforms) { |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
283 |
t << "clean-debug-" << item << ": " << BLD_INF_FILENAME << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
284 |
t << "\t$(SBS) reallyclean -c " << item << "_udeb" << testClause << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
285 |
} |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
286 |
foreach(QString item, releasePlatforms) { |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
287 |
t << "clean-release-" << item << ": " << BLD_INF_FILENAME << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
288 |
t << "\t$(SBS) reallyclean -c " << item << "_urel" << testClause << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
289 |
} |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
290 |
t << endl; |
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
291 |
|
3b1da2848fc7
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
292 |
generateExecutionTargets(t, debugPlatforms); |
0 | 293 |
} |
294 |
||
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
295 |
void SymbianSbsv2MakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile) |
0 | 296 |
{ |
297 |
// Makes sure we have needed FLMs in place. |
|
298 |
exportFlm(); |
|
299 |
||
300 |
// Parse extra compilers data |
|
301 |
QStringList defines; |
|
302 |
QStringList incPath; |
|
303 |
||
304 |
defines << varGlue("PRL_EXPORT_DEFINES","-D"," -D"," ") |
|
305 |
<< varGlue("QMAKE_COMPILER_DEFINES", "-D", "-D", " ") |
|
306 |
<< varGlue("DEFINES","-D"," -D",""); |
|
307 |
for (QMap<QString, QStringList>::iterator it = systeminclude.begin(); it != systeminclude.end(); ++it) { |
|
308 |
QStringList values = it.value(); |
|
309 |
for (int i = 0; i < values.size(); ++i) { |
|
310 |
incPath << QLatin1String(" -I\"") + values.at(i) + "\""; |
|
311 |
} |
|
312 |
} |
|
313 |
||
314 |
// Write extra compilers and targets to initialize QMAKE_ET_* variables |
|
315 |
// Cache results to avoid duplicate calls when creating wrapper makefile |
|
316 |
QTextStream extraCompilerStream(&extraCompilersCache); |
|
317 |
QTextStream extraTargetStream(&extraTargetsCache); |
|
318 |
writeExtraCompilerTargets(extraCompilerStream); |
|
319 |
writeExtraTargets(extraTargetStream); |
|
320 |
||
321 |
// Figure out everything the target depends on as we don't want to run extra targets that |
|
322 |
// are not necessary. |
|
323 |
QStringList allPreDeps; |
|
324 |
foreach(QString item, project->values("PRE_TARGETDEPS")) { |
|
325 |
// Predeps get mangled in windows, so fix them to more sbsv2 friendly format |
|
326 |
#if defined(Q_OS_WIN) |
|
327 |
if (item.mid(1, 1) == ":") |
|
328 |
item = item.mid(0, 1).toUpper().append(item.mid(1)); // Fix drive to uppercase |
|
329 |
#endif |
|
330 |
item.replace("\\", "/"); |
|
331 |
allPreDeps << escapeDependencyPath(item); |
|
332 |
} |
|
333 |
||
334 |
foreach (QString item, project->values("GENERATED_SOURCES")) { |
|
335 |
allPreDeps.append(fileInfo(item).absoluteFilePath()); |
|
336 |
} |
|
337 |
||
338 |
for (QMap<QString, QStringList>::iterator it = sources.begin(); it != sources.end(); ++it) { |
|
339 |
QString currentSourcePath = it.key(); |
|
340 |
QStringList values = it.value(); |
|
341 |
for (int i = 0; i < values.size(); ++i) { |
|
342 |
QString sourceFile = currentSourcePath + "/" + values.at(i); |
|
343 |
QStringList deps = findDependencies(QDir::toNativeSeparators(sourceFile)); |
|
344 |
foreach(QString depItem, deps) { |
|
345 |
appendIfnotExist(allPreDeps, fileInfo(depItem).absoluteFilePath()); |
|
346 |
} |
|
347 |
} |
|
348 |
} |
|
349 |
||
350 |
// Write FLM rules for all extra targets and compilers that we depend on to build the target. |
|
351 |
QStringList extraTargets; |
|
352 |
extraTargets << project->values("QMAKE_EXTRA_TARGETS") << project->values("QMAKE_EXTRA_COMPILERS"); |
|
353 |
foreach(QString item, extraTargets) { |
|
354 |
foreach(QString targetItem, project->values(QLatin1String("QMAKE_INTERNAL_ET_PARSED_TARGETS.") + item)) { |
|
355 |
// Make sure targetpath is absolute |
|
356 |
QString absoluteTarget = fileInfo(targetItem).absoluteFilePath(); |
|
357 |
if (allPreDeps.contains(absoluteTarget)) { |
|
358 |
QStringList deps = project->values(QLatin1String("QMAKE_INTERNAL_ET_PARSED_DEPS.") + item + targetItem); |
|
359 |
QString commandItem = project->values(QLatin1String("QMAKE_INTERNAL_ET_PARSED_CMD.") + item + targetItem).join(" "); |
|
360 |
||
361 |
||
362 |
// Make sure all deps paths are absolute |
|
363 |
QString absoluteDeps; |
|
364 |
foreach (QString depItem, deps) { |
|
365 |
if (!depItem.isEmpty()) { |
|
366 |
absoluteDeps.append(fileInfo(depItem).absoluteFilePath()); |
|
367 |
absoluteDeps.append(" "); |
|
368 |
} |
|
369 |
} |
|
370 |
||
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
371 |
t << "START EXTENSION qt/qmake_extra_pre_targetdep.export" << endl; |
0 | 372 |
t << "OPTION PREDEP_TARGET " << absoluteTarget << endl; |
373 |
t << "OPTION DEPS " << absoluteDeps << endl; |
|
374 |
||
375 |
if (commandItem.indexOf("$(INCPATH)") != -1) |
|
376 |
commandItem.replace("$(INCPATH)", incPath.join(" ")); |
|
377 |
if (commandItem.indexOf("$(DEFINES)") != -1) |
|
378 |
commandItem.replace("$(DEFINES)", defines.join(" ")); |
|
379 |
||
380 |
// Sbsv2 strips all backslashes (even doubles ones) from option parameters, so just replace them with slashes |
|
381 |
// Problem: If some command actually needs backslashes for something else than dir separator, we are out of luck... |
|
382 |
commandItem.replace("\\", "/"); |
|
383 |
t << "OPTION COMMAND " << commandItem << endl; |
|
384 |
t << "END" << endl; |
|
385 |
} |
|
386 |
} |
|
387 |
} |
|
388 |
||
389 |
t << endl; |
|
390 |
||
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
391 |
QString translationFilename = project->first("TRANSLATIONS"); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
392 |
if (!project->values("SYMBIANTRANSLATIONS").isEmpty() && !translationFilename.isEmpty()) { |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
393 |
QStringList symbianTranslations = project->values("SYMBIANTRANSLATIONS"); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
394 |
QString symbianTrPath = project->first("SYMBIANTRANSLATIONDIR"); |
5
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
395 |
QString symbianTrSrcPath = project->first("SYMBIANTRANSLATIONSRCDIR"); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
396 |
QString symbianWinscwUdebQmPath = project->first("SYMBIANWINSCWUDEBTRANSLATIONDIR"); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
397 |
QString symbianWinscwUrelQmPath = project->first("SYMBIANWINSCWURELTRANSLATIONDIR"); |
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
398 |
foreach (const QString &symbianTrans, symbianTranslations) { |
5
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
399 |
QString translationTsFilename(translationFilename); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
400 |
translationTsFilename.chop(3); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
401 |
translationTsFilename.insert(0,symbianTrPath); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
402 |
translationTsFilename.append(QString::fromLatin1("_")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
403 |
translationTsFilename.append(symbianTrans); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
404 |
QString translationQmFilename(translationTsFilename); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
405 |
|
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
406 |
translationTsFilename.append(QString::fromLatin1(".ts")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
407 |
// output path for armv5 qm files./epoc32/data/z/resource/qt/translations/ |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
408 |
translationQmFilename.append(QString::fromLatin1(".qm")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
409 |
|
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
410 |
// input path for ts files. /epoc32/include/platform/qt/translations/ |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
411 |
QString translationTsSrcFilename(translationFilename); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
412 |
translationTsSrcFilename.chop(3); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
413 |
translationTsSrcFilename.insert(0,symbianTrSrcPath); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
414 |
translationTsSrcFilename.append(QString::fromLatin1("_")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
415 |
translationTsSrcFilename.append(symbianTrans); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
416 |
translationTsSrcFilename.append(QString::fromLatin1(".ts")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
417 |
|
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
418 |
// output path for winscw qm files. /epoc32/release/winscw/udeb/z/resource/qt/translations/ |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
419 |
QString translationQmWinscwUdebFilename(translationFilename); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
420 |
translationQmWinscwUdebFilename.chop(3); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
421 |
translationQmWinscwUdebFilename.insert(0,symbianWinscwUdebQmPath); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
422 |
translationQmWinscwUdebFilename.append(QString::fromLatin1("_")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
423 |
translationQmWinscwUdebFilename.append(symbianTrans); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
424 |
translationQmWinscwUdebFilename.append(QString::fromLatin1(".qm")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
425 |
|
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
426 |
// output path for winscw qm files. /epoc32/release/winscw/urel/z/resource/qt/translations/ |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
427 |
QString translationQmWinscwUrelFilename(translationFilename); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
428 |
translationQmWinscwUrelFilename.chop(3); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
429 |
translationQmWinscwUrelFilename.insert(0,symbianWinscwUrelQmPath); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
430 |
translationQmWinscwUrelFilename.append(QString::fromLatin1("_")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
431 |
translationQmWinscwUrelFilename.append(symbianTrans); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
432 |
translationQmWinscwUrelFilename.append(QString::fromLatin1(".qm")); |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
433 |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
434 |
t << "START EXTENSION qt/ts2qm" << endl; |
5
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
435 |
t << "OPTION TSFILE " << translationTsSrcFilename << endl; |
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
436 |
t << "OPTION QMFILE " << translationQmFilename << endl; |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
437 |
t << "END" << endl; |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
438 |
t << endl; |
5
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
439 |
|
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
440 |
//winscw udeb |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
441 |
t << "START EXTENSION qt/ts2qm" << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
442 |
t << "OPTION TSFILE " << translationTsSrcFilename << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
443 |
t << "OPTION QMFILE " << translationQmWinscwUdebFilename << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
444 |
t << "END" << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
445 |
t << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
446 |
//winscw urel |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
447 |
t << "START EXTENSION qt/ts2qm" << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
448 |
t << "OPTION TSFILE " << translationTsSrcFilename << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
449 |
t << "OPTION QMFILE " << translationQmWinscwUrelFilename << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
450 |
t << "END" << endl; |
d3bac044e0f0
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
4
diff
changeset
|
451 |
t << endl; |
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
452 |
} |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
453 |
} |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
454 |
|
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
455 |
// Write deployment rules |
0 | 456 |
QString remoteTestPath = epocRoot() + QLatin1String("epoc32/winscw/c/private/") + privateDirUid; |
457 |
DeploymentList depList; |
|
458 |
||
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
459 |
//write emulator deployment |
0 | 460 |
t << "#if defined(WINSCW)" << endl; |
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
461 |
initProjectDeploySymbian(project, depList, remoteTestPath, false, |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
462 |
QLatin1String(EMULATOR_DEPLOYMENT_PLATFORM), QString(), generatedDirs, generatedFiles); |
0 | 463 |
writeSbsDeploymentList(depList, t); |
464 |
t << "#endif" << endl; |
|
7
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
465 |
|
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
466 |
//write ROM deployment |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
467 |
remoteTestPath = epocRoot() + QLatin1String("epoc32/data/z/private/") + privateDirUid; |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
468 |
depList.clear(); |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
469 |
initProjectDeploySymbian(project, depList, remoteTestPath, false, |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
470 |
QLatin1String(ROM_DEPLOYMENT_PLATFORM), QString(), generatedDirs, generatedFiles); |
3f74d0d4af4c
qt:70947f0f93d948bc89b3b43d00da758a51f1ef84
Eckhart Koeppen <eckhart.koppen@nokia.com>
parents:
5
diff
changeset
|
471 |
writeSbsDeploymentList(depList, t); |
0 | 472 |
t << endl; |
473 |
||
474 |
// Write post link rules |
|
475 |
if (!project->isEmpty("QMAKE_POST_LINK")) { |
|
476 |
t << "START EXTENSION qt/qmake_post_link" << endl; |
|
477 |
t << "OPTION POST_LINK_CMD " << var("QMAKE_POST_LINK") << endl; |
|
478 |
t << "OPTION LINK_TARGET " << removePathSeparators(escapeFilePath(fileFixify(project->first("TARGET"))).append(".").append(getTargetExtension())) << endl; |
|
479 |
t << "END" << endl; |
|
480 |
t << endl; |
|
481 |
} |
|
482 |
||
483 |
// Application icon generation |
|
484 |
QStringList icons = project->values("ICON"); |
|
485 |
if (icons.size()) { |
|
486 |
QString icon = icons.first(); |
|
487 |
if (icons.size() > 1) |
|
488 |
fprintf(stderr, "Warning: Only first icon specified in ICON variable is used: '%s'.", qPrintable(icon)); |
|
489 |
||
490 |
t << "START EXTENSION s60/mifconv" << endl; |
|
491 |
||
492 |
QFileInfo iconInfo = fileInfo(icon); |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
493 |
|
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
494 |
QFileInfo bldinf(project->values("MAKEFILE").first()); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
495 |
QString iconPath = bldinf.dir().relativeFilePath(iconInfo.path()); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
496 |
|
0 | 497 |
QString iconFile = iconInfo.baseName(); |
498 |
||
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
499 |
QFileInfo iconTargetInfo = fileInfo(iconTargetFile); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
500 |
QString iconTarget = iconTargetInfo.fileName(); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
501 |
|
0 | 502 |
t << "OPTION SOURCES -c32 " << iconFile << endl; |
503 |
t << "OPTION SOURCEDIR " << iconPath << endl; |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
504 |
t << "OPTION TARGETFILE " << iconTarget << endl; |
0 | 505 |
t << "OPTION SVGENCODINGVERSION 3" << endl; // Compatibility with S60 3.1 devices and up |
506 |
t << "END" << endl; |
|
507 |
} |
|
508 |
||
509 |
t << "START EXTENSION qt/qmake_store_build" << endl; |
|
510 |
t << "END" << endl; |
|
511 |
t << endl; |
|
512 |
||
513 |
t << endl; |
|
514 |
} |
|
515 |
||
516 |
void SymbianSbsv2MakefileGenerator::writeBldInfMkFilePart(QTextStream& t, bool addDeploymentExtension) |
|
517 |
{ |
|
518 |
// We don't generate extension makefile in sbsb2 |
|
519 |
Q_UNUSED(t); |
|
520 |
Q_UNUSED(addDeploymentExtension); |
|
521 |
} |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
522 |
|
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
523 |
void SymbianSbsv2MakefileGenerator::appendAbldTempDirs(QStringList& sysincspaths, QString includepath) |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
524 |
{ |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
525 |
//Do nothing |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
526 |
Q_UNUSED(sysincspaths); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
527 |
Q_UNUSED(includepath); |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
528 |
} |