Fix option() interpretation of non-boolean values

The commit "Remove barely-used cmMakefile::AddCacheDefinition" broke
option() calls that pass a non-boolean default value.  We restore the
old behavior by always coercing the value to 'ON' or 'OFF'.
This commit is contained in:
Brad King 2009-09-11 10:03:59 -04:00
parent b41a548d86
commit 7a409fd573
1 changed files with 2 additions and 1 deletions

View File

@ -70,7 +70,8 @@ bool cmOptionCommand
{
initialValue = args[2];
}
this->Makefile->AddCacheDefinition(args[0].c_str(), initialValue.c_str(),
bool init = cmSystemTools::IsOn(initialValue.c_str());
this->Makefile->AddCacheDefinition(args[0].c_str(), init? "ON":"OFF",
args[1].c_str(), cmCacheManager::BOOL);
return true;
}