diff --git a/Source/cmInstallFilesCommand.cxx b/Source/cmInstallFilesCommand.cxx index e608484c2..50b29dd1c 100644 --- a/Source/cmInstallFilesCommand.cxx +++ b/Source/cmInstallFilesCommand.cxx @@ -112,6 +112,12 @@ void cmInstallFilesCommand::FinalPass() } } + // Construct the destination. This command always installs under + // the prefix. + std::string destination = "${CMAKE_INSTALL_PREFIX}"; + destination += this->Destination; + cmSystemTools::ConvertToUnixSlashes(destination); + // Use a file install generator. const char* no_permissions = ""; const char* no_rename = ""; @@ -119,7 +125,7 @@ void cmInstallFilesCommand::FinalPass() std::vector no_configurations; this->Makefile->AddInstallGenerator( new cmInstallFilesGenerator(this->Files, - this->Destination.c_str(), false, + destination.c_str(), false, no_permissions, no_configurations, no_component, no_rename)); } diff --git a/Source/cmInstallProgramsCommand.cxx b/Source/cmInstallProgramsCommand.cxx index bd137ddde..a26b6ae61 100644 --- a/Source/cmInstallProgramsCommand.cxx +++ b/Source/cmInstallProgramsCommand.cxx @@ -79,6 +79,12 @@ void cmInstallProgramsCommand::FinalPass() } } + // Construct the destination. This command always installs under + // the prefix. + std::string destination = "${CMAKE_INSTALL_PREFIX}"; + destination += this->Destination; + cmSystemTools::ConvertToUnixSlashes(destination); + // Use a file install generator. const char* no_permissions = ""; const char* no_rename = ""; @@ -86,7 +92,7 @@ void cmInstallProgramsCommand::FinalPass() std::vector no_configurations; this->Makefile->AddInstallGenerator( new cmInstallFilesGenerator(this->Files, - this->Destination.c_str(), true, + destination.c_str(), true, no_permissions, no_configurations, no_component, no_rename)); }