From 4241e699c770d326602d1bc424f0d2e2f475ec76 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 18 Apr 2007 00:04:56 -0400 Subject: [PATCH] BUG: Cannot escape link items because some need the spaces to separate arguments. Instead just escape the argument to the loader flag. --- Source/cmLocalGenerator.cxx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index a8d84e8e3..10b855de4 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -1585,7 +1585,7 @@ void cmLocalGenerator::OutputLinkLibraries(std::ostream& fout, for(std::vector::iterator lib = libNames.begin(); lib != libNames.end(); ++lib) { - linkLibs += this->Convert(lib->c_str(), NONE, SHELL, false); + linkLibs += *lib; linkLibs += " "; } @@ -1715,17 +1715,17 @@ void cmLocalGenerator // Pass the full path to the target file but purposely leave // off the per-configuration subdirectory. The link directory // ordering knows how to deal with this. - std::string linkItem; + std::string linkItem = tgt->GetDirectory(0, implib); + linkItem += "/"; + linkItem += tgt->GetFullName(config, implib); if(impexe && loader_flag) { // This link item is an executable that may provide symbols // used by this target. A special flag is needed on this // platform. Add it now. - linkItem += loader_flag; + linkItem = loader_flag + + this->Convert(linkItem.c_str(), NONE, SHELL, false); } - linkItem += tgt->GetDirectory(0, implib); - linkItem += "/"; - linkItem += tgt->GetFullName(config, implib); linkLibraries.push_back(linkItem); // For full path, use the true location. if(fullPathLibs)