diff --git a/Source/cmGlobalUnixMakefileGenerator3.cxx b/Source/cmGlobalUnixMakefileGenerator3.cxx index 805545acb..13bf515d3 100644 --- a/Source/cmGlobalUnixMakefileGenerator3.cxx +++ b/Source/cmGlobalUnixMakefileGenerator3.cxx @@ -173,8 +173,9 @@ GetNumberOfCompilableSourceFilesForTarget(cmTarget &tgt) //---------------------------------------------------------------------------- void cmGlobalUnixMakefileGenerator3::Generate() { - // initialize progress - this->NumberOfSourceFiles = 0; + // initialize progress, always pretend there is at least 1 file + // to avoid division errors etc + this->NumberOfSourceFiles = 1; unsigned int i; for (i = 0; i < this->LocalGenerators.size(); ++i) { @@ -709,7 +710,7 @@ cmGlobalUnixMakefileGenerator3 cmLocalGenerator::SHELL); progCmd << " " << (100*this->GetTargetTotalNumberOfSourceFiles(t->second))/ - this->GetNumberOfSourceFiles(); + this->NumberOfSourceFiles; commands.push_back(progCmd.str()); commands.push_back(lg->GetRecursiveMakeCall ("CMakeFiles/Makefile2",t->second.GetName())); diff --git a/Source/cmGlobalUnixMakefileGenerator3.h b/Source/cmGlobalUnixMakefileGenerator3.h index 1cce9a8fa..90e3be1df 100644 --- a/Source/cmGlobalUnixMakefileGenerator3.h +++ b/Source/cmGlobalUnixMakefileGenerator3.h @@ -125,7 +125,6 @@ public: // returns true if a progress rule should be added int ShouldAddProgressRule(); - int GetNumberOfSourceFiles() {return this->NumberOfSourceFiles; } int GetNumberOfCompilableSourceFilesForTarget(cmTarget &tgt); int GetTargetTotalNumberOfSourceFiles(cmTarget& target); @@ -183,8 +182,8 @@ protected: typedef std::map MultipleOutputPairsType; MultipleOutputPairsType MultipleOutputPairs; - size_t NumberOfSourceFiles; - size_t NumberOfSourceFilesWritten; + int NumberOfSourceFiles; + int NumberOfSourceFilesWritten; std::map > TargetDependencies; std::map TargetSourceFileCount;