From a317715407907eb42dc6499ac34d06599777efeb Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 5 May 2006 10:38:41 -0400 Subject: ENH: Added option to not use copy-if-different when installing. --- Source/cmFileCommand.cxx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 9ca4f19..08d0d78 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -696,6 +696,11 @@ bool cmFileCommand::HandleInstallCommand( smanifest_files = manifest_files; } + // Check whether files should be copied always or only if they have + // changed. + bool copy_always = + cmSystemTools::IsOn(cmSystemTools::GetEnv("CMAKE_INSTALL_ALWAYS")); + // Handle each file listed. for ( i = 0; i < files.size(); i ++ ) { @@ -825,7 +830,8 @@ bool cmFileCommand::HandleInstallCommand( message = "Installing "; message += toFile.c_str(); this->Makefile->DisplayStatus(message.c_str(), -1); - if(!cmSystemTools::CopyADirectory(fromFile.c_str(), toFile.c_str())) + if(!cmSystemTools::CopyADirectory(fromFile.c_str(), toFile.c_str(), + copy_always)) { cmOStringStream e; e << "INSTALL cannot copy directory \"" << fromFile @@ -841,9 +847,9 @@ bool cmFileCommand::HandleInstallCommand( message += toFile.c_str(); this->Makefile->DisplayStatus(message.c_str(), -1); - // Copy the file, but only if it has changed. - if(!cmSystemTools::CopyFileIfDifferent(fromFile.c_str(), - toFile.c_str())) + // Copy the file. + if(!cmSystemTools::CopyAFile(fromFile.c_str(), toFile.c_str(), + copy_always)) { cmOStringStream e; e << "INSTALL cannot copy file \"" << fromFile -- cgit v0.12