diff options
author | Sebastian Holtermann <sebholt@xwmw.org> | 2017-12-18 14:36:17 +0100 |
---|---|---|
committer | Sebastian Holtermann <sebholt@xwmw.org> | 2017-12-18 14:36:17 +0100 |
commit | 3ce7eecedc2686520af930fb86cf5c7a79fd4fb1 (patch) | |
tree | 699117734f4dfeff415dee69c0ad26755684880a /Source/cmQtAutoGenerator.cxx | |
parent | 438ed3bfc180fbee98fa07af1eb427c6da209b68 (diff) | |
download | cmake-3ce7eecedc2686520af930fb86cf5c7a79fd4fb1.tar.gz |
Autogen: Fix for problematic nested lists separator
In the AutogenInfo.cmake file the separator for nested lists
was `@LSEP@` which led to a speed regression because the `@`
character triggered an (unsuccessful) expression evaluation.
By setting the policy version of the CMake instance in the
`_autogen` target to 3.9, the OLD `@` evaluating behavior
controlled by policy CMP0053 is disabled.
Also the nested lists separator string is changed to `<<<S>>>`,
which solves the problem twofold.
Closes #17570
Diffstat (limited to 'Source/cmQtAutoGenerator.cxx')
-rw-r--r-- | Source/cmQtAutoGenerator.cxx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmQtAutoGenerator.cxx b/Source/cmQtAutoGenerator.cxx index 52193af3fd..ee0ddbc849 100644 --- a/Source/cmQtAutoGenerator.cxx +++ b/Source/cmQtAutoGenerator.cxx @@ -78,6 +78,9 @@ bool cmQtAutoGenerator::Run(std::string const& infoFile, snapshot.GetDirectory().SetCurrentSource(this->InfoDir); auto makefile = cm::make_unique<cmMakefile>(&gg, snapshot); + // The OLD/WARN behavior for policy CMP0053 caused a speed regression. + // https://gitlab.kitware.com/cmake/cmake/issues/17570 + makefile->SetPolicyVersion("3.9"); gg.SetCurrentMakefile(makefile.get()); return this->Process(makefile.get()); |