diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2009-06-25 20:41:57 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2009-06-25 20:41:57 (GMT) |
commit | 7491f52992450bc6853c44c28db646c6176cbfd0 (patch) | |
tree | 3ec314d959220760927dc3741e8e51bc64267471 /Source/cmLocalVisualStudio10Generator.cxx | |
parent | 953439f738e98b463e2583cdbe1c756a7045eacb (diff) | |
download | CMake-7491f52992450bc6853c44c28db646c6176cbfd0.zip CMake-7491f52992450bc6853c44c28db646c6176cbfd0.tar.gz CMake-7491f52992450bc6853c44c28db646c6176cbfd0.tar.bz2 |
ENH: first pass at VS 10, can bootstrap CMake, but many tests still fail
Diffstat (limited to 'Source/cmLocalVisualStudio10Generator.cxx')
-rw-r--r-- | Source/cmLocalVisualStudio10Generator.cxx | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/Source/cmLocalVisualStudio10Generator.cxx b/Source/cmLocalVisualStudio10Generator.cxx new file mode 100644 index 0000000..cdcf7e1 --- /dev/null +++ b/Source/cmLocalVisualStudio10Generator.cxx @@ -0,0 +1,64 @@ +/*========================================================================= + + Program: CMake - Cross-Platform Makefile Generator + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. + See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ +#include "cmLocalVisualStudio10Generator.h" +#include "cmTarget.h" +#include "cmMakefile.h" +#include "cmVisualStudio10TargetGenerator.h" +#include "cmGlobalVisualStudio7Generator.h" + +//---------------------------------------------------------------------------- +cmLocalVisualStudio10Generator::cmLocalVisualStudio10Generator() +{ + +} + +cmLocalVisualStudio10Generator::~cmLocalVisualStudio10Generator() +{ +} + +void cmLocalVisualStudio10Generator::Generate() +{ + + cmTargets &tgts = this->Makefile->GetTargets(); + // Create the regeneration custom rule. + if(!this->Makefile->IsOn("CMAKE_SUPPRESS_REGENERATION")) + { + // Create a rule to regenerate the build system when the target + // specification source changes. + if(cmSourceFile* sf = this->CreateVCProjBuildRule()) + { + // Add the rule to targets that need it. + for(cmTargets::iterator l = tgts.begin(); l != tgts.end(); ++l) + { + if(l->first != CMAKE_CHECK_BUILD_SYSTEM_TARGET) + { + l->second.AddSourceFile(sf); + } + } + } + } + + for(cmTargets::iterator l = tgts.begin(); l != tgts.end(); ++l) + { + cmVisualStudio10TargetGenerator tg(&l->second, + (cmGlobalVisualStudio7Generator*) + this->GetGlobalGenerator()); + tg.Generate(); + } + this->WriteStampFiles(); +} + |