ENH: Added dependency on all for install rule to make sure build is up to date before installing. This behavior can be disabled by setting CMAKE_SKIP_INSTALL_ALL_DEPENDENCY to true.

This commit is contained in:
Brad King 2005-04-27 11:46:46 -04:00
parent 0ef2334a5f
commit 4b371ed7fe
1 changed files with 9 additions and 2 deletions

View File

@ -1079,7 +1079,7 @@ cmLocalUnixMakefileGenerator2
// Write special "install" target to run cmake_install.cmake script.
{
std::vector<std::string> no_depends;
std::vector<std::string> depends;
std::vector<std::string> commands;
std::string cmd;
if(m_Makefile->GetDefinition("CMake_BINARY_DIR"))
@ -1096,9 +1096,16 @@ cmLocalUnixMakefileGenerator2
}
cmd += " -P cmake_install.cmake";
commands.push_back(cmd);
const char* noall =
m_Makefile->GetDefinition("CMAKE_SKIP_INSTALL_ALL_DEPENDENCY");
if(!noall || cmSystemTools::IsOff(noall))
{
// Drive the build before installing.
depends.push_back("all");
}
this->WriteMakeRule(makefileStream,
"Special rule to run installation script.",
"install", no_depends, commands);
"install", depends, commands);
}
// Write special "rebuild_cache" target to re-run cmake.