[Cmake-commits] [cmake-commits] hoffman committed cmSourceFileLocation.cxx 1.4 1.5

cmake-commits at cmake.org cmake-commits at cmake.org
Fri Jul 25 18:00:49 EDT 2008


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

Modified Files:
	cmSourceFileLocation.cxx 
Log Message:
BUG: fix source file extension bug that broke Second life build


Index: cmSourceFileLocation.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmSourceFileLocation.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -C 2 -d -r1.4 -r1.5
*** cmSourceFileLocation.cxx	15 Mar 2008 14:00:07 -0000	1.4
--- cmSourceFileLocation.cxx	25 Jul 2008 22:00:47 -0000	1.5
***************
*** 101,104 ****
--- 101,134 ----
      this->AmbiguousExtension = false;
      }
+   else
+     {
+     // This is not a known extension.  See if the file exists on disk as
+     // named.
+     std::string tryPath;
+     if(this->AmbiguousDirectory)
+       {
+       // Check the source tree only because a file in the build tree should
+       // be specified by full path at least once.  We do not want this
+       // detection to depend on whether the project has already been built.
+       tryPath = this->Makefile->GetCurrentDirectory();
+       tryPath += "/";
+       }
+     tryPath += this->Directory;
+     tryPath += "/";
+     tryPath += this->Name;
+     if(cmSystemTools::FileExists(tryPath.c_str(), true))
+       {
+       // We found a source file named by the user on disk.  Trust it's
+       // extension.
+       this->Name = cmSystemTools::GetFilenameName(name);
+       this->AmbiguousExtension = false;
+ 
+       // If the directory was ambiguous, it isn't anymore.
+       if(this->AmbiguousDirectory)
+         {
+         this->DirectoryUseSource();
+         }
+       }
+     }
  }
  



More information about the Cmake-commits mailing list