factor out code to install default mkspec
Change-Id: I15f371df7bc24cd85c1c0924d1929da4dc3db16d Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
This commit is contained in:
parent
fa1b9070af
commit
e05d5c36be
@ -2638,6 +2638,29 @@ QString Configure::addDefine(QString def)
|
||||
}
|
||||
|
||||
#if !defined(EVAL)
|
||||
bool Configure::copySpec(const char *name, const char *pfx, const QString &spec)
|
||||
{
|
||||
// Copy configured mkspec to default directory, but remove the old one first, if there is any
|
||||
QString defSpec = buildPath + "/mkspecs/" + name;
|
||||
QFileInfo defSpecInfo(defSpec);
|
||||
if (defSpecInfo.exists()) {
|
||||
if (!Environment::rmdir(defSpec)) {
|
||||
cout << "Couldn't update default " << pfx << "mkspec! Are files in " << qPrintable(defSpec) << " read-only?" << endl;
|
||||
dictionary["DONE"] = "error";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
QString pltSpec = sourcePath + "/mkspecs/" + spec;
|
||||
QString includeSpec = buildPath + "/mkspecs/" + spec;
|
||||
if (!Environment::cpdir(pltSpec, defSpec, includeSpec)) {
|
||||
cout << "Couldn't update default " << pfx << "mkspec! Does " << qPrintable(pltSpec) << " exist?" << endl;
|
||||
dictionary["DONE"] = "error";
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void Configure::generateConfigfiles()
|
||||
{
|
||||
QDir(buildPath).mkpath("src/corelib/global");
|
||||
@ -2821,25 +2844,9 @@ void Configure::generateConfigfiles()
|
||||
tmpFile.close();
|
||||
}
|
||||
|
||||
// Copy configured mkspec to default directory, but remove the old one first, if there is any
|
||||
QString defSpec = buildPath + "/mkspecs/default";
|
||||
QFileInfo defSpecInfo(defSpec);
|
||||
if (defSpecInfo.exists()) {
|
||||
if (!Environment::rmdir(defSpec)) {
|
||||
cout << "Couldn't update default mkspec! Are files in " << qPrintable(defSpec) << " read-only?" << endl;
|
||||
dictionary["DONE"] = "error";
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
QString spec = dictionary.contains("XQMAKESPEC") ? dictionary["XQMAKESPEC"] : dictionary["QMAKESPEC"];
|
||||
QString pltSpec = sourcePath + "/mkspecs/" + spec;
|
||||
QString includeSpec = buildPath + "/mkspecs/" + spec;
|
||||
if (!Environment::cpdir(pltSpec, defSpec, includeSpec)) {
|
||||
cout << "Couldn't update default mkspec! Does " << qPrintable(pltSpec) << " exist?" << endl;
|
||||
dictionary["DONE"] = "error";
|
||||
if (!copySpec("default", "", spec))
|
||||
return;
|
||||
}
|
||||
|
||||
// Generate the new qconfig.cpp file
|
||||
QDir(buildPath).mkpath("src/corelib/global");
|
||||
|
@ -79,6 +79,7 @@ public:
|
||||
void generateMakefiles();
|
||||
void appendMakeItem(int inList, const QString &item);
|
||||
#if !defined(EVAL)
|
||||
bool copySpec(const char *name, const char *pfx, const QString &spec);
|
||||
void generateConfigfiles();
|
||||
#endif
|
||||
void showSummary();
|
||||
|
Loading…
x
Reference in New Issue
Block a user