Remove barely-used cmMakefile::AddCacheDefinition

The boolean overload of this method was used only to implement option().
We re-implement option() in terms of the main method and removes the
now-unused signature.  This removes some duplicate code that had already
fallen behind on changes (it was not removing the local definition
instead of setting it).
This commit is contained in:
Brad King 2009-09-10 16:59:36 -04:00
parent 6097c04c4d
commit afbe088309
3 changed files with 2 additions and 23 deletions

View File

@ -1720,23 +1720,6 @@ void cmMakefile::AddDefinition(const char* name, bool value)
#endif
}
void cmMakefile::AddCacheDefinition(const char* name,
bool value,
const char* doc)
{
bool val = value;
cmCacheManager::CacheIterator it =
this->GetCacheManager()->GetCacheIterator(name);
if(!it.IsAtEnd() && (it.GetType() == cmCacheManager::UNINITIALIZED) &&
it.Initialized())
{
val = it.GetValueAsBool();
}
this->GetCacheManager()->AddCacheEntry(name, val, doc);
this->AddDefinition(name, val);
}
void cmMakefile::RemoveDefinition(const char* name)
{
this->Internal->VarStack.top().Set(name, 0);

View File

@ -294,8 +294,6 @@ public:
* Add bool variable definition to the build.
*/
void AddDefinition(const char* name, bool);
///! Add a definition to this makefile and the global cmake cache.
void AddCacheDefinition(const char* name, bool, const char* doc);
/**
* Remove a variable definition from the build. This is not valid

View File

@ -69,9 +69,7 @@ bool cmOptionCommand
{
initialValue = args[2];
}
this->Makefile->AddCacheDefinition(args[0].c_str(),
cmSystemTools::IsOn(initialValue.c_str()),
args[1].c_str());
this->Makefile->AddCacheDefinition(args[0].c_str(), initialValue.c_str(),
args[1].c_str(), cmCacheManager::BOOL);
return true;
}