diff --git a/Source/cmAddExecutableCommand.cxx b/Source/cmAddExecutableCommand.cxx index 0d46593dc..fa062696b 100644 --- a/Source/cmAddExecutableCommand.cxx +++ b/Source/cmAddExecutableCommand.cxx @@ -32,17 +32,22 @@ bool cmAddExecutableCommand::InitialPass(std::vector const& args) m_Makefile->ExpandVariablesInString(exename); ++s; + bool use_win32 = false; + if (*s == "WIN32") { ++s; - std::vector srclists(s, args.end()); - m_Makefile->AddExecutable(exename.c_str(),srclists, true); + use_win32 = true; } - else + + std::vector srclists(s, args.end()); + for(std::vector::iterator j = srclists.begin(); + j != srclists.end(); ++j) { - std::vector srclists(s, args.end()); - m_Makefile->AddExecutable(exename.c_str(),srclists, false); + m_Makefile->ExpandVariablesInString(*j); } + + m_Makefile->AddExecutable(exename.c_str(), srclists, use_win32); return true; }