summaryrefslogtreecommitdiff
path: root/qmake/generators/projectgenerator.cpp
Unidiff
Diffstat (limited to 'qmake/generators/projectgenerator.cpp') (more/less context) (show whitespace changes)
-rw-r--r--qmake/generators/projectgenerator.cpp36
1 files changed, 21 insertions, 15 deletions
diff --git a/qmake/generators/projectgenerator.cpp b/qmake/generators/projectgenerator.cpp
index 1515216..1c17379 100644
--- a/qmake/generators/projectgenerator.cpp
+++ b/qmake/generators/projectgenerator.cpp
@@ -1,12 +1,10 @@
1/**************************************************************************** 1/****************************************************************************
2** $Id$
3** 2**
4** Definition of ________ class.
5** 3**
6** Created : 970521 4** Implementation of ProjectGenerator class.
7** 5**
8** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. 6** Copyright (C) 1992-2003 Trolltech AS. All rights reserved.
9** 7**
10** This file is part of the network module of the Qt GUI Toolkit. 8** This file is part of qmake.
11** 9**
12** This file may be distributed under the terms of the Q Public License 10** This file may be distributed under the terms of the Q Public License
@@ -158,4 +156,5 @@ ProjectGenerator::init()
158 if(Option::projfile::do_pwd) 156 if(Option::projfile::do_pwd)
159 dirs.prepend("."); 157 dirs.prepend(".");
158 const QString out_file = fileFixify(Option::output.name());
160 for(QStringList::Iterator pd = dirs.begin(); pd != dirs.end(); pd++) { 159 for(QStringList::Iterator pd = dirs.begin(); pd != dirs.end(); pd++) {
161 if(QFile::exists((*pd))) { 160 if(QFile::exists((*pd))) {
@@ -172,12 +171,15 @@ ProjectGenerator::init()
172 d.setFilter(QDir::Files); 171 d.setFilter(QDir::Files);
173 for(int i = 0; i < (int)d.count(); i++) { 172 for(int i = 0; i < (int)d.count(); i++) {
174 QString nd = newdir + QDir::separator() + d[i]; 173 QString nd = newdir;
174 if(nd == ".")
175 nd = "";
176 else if(!nd.isEmpty() && !nd.endsWith(QString(QChar(QDir::separator()))))
177 nd += QDir::separator();
178 nd += d[i];
175 fileFixify(nd); 179 fileFixify(nd);
176 if(d[i] != "." && d[i] != ".." && !subdirs.contains(nd)) { 180 if(d[i] != "." && d[i] != ".." && !subdirs.contains(nd) && !out_file.endsWith(nd))
177 if(newdir + d[i] != Option::output_dir + Option::output.name())
178 subdirs.append(nd); 181 subdirs.append(nd);
179 } 182 }
180 } 183 }
181 }
182 if(Option::projfile::do_recursive) { 184 if(Option::projfile::do_recursive) {
183 QDir d(newdir); 185 QDir d(newdir);
@@ -325,5 +327,5 @@ ProjectGenerator::init()
325 } 327 }
326 } 328 }
327 if(!found && (*val_it).endsWith(Option::moc_ext)) 329 if(!found && (*val_it).endsWith(Option::cpp_moc_ext))
328 found = TRUE; 330 found = TRUE;
329 if(found) 331 if(found)
@@ -392,5 +394,5 @@ ProjectGenerator::addFile(QString file)
392 if(s != -1) 394 if(s != -1)
393 dir = file.left(s+1); 395 dir = file.left(s+1);
394 if(file.mid(dir.length(), Option::moc_mod.length()) == Option::moc_mod) 396 if(file.mid(dir.length(), Option::h_moc_mod.length()) == Option::h_moc_mod)
395 return FALSE; 397 return FALSE;
396 398
@@ -436,5 +438,5 @@ ProjectGenerator::addFile(QString file)
436 438
437QString 439QString
438ProjectGenerator::getWritableVar(const QString &v, bool /*fixPath*/) 440ProjectGenerator::getWritableVar(const QString &v, bool fixPath)
439{ 441{
440 QStringList &vals = project->variables()[v]; 442 QStringList &vals = project->variables()[v];
@@ -456,8 +458,12 @@ ProjectGenerator::getWritableVar(const QString &v, bool /*fixPath*/)
456 join = vals.join(" \\\n" + spaces); 458 join = vals.join(" \\\n" + spaces);
457 } 459 }
460#if 0
458 // ### Commented out for now so that project generation works. 461 // ### Commented out for now so that project generation works.
459 // Sam: can you look at why this was needed? 462 // Sam: it had to do with trailing \'s (ie considered continuation lines)
460 /* if(fixPath) 463 if(fixPath)
461 join = join.replace("\\", "/");*/ 464 join = join.replace("\\", "/");
465#else
466 Q_UNUSED(fixPath);
467#endif
462 return ret + join + "\n"; 468 return ret + join + "\n";
463} 469}