mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-02 12:19:54 -05:00
Add /A and /G command-line param to carry the value of "Show Advanced" and generator name in desktop shortcuts
This commit is contained in:
@@ -17,12 +17,34 @@ CMakeCommandLineInfo::CMakeCommandLineInfo()
|
||||
{
|
||||
m_WhereSource = _T("");
|
||||
m_WhereBuild = _T("");
|
||||
m_AdvancedValues = FALSE;
|
||||
m_GeneratorChoiceString = _T("");
|
||||
}
|
||||
|
||||
CMakeCommandLineInfo::~CMakeCommandLineInfo()
|
||||
{
|
||||
}
|
||||
|
||||
int CMakeCommandLineInfo::GetBoolValue(const CString& v) {
|
||||
CString value = v;
|
||||
value.MakeLower();
|
||||
if (value == "1" ||
|
||||
value == "on" ||
|
||||
value == "true" ||
|
||||
value == "yes")
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
else if (value == "0" ||
|
||||
value == "off" ||
|
||||
value == "false" ||
|
||||
value == "no")
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////
|
||||
// Parse param
|
||||
|
||||
@@ -35,14 +57,29 @@ void CMakeCommandLineInfo::ParseParam(LPCTSTR lpszParam, BOOL bFlag, BOOL bLast)
|
||||
if (sParam[1] == '=' || sParam[1] == ':')
|
||||
{
|
||||
CString value(sParam.Right(sParam.GetLength() - 2));
|
||||
int res;
|
||||
switch (sParam[0])
|
||||
{
|
||||
case 'H':
|
||||
m_WhereSource = value;
|
||||
case 'A':
|
||||
res = CMakeCommandLineInfo::GetBoolValue(value);
|
||||
if (res == 1)
|
||||
{
|
||||
m_AdvancedValues = TRUE;
|
||||
}
|
||||
else if (res == -1)
|
||||
{
|
||||
m_AdvancedValues = FALSE;
|
||||
}
|
||||
break;
|
||||
case 'B':
|
||||
m_WhereBuild = value;
|
||||
break;
|
||||
case 'G':
|
||||
m_GeneratorChoiceString = value;
|
||||
break;
|
||||
case 'H':
|
||||
m_WhereSource = value;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user