Commit eaa9f2f8 authored by Brad King's avatar Brad King
Browse files

VS: Refactor internal generator factory logic

Consume the space before the platform name as soon as possible
instead of including it in the comparison.
parent 2b3e7b6f
...@@ -48,17 +48,19 @@ public: ...@@ -48,17 +48,19 @@ public:
const char* p = cmVS10GenName(name, genName); const char* p = cmVS10GenName(name, genName);
if(!p) if(!p)
{ return 0; } { return 0; }
if(strcmp(p, "") == 0) if(!*p)
{ {
return new cmGlobalVisualStudio10Generator( return new cmGlobalVisualStudio10Generator(
genName, "", ""); genName, "", "");
} }
if(strcmp(p, " Win64") == 0) if(*p++ != ' ')
{ return 0; }
if(strcmp(p, "Win64") == 0)
{ {
return new cmGlobalVisualStudio10Generator( return new cmGlobalVisualStudio10Generator(
genName, "x64", "CMAKE_FORCE_WIN64"); genName, "x64", "CMAKE_FORCE_WIN64");
} }
if(strcmp(p, " IA64") == 0) if(strcmp(p, "IA64") == 0)
{ {
return new cmGlobalVisualStudio10Generator( return new cmGlobalVisualStudio10Generator(
genName, "Itanium", "CMAKE_FORCE_IA64"); genName, "Itanium", "CMAKE_FORCE_IA64");
......
...@@ -43,27 +43,24 @@ public: ...@@ -43,27 +43,24 @@ public:
const char* p = cmVS11GenName(name, genName); const char* p = cmVS11GenName(name, genName);
if(!p) if(!p)
{ return 0; } { return 0; }
if(strcmp(p, "") == 0) if(!*p)
{ {
return new cmGlobalVisualStudio11Generator( return new cmGlobalVisualStudio11Generator(
genName, "", ""); genName, "", "");
} }
if(strcmp(p, " Win64") == 0) if(*p++ != ' ')
{ return 0; }
if(strcmp(p, "Win64") == 0)
{ {
return new cmGlobalVisualStudio11Generator( return new cmGlobalVisualStudio11Generator(
genName, "x64", "CMAKE_FORCE_WIN64"); genName, "x64", "CMAKE_FORCE_WIN64");
} }
if(strcmp(p, " ARM") == 0) if(strcmp(p, "ARM") == 0)
{ {
return new cmGlobalVisualStudio11Generator( return new cmGlobalVisualStudio11Generator(
genName, "ARM", ""); genName, "ARM", "");
} }
if(*p++ != ' ')
{
return 0;
}
std::set<std::string> installedSDKs = std::set<std::string> installedSDKs =
cmGlobalVisualStudio11Generator::GetInstalledWindowsCESDKs(); cmGlobalVisualStudio11Generator::GetInstalledWindowsCESDKs();
......
...@@ -43,17 +43,19 @@ public: ...@@ -43,17 +43,19 @@ public:
const char* p = cmVS12GenName(name, genName); const char* p = cmVS12GenName(name, genName);
if(!p) if(!p)
{ return 0; } { return 0; }
if(strcmp(p, "") == 0) if(!*p)
{ {
return new cmGlobalVisualStudio12Generator( return new cmGlobalVisualStudio12Generator(
genName, "", ""); genName, "", "");
} }
if(strcmp(p, " Win64") == 0) if(*p++ != ' ')
{ return 0; }
if(strcmp(p, "Win64") == 0)
{ {
return new cmGlobalVisualStudio12Generator( return new cmGlobalVisualStudio12Generator(
genName, "x64", "CMAKE_FORCE_WIN64"); genName, "x64", "CMAKE_FORCE_WIN64");
} }
if(strcmp(p, " ARM") == 0) if(strcmp(p, "ARM") == 0)
{ {
return new cmGlobalVisualStudio12Generator( return new cmGlobalVisualStudio12Generator(
genName, "ARM", ""); genName, "ARM", "");
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment