Autogen: Revert passing compiler implicit includes to moc

Passing an incomplete list of compiler include directories causes
a regression in the KIO project (and probably others). We need to
disable it until the complete list is available (see #16291).

Fixes: #18669
Issue: #18041
This commit is contained in:
Sebastian Holtermann
2018-12-06 18:19:11 +01:00
committed by Brad King
parent 6294296906
commit 187481d4d9
3 changed files with 24 additions and 6 deletions

View File

@@ -239,3 +239,16 @@ Other Changes
These internal implementation modules are also no longer available
to scripts that may have been incorrectly including them, because
they should never have been available in the first place.
Updates
=======
Changes made since CMake 3.13.0 include the following.
3.13.2
------
* CMake 3.13.0 included a change to pass compiler implicit include
directories to the ``moc`` tool for :prop_tgt:`AUTOMOC`. This has
been reverted due to regressing existing builds and will need
further investigation before being re-introduced in a later release.

View File

@@ -386,9 +386,13 @@ bool cmQtAutoGenInitializer::InitMoc()
// Moc includes
{
bool const appendImplicit = (this->QtVersion.Major == 5);
auto GetIncludeDirs =
[this, localGen, appendImplicit](std::string const& cfg) -> std::string {
// We need to disable this until we have all implicit includes available.
// See issue #18669.
// bool const appendImplicit = (this->QtVersion.Major == 5);
auto GetIncludeDirs = [this,
localGen](std::string const& cfg) -> std::string {
bool const appendImplicit = false;
// Get the include dirs for this target, without stripping the implicit
// include dirs off, see
// https://gitlab.kitware.com/cmake/cmake/issues/13667

View File

@@ -23,9 +23,10 @@ endif()
if(QT_TEST_ALLOW_QT_MACROS)
ADD_AUTOGEN_TEST(MocCMP0071)
endif()
if(QT_TEST_VERSION GREATER 4)
ADD_AUTOGEN_TEST(MocOsMacros)
endif()
# Disabled for issue #18669
#if(QT_TEST_VERSION GREATER 4)
# ADD_AUTOGEN_TEST(MocOsMacros)
#endif()
ADD_AUTOGEN_TEST(UicInclude uicInclude)
ADD_AUTOGEN_TEST(UicInterface QtAutoUicInterface)
ADD_AUTOGEN_TEST(ObjectLibrary someProgram)