automoc: add a global AUTOMOC_TARGETS_FOLDER property
This has been requested, along with a patch, by Shaun Williams in http://public.kitware.com/Bug/view.php?id=13788 . It adds a global property AUTOMOC_TARGETS_FOLDER, which can be used to group the automoc targets together in a folder e.g. in Visual Studio. Alex
This commit is contained in:
parent
daaf6283f5
commit
ba0e06f250
|
@ -255,8 +255,18 @@ void cmQtAutomoc::SetupAutomocTarget(cmTarget* target)
|
|||
automocTargetName.c_str(), true,
|
||||
workingDirectory.c_str(), depends,
|
||||
commandLines, false, automocComment.c_str());
|
||||
// inherit FOLDER property from target (#13688)
|
||||
copyTargetProperty(automocTarget, target, "FOLDER");
|
||||
// Set target folder
|
||||
const char* automocFolder = makefile->GetCMakeInstance()->GetProperty(
|
||||
"AUTOMOC_TARGETS_FOLDER");
|
||||
if (automocFolder && *automocFolder)
|
||||
{
|
||||
automocTarget->SetProperty("FOLDER", automocFolder);
|
||||
}
|
||||
else
|
||||
{
|
||||
// inherit FOLDER property from target (#13688)
|
||||
copyTargetProperty(automocTarget, target, "FOLDER");
|
||||
}
|
||||
|
||||
target->AddUtility(automocTargetName.c_str());
|
||||
}
|
||||
|
|
|
@ -236,7 +236,9 @@ void cmTarget::DefineProperties(cmake *cm)
|
|||
"AUTOMOC_MOC_OPTIONS property.\n"
|
||||
"By setting the CMAKE_AUTOMOC_RELAXED_MODE variable to TRUE the rules "
|
||||
"for searching the files which will be processed by moc can be relaxed. "
|
||||
"See the documentation for this variable for more details.");
|
||||
"See the documentation for this variable for more details.\n"
|
||||
"The global property AUTOMOC_TARGETS_FOLDER can be used to group the "
|
||||
"automoc targets together in an IDE, e.g. in MSVS.");
|
||||
|
||||
cm->DefineProperty
|
||||
("AUTOMOC_MOC_OPTIONS", cmProperty::TARGET,
|
||||
|
|
|
@ -3602,6 +3602,14 @@ void cmake::DefineProperties(cmake *cm)
|
|||
"property to name those folders. See also the documentation "
|
||||
"for the FOLDER target property.");
|
||||
|
||||
cm->DefineProperty
|
||||
("AUTOMOC_TARGETS_FOLDER", cmProperty::GLOBAL,
|
||||
"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.");
|
||||
|
||||
cm->DefineProperty
|
||||
("PREDEFINED_TARGETS_FOLDER", cmProperty::GLOBAL,
|
||||
"Name of FOLDER for targets that are added automatically by CMake.",
|
||||
|
|
Loading…
Reference in New Issue