[Cmake-commits] [cmake-commits] king committed cmFileCommand.cxx 1.128 1.129
cmake-commits at cmake.org
cmake-commits at cmake.org
Wed Apr 29 13:13:16 EDT 2009
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv23651/Source
Modified Files:
cmFileCommand.cxx
Log Message:
ENH: Teach file(INSTALL) relative paths
This teaches the undocumented file(INSTALL) command to deal with
relative paths. Relative input file paths are evaluated with respect to
the current source directory. Relative output file paths are evaluated
with respect to the current binary directory.
While this command is currently used only in cmake_install.cmake scripts
(in -P script mode), this cleans up its interface in preparation for a
documented signature.
Index: cmFileCommand.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmFileCommand.cxx,v
retrieving revision 1.128
retrieving revision 1.129
diff -C 2 -d -r1.128 -r1.129
*** cmFileCommand.cxx 29 Apr 2009 17:12:57 -0000 1.128
--- cmFileCommand.cxx 29 Apr 2009 17:13:08 -0000 1.129
***************
*** 1217,1224 ****
{
case DoingFiles:
! this->Files.push_back(arg);
break;
case DoingDestination:
! this->Destination = arg;
this->Doing = DoingNone;
break;
--- 1217,1241 ----
{
case DoingFiles:
! if(arg.empty() || cmSystemTools::FileIsFullPath(arg.c_str()))
! {
! this->Files.push_back(arg);
! }
! else
! {
! std::string file = this->Makefile->GetCurrentDirectory();
! file += "/" + arg;
! this->Files.push_back(file);
! }
break;
case DoingDestination:
! if(arg.empty() || cmSystemTools::FileIsFullPath(arg.c_str()))
! {
! this->Destination = arg;
! }
! else
! {
! this->Destination = this->Makefile->GetCurrentOutputDirectory();
! this->Destination += "/" + arg;
! }
this->Doing = DoingNone;
break;
More information about the Cmake-commits
mailing list