As in the Eclipse generator: don't insert the edit_cache target if it is ccmake, since this doesn't work in the output tab of the IDE

This commit is contained in:
Alexander Neundorf 2009-09-10 13:44:02 -04:00
parent c57fb18920
commit 10f39d8c80

@ -338,14 +338,31 @@ void cmExtraCodeBlocksGenerator
switch(ti->second.GetType()) switch(ti->second.GetType())
{ {
case cmTarget::GLOBAL_TARGET: case cmTarget::GLOBAL_TARGET:
{
bool insertTarget = false;
// Only add the global targets from CMAKE_BINARY_DIR, // Only add the global targets from CMAKE_BINARY_DIR,
// not from the subdirs // not from the subdirs
if (strcmp(makefile->GetStartOutputDirectory(), if (strcmp(makefile->GetStartOutputDirectory(),
makefile->GetHomeOutputDirectory())==0) makefile->GetHomeOutputDirectory())==0)
{ {
this->AppendTarget(fout, ti->first.c_str(), 0, insertTarget = true;
make.c_str(), makefile, compiler.c_str()); // only add the "edit_cache" target if it's not ccmake, because
// this will not work within the IDE
if (ti->first == "edit_cache")
{
if (strstr(makefile->GetRequiredDefinition
("CMAKE_EDIT_COMMAND"), "ccmake")!=NULL)
{
insertTarget = false;
}
}
} }
if (insertTarget)
{
this->AppendTarget(fout, ti->first.c_str(), 0,
make.c_str(), makefile, compiler.c_str());
}
}
break; break;
case cmTarget::UTILITY: case cmTarget::UTILITY:
// Add all utility targets, except the Nightly/Continuous/ // Add all utility targets, except the Nightly/Continuous/