diff options
author | Alex Neundorf <neundorf@kde.org> | 2012-11-17 17:32:54 (GMT) |
---|---|---|
committer | Alex Neundorf <neundorf@kde.org> | 2012-11-17 17:32:54 (GMT) |
commit | 3efe1d35f46fedbaaa81777201096808e660d518 (patch) | |
tree | 199caaf556e4fa6ef85448a70cfdc6661e8d6a18 /Source | |
parent | 3359d95c00c221328d284e443c1d49e12630be63 (diff) | |
download | CMake-3efe1d35f46fedbaaa81777201096808e660d518.zip CMake-3efe1d35f46fedbaaa81777201096808e660d518.tar.gz CMake-3efe1d35f46fedbaaa81777201096808e660d518.tar.bz2 |
Automoc: "inherit" FOLDER target property from target (#13688)
This patch sets the FOLDER target property for the automoc target
to the same value as of the actual target. This organizes the targets
in IDEs with folders better.
Inspired-by: Mike Gelfand
Alex
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmQtAutomoc.cxx | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/Source/cmQtAutomoc.cxx b/Source/cmQtAutomoc.cxx index 942c7ab..9423208 100644 --- a/Source/cmQtAutomoc.cxx +++ b/Source/cmQtAutomoc.cxx @@ -85,6 +85,18 @@ static std::string extractSubDir(const std::string& absPath, } +static void copyTargetProperty(cmTarget* destinationTarget, + cmTarget* sourceTarget, + const char* propertyName) +{ + const char* propertyValue = sourceTarget->GetProperty(propertyName); + if (propertyValue) + { + destinationTarget->SetProperty(propertyName, propertyValue); + } +} + + cmQtAutomoc::cmQtAutomoc() :Verbose(cmsys::SystemTools::GetEnv("VERBOSE") != 0) ,ColorOutput(true) @@ -152,9 +164,13 @@ void cmQtAutomoc::SetupAutomocTarget(cmTarget* target) std::string automocComment = "Automoc for target "; automocComment += targetName; - makefile->AddUtilityCommand(automocTargetName.c_str(), true, + cmTarget* automocTarget = makefile->AddUtilityCommand( + automocTargetName.c_str(), true, workingDirectory.c_str(), depends, commandLines, false, automocComment.c_str()); + // inherit FOLDER property from target (#13688) + copyTargetProperty(automocTarget, target, "FOLDER"); + target->AddUtility(automocTargetName.c_str()); // configure a file to get all information to automoc at buildtime: |