Ninja: Refactor restat to be a string internally

This will allow values other than "" and "1" to be generated in
the rules.ninja file.
This commit is contained in:
Brad King 2014-11-13 18:32:44 -05:00
parent ef42e57d47
commit 67bd514adc
4 changed files with 15 additions and 15 deletions

View File

@ -242,7 +242,7 @@ void cmGlobalNinjaGenerator::AddCustomCommandRule()
/*deptype*/ "",
/*rspfile*/ "",
/*rspcontent*/ "",
/*restat*/ true,
/*restat*/ "1",
/*generator*/ false);
}
@ -309,7 +309,7 @@ cmGlobalNinjaGenerator::AddMacOSXContentRule()
/*deptype*/ "",
/*rspfile*/ "",
/*rspcontent*/ "",
/*restat*/ false,
/*restat*/ "",
/*generator*/ false);
}
@ -344,7 +344,7 @@ void cmGlobalNinjaGenerator::WriteRule(std::ostream& os,
const std::string& deptype,
const std::string& rspfile,
const std::string& rspcontent,
bool restat,
const std::string& restat,
bool generator)
{
// Make sure the rule has a name.
@ -408,10 +408,10 @@ void cmGlobalNinjaGenerator::WriteRule(std::ostream& os,
os << "rspfile_content = " << rspcontent << "\n";
}
if(restat)
if(!restat.empty())
{
cmGlobalNinjaGenerator::Indent(os, 1);
os << "restat = 1\n";
os << "restat = " << restat << "\n";
}
if(generator)
@ -607,7 +607,7 @@ void cmGlobalNinjaGenerator::AddRule(const std::string& name,
const std::string& deptype,
const std::string& rspfile,
const std::string& rspcontent,
bool restat,
const std::string& restat,
bool generator)
{
// Do not add the same rule twice.
@ -1122,7 +1122,7 @@ void cmGlobalNinjaGenerator::WriteTargetRebuildManifest(std::ostream& os)
/*deptype=*/ "",
/*rspfile=*/ "",
/*rspcontent*/ "",
/*restat=*/ false,
/*restat=*/ "",
/*generator=*/ true);
cmLocalNinjaGenerator *ng = static_cast<cmLocalNinjaGenerator *>(lg);
@ -1206,7 +1206,7 @@ void cmGlobalNinjaGenerator::WriteTargetClean(std::ostream& os)
/*deptype=*/ "",
/*rspfile=*/ "",
/*rspcontent*/ "",
/*restat=*/ false,
/*restat=*/ "",
/*generator=*/ false);
WriteBuild(os,
"Clean all the built files.",
@ -1229,7 +1229,7 @@ void cmGlobalNinjaGenerator::WriteTargetHelp(std::ostream& os)
/*deptype=*/ "",
/*rspfile=*/ "",
/*rspcontent*/ "",
/*restat=*/ false,
/*restat=*/ "",
/*generator=*/ false);
WriteBuild(os,
"Print all primary targets available.",

View File

@ -125,7 +125,7 @@ public:
const std::string& deptype,
const std::string& rspfile,
const std::string& rspcontent,
bool restat,
const std::string& restat,
bool generator);
/**
@ -245,7 +245,7 @@ public:
const std::string& deptype,
const std::string& rspfile,
const std::string& rspcontent,
bool restat,
const std::string& restat,
bool generator);
bool HasRule(const std::string& name);

View File

@ -256,7 +256,7 @@ cmNinjaNormalTargetGenerator
/*deptype*/ "",
rspfile,
rspcontent,
/*restat*/ false,
/*restat*/ "",
/*generator*/ false);
}
@ -278,7 +278,7 @@ cmNinjaNormalTargetGenerator
/*deptype*/ "",
/*rspfile*/ "",
/*rspcontent*/ "",
/*restat*/ false,
/*restat*/ "",
/*generator*/ false);
else
this->GetGlobalGenerator()->AddRule("CMAKE_SYMLINK_LIBRARY",
@ -292,7 +292,7 @@ cmNinjaNormalTargetGenerator
/*deptype*/ "",
/*rspfile*/ "",
/*rspcontent*/ "",
/*restat*/ false,
/*restat*/ "",
/*generator*/ false);
}
}

View File

@ -477,7 +477,7 @@ cmNinjaTargetGenerator
deptype,
/*rspfile*/ "",
/*rspcontent*/ "",
/*restat*/ false,
/*restat*/ "",
/*generator*/ false);
}