BUG: Fix progress when total number of source files is less than 100.
This commit is contained in:
parent
d9e060e062
commit
d3073828f0
|
@ -703,15 +703,23 @@ cmGlobalUnixMakefileGenerator3
|
|||
std::string progressDir =
|
||||
lg->GetMakefile()->GetHomeOutputDirectory();
|
||||
progressDir += "/CMakeFiles";
|
||||
|
||||
{
|
||||
// TODO: Convert the total progress count to a make variable.
|
||||
cmOStringStream progCmd;
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start ";
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # in target
|
||||
progCmd << lg->Convert(progressDir.c_str(),
|
||||
cmLocalGenerator::FULL,
|
||||
cmLocalGenerator::SHELL);
|
||||
int n = this->GetNumberOfSourceFiles();
|
||||
if(n > 100)
|
||||
{
|
||||
n = 100;
|
||||
}
|
||||
if (this->NumberOfSourceFiles)
|
||||
{
|
||||
progCmd << " " <<
|
||||
(100*this->GetTargetTotalNumberOfSourceFiles(t->second))/
|
||||
(n*this->GetTargetTotalNumberOfSourceFiles(t->second))/
|
||||
this->NumberOfSourceFiles;
|
||||
}
|
||||
else
|
||||
|
@ -719,9 +727,19 @@ cmGlobalUnixMakefileGenerator3
|
|||
progCmd << " 0";
|
||||
}
|
||||
commands.push_back(progCmd.str());
|
||||
}
|
||||
commands.push_back(lg->GetRecursiveMakeCall
|
||||
("CMakeFiles/Makefile2",t->second.GetName()));
|
||||
depends.clear();
|
||||
{
|
||||
cmOStringStream progCmd;
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # 0
|
||||
progCmd << lg->Convert(progressDir.c_str(),
|
||||
cmLocalGenerator::FULL,
|
||||
cmLocalGenerator::SHELL);
|
||||
progCmd << " 0";
|
||||
commands.push_back(progCmd.str());
|
||||
}
|
||||
depends.clear();
|
||||
depends.push_back("cmake_check_build_system");
|
||||
lg->WriteMakeRule(ruleFileStream,
|
||||
"Build rule for target.",
|
||||
|
@ -840,7 +858,7 @@ cmGlobalUnixMakefileGenerator3
|
|||
lg->GetMakefile()->GetHomeOutputDirectory();
|
||||
progressDir += "/CMakeFiles";
|
||||
cmOStringStream progCmd;
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_report ";
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_report "; // all target counts
|
||||
progCmd << lg->Convert(progressDir.c_str(),
|
||||
cmLocalGenerator::FULL,
|
||||
cmLocalGenerator::SHELL);
|
||||
|
|
|
@ -1402,13 +1402,18 @@ void cmLocalUnixMakefileGenerator3
|
|||
std::string progressDir = this->Makefile->GetHomeOutputDirectory();
|
||||
progressDir += "/CMakeFiles";
|
||||
cmOStringStream progCmd;
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start ";
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # src files
|
||||
progCmd << this->Convert(progressDir.c_str(),
|
||||
cmLocalGenerator::FULL,
|
||||
cmLocalGenerator::SHELL);
|
||||
cmGlobalUnixMakefileGenerator3 *gg =
|
||||
static_cast<cmGlobalUnixMakefileGenerator3*>(this->GlobalGenerator);
|
||||
progCmd << " " << gg->GetNumberOfSourceFiles();
|
||||
int n = gg->GetNumberOfSourceFiles();
|
||||
if(n > 100)
|
||||
{
|
||||
n = 100;
|
||||
}
|
||||
progCmd << " " << n;
|
||||
commands.push_back(progCmd.str());
|
||||
}
|
||||
|
||||
|
@ -1422,7 +1427,7 @@ void cmLocalUnixMakefileGenerator3
|
|||
std::string progressDir = this->Makefile->GetHomeOutputDirectory();
|
||||
progressDir += "/CMakeFiles";
|
||||
cmOStringStream progCmd;
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start ";
|
||||
progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # 0
|
||||
progCmd << this->Convert(progressDir.c_str(),
|
||||
cmLocalGenerator::FULL,
|
||||
cmLocalGenerator::SHELL);
|
||||
|
|
Loading…
Reference in New Issue