forked from qt-creator/qt-creator
QMake: Remove unnecessary build dir changed
Previously every time a qmake project was built, the "buildDirectoryChanged()" was emitted, leading to a complete reparse of the project file, tests, qml files and qml imports. To keep "QmakeBuildConfiguration::updateProblemLabel" be called, we re-introduce the "buildDirectoryInitialized" signal. Task-number: QTCREATORBUG-27785 Change-Id: I32d881eacb8cf26050c33da643c74c2cab4dc22d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -116,6 +116,7 @@ public:
|
||||
|
||||
signals:
|
||||
void environmentChanged();
|
||||
void buildDirectoryInitialized();
|
||||
void buildDirectoryChanged();
|
||||
void enabledChanged();
|
||||
void buildTypeChanged();
|
||||
|
@@ -153,6 +153,8 @@ QmakeBuildConfiguration::QmakeBuildConfiguration(Target *target, Id id)
|
||||
});
|
||||
|
||||
buildDirectoryAspect()->allowInSourceBuilds(target->project()->projectDirectory());
|
||||
connect(this, &BuildConfiguration::buildDirectoryInitialized,
|
||||
this, &QmakeBuildConfiguration::updateProblemLabel);
|
||||
connect(this, &BuildConfiguration::buildDirectoryChanged,
|
||||
this, &QmakeBuildConfiguration::updateProblemLabel);
|
||||
connect(this, &QmakeBuildConfiguration::qmakeBuildConfigurationChanged,
|
||||
|
@@ -306,7 +306,7 @@ bool QMakeStep::processSucceeded(int exitCode, QProcess::ExitStatus status)
|
||||
bool result = AbstractProcessStep::processSucceeded(exitCode, status);
|
||||
if (!result)
|
||||
m_needToRunQMake = true;
|
||||
emit buildConfiguration()->buildDirectoryChanged();
|
||||
emit buildConfiguration()->buildDirectoryInitialized();
|
||||
return result;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user