summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmMakefile.cxx23
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 9cb35e2..a5cd730 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -1173,6 +1173,7 @@ void cmMakefile::ExpandVariables()
void cmMakefile::ExpandVariablesInCustomCommands()
{
+ // do source files
for(std::vector<cmSourceFile*>::iterator i = m_SourceFiles.begin();
i != m_SourceFiles.end(); ++i)
{
@@ -1182,6 +1183,28 @@ void cmMakefile::ExpandVariablesInCustomCommands()
cc->ExpandVariables(*this);
}
}
+
+ // now do targets
+ std::vector<cmCustomCommand>::iterator ic;
+ for (cmTargets::iterator l = m_Targets.begin();
+ l != m_Targets.end(); l++)
+ {
+ for (ic = l->second.GetPreBuildCommands().begin();
+ ic != l->second.GetPreBuildCommands().end(); ++ic)
+ {
+ ic->ExpandVariables(*this);
+ }
+ for (ic = l->second.GetPreLinkCommands().begin();
+ ic != l->second.GetPreLinkCommands().end(); ++ic)
+ {
+ ic->ExpandVariables(*this);
+ }
+ for (ic = l->second.GetPostBuildCommands().begin();
+ ic != l->second.GetPostBuildCommands().end(); ++ic)
+ {
+ ic->ExpandVariables(*this);
+ }
+ }
}
bool cmMakefile::IsOn(const char* name) const