summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmQTWrapUICommand.cxx17
1 files changed, 16 insertions, 1 deletions
diff --git a/Source/cmQTWrapUICommand.cxx b/Source/cmQTWrapUICommand.cxx
index 6a6d902..8ef8c18 100644
--- a/Source/cmQTWrapUICommand.cxx
+++ b/Source/cmQTWrapUICommand.cxx
@@ -81,7 +81,22 @@ bool cmQTWrapUICommand::InitialPass(std::vector<std::string> const& argsIn)
moc_file.SetName(moc_source_name.c_str(),
m_Makefile->GetCurrentOutputDirectory(),
"cxx",false);
- std::string origname = cdir + "/" + *j;
+ std::string origname;
+ if ( (*j)[0] == '/' )
+ {
+ origname = *j;
+ }
+ else
+ {
+ if ( curr && curr->GetPropertyAsBool("GENERATED") )
+ {
+ origname = std::string( m_Makefile->GetCurrentOutputDirectory() ) + "/" + *j;
+ }
+ else
+ {
+ origname = cdir + "/" + *j;
+ }
+ }
std::string hname = header_file.GetFullPath();
m_WrapUserInterface.push_back(origname);
// add starting depends