Make Creator compile without Qt tools in some configuration

Needing to compile Qt tools is a bit of a chore (and at some point a
diskspace issue) when building/starting Creator as sanity check for
comparing different compiler optimization settings.

This is not an officially supported configuration.

Change-Id: I628e33eb7137f09ecfebbd27453de548bac2fde5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
hjk
2017-02-08 10:57:10 +01:00
parent d864bfc529
commit 46e4ecbd44
5 changed files with 86 additions and 7 deletions

View File

@@ -1,5 +1,20 @@
TEMPLATE = subdirs
SUBDIRS = qtcreator/static.pro \
qtcreator/translations
SUBDIRS = qtcreator/static.pro
defineTest(hasLupdate) {
cmd = $$eval(QT_TOOL.lupdate.binary)
isEmpty(cmd) {
cmd = $$[QT_HOST_BINS]/lupdate
contains(QMAKE_HOST.os, Windows):exists($${cmd}.exe): return(true)
contains(QMAKE_HOST.os, Darwin):exists($${cmd}.app/Contents/MacOS/lupdate): return(true)
exists($$cmd): return(true)
} else {
exists($$last(cmd)): return(true)
}
return(false)
}
hasLupdate(): SUBDIRS += qtcreator/translations
DISTFILES += share.qbs \
../src/share/share.qbs

View File

@@ -1,11 +1,12 @@
DEFINES += CORE_LIBRARY
QT += \
help \
network \
printsupport \
qml \
sql
qtHaveModule(help): QT += help
# embedding build time information prevents repeatedly binary exact versions from same source code
isEmpty(QTC_SHOW_BUILD_DATE): QTC_SHOW_BUILD_DATE = $$(QTC_SHOW_BUILD_DATE)
!isEmpty(QTC_SHOW_BUILD_DATE): DEFINES += QTC_SHOW_BUILD_DATE

View File

@@ -35,6 +35,9 @@
#include <QDir>
#include <QFileInfo>
#include <QStringList>
#include <QUrl>
#ifdef QT_HELP_LIB
#include <QHelpEngineCore>
@@ -452,3 +455,50 @@ void HelpManagerPrivate::writeSettings()
}
} // Core
#else // QT_HELP_LIB
namespace Core {
HelpManager *HelpManager::instance() { return 0; }
QString HelpManager::collectionFilePath() { return QString(); }
void HelpManager::registerDocumentation(const QStringList &) {}
void HelpManager::unregisterDocumentation(const QStringList &) {}
void HelpManager::registerUserDocumentation(const QStringList &) {}
QSet<QString> HelpManager::userDocumentationPaths() { return {}; }
QMap<QString, QUrl> HelpManager::linksForKeyword(const QString &) { return {}; }
QMap<QString, QUrl> HelpManager::linksForIdentifier(const QString &) { return {}; }
QUrl HelpManager::findFile(const QUrl &) { return QUrl();}
QByteArray HelpManager::fileData(const QUrl &) { return QByteArray();}
QStringList HelpManager::registeredNamespaces() { return {}; }
QString HelpManager::namespaceFromFile(const QString &) { return QString(); }
QString HelpManager::fileFromNamespace(const QString &) { return QString(); }
void HelpManager::setCustomValue(const QString &, const QVariant &) {}
QVariant HelpManager::customValue(const QString &, const QVariant &) { return QVariant(); }
HelpManager::Filters filters() { return {}; }
HelpManager::Filters fixedFilters() { return {}; }
HelpManager::Filters userDefinedFilters() { return {}; }
void HelpManager::removeUserDefinedFilter(const QString &) {}
void HelpManager::addUserDefinedFilter(const QString &, const QStringList &) {}
void HelpManager::handleHelpRequest(const QUrl &, HelpManager::HelpViewerLocation) {}
void HelpManager::handleHelpRequest(const QString &, HelpViewerLocation) {}
HelpManager::HelpManager(QObject *) {}
HelpManager::~HelpManager() {}
void HelpManager::setupHelpManager() {}
} // namespace Core
#endif // QT_HELP_LIB

View File

@@ -22,13 +22,11 @@ SUBDIRS = \
qtsupport \
qmakeprojectmanager \
debugger \
help \
cpaster \
cmakeprojectmanager \
autotoolsprojectmanager \
fakevim \
emacskeys \
designer \
resourceeditor \
genericprojectmanager \
qmljseditor \
@@ -59,6 +57,18 @@ SUBDIRS = \
scxmleditor \
welcome
qtHaveModule(help) {
SUBDIRS += help
} else {
warning("Help plugin has been disabled.")
}
qtHaveModule(designercomponents_private) {
SUBDIRS += designer
} else {
warning("Qt Widget Designer plugin has been disabled.")
}
DO_NOT_BUILD_QMLDESIGNER = $$(DO_NOT_BUILD_QMLDESIGNER)
isEmpty(DO_NOT_BUILD_QMLDESIGNER) {
SUBDIRS += qmldesigner

View File

@@ -104,8 +104,11 @@ ExampleSetModel::ExampleSetModel()
connect(QtVersionManager::instance(), &QtVersionManager::qtVersionsLoaded,
this, &ExampleSetModel::qtVersionManagerLoaded);
connect(Core::HelpManager::instance(), &Core::HelpManager::setupFinished,
this, &ExampleSetModel::helpManagerInitialized);
if (auto helpManager = Core::HelpManager::instance()) {
connect(helpManager, &Core::HelpManager::setupFinished,
this, &ExampleSetModel::helpManagerInitialized);
}
}
void ExampleSetModel::recreateModel()