[cmake-commits] hoffman committed cmOrderLinkDirectories.cxx 1.29.2.3
1.29.2.4 cmTarget.cxx 1.96.2.6 1.96.2.7
cmake-commits at cmake.org
cmake-commits at cmake.org
Thu Nov 30 18:13:51 EST 2006
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv5362/Source
Modified Files:
Tag: CMake-2-4
cmOrderLinkDirectories.cxx cmTarget.cxx
Log Message:
ENH: move to RC 3 and add a fix for -L/path in link commands that was broken by the .dll.lib fix
Index: cmOrderLinkDirectories.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmOrderLinkDirectories.cxx,v
retrieving revision 1.29.2.3
retrieving revision 1.29.2.4
diff -u -d -r1.29.2.3 -r1.29.2.4
--- cmOrderLinkDirectories.cxx 30 Nov 2006 15:12:56 -0000 1.29.2.3
+++ cmOrderLinkDirectories.cxx 30 Nov 2006 23:13:49 -0000 1.29.2.4
@@ -463,17 +463,16 @@
#ifdef CM_ORDER_LINK_DIRECTORIES_DEBUG
fprintf(stderr, "Raw link item [%s]\n", this->RawLinkItems[i].c_str());
#endif
- // check to see if the file is a full path or just contains
- // a / in it and is a path to something
+ // if it is a full path to an item then separate it from the path
+ // this only works with files and paths
cmStdString& item = this->RawLinkItems[i];
- if(cmSystemTools::FileIsFullPath(item.c_str())
- || item.find("/") != item.npos)
+ if(cmSystemTools::FileIsFullPath(item.c_str()))
{
- if(cmSystemTools::FileIsDirectory(this->RawLinkItems[i].c_str()))
+ if(cmSystemTools::FileIsDirectory(item.c_str()))
{
- if(cmSystemTools::IsPathToFramework(this->RawLinkItems[i].c_str()))
+ if(cmSystemTools::IsPathToFramework(item.c_str()))
{
- this->SplitFramework.find(this->RawLinkItems[i]);
+ this->SplitFramework.find(item.c_str());
cmStdString path = this->SplitFramework.match(1);
// Add the -F path if we have not yet done so
if(this->EmittedFrameworkPaths.insert(path).second)
Index: cmTarget.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmTarget.cxx,v
retrieving revision 1.96.2.6
retrieving revision 1.96.2.7
diff -u -d -r1.96.2.6 -r1.96.2.7
--- cmTarget.cxx 28 Nov 2006 19:19:44 -0000 1.96.2.6
+++ cmTarget.cxx 30 Nov 2006 23:13:49 -0000 1.96.2.7
@@ -894,7 +894,14 @@
{
this->Directory = this->Makefile->GetStartOutputDirectory();
}
-
+ // if LIBRARY_OUTPUT_PATH or EXECUTABLE_OUTPUT_PATH was relative
+ // then make them full paths because this directory MUST
+ // be a full path or things will not work!!!
+ if(!cmSystemTools::FileIsFullPath(this->Directory.c_str()))
+ {
+ this->Directory = this->Makefile->GetCurrentOutputDirectory() +
+ std::string("/") + this->Directory;
+ }
if(config)
{
// Add the configuration's subdirectory.
More information about the Cmake-commits
mailing list