summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalMinGWMakefileGenerator.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmGlobalMinGWMakefileGenerator.cxx')
-rw-r--r--Source/cmGlobalMinGWMakefileGenerator.cxx21
1 files changed, 9 insertions, 12 deletions
diff --git a/Source/cmGlobalMinGWMakefileGenerator.cxx b/Source/cmGlobalMinGWMakefileGenerator.cxx
index 1472458..8af608b 100644
--- a/Source/cmGlobalMinGWMakefileGenerator.cxx
+++ b/Source/cmGlobalMinGWMakefileGenerator.cxx
@@ -32,22 +32,19 @@ void cmGlobalMinGWMakefileGenerator::EnableLanguage(std::vector<std::string>cons
std::string makeProgram = mf->GetRequiredDefinition("CMAKE_MAKE_PROGRAM");
std::vector<std::string> locations;
locations.push_back(cmSystemTools::GetProgramPath(makeProgram.c_str()));
- locations.push_back("c:/mingw/bin");
locations.push_back("/mingw/bin");
+ locations.push_back("c:/mingw/bin");
+ std::string tgcc = cmSystemTools::FindProgram("gcc", locations);
std::string gcc = "gcc.exe";
+ if(tgcc.size())
+ {
+ gcc = tgcc;
+ }
+ std::string tgxx = cmSystemTools::FindProgram("g++", locations);
std::string gxx = "g++.exe";
- std::string slash = "/";
- for(std::vector<std::string>::iterator i = locations.begin();
- i != locations.end(); ++i)
+ if(tgxx.size())
{
- std::string tgcc = *i + slash + gcc;
- std::string tgxx = *i + slash + gxx;
- if(cmSystemTools::FileExists(tgcc.c_str()))
- {
- gcc = tgcc;
- gxx = tgxx;
- break;
- }
+ gxx = tgxx;
}
mf->AddDefinition("CMAKE_GENERATOR_CC", gcc.c_str());
mf->AddDefinition("CMAKE_GENERATOR_CXX", gxx.c_str());