diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst index bb3acff01..c2480858d 100644 --- a/Help/manual/cmake-properties.7.rst +++ b/Help/manual/cmake-properties.7.rst @@ -10,6 +10,7 @@ Properties of Global Scope .. toctree:: /prop_gbl/ALLOW_DUPLICATE_CUSTOM_TARGETS + /prop_gbl/AUTOGEN_TARGETS_FOLDER /prop_gbl/AUTOMOC_TARGETS_FOLDER /prop_gbl/DEBUG_CONFIGURATIONS /prop_gbl/DISABLED_FEATURES diff --git a/Help/prop_gbl/AUTOGEN_TARGETS_FOLDER.rst b/Help/prop_gbl/AUTOGEN_TARGETS_FOLDER.rst new file mode 100644 index 000000000..48cc8a117 --- /dev/null +++ b/Help/prop_gbl/AUTOGEN_TARGETS_FOLDER.rst @@ -0,0 +1,8 @@ +AUTOGEN_TARGETS_FOLDER +---------------------- + +Name of FOLDER for ``*_automoc`` targets that are added automatically by CMake for targets for which AUTOMOC is enabled. + +If not set, CMake uses the FOLDER property of the parent target as a +default value for this property. See also the documentation for the +FOLDER target property and the AUTOMOC target property. diff --git a/Help/prop_gbl/AUTOMOC_TARGETS_FOLDER.rst b/Help/prop_gbl/AUTOMOC_TARGETS_FOLDER.rst index c83fb8b67..185e0ecf4 100644 --- a/Help/prop_gbl/AUTOMOC_TARGETS_FOLDER.rst +++ b/Help/prop_gbl/AUTOMOC_TARGETS_FOLDER.rst @@ -3,6 +3,8 @@ AUTOMOC_TARGETS_FOLDER Name of FOLDER for ``*_automoc`` targets that are added automatically by CMake for targets for which AUTOMOC is enabled. +This property is obsolete. Use AUTOGEN_TARGETS_FOLDER instead. + If not set, CMake uses the FOLDER property of the parent target as a default value for this property. See also the documentation for the FOLDER target property and the AUTOMOC target property. diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx index b41ef7596..3d915dd5e 100644 --- a/Source/cmQtAutoGenerators.cxx +++ b/Source/cmQtAutoGenerators.cxx @@ -269,11 +269,16 @@ void cmQtAutoGenerators::SetupAutoGenerateTarget(cmTarget* target) workingDirectory.c_str(), depends, commandLines, false, autogenComment.c_str()); // Set target folder - const char* automocFolder = makefile->GetCMakeInstance()->GetProperty( + const char* autogenFolder = makefile->GetCMakeInstance()->GetProperty( "AUTOMOC_TARGETS_FOLDER"); - if (automocFolder && *automocFolder) + if (!autogenFolder) { - autogenTarget->SetProperty("FOLDER", automocFolder); + autogenFolder = makefile->GetCMakeInstance()->GetProperty( + "AUTOGEN_TARGETS_FOLDER"); + } + if (autogenFolder && *autogenFolder) + { + autogenTarget->SetProperty("FOLDER", autogenFolder); } else {