[cmake-commits] hoffman committed cmOrderLinkDirectories.cxx 1.35 1.36 cmTarget.cxx 1.113 1.114

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Nov 30 17:32:48 EST 2006


Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv22861/Source

Modified Files:
	cmOrderLinkDirectories.cxx cmTarget.cxx 
Log Message:
BUG: better fix for .dll.lib problem


Index: cmOrderLinkDirectories.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmOrderLinkDirectories.cxx,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- cmOrderLinkDirectories.cxx	29 Nov 2006 21:43:21 -0000	1.35
+++ cmOrderLinkDirectories.cxx	30 Nov 2006 22:32:45 -0000	1.36
@@ -466,8 +466,9 @@
     // check to see if the file is a full path or just contains 
     // a / in it and is a path to something
     cmStdString& item = this->RawLinkItems[i];
-    if(cmSystemTools::FileIsFullPath(item.c_str())
-       || item.find("/") != item.npos)
+    // if it is a full path to an item then separate it from the path
+    // this only works with files and paths
+    if(cmSystemTools::FileIsFullPath(item.c_str()))
       {
       if(cmSystemTools::FileIsDirectory(this->RawLinkItems[i].c_str()))
         {

Index: cmTarget.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmTarget.cxx,v
retrieving revision 1.113
retrieving revision 1.114
diff -u -d -r1.113 -r1.114
--- cmTarget.cxx	29 Nov 2006 22:10:29 -0000	1.113
+++ cmTarget.cxx	30 Nov 2006 22:32:46 -0000	1.114
@@ -864,7 +864,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