[cmake-commits] king committed cmMakefileLibraryTargetGenerator.cxx
1.26 1.27
cmake-commits at cmake.org
cmake-commits at cmake.org
Fri Oct 13 14:00:01 EDT 2006
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv8127
Modified Files:
cmMakefileLibraryTargetGenerator.cxx
Log Message:
BUG: When using link scripts use native shell escapes instead of makefile shell escapes because the script is not interpreted by a make tool.
Index: cmMakefileLibraryTargetGenerator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmMakefileLibraryTargetGenerator.cxx,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- cmMakefileLibraryTargetGenerator.cxx 11 Oct 2006 16:41:20 -0000 1.26
+++ cmMakefileLibraryTargetGenerator.cxx 13 Oct 2006 17:59:59 -0000 1.27
@@ -537,7 +537,21 @@
objdir += this->Target->GetName();
objdir += ".dir";
vars.ObjectDir = objdir.c_str();
- vars.Target = targetOutPathReal.c_str();
+ std::string targetLinkScriptPathReal;
+ if(useLinkScript)
+ {
+ // Paths in the link script are interpreted directly by the shell
+ // and not make.
+ targetLinkScriptPathReal =
+ this->Convert(targetFullPathReal.c_str(),
+ cmLocalGenerator::START_OUTPUT,
+ cmLocalGenerator::SHELL);
+ vars.Target = targetLinkScriptPathReal.c_str();
+ }
+ else
+ {
+ vars.Target = targetOutPathReal.c_str();
+ }
std::string linkString = linklibs.str();
vars.LinkLibraries = linkString.c_str();
vars.ObjectsQuoted = buildObjs.c_str();
More information about the Cmake-commits
mailing list