From e4232b82e6d285edf9038e2f352df61ab362b6fd Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 9 Nov 2016 11:05:45 -0500 Subject: [PATCH] QtAutogen: Do not re-generate AUTORCC outputs on every build Refactoring in commit v3.6.0-rc1~134^2~10 (Autogen: Split out moc file generation code to dedicated method, 2016-04-18) removed the unconditional creation of the `_automoc.cpp` file. Now it is generated only when `AUTOMOC` is enabled. However, if this file is not created then our internal `GenerateAll` setting is enabled on every build, causing `AUTORCC` to re-generate its file(s) every time. Fix the `GenerateAll` setting to be used only for when autogen settings change. The old logic was left from when we had only automoc. Closes: #16413 --- Source/cmQtAutoGenerators.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx index b66257ce6..84d00eae9 100644 --- a/Source/cmQtAutoGenerators.cxx +++ b/Source/cmQtAutoGenerators.cxx @@ -455,8 +455,8 @@ static std::string ReadAll(const std::string& filename) bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile) { - if (!cmsys::SystemTools::FileExists(this->OutMocCppFilenameAbs.c_str()) || - (this->OldCompileSettingsStr != this->CurrentCompileSettingsStr)) { + // If settings changed everything needs to be re-generated. + if (this->OldCompileSettingsStr != this->CurrentCompileSettingsStr) { this->GenerateAll = true; }