diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2004-03-09 16:28:44 -0500 |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2004-03-09 16:28:44 -0500 |
commit | ddb815c12542f80f42562877298a73fab39bb4ca (patch) | |
tree | 825a90988e4710274a656b8f9bf7f32b7d0827fa /Source/cmGlobalVisualStudio6Generator.cxx | |
parent | bf699505bc7fc378abf07ec4dfa0f0cc4fb89686 (diff) | |
download | cmake-ddb815c12542f80f42562877298a73fab39bb4ca.tar.gz |
ENH: add new subdirectory exclude from top option
Diffstat (limited to 'Source/cmGlobalVisualStudio6Generator.cxx')
-rw-r--r-- | Source/cmGlobalVisualStudio6Generator.cxx | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/Source/cmGlobalVisualStudio6Generator.cxx b/Source/cmGlobalVisualStudio6Generator.cxx index 97789ea11a..13bfad6124 100644 --- a/Source/cmGlobalVisualStudio6Generator.cxx +++ b/Source/cmGlobalVisualStudio6Generator.cxx @@ -201,8 +201,10 @@ void cmGlobalVisualStudio6Generator::CollectSubprojects() } } + // Write a DSW file to the stream void cmGlobalVisualStudio6Generator::WriteDSWFile(std::ostream& fout, + cmLocalGenerator* root, std::vector<cmLocalGenerator*>& generators) { // Write out the header for a DSW file @@ -215,8 +217,13 @@ void cmGlobalVisualStudio6Generator::WriteDSWFile(std::ostream& fout, unsigned int i; bool doneAllBuild = false; bool doneRunTests = false; + for(i = 0; i < generators.size(); ++i) { + if(this->IsExcluded(root, generators[i])) + { + continue; + } cmMakefile* mf = generators[i]->GetMakefile(); // Get the source directory from the makefile @@ -324,15 +331,16 @@ void cmGlobalVisualStudio6Generator::WriteDSWFile(std::ostream& fout, this->WriteDSWFooter(fout); } -void cmGlobalVisualStudio6Generator::OutputDSWFile(std::vector<cmLocalGenerator*>& generators) +void cmGlobalVisualStudio6Generator::OutputDSWFile(cmLocalGenerator* root, + std::vector<cmLocalGenerator*>& generators) { if(generators.size() == 0) { return; } - std::string fname = generators[0]->GetMakefile()->GetStartOutputDirectory(); + std::string fname = root->GetMakefile()->GetStartOutputDirectory(); fname += "/"; - fname += generators[0]->GetMakefile()->GetProjectName(); + fname += root->GetMakefile()->GetProjectName(); fname += ".dsw"; std::ofstream fout(fname.c_str()); if(!fout) @@ -341,7 +349,7 @@ void cmGlobalVisualStudio6Generator::OutputDSWFile(std::vector<cmLocalGenerator* fname.c_str()); return; } - this->WriteDSWFile(fout, generators); + this->WriteDSWFile(fout, root, generators); } // output the DSW file @@ -350,7 +358,7 @@ void cmGlobalVisualStudio6Generator::OutputDSWFile() std::map<cmStdString, std::vector<cmLocalGenerator*> >::iterator it; for(it = m_SubProjectMap.begin(); it!= m_SubProjectMap.end(); ++it) { - this->OutputDSWFile(it->second); + this->OutputDSWFile(it->second[0], it->second); } } |