optionSet.Add("I=","the {PATH} of a folder to search for include files",(i)=>{AddIncludeDirs(i,messages);});
optionSet.Add("I=","the {PATH} of a folder to search for include files",(i)=>{AddIncludeDirs(i,errorMessages);});
optionSet.Add("l=","{LIBRARY} that that contains the symbols of the generated code",l=>options.Libraries.Add(l));
optionSet.Add("L=","the {PATH} of a folder to search for additional libraries",l=>options.LibraryDirs.Add(l));
optionSet.Add("D:","additional define with (optional) value to add to be used while parsing the given header files",(n,v)=>AddDefine(n,v,messages));
optionSet.Add("A=","additional Clang arguments to pass to the compiler while parsing the given header files",(v)=>AddArgument(v,messages));
optionSet.Add("D:","additional define with (optional) value to add to be used while parsing the given header files",(n,v)=>AddDefine(n,v,errorMessages));
optionSet.Add("A=","additional Clang arguments to pass to the compiler while parsing the given header files",(v)=>AddArgument(v,errorMessages));
optionSet.Add("o=|output=","the {PATH} for the generated bindings file (doesn't need the extension since it will depend on the generator)",v=>HandleOutputArg(v,messages));
optionSet.Add("o=|output=","the {PATH} for the generated bindings file (doesn't need the extension since it will depend on the generator)",v=>HandleOutputArg(v,errorMessages));
optionSet.Add("on=|outputnamespace=","the {NAMESPACE} that will be used for the generated code",on=>options.OutputNamespace=on);
optionSet.Add("iln=|inputlibraryname=|inputlib=","the {NAME} of the shared library that contains the symbols of the generated code",iln=>options.InputLibraryName=iln);
optionSet.Add("d|debug","enables debug mode which generates more verbose code to aid debugging",v=>options.Debug=true);
optionSet.Add("c|compile","enables automatic compilation of the generated code",v=>options.Compile=true);
optionSet.Add("g=|gen=|generator=","the {TYPE} of generated code: 'chsarp' or 'cli' ('cli' supported only for Windows)",g=>{GetGeneratorKind(g,messages);});
optionSet.Add("p=|platform=","the {PLATFORM} that the generated code will target: 'win', 'osx' or 'linux'",p=>{GetDestinationPlatform(p,messages);});
optionSet.Add("a=|arch=","the {ARCHITECTURE} that the generated code will target: 'x86' or 'x64'",a=>{GetDestinationArchitecture(a,messages);});
optionSet.Add("g=|gen=|generator=","the {TYPE} of generated code: 'chsarp' or 'cli' ('cli' supported only for Windows)",g=>{GetGeneratorKind(g,errorMessages);});
optionSet.Add("p=|platform=","the {PLATFORM} that the generated code will target: 'win', 'osx' or 'linux'",p=>{GetDestinationPlatform(p,errorMessages);});
optionSet.Add("a=|arch=","the {ARCHITECTURE} that the generated code will target: 'x86' or 'x64'",a=>{GetDestinationArchitecture(a,errorMessages);});
optionSet.Add("exceptions","enables support for C++ exceptions in the parser",v=>{options.Arguments.Add("-fcxx-exceptions");});