diff options
Diffstat (limited to 'tools/configure/configureapp.cpp')
-rw-r--r-- | tools/configure/configureapp.cpp | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 5ed6b803c3..cd5ed4caea 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -151,18 +151,14 @@ Configure::Configure(int& argc, char** argv) const QString installPath = buildPath; #endif if (sourceDir != buildDir) { //shadow builds! - if (QStandardPaths::findExecutable(QStringLiteral("perl.exe")).isEmpty()) { - cout << "Error: Creating a shadow build of Qt requires" << endl - << "perl to be in the PATH environment"; - exit(0); // Exit cleanly for Ctrl+C - } - QDir(buildPath).mkpath("bin"); buildDir.mkpath("mkspecs"); } defaultBuildParts << QStringLiteral("libs") << QStringLiteral("tools") << QStringLiteral("examples"); + allBuildParts = defaultBuildParts; + allBuildParts << QStringLiteral("tests"); dictionary[ "QT_SOURCE_TREE" ] = sourcePath; dictionary[ "QT_BUILD_TREE" ] = buildPath; dictionary[ "QT_INSTALL_PREFIX" ] = installPath; @@ -993,12 +989,22 @@ void Configure::parseCmdLine() ++i; if (i == argCount) break; - buildParts += configCmdLine.at(i); + QString part = configCmdLine.at(i); + if (!allBuildParts.contains(part)) { + cout << "Unknown part " << part << " passed to -make." << endl; + dictionary["DONE"] = "error"; + } + buildParts += part; } else if (configCmdLine.at(i) == "-nomake") { ++i; if (i == argCount) break; - nobuildParts.append(configCmdLine.at(i)); + QString part = configCmdLine.at(i); + if (!allBuildParts.contains(part)) { + cout << "Unknown part " << part << " passed to -nomake." << endl; + dictionary["DONE"] = "error"; + } + nobuildParts += part; } else if (configCmdLine.at(i) == "-skip") { @@ -1562,8 +1568,8 @@ void Configure::desc(const char *mark_option, const char *mark, const char *opti void Configure::applySpecSpecifics() { if (dictionary.contains("XQMAKESPEC")) { - //Disable building tools, docs and translations when cross compiling. - nobuildParts << "docs" << "translations" << "tools"; + //Disable building tools when cross compiling. + nobuildParts << "tools"; } if (dictionary.value("XQMAKESPEC").startsWith("wince")) { |