summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalVisualStudio10Generator.cxx
diff options
context:
space:
mode:
authorDavid Cole <david.cole@kitware.com>2011-01-21 18:18:06 (GMT)
committerDavid Cole <david.cole@kitware.com>2011-01-21 18:18:06 (GMT)
commit2ca116189f26e758a47d4737afe21853d0676235 (patch)
tree722a85eb78762fac1d14414fa4728d8af19083ff /Source/cmGlobalVisualStudio10Generator.cxx
parent73827b92059a3548406c35978d3ec05a456aced4 (diff)
downloadCMake-2ca116189f26e758a47d4737afe21853d0676235.zip
CMake-2ca116189f26e758a47d4737afe21853d0676235.tar.gz
CMake-2ca116189f26e758a47d4737afe21853d0676235.tar.bz2
VS10: Enable using devenv as CMAKE_MAKE_PROGRAM (#11459)
If CMAKE_MAKE_PROGRAM is set to devenv, then GenerateBuildCommand uses it just like we used to do for VS8 and VS9. Otherwise, it still uses MSBuild. This will let us run the CMake test suite through devenv and make sure all the solution and project files we generate are load-able and build-able by the VS 2010 IDE, not just MSBuild. Inspired-By: Robert Lenhardt
Diffstat (limited to 'Source/cmGlobalVisualStudio10Generator.cxx')
-rw-r--r--Source/cmGlobalVisualStudio10Generator.cxx15
1 files changed, 10 insertions, 5 deletions
diff --git a/Source/cmGlobalVisualStudio10Generator.cxx b/Source/cmGlobalVisualStudio10Generator.cxx
index 0b939af..6c3c1ed 100644
--- a/Source/cmGlobalVisualStudio10Generator.cxx
+++ b/Source/cmGlobalVisualStudio10Generator.cxx
@@ -114,18 +114,23 @@ std::string cmGlobalVisualStudio10Generator
::GenerateBuildCommand(const char* makeProgram,
const char *projectName,
const char* additionalOptions, const char *targetName,
- const char* config, bool ignoreErrors, bool)
+ const char* config, bool ignoreErrors, bool fast)
{
- // Ingoring errors is not implemented in visual studio 6
- (void) ignoreErrors;
-
-
// now build the test
std::string makeCommand
= cmSystemTools::ConvertToOutputPath(makeProgram);
std::string lowerCaseCommand = makeCommand;
cmSystemTools::LowerCase(lowerCaseCommand);
+ // If makeProgram is devenv, parent class knows how to generate command:
+ if (lowerCaseCommand.find("devenv") != std::string::npos)
+ {
+ return cmGlobalVisualStudio7Generator::GenerateBuildCommand(makeProgram,
+ projectName, additionalOptions, targetName, config, ignoreErrors, fast);
+ }
+
+ // Otherwise, assume MSBuild command line, and construct accordingly.
+
// if there are spaces in the makeCommand, assume a full path
// and convert it to a path with no spaces in it as the
// RunSingleCommand does not like spaces