author | kergoth <kergoth> | 2002-11-01 16:20:04 (UTC) |
---|---|---|
committer | kergoth <kergoth> | 2002-11-01 16:20:04 (UTC) |
commit | 4c9df59925da5a67d884f8ffb37a263d85948951 (patch) (side-by-side diff) | |
tree | 278796d7d27a06243e584a05f443dbb23eaf028c | |
parent | ebd6adcd2f72935f0ee7af7485c75c34ac3389a3 (diff) | |
download | opie-4c9df59925da5a67d884f8ffb37a263d85948951.zip opie-4c9df59925da5a67d884f8ffb37a263d85948951.tar.gz opie-4c9df59925da5a67d884f8ffb37a263d85948951.tar.bz2 |
Make qmake obey QMAKESPECSDIR if set.
-rw-r--r-- | qmake/project.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/qmake/project.cpp b/qmake/project.cpp index ae24193..96cdad8 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -428,54 +428,61 @@ QMakeProject::read(QString project, QString) } if(Option::mkfile::cachefile_depth == -1) Option::mkfile::cachefile_depth = 1; else Option::mkfile::cachefile_depth++; } } if(!Option::mkfile::cachefile.isEmpty()) { read(Option::mkfile::cachefile, cache); if(Option::mkfile::qmakespec.isEmpty() && !cache["QMAKESPEC"].isEmpty()) Option::mkfile::qmakespec = cache["QMAKESPEC"].first(); } } /* parse mkspec */ QStringList mkspec_roots; /* prefer $QTDIR if it is set */ - /* minor hack here, prefer QMAKESPECDIR -cl */ + /* prefer QMAKESPECSDIR -cl */ - if (getenv("QMAKESPECDIR")){ - mkspec_roots << getenv("QMAKESPECDIR"); - } else if (getenv("QTDIR")) { + if (getenv("QTDIR")) { mkspec_roots << getenv("QTDIR"); } mkspec_roots << qInstallPathData(); + + if (getenv("QMAKESPECSDIR")){ + QString mkspec = QString(getenv("QMAKESPECSDIR")) + QDir::separator() + + QDir::separator() + "default"; + if(QFile::exists(mkspec)) + Option::mkfile::qmakespec = mkspec; + } + if(Option::mkfile::qmakespec.isEmpty()) { for(QStringList::Iterator it = mkspec_roots.begin(); it != mkspec_roots.end(); ++it) { QString mkspec = (*it) + QDir::separator() + QString("mkspecs") + QDir::separator() + "default"; if(QFile::exists(mkspec)) { Option::mkfile::qmakespec = mkspec; break; } } + } + if(Option::mkfile::qmakespec.isEmpty()) { fprintf(stderr, "QMAKESPEC has not been set, so configuration cannot be deduced.\n"); return FALSE; } - } if(QDir::isRelativePath(Option::mkfile::qmakespec)) { bool found_mkspec = FALSE; for(QStringList::Iterator it = mkspec_roots.begin(); it != mkspec_roots.end(); ++it) { QString mkspec = (*it) + QDir::separator() + QString("mkspecs") + QDir::separator() + Option::mkfile::qmakespec; if(QFile::exists(mkspec)) { found_mkspec = TRUE; Option::mkfile::qmakespec = mkspec; break; } } if(!found_mkspec) { fprintf(stderr, "Could not find mkspecs for your QMAKESPEC after trying:\n\t%s\n", mkspec_roots.join("\n\t").latin1()); return FALSE; |