summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Modules/CMakeVS10FindMake.cmake54
-rw-r--r--Modules/CMakeVS11FindMake.cmake53
-rw-r--r--Modules/CMakeVS12FindMake.cmake27
-rw-r--r--Modules/CMakeVS6FindMake.cmake25
-rw-r--r--Modules/CMakeVS71FindMake.cmake26
-rw-r--r--Modules/CMakeVS7FindMake.cmake25
-rw-r--r--Modules/CMakeVS8FindMake.cmake34
-rw-r--r--Modules/CMakeVS9FindMake.cmake39
-rw-r--r--Source/cmGlobalGenerator.h2
-rw-r--r--Source/cmGlobalVisualStudio10Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio10Generator.h1
-rw-r--r--Source/cmGlobalVisualStudio11Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio12Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio6Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio6Generator.h1
-rw-r--r--Source/cmGlobalVisualStudio71Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio7Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio7Generator.h1
-rw-r--r--Source/cmGlobalVisualStudio8Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudio9Generator.cxx1
-rw-r--r--Source/cmGlobalVisualStudioGenerator.cxx13
-rw-r--r--Source/cmGlobalVisualStudioGenerator.h3
22 files changed, 20 insertions, 292 deletions
diff --git a/Modules/CMakeVS10FindMake.cmake b/Modules/CMakeVS10FindMake.cmake
deleted file mode 100644
index 189b626984..0000000000
--- a/Modules/CMakeVS10FindMake.cmake
+++ /dev/null
@@ -1,54 +0,0 @@
-
-#=============================================================================
-# Copyright 2007-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-# Look for devenv as a build program. We need to use this to support
-# Intel Fortran integration into VS. MSBuild can not be used for that case
-# since Intel Fortran uses the older devenv file format.
-find_program(CMAKE_MAKE_PROGRAM
- NAMES devenv
- HINTS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0\\Setup\\VS;EnvironmentDirectory]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0\\Setup;Dbghelp_path]
- "$ENV{ProgramFiles}/Microsoft Visual Studio 10.0/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio10.0/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio 10/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio10/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 10.0/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio10.0/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 10/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio10/Common7/IDE"
- "/Program Files/Microsoft Visual Studio 10.0/Common7/IDE/"
- "/Program Files/Microsoft Visual Studio 10/Common7/IDE/"
- )
-
-# if devenv is not found, then use MSBuild.
-# it is expected that if devenv is not found, then we are
-# dealing with Visual Studio Express. VCExpress has random
-# failures when being run as a command line build tool which
-# causes the compiler checks and try-compile stuff to fail. MSbuild
-# is a better choice for this. However, VCExpress does not support
-# cross compiling needed for Win CE.
-if(NOT CMAKE_CROSSCOMPILING)
- find_program(CMAKE_MAKE_PROGRAM
- NAMES MSBuild
- HINTS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0\\Setup\\VS;ProductDir]
- "$ENV{SYSTEMROOT}/Microsoft.NET/Framework/[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0;CLR Version]/"
- "c:/WINDOWS/Microsoft.NET/Framework/[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0;CLR Version]/"
- "$ENV{SYSTEMROOT}/Microsoft.NET/Framework/[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\10.0;CLR Version]/")
-endif()
-
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC10 1)
-set(MSVC_VERSION 1600)
diff --git a/Modules/CMakeVS11FindMake.cmake b/Modules/CMakeVS11FindMake.cmake
deleted file mode 100644
index 2df015d40d..0000000000
--- a/Modules/CMakeVS11FindMake.cmake
+++ /dev/null
@@ -1,53 +0,0 @@
-
-#=============================================================================
-# Copyright 2007-2011 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-# Look for devenv as a build program. We need to use this to support
-# Intel Fortran integration into VS. MSBuild can not be used for that case
-# since Intel Fortran uses the older devenv file format.
-find_program(CMAKE_MAKE_PROGRAM
- NAMES devenv
- HINTS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0\\Setup\\VS;EnvironmentDirectory]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0\\Setup;Dbghelp_path]
- "$ENV{ProgramFiles}/Microsoft Visual Studio 11.0/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio11.0/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio 11/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio11/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 11.0/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio11.0/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 11/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio11/Common7/IDE"
- "/Program Files/Microsoft Visual Studio 11.0/Common7/IDE/"
- "/Program Files/Microsoft Visual Studio 11/Common7/IDE/"
- )
-
-# if devenv is not found, then use MSBuild.
-# it is expected that if devenv is not found, then we are
-# dealing with Visual Studio Express.
-if(NOT CMAKE_CROSSCOMPILING)
- set(_FDIR "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VC7;FrameworkDir32]")
- set(_FVER "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VC7;FrameworkVer32]")
- find_program(CMAKE_MAKE_PROGRAM
- NAMES MSBuild
- HINTS
- ${_FDIR}/${_FVER}
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0\\Setup\\VS;ProductDir]
- "$ENV{SYSTEMROOT}/Microsoft.NET/Framework/[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0;CLR Version]/"
- "c:/WINDOWS/Microsoft.NET/Framework/[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\11.0;CLR Version]/"
- "$ENV{SYSTEMROOT}/Microsoft.NET/Framework/[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\11.0;CLR Version]/")
-endif()
-
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC11 1)
-set(MSVC_VERSION 1700)
diff --git a/Modules/CMakeVS12FindMake.cmake b/Modules/CMakeVS12FindMake.cmake
deleted file mode 100644
index 338d9a2364..0000000000
--- a/Modules/CMakeVS12FindMake.cmake
+++ /dev/null
@@ -1,27 +0,0 @@
-
-#=============================================================================
-# Copyright 2007-2013 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-# Always use MSBuild because:
-# - devenv treats command-line builds as recently-loaded projects in the IDE
-# - devenv does not appear to support non-standard platform toolsets
-# If we need devenv for Intel Fortran in the future we should add
-# a special case when Fortran is enabled.
-find_program(CMAKE_MAKE_PROGRAM
- NAMES MSBuild
- HINTS "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MSBuild\\ToolsVersions\\12.0;MSBuildToolsPath]"
- )
-
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC12 1)
-set(MSVC_VERSION 1800)
diff --git a/Modules/CMakeVS6FindMake.cmake b/Modules/CMakeVS6FindMake.cmake
deleted file mode 100644
index 40bf5b1720..0000000000
--- a/Modules/CMakeVS6FindMake.cmake
+++ /dev/null
@@ -1,25 +0,0 @@
-
-#=============================================================================
-# Copyright 2002-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-find_program(CMAKE_MAKE_PROGRAM
- NAMES msdev
- PATHS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\6.0\\Setup;VsCommonDir]/MSDev98/Bin
- "c:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin"
- "c:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin"
- "/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin"
- )
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC60 1)
-set(MSVC_VERSION 1200)
diff --git a/Modules/CMakeVS71FindMake.cmake b/Modules/CMakeVS71FindMake.cmake
deleted file mode 100644
index 945c3faf89..0000000000
--- a/Modules/CMakeVS71FindMake.cmake
+++ /dev/null
@@ -1,26 +0,0 @@
-
-#=============================================================================
-# Copyright 2003-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-find_program(CMAKE_MAKE_PROGRAM
- NAMES devenv
- PATHS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\7.1\\Setup\\VS;EnvironmentDirectory]
- "$ENV{ProgramFiles}/Microsoft Visual Studio .NET/Common7/IDE"
- "c:/Program Files/Microsoft Visual Studio .NET/Common7/IDE"
- "c:/Program Files/Microsoft Visual Studio.NET/Common7/IDE"
- "/Program Files/Microsoft Visual Studio .NET/Common7/IDE/"
- )
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC71 1)
-set(MSVC_VERSION 1310)
diff --git a/Modules/CMakeVS7FindMake.cmake b/Modules/CMakeVS7FindMake.cmake
deleted file mode 100644
index 218c5f2dfd..0000000000
--- a/Modules/CMakeVS7FindMake.cmake
+++ /dev/null
@@ -1,25 +0,0 @@
-
-#=============================================================================
-# Copyright 2002-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-find_program(CMAKE_MAKE_PROGRAM
- NAMES devenv
- PATHS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\7.0\\Setup\\VS;EnvironmentDirectory]
- "c:/Program Files/Microsoft Visual Studio .NET/Common7/IDE"
- "c:/Program Files/Microsoft Visual Studio.NET/Common7/IDE"
- "/Program Files/Microsoft Visual Studio .NET/Common7/IDE/"
- )
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC70 1)
-set(MSVC_VERSION 1300)
diff --git a/Modules/CMakeVS8FindMake.cmake b/Modules/CMakeVS8FindMake.cmake
deleted file mode 100644
index 31df0268d4..0000000000
--- a/Modules/CMakeVS8FindMake.cmake
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#=============================================================================
-# Copyright 2004-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-# VCExpress does not support cross compiling, which is necessary for Win CE
-set( _CMAKE_MAKE_PROGRAM_NAMES devenv)
-if(NOT CMAKE_CROSSCOMPILING)
- set( _CMAKE_MAKE_PROGRAM_NAMES ${_CMAKE_MAKE_PROGRAM_NAMES} VCExpress)
-endif()
-
-find_program(CMAKE_MAKE_PROGRAM
- NAMES ${_CMAKE_MAKE_PROGRAM_NAMES}
- HINTS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup\\VS;EnvironmentDirectory]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup;Dbghelp_path]
- "$ENV{ProgramFiles}/Microsoft Visual Studio 8/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio8/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 8/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio8/Common7/IDE"
- "/Program Files/Microsoft Visual Studio 8/Common7/IDE/"
- )
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC80 1)
-set(MSVC_VERSION 1400)
diff --git a/Modules/CMakeVS9FindMake.cmake b/Modules/CMakeVS9FindMake.cmake
deleted file mode 100644
index 35e9f981af..0000000000
--- a/Modules/CMakeVS9FindMake.cmake
+++ /dev/null
@@ -1,39 +0,0 @@
-
-#=============================================================================
-# Copyright 2007-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-# VCExpress does not support cross compiling, which is necessary for Win CE
-set( _CMAKE_MAKE_PROGRAM_NAMES devenv)
-if(NOT CMAKE_CROSSCOMPILING)
- set( _CMAKE_MAKE_PROGRAM_NAMES ${_CMAKE_MAKE_PROGRAM_NAMES} VCExpress)
-endif()
-
-find_program(CMAKE_MAKE_PROGRAM
- NAMES ${_CMAKE_MAKE_PROGRAM_NAMES}
- HINTS
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\9.0\\Setup\\VS;EnvironmentDirectory]
- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\9.0\\Setup;Dbghelp_path]
- "$ENV{ProgramFiles}/Microsoft Visual Studio 9.0/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio9.0/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio 9/Common7/IDE"
- "$ENV{ProgramFiles}/Microsoft Visual Studio9/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 9.0/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio9.0/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 9/Common7/IDE"
- "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio9/Common7/IDE"
- "/Program Files/Microsoft Visual Studio 9.0/Common7/IDE/"
- "/Program Files/Microsoft Visual Studio 9/Common7/IDE/"
- )
-mark_as_advanced(CMAKE_MAKE_PROGRAM)
-set(MSVC90 1)
-set(MSVC_VERSION 1500)
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h
index 74d88f3ada..6e93609165 100644
--- a/Source/cmGlobalGenerator.h
+++ b/Source/cmGlobalGenerator.h
@@ -203,7 +203,7 @@ public:
/*
* Determine what program to use for building the project.
*/
- void FindMakeProgram(cmMakefile*);
+ virtual void FindMakeProgram(cmMakefile*);
///! Find a target by name by searching the local generators.
cmTarget* FindTarget(const char* project, const char* name,
diff --git a/Source/cmGlobalVisualStudio10Generator.cxx b/Source/cmGlobalVisualStudio10Generator.cxx
index 741d591773..29401c6bff 100644
--- a/Source/cmGlobalVisualStudio10Generator.cxx
+++ b/Source/cmGlobalVisualStudio10Generator.cxx
@@ -92,7 +92,6 @@ cmGlobalVisualStudio10Generator::cmGlobalVisualStudio10Generator(
: cmGlobalVisualStudio8Generator(name, platformName,
additionalPlatformDefinition)
{
- this->FindMakeProgramFile = "CMakeVS10FindMake.cmake";
std::string vc10Express;
this->ExpressEdition = cmSystemTools::ReadRegistryValue(
"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\10.0\\Setup\\VC;"
diff --git a/Source/cmGlobalVisualStudio10Generator.h b/Source/cmGlobalVisualStudio10Generator.h
index ad0aa6d1be..66440ea664 100644
--- a/Source/cmGlobalVisualStudio10Generator.h
+++ b/Source/cmGlobalVisualStudio10Generator.h
@@ -118,5 +118,6 @@ private:
bool MSBuildCommandInitialized;
virtual std::string FindMSBuildCommand();
virtual std::string FindDevEnvCommand();
+ virtual std::string GetVSMakeProgram() { return this->GetMSBuildCommand(); }
};
#endif
diff --git a/Source/cmGlobalVisualStudio11Generator.cxx b/Source/cmGlobalVisualStudio11Generator.cxx
index d968c6de70..f1d7312484 100644
--- a/Source/cmGlobalVisualStudio11Generator.cxx
+++ b/Source/cmGlobalVisualStudio11Generator.cxx
@@ -112,7 +112,6 @@ cmGlobalVisualStudio11Generator::cmGlobalVisualStudio11Generator(
: cmGlobalVisualStudio10Generator(name, platformName,
additionalPlatformDefinition)
{
- this->FindMakeProgramFile = "CMakeVS11FindMake.cmake";
std::string vc11Express;
this->ExpressEdition = cmSystemTools::ReadRegistryValue(
"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\11.0\\Setup\\VC;"
diff --git a/Source/cmGlobalVisualStudio12Generator.cxx b/Source/cmGlobalVisualStudio12Generator.cxx
index f3806df1b5..edd5567309 100644
--- a/Source/cmGlobalVisualStudio12Generator.cxx
+++ b/Source/cmGlobalVisualStudio12Generator.cxx
@@ -87,7 +87,6 @@ cmGlobalVisualStudio12Generator::cmGlobalVisualStudio12Generator(
: cmGlobalVisualStudio11Generator(name, platformName,
additionalPlatformDefinition)
{
- this->FindMakeProgramFile = "CMakeVS12FindMake.cmake";
std::string vc12Express;
this->ExpressEdition = cmSystemTools::ReadRegistryValue(
"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\12.0\\Setup\\VC;"
diff --git a/Source/cmGlobalVisualStudio6Generator.cxx b/Source/cmGlobalVisualStudio6Generator.cxx
index 08ea24917b..8651da7b57 100644
--- a/Source/cmGlobalVisualStudio6Generator.cxx
+++ b/Source/cmGlobalVisualStudio6Generator.cxx
@@ -32,7 +32,6 @@ std::string GetVS6TargetName(const std::string& targetName)
cmGlobalVisualStudio6Generator::cmGlobalVisualStudio6Generator()
{
- this->FindMakeProgramFile = "CMakeVS6FindMake.cmake";
this->MSDevCommandInitialized = false;
}
diff --git a/Source/cmGlobalVisualStudio6Generator.h b/Source/cmGlobalVisualStudio6Generator.h
index 24f46b3904..8fe5792c9f 100644
--- a/Source/cmGlobalVisualStudio6Generator.h
+++ b/Source/cmGlobalVisualStudio6Generator.h
@@ -92,6 +92,7 @@ public:
protected:
virtual const char* GetIDEVersion() { return "6.0"; }
private:
+ virtual std::string GetVSMakeProgram() { return this->GetMSDevCommand(); }
void GenerateConfigurations(cmMakefile* mf);
void WriteDSWFile(std::ostream& fout);
void WriteDSWHeader(std::ostream& fout);
diff --git a/Source/cmGlobalVisualStudio71Generator.cxx b/Source/cmGlobalVisualStudio71Generator.cxx
index 2643719b2a..61d3c4c932 100644
--- a/Source/cmGlobalVisualStudio71Generator.cxx
+++ b/Source/cmGlobalVisualStudio71Generator.cxx
@@ -19,7 +19,6 @@
cmGlobalVisualStudio71Generator::cmGlobalVisualStudio71Generator(
const char* platformName) : cmGlobalVisualStudio7Generator(platformName)
{
- this->FindMakeProgramFile = "CMakeVS71FindMake.cmake";
this->ProjectConfigurationSectionName = "ProjectConfiguration";
}
diff --git a/Source/cmGlobalVisualStudio7Generator.cxx b/Source/cmGlobalVisualStudio7Generator.cxx
index 08eff31c4c..3d939f353a 100644
--- a/Source/cmGlobalVisualStudio7Generator.cxx
+++ b/Source/cmGlobalVisualStudio7Generator.cxx
@@ -20,7 +20,6 @@
cmGlobalVisualStudio7Generator::cmGlobalVisualStudio7Generator(
const char* platformName)
{
- this->FindMakeProgramFile = "CMakeVS7FindMake.cmake";
this->IntelProjectVersion = 0;
this->DevEnvCommandInitialized = false;
diff --git a/Source/cmGlobalVisualStudio7Generator.h b/Source/cmGlobalVisualStudio7Generator.h
index d272fa083d..c7b008190b 100644
--- a/Source/cmGlobalVisualStudio7Generator.h
+++ b/Source/cmGlobalVisualStudio7Generator.h
@@ -173,6 +173,7 @@ private:
char* IntelProjectVersion;
std::string DevEnvCommand;
bool DevEnvCommandInitialized;
+ virtual std::string GetVSMakeProgram() { return this->GetDevEnvCommand(); }
};
#define CMAKE_CHECK_BUILD_SYSTEM_TARGET "ZERO_CHECK"
diff --git a/Source/cmGlobalVisualStudio8Generator.cxx b/Source/cmGlobalVisualStudio8Generator.cxx
index 949dd1bbe9..69b0a7af72 100644
--- a/Source/cmGlobalVisualStudio8Generator.cxx
+++ b/Source/cmGlobalVisualStudio8Generator.cxx
@@ -94,7 +94,6 @@ cmGlobalVisualStudio8Generator::cmGlobalVisualStudio8Generator(
const char* additionalPlatformDefinition)
: cmGlobalVisualStudio71Generator(platformName)
{
- this->FindMakeProgramFile = "CMakeVS8FindMake.cmake";
this->ProjectConfigurationSectionName = "ProjectConfigurationPlatforms";
this->Name = name;
diff --git a/Source/cmGlobalVisualStudio9Generator.cxx b/Source/cmGlobalVisualStudio9Generator.cxx
index aadf982511..ccc27ad6fb 100644
--- a/Source/cmGlobalVisualStudio9Generator.cxx
+++ b/Source/cmGlobalVisualStudio9Generator.cxx
@@ -101,7 +101,6 @@ cmGlobalVisualStudio9Generator::cmGlobalVisualStudio9Generator(
: cmGlobalVisualStudio8Generator(name, platformName,
additionalPlatformDefinition)
{
- this->FindMakeProgramFile = "CMakeVS9FindMake.cmake";
}
//----------------------------------------------------------------------------
diff --git a/Source/cmGlobalVisualStudioGenerator.cxx b/Source/cmGlobalVisualStudioGenerator.cxx
index af80070c34..7afcfa7be8 100644
--- a/Source/cmGlobalVisualStudioGenerator.cxx
+++ b/Source/cmGlobalVisualStudioGenerator.cxx
@@ -500,6 +500,19 @@ void cmGlobalVisualStudioGenerator::ComputeVSTargetDepends(cmTarget& target)
}
//----------------------------------------------------------------------------
+void cmGlobalVisualStudioGenerator::FindMakeProgram(cmMakefile* mf)
+{
+ // Visual Studio generators know how to lookup their build tool
+ // directly instead of needing a helper module to do it, so we
+ // do not actually need to put CMAKE_MAKE_PROGRAM into the cache.
+ if(cmSystemTools::IsOff(mf->GetDefinition("CMAKE_MAKE_PROGRAM")))
+ {
+ mf->AddDefinition("CMAKE_MAKE_PROGRAM",
+ this->GetVSMakeProgram().c_str());
+ }
+}
+
+//----------------------------------------------------------------------------
void cmGlobalVisualStudioGenerator::AddPlatformDefinitions(cmMakefile* mf)
{
if(this->AdditionalPlatformDefinition)
diff --git a/Source/cmGlobalVisualStudioGenerator.h b/Source/cmGlobalVisualStudioGenerator.h
index ce03a0ee2a..da2d021c33 100644
--- a/Source/cmGlobalVisualStudioGenerator.h
+++ b/Source/cmGlobalVisualStudioGenerator.h
@@ -82,6 +82,8 @@ public:
};
class OrderedTargetDependSet;
+ virtual void FindMakeProgram(cmMakefile*);
+
protected:
// Does this VS version link targets to each other if there are
// dependencies in the SLN file? This was done for VS versions
@@ -107,6 +109,7 @@ protected:
const char* AdditionalPlatformDefinition;
private:
+ virtual std::string GetVSMakeProgram() = 0;
void PrintCompilerAdvice(std::ostream&, std::string, const char*) {}
void ComputeTargetObjects(cmGeneratorTarget* gt) const;