diff options
Diffstat (limited to 'tools/configure/configureapp.cpp')
-rw-r--r-- | tools/configure/configureapp.cpp | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 67db7b3555..55ac3d997a 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1018,6 +1018,20 @@ void Configure::parseCmdLine() nobuildParts.append(configCmdLine.at(i)); } + else if (configCmdLine.at(i) == "-skip") { + ++i; + if (i == argCount) + break; + QString mod = configCmdLine.at(i); + if (!mod.startsWith(QStringLiteral("qt"))) + mod.insert(0, QStringLiteral("qt")); + if (!QFileInfo(sourcePath + "/../" + mod).isDir()) { + cout << "Attempting to skip non-existent module " << mod << "." << endl; + dictionary["DONE"] = "error"; + } + skipModules += mod; + } + // Directories ---------------------------------------------- else if (configCmdLine.at(i) == "-prefix") { ++i; @@ -1660,6 +1674,8 @@ bool Configure::displayHelp() desc( "", qPrintable(QString(" %1").arg(defaultBuildParts.at(i))), false, ' '); desc( "-nomake <part>", "Exclude part from the list of parts to be built.\n"); + desc( "-skip <module>", "Exclude an entire module from the build.\n"); + desc("WIDGETS", "no", "-no-widgets", "Disable Qt Widgets module.\n"); desc("ACCESSIBILITY", "no", "-no-accessibility", "Disable accessibility support.\n"); @@ -2544,7 +2560,7 @@ void Configure::generateOutputVars() qtConfig += "build_all"; } if (dictionary[ "FORCEDEBUGINFO" ] == "yes") - qtConfig += "force_debug_info"; + qmakeConfig += "force_debug_info"; qmakeConfig += dictionary[ "BUILD" ]; dictionary[ "QMAKE_OUTDIR" ] = dictionary[ "BUILD" ]; @@ -2793,7 +2809,10 @@ void Configure::generateCachefile() if (moduleFile.open(QFile::WriteOnly | QFile::Text)) { // Truncates any existing file. QTextStream moduleStream(&moduleFile); - moduleStream << "QT_BUILD_PARTS += " << buildParts.join(' ') << endl << endl; + moduleStream << "QT_BUILD_PARTS += " << buildParts.join(' ') << endl; + if (!skipModules.isEmpty()) + moduleStream << "QT_SKIP_MODULES += " << skipModules.join(' ') << endl; + moduleStream << endl; if (dictionary["QT_EDITION"] != "QT_EDITION_OPENSOURCE") moduleStream << "DEFINES *= QT_EDITION=QT_EDITION_DESKTOP" << endl; @@ -3445,7 +3464,7 @@ void Configure::displayConfig() sout << "Libraries installed to......" << QDir::toNativeSeparators(dictionary["QT_INSTALL_LIBS"]) << endl; sout << "Arch-dep. data to..........." << QDir::toNativeSeparators(dictionary["QT_INSTALL_ARCHDATA"]) << endl; sout << "Plugins installed to........" << QDir::toNativeSeparators(dictionary["QT_INSTALL_PLUGINS"]) << endl; - sout << "Library execs installed to.." << QDir::toNativeSeparators(dictionary["QT_INSTALL_LIBEXEC"]) << endl; + sout << "Library execs installed to.." << QDir::toNativeSeparators(dictionary["QT_INSTALL_LIBEXECS"]) << endl; sout << "QML1 imports installed to..." << QDir::toNativeSeparators(dictionary["QT_INSTALL_IMPORTS"]) << endl; sout << "QML2 imports installed to..." << QDir::toNativeSeparators(dictionary["QT_INSTALL_QML"]) << endl; sout << "Binaries installed to......." << QDir::toNativeSeparators(dictionary["QT_INSTALL_BINS"]) << endl; |