summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudio10Generator.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2009-06-25 20:41:57 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2009-06-25 20:41:57 (GMT)
commit7491f52992450bc6853c44c28db646c6176cbfd0 (patch)
tree3ec314d959220760927dc3741e8e51bc64267471 /Source/cmLocalVisualStudio10Generator.cxx
parent953439f738e98b463e2583cdbe1c756a7045eacb (diff)
downloadCMake-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.cxx64
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();
+}
+