summaryrefslogtreecommitdiffstats
path: root/Source/cmQtAutoGenerators.cxx
diff options
context:
space:
mode:
authorSebastian Holtermann <sebholt@xwmw.org>2016-04-19 09:02:48 (GMT)
committerBrad King <brad.king@kitware.com>2016-04-22 12:54:25 (GMT)
commit9c6fa684e7681417f5e75f25034f28212e22b229 (patch)
tree60901c744f14bb17c840ccb72f6267882f33cabc /Source/cmQtAutoGenerators.cxx
parent488ea8c7093849cc60ae0e99ef883b2ddacfdf86 (diff)
downloadCMake-9c6fa684e7681417f5e75f25034f28212e22b229.zip
CMake-9c6fa684e7681417f5e75f25034f28212e22b229.tar.gz
CMake-9c6fa684e7681417f5e75f25034f28212e22b229.tar.bz2
Autogen: Generate qrc_NAME.cpp files in subdirectories
A qrc_NAME.cpp file generated from NAME.qrc in the directory CMAKE_CURRENT_SOURCE_DIR/SUBDIR will be generated in the directory CMAKE_CURRENT_BINARY_DIR/TARGETNAME_automoc.dir/SUBDIR
Diffstat (limited to 'Source/cmQtAutoGenerators.cxx')
-rw-r--r--Source/cmQtAutoGenerators.cxx15
1 files changed, 10 insertions, 5 deletions
diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx
index 1431323..3c6db2d 100644
--- a/Source/cmQtAutoGenerators.cxx
+++ b/Source/cmQtAutoGenerators.cxx
@@ -1399,8 +1399,11 @@ bool cmQtAutoGenerators::GenerateQrcFiles()
{
std::string basename = cmsys::SystemTools::
GetFilenameWithoutLastExtension(*si);
- std::string qrcOutputFile = "CMakeFiles/" + this->OriginTargetName
- + ".dir/qrc_" + basename + ".cpp";
+ std::string qrcOutputFile = this->TargetBuildSubDir
+ + this->SourceRelativePath ( *si )
+ + "qrc_" + basename + ".cpp";
+ //std::string qrcOutputFile = "CMakeFiles/" + this->OriginTargetName
+ // + ".dir/qrc_" + basename + ".cpp";
qrcGenMap[*si] = qrcOutputFile;
}
}
@@ -1438,8 +1441,10 @@ bool cmQtAutoGenerators::GenerateQrc (
const std::string& qrcInputFile,
const std::string& qrcOutputFile )
{
- const std::string basename = cmsys::SystemTools::
- GetFilenameWithoutLastExtension(qrcInputFile);
+ std::string relName = this->SourceRelativePath ( qrcInputFile );
+ cmSystemTools::ReplaceString(relName, "/", "_");
+ relName += cmsys::SystemTools::GetFilenameWithoutLastExtension(qrcInputFile);
+
const ::std::string qrcBuildFile = this->Builddir + qrcOutputFile;
int sourceNewerThanQrc = 0;
@@ -1469,7 +1474,7 @@ bool cmQtAutoGenerators::GenerateQrc (
}
command.push_back("-name");
- command.push_back(basename);
+ command.push_back(relName);
command.push_back("-o");
command.push_back(qrcBuildFile);
command.push_back(qrcInputFile);