Implemented -G option

This commit is contained in:
Jorgen Bodde 2005-08-09 15:42:49 -04:00
parent 7df63f38c5
commit 8a52a910e1
4 changed files with 90 additions and 102 deletions

View File

@ -91,8 +91,11 @@ bool CMakeSetupApp::OnInit()
// parse command line params // parse command line params
cmCommandLineInfo cm; cmCommandLineInfo cm;
cm.SetValidArguments("ABGHQG"); if(!cm.ParseCommandLine(wxApp::argc, wxApp::argv))
cm.ParseCommandLine(wxApp::argc, wxApp::argv); {
printf("Error while parsing the command line\n");
return false;
}
// set vendor name and app for config // set vendor name and app for config
SetVendorName("Kitware"); SetVendorName("Kitware");

View File

@ -37,13 +37,13 @@
cmCommandLineInfo::cmCommandLineInfo() cmCommandLineInfo::cmCommandLineInfo()
{ {
this->m_WhereSource = ""; m_WhereSource = "";
this->m_WhereBuild = ""; m_WhereBuild = "";
this->m_AdvancedValues = false; m_AdvancedValues = false;
m_GeneratorChoiceString.Empty(); m_GeneratorChoiceString.Empty();
this->m_LastUnknownParameter = ""; m_LastUnknownParameter = "";
this->m_ValidArguments = ""; m_ValidArguments = "";
this->m_ExitAfterLoad = false; m_ExitAfterLoad = false;
} }
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
@ -52,124 +52,113 @@ cmCommandLineInfo::~cmCommandLineInfo()
} }
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
void cmCommandLineInfo::ParseCommandLine(int argc, char* argv[]) bool cmCommandLineInfo::ParseCommandLine(int argc, char* argv[])
{ {
for ( int cc = 1; cc < argc; cc ++ ) bool result = true;
wxString cachePath;
for ( int cc = 1; cc < argc && result; cc ++ )
{ {
// skip (empty ???) params
if ( strlen(argv[cc]) < 1 ) if ( strlen(argv[cc]) < 1 )
continue; continue;
std::string argument = argv[cc]; // judge argument and parse
bool valid = ((argument.size() > 1) && (m_ValidArguments.find(argument[1]) == std::string::npos)); wxString argument(argv[cc]);
if((argument.Len() > 1) && argument.GetChar(0) == '-')
ParseParam(argument, valid, (cc + 1 == argc)); result = ParseArgument(argument.Mid(1));
else
{
// ok this is the last of the arguments, the rest of the string(s)
// we concatenate to the cache path or something else
if(cc > 1)
cachePath << " ";
cachePath << argument;
}
} }
m_ExecutablePath = cmSystemTools::GetFilenamePath(argv[0]); m_ExecutablePath = cmSystemTools::GetFilenamePath(argv[0]).c_str();
return result;
} }
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
int cmCommandLineInfo::GetBoolValue(const std::string& v) { int cmCommandLineInfo::GetBoolValue(const wxString& v) {
std::string value = cmSystemTools::LowerCase(v);
if (value == "1" || wxString value = v.Lower();
value == "on" ||
value == "true" || if (!value.Cmp("1") ||
value == "yes") !value.Cmp("on") ||
!value.Cmp("true") ||
!value.Cmp("yes"))
{ {
// true
return 1; return 1;
} }
else if (value == "0" || else if (!value.Cmp("0") ||
value == "off" || !value.Cmp("off") ||
value == "false" || !value.Cmp("false") ||
value == "no") !value.Cmp("no"))
{ {
// false
return -1; return -1;
} }
// not recognised
return 0; return 0;
} }
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
// Parse param // Parse param
void cmCommandLineInfo::ParseParam(const std::string& parameter, bool cmCommandLineInfo::ParseArgument(const wxString& sParam)
bool know_about, bool /*last*/)
{ {
// this is the last parameter we know, so we assign this to be bool result = false;
// path to source or path to existing build
if(!know_about)
m_LastUnknownParameter = parameter;
else
{
std::string sParam(parameter.c_str(), 1, parameter.npos);
// Single letter valued flag like /B=value or /B:value if(sParam.Len() > 1)
std::string value;
if (sParam[1] == '=' || sParam[1] == ':')
{ {
value = std::string(parameter.c_str()+3); wxString value = sParam.Mid(1);
}
else
{
value = std::string(parameter.c_str()+2);
}
int res;
switch (sParam[0]) switch (sParam[0])
{ {
case 'A':
res = cmCommandLineInfo::GetBoolValue(value);
if (res == 1)
{
m_AdvancedValues = true;
}
else if (res == -1)
{
m_AdvancedValues = false;
}
break;
case 'B':
m_WhereBuild = value;
break;
case 'G': case 'G':
m_GeneratorChoiceString = GetStringParam(value.c_str()); m_GeneratorChoiceString = GetStringParam(value);
result = true;
break; break;
case 'Q': case 'Q':
m_ExitAfterLoad = true; m_ExitAfterLoad = true;
result = true;
break; break;
case 'H': // unknown param
m_WhereSource = value; default:
break; break;
} }
} }
return result;
} }
// When the string param given has string quotes around it // When the string param given has string quotes around it
// we remove them and we pass back the string. If not, we // we remove them and we pass back the string. If not, we
// simply pass back the string as-is // simply pass back the string as-is
wxString cmCommandLineInfo::GetStringParam(const char *pString) wxString cmCommandLineInfo::GetStringParam(const wxString &str)
{ {
wxCHECK(pString, wxEmptyString); wxString mystr = str.Strip(wxString::both);
wxString str(pString);
str = str.Strip(wxString::both);
// if we have only one (or no chars return the current string) // if we have only one (or no chars return the current string)
if(str.Len() < 2) if(mystr.Len() < 2)
return str; return str;
// if we have quotes // if we have quotes
if(str.GetChar(0) == '\"' && str.Last() == '\"') if(mystr.GetChar(0) == '\"' && mystr.Last() == '\"')
{ {
// when we only have 2 in size, return empty string // when we only have 2 in size, return empty string
if(str.Len() == 2) if(mystr.Len() == 2)
return wxEmptyString; return wxEmptyString;
// now remove the outer and inner, and return // now remove the outer and inner, and return
return str.Mid(1, str.Len()-1); return mystr.Mid(1, mystr.Len()-1);
} }
return str; return str;

View File

@ -35,36 +35,33 @@ public:
virtual ~cmCommandLineInfo(); virtual ~cmCommandLineInfo();
// Parse the command line // Parse the command line
void ParseCommandLine(int argc, char* argv[]); bool ParseCommandLine(int argc, char* argv[]);
// Set the valid arguments
void SetValidArguments(const std::string& va) { this->m_ValidArguments = va; }
// Retrieve the path of executable // Retrieve the path of executable
std::string GetPathToExecutable() { return this->m_ExecutablePath; } wxString GetPathToExecutable() { return this->m_ExecutablePath; }
// Attributes // Attributes
public: public:
std::string m_WhereSource; wxString m_WhereSource;
std::string m_WhereBuild; wxString m_WhereBuild;
bool m_AdvancedValues; bool m_AdvancedValues;
wxString m_GeneratorChoiceString; wxString m_GeneratorChoiceString;
std::string m_LastUnknownParameter; wxString m_LastUnknownParameter;
std::string m_ExecutablePath; wxString m_ExecutablePath;
bool m_ExitAfterLoad; bool m_ExitAfterLoad;
protected: private:
// Parse one argument // Parse one argument
void ParseParam(const std::string& parameter, bool know_about, bool last); bool ParseArgument(const wxString& sParam);
// Return boolean value of the string // Return boolean value of the string
static int GetBoolValue(const std::string&); static int GetBoolValue(const wxString&);
// on windows the argument with spaces SUCKS! So we need to // on windows the argument with spaces SUCKS! So we need to
// incorporate it with quotes. // incorporate it with quotes.
wxString GetStringParam(const char *pString); wxString GetStringParam(const wxString &str);
std::string m_ValidArguments; wxString m_ValidArguments;
}; };
#endif // !defined(CMAKECOMMANDLINEINFO_H) #endif // !defined(CMAKECOMMANDLINEINFO_H)

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="windows-1252" ?> <?xml version="1.0" encoding="windows-1252" ?>
<TODOLIST FILEFORMAT="7" PROJECTNAME="CMakeSetup GUI project" NEXTUNIQUEID="119" FILEVERSION="126" LASTMODIFIED="2005-08-08" CUSTOMCOMMENTSTYPE="849cf988-79fe-418a-a40d-01fe3afcab2c"><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38479.90427083" TEXTCOLOR="0" TITLE="v1.0b" PRIORITYWEBCOLOR="#000FF0" ID="1" HIGHESTPRIORITY="8" PERCENTDONE="0" POS="2"><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38502.62243056" TEXTCOLOR="0" TITLE="Interpret directory from dropped shortcut" COMMENTS="In DoInitFrame() <TODOLIST FILEFORMAT="7" PROJECTNAME="CMakeSetup GUI project" NEXTUNIQUEID="121" FILEVERSION="128" LASTMODIFIED="2005-08-09" CUSTOMCOMMENTSTYPE="849cf988-79fe-418a-a40d-01fe3afcab2c"><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38479.90427083" TEXTCOLOR="0" TITLE="v1.0b" PRIORITYWEBCOLOR="#000FF0" ID="1" HIGHESTPRIORITY="8" PERCENTDONE="0" POS="2"><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38502.62243056" TEXTCOLOR="0" TITLE="Interpret directory from dropped shortcut" COMMENTS="In DoInitFrame()
{ {
m_cmShowAdvanced-&gt;SetValue(false); m_cmShowAdvanced-&gt;SetValue(false);
// TODO: Interpret directory from dropped shortcut // TODO: Interpret directory from dropped shortcut
//this-&gt;ChangeDirectoriesFromFile(cmdInfo-&gt;m_LastUnknownParameter.c_str()); //this-&gt;ChangeDirectoriesFromFile(cmdInfo-&gt;m_LastUnknownParameter.c_str());
}" PRIORITYWEBCOLOR="#000FF0" ID="94" PERCENTDONE="0" STARTDATE="38502.00000000" POS="3"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" ALLOCATEDBY="Andy" LASTMOD="38502.94655093" TEXTCOLOR="0" TITLE="Make sources consistent with formatting" COMMENTS="The second thing has to do with your coding standard. The indentation }" PRIORITYWEBCOLOR="#000FF0" ID="94" PERCENTDONE="0" STARTDATE="38502.00000000" POS="2"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" ALLOCATEDBY="Andy" LASTMOD="38502.94655093" TEXTCOLOR="0" TITLE="Make sources consistent with formatting" COMMENTS="The second thing has to do with your coding standard. The indentation
would be ok (even though it is different), as long as it would be would be ok (even though it is different), as long as it would be
consistent. Looks like you are using tabs sometimes, spaces some other consistent. Looks like you are using tabs sometimes, spaces some other
times, so depending on what editor you use, the code looks times, so depending on what editor you use, the code looks
@ -16,7 +16,7 @@ Also, related to this is that your code has DOS new-lines on some lines
but not on other. Inconsistent DOS new-lines sometimes confuse certain but not on other. Inconsistent DOS new-lines sometimes confuse certain
compilers." PRIORITYWEBCOLOR="#000FF0" ID="97" PERCENTDONE="100" STARTDATE="38502.00000000" DONEDATESTRING="2-6-2005" DONEDATE="38505.00000000" POS="8"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" ALLOCATEDBY="Andy" LASTMOD="38502.94726852" TEXTCOLOR="0" TITLE="A different popup window that also has an exit button" CATEGORY="Pending" COMMENTS="Oh, and another feature request, once you run generate, there is a compilers." PRIORITYWEBCOLOR="#000FF0" ID="97" PERCENTDONE="100" STARTDATE="38502.00000000" DONEDATESTRING="2-6-2005" DONEDATE="38505.00000000" POS="8"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" ALLOCATEDBY="Andy" LASTMOD="38502.94726852" TEXTCOLOR="0" TITLE="A different popup window that also has an exit button" CATEGORY="Pending" COMMENTS="Oh, and another feature request, once you run generate, there is a
popup popup
that says generation complete. Could you put a exit button there too?" PRIORITYWEBCOLOR="#000FF0" ID="99" PERCENTDONE="0" STARTDATE="38502.00000000" POS="5"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" ALLOCATEDBY="Andy" LASTMOD="38502.94839120" TEXTCOLOR="0" TITLE="Add keyboard shortcuts to the GUI" COMMENTS="And, how difficult it is to add keyboard shortcuts to the gui? Could that says generation complete. Could you put a exit button there too?" PRIORITYWEBCOLOR="#000FF0" ID="99" PERCENTDONE="0" STARTDATE="38502.00000000" POS="4"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="30-5-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" ALLOCATEDBY="Andy" LASTMOD="38502.94839120" TEXTCOLOR="0" TITLE="Add keyboard shortcuts to the GUI" COMMENTS="And, how difficult it is to add keyboard shortcuts to the gui? Could
you you
duplicate ccmake's keyboard shortcuts in NG gui? duplicate ccmake's keyboard shortcuts in NG gui?
@ -35,7 +35,7 @@ That's allright ;-)
&gt; command line. I would like to do something like: &gt; command line. I would like to do something like:
&gt; &gt;
&gt; CMakeSetup --source /foo/bar/src --build /foo/bar/bin &gt; CMakeSetup --source /foo/bar/src --build /foo/bar/bin
&gt; --run-configure-and-generate" PRIORITYWEBCOLOR="#000FF0" ID="103" PERCENTDONE="0" STARTDATE="38515.00000000" POS="4"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="12-6-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38515.47834491" TEXTCOLOR="0" TITLE="Add Licence header for every source" COMMENTS="Please just copy the header comment from another header like &gt; --run-configure-and-generate" PRIORITYWEBCOLOR="#000FF0" ID="103" PERCENTDONE="0" STARTDATE="38515.00000000" POS="3"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="12-6-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38515.47834491" TEXTCOLOR="0" TITLE="Add Licence header for every source" COMMENTS="Please just copy the header comment from another header like
cmVersion.h cmVersion.h
and put it at the top of all your sources. If you want to add those and put it at the top of all your sources. If you want to add those
extra CVS $$ tokens please do so in a comment under this block so that extra CVS $$ tokens please do so in a comment under this block so that
@ -69,10 +69,9 @@ I would add:
cmake [options] &lt;path to cmake cache&gt; cmake [options] &lt;path to cmake cache&gt;
Andy" PRIORITYWEBCOLOR="#F900CD" ID="108" PERCENTDONE="0" STARTDATE="38527.00000000" POS="1"><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93009259" TEXTCOLOR="0" TITLE="Implement -G{generator}" PRIORITYWEBCOLOR="#F900CD" ID="113" PERCENTDONE="0" STARTDATE="38572.00000000" POS="1"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93034722" TEXTCOLOR="0" TITLE="Implement -C{initial cache}" PRIORITYWEBCOLOR="#F900CD" ID="115" PERCENTDONE="0" STARTDATE="38572.00000000" POS="3"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93065972" TEXTCOLOR="0" TITLE="Implement -D&lt;var&gt;:&lt;type&gt;=&lt;value&gt;" PRIORITYWEBCOLOR="#F900CD" ID="117" PERCENTDONE="0" STARTDATE="38572.00000000" POS="4"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93120370" TEXTCOLOR="0" TITLE="Implement -N" COMMENTS="This is view mode only (read only) Andy" PRIORITYWEBCOLOR="#F900CD" ID="108" PERCENTDONE="0" STARTDATE="38527.00000000" POS="5"><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38573.90017361" TEXTCOLOR="0" TITLE="Implement -G{generator}" PRIORITYWEBCOLOR="#F900CD" ID="113" PERCENTDONE="100" STARTDATE="38572.00000000" DONEDATESTRING="9-8-2005" DONEDATE="38573.00000000" POS="2"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93034722" TEXTCOLOR="0" TITLE="Implement -C{initial cache}" PRIORITYWEBCOLOR="#F900CD" ID="115" PERCENTDONE="0" STARTDATE="38572.00000000" POS="4"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93065972" TEXTCOLOR="0" TITLE="Implement -D&lt;var&gt;:&lt;type&gt;=&lt;value&gt;" PRIORITYWEBCOLOR="#F900CD" ID="117" PERCENTDONE="0" STARTDATE="38572.00000000" POS="5"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="8-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38572.93120370" TEXTCOLOR="0" TITLE="Implement -N" COMMENTS="This is view mode only (read only)" PRIORITYWEBCOLOR="#F900CD" ID="118" CUSTOMCOMMENTS="e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZGVmZjBcZGVmbGFuZzEwMzN7XGZvbnR0Ymx7XGYwXGZuaWxcZmNoYXJzZXQwIE1TIFNhbnMgU2VyaWY7fX0NClx2aWV3a2luZDRcdWMxXHBhcmRcdHg2NDBcdHgxMjgwXHR4MTkyMFx0eDI1NjBcdHgzMjAwXHR4Mzg0MFx0eDQ0ODBcdHg1MTIwXHR4NTc2MFx0eDY0MDBcdHg3MDQwXHR4NzY4MFx0eDgzMjBcdHg4OTYwXHR4OTYwMFx0eDEwMjQwXHR4MTA4ODBcdHgxMTUyMFx0eDEyMTYwXHR4MTI4MDBcdHgxMzQ0MFx0eDE0MDgwXHR4MTQ3MjBcdHgxNTM2MFx0eDE2MDAwXHR4MTY2NDBcdHgxNzI4MFx0eDE3OTIwXHR4MTg1NjBcdHgxOTIwMFx0eDE5ODQwXHR4MjA0ODBcZjBcZnMxOCBUaGlzIGlzIHZpZXcgbW9kZSBvbmx5IChyZWFkIG9ubHkpXHBhcg0KXHBhcg0KfQ0K" PERCENTDONE="0" STARTDATE="38572.00000000" POS="3"/><TASK PRIORITYCOLOR="13435129" STARTDATESTRING="9-8-2005" TEXTWEBCOLOR="#000000" PRIORITY="8" LASTMOD="38573.89736111" TEXTCOLOR="0" TITLE="The printing of errors on commandline after parsing err does not yet work" PRIORITYWEBCOLOR="#F900CD" ID="120" PERCENTDONE="0" STARTDATE="38573.00000000" POS="1"/></TASK><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="24-6-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38557.47869213" TEXTCOLOR="0" TITLE="Commit source to CVS" PRIORITYWEBCOLOR="#000FF0" ID="109" PERCENTDONE="100" STARTDATE="38527.00000000" DONEDATESTRING="24-7-2005" DONEDATE="38557.00000000" POS="6"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="24-7-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38557.47881944" TEXTCOLOR="0" TITLE="The directory was called WXDialog but the executable was wxCMakeSetup" COMMENTS="The directory was called WXDialog but the executable was wxCMakeSetup:
" PRIORITYWEBCOLOR="#F900CD" ID="118" CUSTOMCOMMENTS="e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZGVmZjBcZGVmbGFuZzEwMzN7XGZvbnR0Ymx7XGYwXGZuaWxcZmNoYXJzZXQwIE1TIFNhbnMgU2VyaWY7fX0NClx2aWV3a2luZDRcdWMxXHBhcmRcdHg2NDBcdHgxMjgwXHR4MTkyMFx0eDI1NjBcdHgzMjAwXHR4Mzg0MFx0eDQ0ODBcdHg1MTIwXHR4NTc2MFx0eDY0MDBcdHg3MDQwXHR4NzY4MFx0eDgzMjBcdHg4OTYwXHR4OTYwMFx0eDEwMjQwXHR4MTA4ODBcdHgxMTUyMFx0eDEyMTYwXHR4MTI4MDBcdHgxMzQ0MFx0eDE0MDgwXHR4MTQ3MjBcdHgxNTM2MFx0eDE2MDAwXHR4MTY2NDBcdHgxNzI4MFx0eDE3OTIwXHR4MTg1NjBcdHgxOTIwMFx0eDE5ODQwXHR4MjA0ODBcZjBcZnMxOCBUaGlzIGlzIHZpZXcgbW9kZSBvbmx5IChyZWFkIG9ubHkpXHBhcg0KXHBhcg0KfQ0K" PERCENTDONE="0" STARTDATE="38572.00000000" POS="2"/></TASK><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="24-6-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38557.47869213" TEXTCOLOR="0" TITLE="Commit source to CVS" PRIORITYWEBCOLOR="#000FF0" ID="109" PERCENTDONE="100" STARTDATE="38527.00000000" DONEDATESTRING="24-7-2005" DONEDATE="38557.00000000" POS="6"/><TASK PRIORITYCOLOR="15732480" STARTDATESTRING="24-7-2005" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38557.47881944" TEXTCOLOR="0" TITLE="The directory was called WXDialog but the executable was wxCMakeSetup" COMMENTS="The directory was called WXDialog but the executable was wxCMakeSetup:
ADD_EXECUTABLE(wxCMakeSetup ${WIN32_EXECUTABLE} ${WX_SRCS})" PRIORITYWEBCOLOR="#000FF0" ID="111" CUSTOMCOMMENTS="e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZGVmZjBcZGVmbGFuZzEwMzN7XGZvbnR0Ymx7XGYwXGZuaWxcZmNoYXJzZXQwIFRpbWVzIE5ldyBSb21hbjt9fQ0KXHZpZXdraW5kNFx1YzFccGFyZFx0eDY0MFx0eDEyODBcdHgxOTIwXHR4MjU2MFx0eDMyMDBcdHgzODQwXHR4NDQ4MFx0eDUxMjBcdHg1NzYwXHR4NjQwMFx0eDcwNDBcdHg3NjgwXHR4ODMyMFx0eDg5NjBcdHg5NjAwXHR4MTAyNDBcdHgxMDg4MFx0eDExNTIwXHR4MTIxNjBcdHgxMjgwMFx0eDEzNDQwXHR4MTQwODBcdHgxNDcyMFx0eDE1MzYwXHR4MTYwMDBcdHgxNjY0MFx0eDE3MjgwXHR4MTc5MjBcdHgxODU2MFx0eDE5MjAwXHR4MTk4NDBcdHgyMDQ4MFxmMFxmczIwIFRoZSBkaXJlY3Rvcnkgd2FzIGNhbGxlZCBXWERpYWxvZyBidXQgdGhlIGV4ZWN1dGFibGUgd2FzIHd4Q01ha2VTZXR1cDpccGFyDQpccGFyDQogIEFERF9FWEVDVVRBQkxFKHd4Q01ha2VTZXR1cCAkXHtXSU4zMl9FWEVDVVRBQkxFXH0gJFx7V1hfU1JDU1x9KVxwYXINCn0NCgA=" PERCENTDONE="0" STARTDATE="38557.00000000" POS="2"/></TASK><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38479.90443287" TEXTCOLOR="0" TITLE="Next releases" PRIORITYWEBCOLOR="#000FF0" ID="2" HIGHESTPRIORITY="7" PERCENTDONE="0" POS="1"><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38479.90533565" TEXTCOLOR="0" TITLE="Adjust build path to project path when selected, and append (build) when present" PRIORITYWEBCOLOR="#000FF0" ID="5" PERCENTDONE="0" POS="2"/><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38480.40458333" TEXTCOLOR="0" TITLE="Most recent used file menu" PRIORITYWEBCOLOR="#000FF0" ID="7" PERCENTDONE="0" POS="9"/><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38482.70638889" TEXTCOLOR="0" TITLE="New project based management for user options" COMMENTS="This can contain overridden options and extra injected options for e.g. ADD_EXECUTABLE(wxCMakeSetup ${WIN32_EXECUTABLE} ${WX_SRCS})" PRIORITYWEBCOLOR="#000FF0" ID="111" CUSTOMCOMMENTS="e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZGVmZjBcZGVmbGFuZzEwMzN7XGZvbnR0Ymx7XGYwXGZuaWxcZmNoYXJzZXQwIFRpbWVzIE5ldyBSb21hbjt9fQ0KXHZpZXdraW5kNFx1YzFccGFyZFx0eDY0MFx0eDEyODBcdHgxOTIwXHR4MjU2MFx0eDMyMDBcdHgzODQwXHR4NDQ4MFx0eDUxMjBcdHg1NzYwXHR4NjQwMFx0eDcwNDBcdHg3NjgwXHR4ODMyMFx0eDg5NjBcdHg5NjAwXHR4MTAyNDBcdHgxMDg4MFx0eDExNTIwXHR4MTIxNjBcdHgxMjgwMFx0eDEzNDQwXHR4MTQwODBcdHgxNDcyMFx0eDE1MzYwXHR4MTYwMDBcdHgxNjY0MFx0eDE3MjgwXHR4MTc5MjBcdHgxODU2MFx0eDE5MjAwXHR4MTk4NDBcdHgyMDQ4MFxmMFxmczIwIFRoZSBkaXJlY3Rvcnkgd2FzIGNhbGxlZCBXWERpYWxvZyBidXQgdGhlIGV4ZWN1dGFibGUgd2FzIHd4Q01ha2VTZXR1cDpccGFyDQpccGFyDQogIEFERF9FWEVDVVRBQkxFKHd4Q01ha2VTZXR1cCAkXHtXSU4zMl9FWEVDVVRBQkxFXH0gJFx7V1hfU1JDU1x9KVxwYXINCn0NCgAA" PERCENTDONE="0" STARTDATE="38557.00000000" POS="1"/></TASK><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38479.90443287" TEXTCOLOR="0" TITLE="Next releases" PRIORITYWEBCOLOR="#000FF0" ID="2" HIGHESTPRIORITY="7" PERCENTDONE="0" POS="1"><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38479.90533565" TEXTCOLOR="0" TITLE="Adjust build path to project path when selected, and append (build) when present" PRIORITYWEBCOLOR="#000FF0" ID="5" PERCENTDONE="0" POS="2"/><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38480.40458333" TEXTCOLOR="0" TITLE="Most recent used file menu" PRIORITYWEBCOLOR="#000FF0" ID="7" PERCENTDONE="0" POS="9"/><TASK PRIORITYCOLOR="15732480" TEXTWEBCOLOR="#000000" PRIORITY="5" LASTMOD="38482.70638889" TEXTCOLOR="0" TITLE="New project based management for user options" COMMENTS="This can contain overridden options and extra injected options for e.g.
SOME_PROJECT_VERSION = 1.06 SOME_PROJECT_VERSION = 1.06
WX_USE_TREEVIEW = ON WX_USE_TREEVIEW = ON