|
|
@ -537,13 +537,16 @@ void cmGlobalVisualStudio7Generator |
|
|
|
const cmCustomCommandLines& cmds = cc.GetCommandLines(); |
|
|
|
std::string name = cmds[0][0]; |
|
|
|
this->WriteProjectConfigurations(fout, name.c_str(), |
|
|
|
l->second.GetType()); |
|
|
|
true); |
|
|
|
} |
|
|
|
else if ((l->second.GetType() != cmTarget::INSTALL_FILES) |
|
|
|
&& (l->second.GetType() != cmTarget::INSTALL_PROGRAMS)) |
|
|
|
{ |
|
|
|
{ |
|
|
|
bool partOfDefaultBuild = this->IsPartOfDefaultBuild( |
|
|
|
root->GetMakefile()->GetProjectName(), |
|
|
|
&l->second); |
|
|
|
this->WriteProjectConfigurations(fout, si->c_str(), |
|
|
|
l->second.GetType()); |
|
|
|
partOfDefaultBuild); |
|
|
|
++si; |
|
|
|
} |
|
|
|
} |
|
|
@ -667,7 +670,7 @@ cmGlobalVisualStudio7Generator |
|
|
|
// executables to the libraries it uses are also done here
|
|
|
|
void cmGlobalVisualStudio7Generator |
|
|
|
::WriteProjectConfigurations(std::ostream& fout, const char* name, |
|
|
|
int targetType) |
|
|
|
bool partOfDefaultBuild) |
|
|
|
{ |
|
|
|
std::string guid = this->GetGUID(name); |
|
|
|
for(std::vector<std::string>::iterator i = this->Configurations.begin(); |
|
|
@ -675,7 +678,7 @@ void cmGlobalVisualStudio7Generator |
|
|
|
{ |
|
|
|
fout << "\t\t{" << guid << "}." << *i |
|
|
|
<< ".ActiveCfg = " << *i << "|Win32\n"; |
|
|
|
if(targetType != cmTarget::GLOBAL_TARGET) |
|
|
|
if(partOfDefaultBuild) |
|
|
|
{ |
|
|
|
fout << "\t\t{" << guid << "}." << *i |
|
|
|
<< ".Build.0 = " << *i << "|Win32\n"; |
|
|
@ -799,3 +802,25 @@ cmGlobalVisualStudio7Generator |
|
|
|
dir += suffix; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
bool cmGlobalVisualStudio7Generator::IsPartOfDefaultBuild(const char* project, |
|
|
|
cmTarget* target) |
|
|
|
{ |
|
|
|
if(target->GetPropertyAsBool("EXCLUDE_FROM_DEFAULT_BUILD")) |
|
|
|
{ |
|
|
|
return false; |
|
|
|
} |
|
|
|
// if it is a utilitiy target then only make it part of the
|
|
|
|
// default build if another target depends on it
|
|
|
|
int type = target->GetType(); |
|
|
|
if (type == cmTarget::GLOBAL_TARGET) |
|
|
|
{ |
|
|
|
return false; |
|
|
|
} |
|
|
|
if(type == cmTarget::UTILITY) |
|
|
|
{ |
|
|
|
return this->IsDependedOn(project, target); |
|
|
|
} |
|
|
|
// default is to be part of the build
|
|
|
|
return true; |
|
|
|
} |