Bill Hoffman 16 лет назад
Родитель
Сommit
798024bebf

+ 2 - 1
Source/cmGlobalVisualStudio10Generator.h

@@ -65,6 +65,7 @@ public:
    * Studio?
    */
   virtual std::string GetUserMacrosRegKeyBase();
-  virtual const char* GetCMakeCFGInitDirectory()  { return "$(ConfigurationName)";} 
+  virtual const char* GetCMakeCFGInitDirectory() 
+    { return "$(ConfigurationName)";} 
 };
 #endif

+ 180 - 94
Source/cmVS10CLFlagTable.h

@@ -2,89 +2,156 @@ static cmVS7FlagTable cmVS10CLFlagTable[] =
 {
 
   //Enum Properties
-  {"DebugInformationFormat", "Z7", "C7 compatible", "OldStyle", 0},
-  {"DebugInformationFormat", "Zi", "Program Database", "ProgramDatabase", 0},
-  {"DebugInformationFormat", "ZI", "Program Database for Edit And Continue", "EditAndContinue", 0},
-
-  {"WarningLevel", "W0", "Turn Off All Warnings", "TurnOffAllWarnings", 0},
-  {"WarningLevel", "W1", "Level1", "Level1", 0},
-  {"WarningLevel", "W2", "Level2", "Level2", 0},
-  {"WarningLevel", "W3", "Level3", "Level3", 0},
-  {"WarningLevel", "W4", "Level4", "Level4", 0},
-  {"WarningLevel", "Wall", "EnableAllWarnings", "EnableAllWarnings", 0},
-
-  {"Optimization", "Od", "Disabled", "Disabled", 0},
-  {"Optimization", "O1", "Minimize Size", "MinSpace", 0},
-  {"Optimization", "O2", "Maximize Speed", "MaxSpeed", 0},
-  {"Optimization", "Ox", "Full Optimization", "Full", 0},
-
-  {"InlineFunctionExpansion", "", "Default", "Default", 0},
-  {"InlineFunctionExpansion", "Ob0", "Disabled", "Disabled", 0},
-  {"InlineFunctionExpansion", "Ob1", "Only __inline", "OnlyExplicitInline", 0},
-  {"InlineFunctionExpansion", "Ob2", "Any Suitable", "AnySuitable", 0},
-
-  {"FavorSizeOrSpeed", "Os", "Favor small code", "Size", 0},
-  {"FavorSizeOrSpeed", "Ot", "Favor fast code", "Speed", 0},
-  {"FavorSizeOrSpeed", "", "Neither", "Neither", 0},
-
-  {"ExceptionHandling", "EHa", "Yes with SEH Exceptions", "Async", 0},
-  {"ExceptionHandling", "EHsc", "Yes", "Sync", 0},
-  {"ExceptionHandling", "EHs", "Yes with Extern C functions", "SyncCThrow", 0},
-  {"ExceptionHandling", "", "No", "false", 0},
-
-  {"BasicRuntimeChecks", "RTCs", "Stack Frames", "StackFrameRuntimeCheck", 0},
-  {"BasicRuntimeChecks", "RTCu", "Uninitialized variables", "UninitializedLocalUsageCheck", 0},
-  {"BasicRuntimeChecks", "RTC1", "Both (/RTC1, equiv. to /RTCsu)", "EnableFastChecks", 0},
-  {"BasicRuntimeChecks", "", "Default", "Default", 0},
-
-  {"RuntimeLibrary", "MT", "Multi-threaded", "MultiThreaded", 0},
-  {"RuntimeLibrary", "MTd", "Multi-threaded Debug", "MultiThreadedDebug", 0},
-  {"RuntimeLibrary", "MD", "Multi-threaded DLL", "MultiThreadedDLL", 0},
-  {"RuntimeLibrary", "MDd", "Multi-threaded Debug DLL", "MultiThreadedDebugDLL", 0},
-
-  {"StructMemberAlignment", "Zp1", "1 Byte", "1Byte", 0},
-  {"StructMemberAlignment", "Zp2", "2 Bytes", "2Bytes", 0},
-  {"StructMemberAlignment", "Zp4", "4 Byte", "4Bytes", 0},
-  {"StructMemberAlignment", "Zp8", "8 Bytes", "8Bytes", 0},
-  {"StructMemberAlignment", "Zp16", "16 Bytes", "16Bytes", 0},
-  {"StructMemberAlignment", "", "Default", "Default", 0},
-
-  {"EnableEnhancedInstructionSet", "arch:SSE", "Streaming SIMD Extensions (/arch:SSE)", "StreamingSIMDExtensions", 0},
-  {"EnableEnhancedInstructionSet", "arch:SSE2", "Streaming SIMD Extensions 2 (/arch:SSE2)", "StreamingSIMDExtensions2", 0},
-  {"EnableEnhancedInstructionSet", "", "Not Set", "NotSet", 0},
-
-  {"FloatingPointModel", "fp:precise", "Precise", "Precise", 0},
-  {"FloatingPointModel", "fp:strict", "Strict", "Strict", 0},
-  {"FloatingPointModel", "fp:fast", "Fast", "Fast", 0},
-
-  {"PrecompiledHeader", "Yc", "Create", "Create", 0},
-  {"PrecompiledHeader", "Yu", "Use", "Use", 0},
-  {"PrecompiledHeader", "", "Not Using Precompiled Headers", "NotUsing", 0},
-
-  {"AssemblerOutput", "", "No Listing", "NoListing", 0},
-  {"AssemblerOutput", "FA", "Assembly-Only Listing", "AssemblyCode", 0},
-  {"AssemblerOutput", "FAc", "Assembly With Machine Code", "AssemblyAndMachineCode", 0},
-  {"AssemblerOutput", "FAs", "Assembly With Source Code", "AssemblyAndSourceCode", 0},
-  {"AssemblerOutput", "FAcs", "Assembly, Machine Code and Source", "All", 0},
-
-  {"CallingConvention", "Gd", "__cdecl", "Cdecl", 0},
-  {"CallingConvention", "Gr", "__fastcall", "FastCall", 0},
-  {"CallingConvention", "Gz", "__stdcall", "StdCall", 0},
-
-  {"CompileAs", "", "Default", "Default", 0},
-  {"CompileAs", "TC", "Compile as C Code", "CompileAsC", 0},
-  {"CompileAs", "TP", "Compile as C++ Code", "CompileAsCpp", 0},
-
-  {"ErrorReporting", "errorReport:none", "Do Not Send Report", "None", 0},
-  {"ErrorReporting", "errorReport:prompt", "Prompt Immediatelly", "Prompt", 0},
-  {"ErrorReporting", "errorReport:queue", "Queue For Next Login", "Queue", 0},
-  {"ErrorReporting", "errorReport:send", "Send Automatically", "Send", 0},
-
-  {"CompileAsManaged", "", "No Common Language RunTime Support", "false", 0},
-  {"CompileAsManaged", "clr", "Common Language RunTime Support", "true", 0},
-  {"CompileAsManaged", "clr:pure", "Pure MSIL Common Language RunTime Support", "Pure", 0},
-  {"CompileAsManaged", "clr:safe", "Safe MSIL Common Language RunTime Support", "Safe", 0},
-  {"CompileAsManaged", "clr:oldSyntax", "Common Language RunTime Support, Old Syntax", "OldSyntax", 0},
+  {"DebugInformationFormat", "Z7",
+   "C7 compatible", "OldStyle", 0},
+  {"DebugInformationFormat", "Zi",
+   "Program Database", "ProgramDatabase", 0},
+  {"DebugInformationFormat", "ZI",
+   "Program Database for Edit And Continue", "EditAndContinue", 0},
+
+  {"WarningLevel", "W0",
+   "Turn Off All Warnings", "TurnOffAllWarnings", 0},
+  {"WarningLevel", "W1",
+   "Level1", "Level1", 0},
+  {"WarningLevel", "W2",
+   "Level2", "Level2", 0},
+  {"WarningLevel", "W3",
+   "Level3", "Level3", 0},
+  {"WarningLevel", "W4",
+   "Level4", "Level4", 0},
+  {"WarningLevel", "Wall",
+   "EnableAllWarnings", "EnableAllWarnings", 0},
+
+  {"Optimization", "Od",
+   "Disabled", "Disabled", 0},
+  {"Optimization", "O1",
+   "Minimize Size", "MinSpace", 0},
+  {"Optimization", "O2",
+   "Maximize Speed", "MaxSpeed", 0},
+  {"Optimization", "Ox",
+   "Full Optimization", "Full", 0},
+
+  {"InlineFunctionExpansion", "",
+   "Default", "Default", 0},
+  {"InlineFunctionExpansion", "Ob0",
+   "Disabled", "Disabled", 0},
+  {"InlineFunctionExpansion", "Ob1",
+   "Only __inline", "OnlyExplicitInline", 0},
+  {"InlineFunctionExpansion", "Ob2",
+   "Any Suitable", "AnySuitable", 0},
+
+  {"FavorSizeOrSpeed", "Os",
+   "Favor small code", "Size", 0},
+  {"FavorSizeOrSpeed", "Ot",
+   "Favor fast code", "Speed", 0},
+  {"FavorSizeOrSpeed", "",
+   "Neither", "Neither", 0},
+
+  {"ExceptionHandling", "EHa",
+   "Yes with SEH Exceptions", "Async", 0},
+  {"ExceptionHandling", "EHsc",
+   "Yes", "Sync", 0},
+  {"ExceptionHandling", "EHs",
+   "Yes with Extern C functions", "SyncCThrow", 0},
+  {"ExceptionHandling", "",
+   "No", "false", 0},
+
+  {"BasicRuntimeChecks", "RTCs",
+   "Stack Frames", "StackFrameRuntimeCheck", 0},
+  {"BasicRuntimeChecks", "RTCu",
+   "Uninitialized variables", "UninitializedLocalUsageCheck", 0},
+  {"BasicRuntimeChecks", "RTC1",
+   "Both (/RTC1, equiv. to /RTCsu)", "EnableFastChecks", 0},
+  {"BasicRuntimeChecks", "",
+   "Default", "Default", 0},
+
+  {"RuntimeLibrary", "MT",
+   "Multi-threaded", "MultiThreaded", 0},
+  {"RuntimeLibrary", "MTd",
+   "Multi-threaded Debug", "MultiThreadedDebug", 0},
+  {"RuntimeLibrary", "MD",
+   "Multi-threaded DLL", "MultiThreadedDLL", 0},
+  {"RuntimeLibrary", "MDd",
+   "Multi-threaded Debug DLL", "MultiThreadedDebugDLL", 0},
+
+  {"StructMemberAlignment", "Zp1",
+   "1 Byte", "1Byte", 0},
+  {"StructMemberAlignment", "Zp2",
+   "2 Bytes", "2Bytes", 0},
+  {"StructMemberAlignment", "Zp4",
+   "4 Byte", "4Bytes", 0},
+  {"StructMemberAlignment", "Zp8",
+   "8 Bytes", "8Bytes", 0},
+  {"StructMemberAlignment", "Zp16",
+   "16 Bytes", "16Bytes", 0},
+  {"StructMemberAlignment", "",
+   "Default", "Default", 0},
+
+  {"EnableEnhancedInstructionSet", "arch:SSE",
+   "Streaming SIMD Extensions (/arch:SSE)", "StreamingSIMDExtensions", 0},
+  {"EnableEnhancedInstructionSet", "arch:SSE2",
+   "Streaming SIMD Extensions 2 (/arch:SSE2)", "StreamingSIMDExtensions2", 0},
+  {"EnableEnhancedInstructionSet", "",
+   "Not Set", "NotSet", 0},
+
+  {"FloatingPointModel", "fp:precise",
+   "Precise", "Precise", 0},
+  {"FloatingPointModel", "fp:strict",
+   "Strict", "Strict", 0},
+  {"FloatingPointModel", "fp:fast",
+   "Fast", "Fast", 0},
+
+  {"PrecompiledHeader", "Yc",
+   "Create", "Create", 0},
+  {"PrecompiledHeader", "Yu",
+   "Use", "Use", 0},
+  {"PrecompiledHeader", "",
+   "Not Using Precompiled Headers", "NotUsing", 0},
+
+  {"AssemblerOutput", "",
+   "No Listing", "NoListing", 0},
+  {"AssemblerOutput", "FA",
+   "Assembly-Only Listing", "AssemblyCode", 0},
+  {"AssemblerOutput", "FAc",
+   "Assembly With Machine Code", "AssemblyAndMachineCode", 0},
+  {"AssemblerOutput", "FAs",
+   "Assembly With Source Code", "AssemblyAndSourceCode", 0},
+  {"AssemblerOutput", "FAcs",
+   "Assembly, Machine Code and Source", "All", 0},
+
+  {"CallingConvention", "Gd",
+   "__cdecl", "Cdecl", 0},
+  {"CallingConvention", "Gr",
+   "__fastcall", "FastCall", 0},
+  {"CallingConvention", "Gz",
+   "__stdcall", "StdCall", 0},
+
+  {"CompileAs", "",
+   "Default", "Default", 0},
+  {"CompileAs", "TC",
+   "Compile as C Code", "CompileAsC", 0},
+  {"CompileAs", "TP",
+   "Compile as C++ Code", "CompileAsCpp", 0},
+
+  {"ErrorReporting", "errorReport:none",
+   "Do Not Send Report", "None", 0},
+  {"ErrorReporting", "errorReport:prompt",
+   "Prompt Immediatelly", "Prompt", 0},
+  {"ErrorReporting", "errorReport:queue",
+   "Queue For Next Login", "Queue", 0},
+  {"ErrorReporting", "errorReport:send",
+   "Send Automatically", "Send", 0},
+
+  {"CompileAsManaged", "",
+   "No Common Language RunTime Support", "false", 0},
+  {"CompileAsManaged", "clr",
+   "Common Language RunTime Support", "true", 0},
+  {"CompileAsManaged", "clr:pure",
+   "Pure MSIL Common Language RunTime Support", "Pure", 0},
+  {"CompileAsManaged", "clr:safe",
+   "Safe MSIL Common Language RunTime Support", "Safe", 0},
+  {"CompileAsManaged", "clr:oldSyntax",
+   "Common Language RunTime Support, Old Syntax", "OldSyntax", 0},
 
 
   //Bool Properties
@@ -133,20 +200,39 @@ static cmVS7FlagTable cmVS10CLFlagTable[] =
 
   //Bool Properties With Argument
   {"MultiProcessorCompilation", "MP", "", "true", cmVS7FlagTable::Continue},
-  {"ProcessorNumber", "MP", "Multi-processor Compilation", "", cmVS7FlagTable::UserValueRequired},
+  {"ProcessorNumber", "MP", "Multi-processor Compilation", "",
+   cmVS7FlagTable::UserValueRequired},
   {"GenerateXMLDocumentationFiles", "doc", "", "true", cmVS7FlagTable::Continue},
-  {"XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "", cmVS7FlagTable::UserValueRequired},
+  {"XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "",
+   cmVS7FlagTable::UserValueRequired},
   {"BrowseInformation", "FR", "", "true", cmVS7FlagTable::Continue},
-  {"BrowseInformationFile", "FR", "Enable Browse Information", "", cmVS7FlagTable::UserValueRequired},
+  {"BrowseInformationFile", "FR", "Enable Browse Information", "",
+   cmVS7FlagTable::UserValueRequired},
 
   //String List Properties
-  {"AdditionalIncludeDirectories", "I", "Additional Include Directories", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"AdditionalUsingDirectories", "AI", "Resolve #using References", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"PreprocessorDefinitions", "D ", "Preprocessor Definitions", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"UndefinePreprocessorDefinitions", "U", "Undefine Preprocessor Definitions", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"DisableSpecificWarnings", "wd", "Disable Specific Warnings", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"ForcedIncludeFiles", "FI", "Forced Include File", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"ForcedUsingFiles", "FU", "Forced #using File", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"TreatSpecificWarningsAsErrors", "we", "Treat Specific Warnings As Errors", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"AdditionalIncludeDirectories", "I",
+   "Additional Include Directories",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"AdditionalUsingDirectories", "AI",
+   "Resolve #using References",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"PreprocessorDefinitions", "D ",
+   "Preprocessor Definitions",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"UndefinePreprocessorDefinitions", "U",
+   "Undefine Preprocessor Definitions",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"DisableSpecificWarnings", "wd",
+   "Disable Specific Warnings",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"ForcedIncludeFiles", "FI",
+   "Forced Include File",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"ForcedUsingFiles", "FU",
+   "Forced #using File",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"TreatSpecificWarningsAsErrors", "we",
+   "Treat Specific Warnings As Errors",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
   {0,0,0,0,0}
 };

+ 61 - 29
Source/cmVS10LibFlagTable.h

@@ -2,32 +2,56 @@ static cmVS7FlagTable cmVS10LibFlagTable[] =
 {
 
   //Enum Properties
-  {"ErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", "PromptImmediately", 0},
-  {"ErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", "QueueForNextLogin", 0},
-  {"ErrorReporting", "ERRORREPORT:SEND", "Send Error Report", "SendErrorReport", 0},
-  {"ErrorReporting", "ERRORREPORT:NONE", "No Error Report", "NoErrorReport", 0},
+  {"ErrorReporting", "ERRORREPORT:PROMPT",
+   "PromptImmediately", "PromptImmediately", 0},
+  {"ErrorReporting", "ERRORREPORT:QUEUE",
+   "Queue For Next Login", "QueueForNextLogin", 0},
+  {"ErrorReporting", "ERRORREPORT:SEND",
+   "Send Error Report", "SendErrorReport", 0},
+  {"ErrorReporting", "ERRORREPORT:NONE",
+   "No Error Report", "NoErrorReport", 0},
 
-  {"TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0},
-  {"TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0},
-  {"TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0},
-  {"TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0},
-  {"TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0},
-  {"TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", 0},
-  {"TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", "MachineMIPSFPU16", 0},
-  {"TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0},
-  {"TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0},
-  {"TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0},
-  {"TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0},
+  {"TargetMachine", "MACHINE:ARM",
+   "MachineARM", "MachineARM", 0},
+  {"TargetMachine", "MACHINE:EBC",
+   "MachineEBC", "MachineEBC", 0},
+  {"TargetMachine", "MACHINE:IA64",
+   "MachineIA64", "MachineIA64", 0},
+  {"TargetMachine", "MACHINE:MIPS",
+   "MachineMIPS", "MachineMIPS", 0},
+  {"TargetMachine", "MACHINE:MIPS16",
+   "MachineMIPS16", "MachineMIPS16", 0},
+  {"TargetMachine", "MACHINE:MIPSFPU",
+   "MachineMIPSFPU", "MachineMIPSFPU", 0},
+  {"TargetMachine", "MACHINE:MIPSFPU16",
+   "MachineMIPSFPU16", "MachineMIPSFPU16", 0},
+  {"TargetMachine", "MACHINE:SH4",
+   "MachineSH4", "MachineSH4", 0},
+  {"TargetMachine", "MACHINE:THUMB",
+   "MachineTHUMB", "MachineTHUMB", 0},
+  {"TargetMachine", "MACHINE:X64",
+   "MachineX64", "MachineX64", 0},
+  {"TargetMachine", "MACHINE:X86",
+   "MachineX86", "MachineX86", 0},
 
-  {"SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0},
-  {"SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0},
-  {"SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", "EFI Application", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", "EFI Boot Service Driver", "EFI Boot Service Driver", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", 0},
-  {"SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0},
-  {"SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0},
+  {"SubSystem", "SUBSYSTEM:CONSOLE",
+   "Console", "Console", 0},
+  {"SubSystem", "SUBSYSTEM:WINDOWS",
+   "Windows", "Windows", 0},
+  {"SubSystem", "SUBSYSTEM:NATIVE",
+   "Native", "Native", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_APPLICATION",
+   "EFI Application", "EFI Application", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER",
+   "EFI Boot Service Driver", "EFI Boot Service Driver", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_ROM",
+   "EFI ROM", "EFI ROM", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER",
+   "EFI Runtime", "EFI Runtime", 0},
+  {"SubSystem", "SUBSYSTEM:WINDOWSCE",
+   "WindowsCE", "WindowsCE", 0},
+  {"SubSystem", "SUBSYSTEM:POSIX",
+   "POSIX", "POSIX", 0},
 
 
   //Bool Properties
@@ -41,10 +65,18 @@ static cmVS7FlagTable cmVS10LibFlagTable[] =
   //Bool Properties With Argument
 
   //String List Properties
-  {"AdditionalDependencies", "", "Additional Dependencies", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"AdditionalLibraryDirectories", "LIBPATH:", "Additional Library Directories", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"IgnoreSpecificDefaultLibraries", "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"ExportNamedFunctions", "EXPORT:", "Export Named Functions", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"RemoveObjects", "REMOVE:", "Remove Objects", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  // Skip [AdditionalDependencies] - no command line Switch.
+  {"AdditionalLibraryDirectories", "LIBPATH:",
+   "Additional Library Directories",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"IgnoreSpecificDefaultLibraries", "NODEFAULTLIB:",
+   "Ignore Specific Default Libraries",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"ExportNamedFunctions", "EXPORT:",
+   "Export Named Functions",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"RemoveObjects", "REMOVE:",
+   "Remove Objects",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
   {0,0,0,0,0}
 };

+ 166 - 85
Source/cmVS10LinkFlagTable.h

@@ -2,79 +2,141 @@ static cmVS7FlagTable cmVS10LinkFlagTable[] =
 {
 
   //Enum Properties
-  {"ShowProgress", "", "Not Set", "NotSet", 0},
-  {"ShowProgress", "VERBOSE", "Display all progress messages", "LinkVerbose", 0},
-  {"ShowProgress", "VERBOSE:Lib", "For Libraries Searched", "LinkVerboseLib", 0},
-  {"ShowProgress", "VERBOSE:ICF", "About COMDAT folding during optimized linking", "LinkVerboseICF", 0},
-  {"ShowProgress", "VERBOSE:REF", "About data removed during optimized linking", "LinkVerboseREF", 0},
-  {"ShowProgress", "VERBOSE:SAFESEH", "About Modules incompatible with SEH", "LinkVerboseSAFESEH", 0},
-  {"ShowProgress", "VERBOSE:CLR", "About linker activity related to managed code", "LinkVerboseCLR", 0},
-
-  {"ForceFileOutput", "FORCE", "Enabled", "Enabled", 0},
-  {"ForceFileOutput", "FORCE:MULTIPLE", "Multiply Defined Symbol Only", "MultiplyDefinedSymbolOnly", 0},
-  {"ForceFileOutput", "FORCE:UNRESOLVED", "Undefined Symbol Only", "UndefinedSymbolOnly", 0},
-
-  {"CreateHotPatchableImage", "FUNCTIONPADMIN", "Enabled", "Enabled", 0},
-  {"CreateHotPatchableImage", "FUNCTIONPADMIN:5", "X86 Image Only", "X86Image", 0},
-  {"CreateHotPatchableImage", "FUNCTIONPADMIN:6", "X64 Image Only", "X64Image", 0},
-  {"CreateHotPatchableImage", "FUNCTIONPADMIN:16", "Itanium Image Only", "ItaniumImage", 0},
-
-  {"UACExecutionLevel", "level='asInvoker'", "asInvoker", "AsInvoker", 0},
-  {"UACExecutionLevel", "level='highestAvailable'", "highestAvailable", "HighestAvailable", 0},
-  {"UACExecutionLevel", "level='requireAdministrator'", "requireAdministrator", "RequireAdministrator", 0},
-
-  {"SubSystem", "", "Not Set", "NotSet", 0},
-  {"SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0},
-  {"SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0},
-  {"SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", "EFI Application", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", "EFI Boot Service Driver", "EFI Boot Service Driver", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0},
-  {"SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", 0},
-  {"SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0},
-  {"SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0},
-
-  {"Driver", "", "Not Set", "NotSet", 0},
-  {"Driver", "Driver", "Driver", "Driver", 0},
-  {"Driver", "DRIVER:UPONLY", "UP Only", "UpOnly", 0},
-  {"Driver", "DRIVER:WDM", "WDM", "WDM", 0},
-
-  {"LinkTimeCodeGeneration", "", "Default", "Default", 0},
-  {"LinkTimeCodeGeneration", "LTCG", "Use Link Time Code Generation", "UseLinkTimeCodeGeneration", 0},
-  {"LinkTimeCodeGeneration", "LTCG:PGInstrument", "Profile Guided Optimization - Instrument", "PGInstrument", 0},
-  {"LinkTimeCodeGeneration", "LTCG:PGOptimize", "Profile Guided Optimization - Optimization", "PGOptimization", 0},
-  {"LinkTimeCodeGeneration", "LTCG:PGUpdate", "Profile Guided Optimization - Update", "PGUpdate", 0},
-
-  {"TargetMachine", "", "Not Set", "NotSet", 0},
-  {"TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0},
-  {"TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0},
-  {"TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0},
-  {"TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0},
-  {"TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0},
-  {"TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", 0},
-  {"TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", "MachineMIPSFPU16", 0},
-  {"TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0},
-  {"TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0},
-  {"TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0},
-  {"TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0},
-
-  {"CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA", "MTA threading attribute", "MTAThreadingAttribute", 0},
-  {"CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA", "STA threading attribute", "STAThreadingAttribute", 0},
-  {"CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE", "Default threading attribute", "DefaultThreadingAttribute", 0},
-
-  {"CLRImageType", "CLRIMAGETYPE:IJW", "Force IJW image", "ForceIJWImage", 0},
-  {"CLRImageType", "CLRIMAGETYPE:PURE", "Force Pure IL Image", "ForcePureILImage", 0},
-  {"CLRImageType", "CLRIMAGETYPE:SAFE", "Force Safe IL Image", "ForceSafeILImage", 0},
-  {"CLRImageType", "", "Default image type", "Default", 0},
-
-  {"LinkErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", "PromptImmediately", 0},
-  {"LinkErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", "QueueForNextLogin", 0},
-  {"LinkErrorReporting", "ERRORREPORT:SEND", "Send Error Report", "SendErrorReport", 0},
-  {"LinkErrorReporting", "ERRORREPORT:NONE", "No Error Report", "NoErrorReport", 0},
-
-  {"CLRSupportLastError", "CLRSupportLastError", "Enabled", "Enabled", 0},
-  {"CLRSupportLastError", "CLRSupportLastError:NO", "Disabled", "Disabled", 0},
-  {"CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL", "System Dlls Only", "SystemDlls", 0},
+  {"ShowProgress", "",
+   "Not Set", "NotSet", 0},
+  {"ShowProgress", "VERBOSE",
+   "Display all progress messages", "LinkVerbose", 0},
+  {"ShowProgress", "VERBOSE:Lib",
+   "For Libraries Searched", "LinkVerboseLib", 0},
+  {"ShowProgress", "VERBOSE:ICF",
+   "About COMDAT folding during optimized linking", "LinkVerboseICF", 0},
+  {"ShowProgress", "VERBOSE:REF",
+   "About data removed during optimized linking", "LinkVerboseREF", 0},
+  {"ShowProgress", "VERBOSE:SAFESEH",
+   "About Modules incompatible with SEH", "LinkVerboseSAFESEH", 0},
+  {"ShowProgress", "VERBOSE:CLR",
+   "About linker activity related to managed code", "LinkVerboseCLR", 0},
+
+  {"ForceFileOutput", "FORCE",
+   "Enabled", "Enabled", 0},
+  {"ForceFileOutput", "FORCE:MULTIPLE",
+   "Multiply Defined Symbol Only", "MultiplyDefinedSymbolOnly", 0},
+  {"ForceFileOutput", "FORCE:UNRESOLVED",
+   "Undefined Symbol Only", "UndefinedSymbolOnly", 0},
+
+  {"CreateHotPatchableImage", "FUNCTIONPADMIN",
+   "Enabled", "Enabled", 0},
+  {"CreateHotPatchableImage", "FUNCTIONPADMIN:5",
+   "X86 Image Only", "X86Image", 0},
+  {"CreateHotPatchableImage", "FUNCTIONPADMIN:6",
+   "X64 Image Only", "X64Image", 0},
+  {"CreateHotPatchableImage", "FUNCTIONPADMIN:16",
+   "Itanium Image Only", "ItaniumImage", 0},
+
+  {"UACExecutionLevel", "level='asInvoker'",
+   "asInvoker", "AsInvoker", 0},
+  {"UACExecutionLevel", "level='highestAvailable'",
+   "highestAvailable", "HighestAvailable", 0},
+  {"UACExecutionLevel", "level='requireAdministrator'",
+   "requireAdministrator", "RequireAdministrator", 0},
+
+  {"SubSystem", "",
+   "Not Set", "NotSet", 0},
+  {"SubSystem", "SUBSYSTEM:CONSOLE",
+   "Console", "Console", 0},
+  {"SubSystem", "SUBSYSTEM:WINDOWS",
+   "Windows", "Windows", 0},
+  {"SubSystem", "SUBSYSTEM:NATIVE",
+   "Native", "Native", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_APPLICATION",
+   "EFI Application", "EFI Application", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER",
+   "EFI Boot Service Driver", "EFI Boot Service Driver", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_ROM",
+   "EFI ROM", "EFI ROM", 0},
+  {"SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER",
+   "EFI Runtime", "EFI Runtime", 0},
+  {"SubSystem", "SUBSYSTEM:WINDOWSCE",
+   "WindowsCE", "WindowsCE", 0},
+  {"SubSystem", "SUBSYSTEM:POSIX",
+   "POSIX", "POSIX", 0},
+
+  {"Driver", "",
+   "Not Set", "NotSet", 0},
+  {"Driver", "Driver",
+   "Driver", "Driver", 0},
+  {"Driver", "DRIVER:UPONLY",
+   "UP Only", "UpOnly", 0},
+  {"Driver", "DRIVER:WDM",
+   "WDM", "WDM", 0},
+
+  {"LinkTimeCodeGeneration", "",
+   "Default", "Default", 0},
+  {"LinkTimeCodeGeneration", "LTCG",
+   "Use Link Time Code Generation", "UseLinkTimeCodeGeneration", 0},
+  {"LinkTimeCodeGeneration", "LTCG:PGInstrument",
+   "Profile Guided Optimization - Instrument", "PGInstrument", 0},
+  {"LinkTimeCodeGeneration", "LTCG:PGOptimize",
+   "Profile Guided Optimization - Optimization", "PGOptimization", 0},
+  {"LinkTimeCodeGeneration", "LTCG:PGUpdate",
+   "Profile Guided Optimization - Update", "PGUpdate", 0},
+
+  {"TargetMachine", "",
+   "Not Set", "NotSet", 0},
+  {"TargetMachine", "MACHINE:ARM",
+   "MachineARM", "MachineARM", 0},
+  {"TargetMachine", "MACHINE:EBC",
+   "MachineEBC", "MachineEBC", 0},
+  {"TargetMachine", "MACHINE:IA64",
+   "MachineIA64", "MachineIA64", 0},
+  {"TargetMachine", "MACHINE:MIPS",
+   "MachineMIPS", "MachineMIPS", 0},
+  {"TargetMachine", "MACHINE:MIPS16",
+   "MachineMIPS16", "MachineMIPS16", 0},
+  {"TargetMachine", "MACHINE:MIPSFPU",
+   "MachineMIPSFPU", "MachineMIPSFPU", 0},
+  {"TargetMachine", "MACHINE:MIPSFPU16",
+   "MachineMIPSFPU16", "MachineMIPSFPU16", 0},
+  {"TargetMachine", "MACHINE:SH4",
+   "MachineSH4", "MachineSH4", 0},
+  {"TargetMachine", "MACHINE:THUMB",
+   "MachineTHUMB", "MachineTHUMB", 0},
+  {"TargetMachine", "MACHINE:X64",
+   "MachineX64", "MachineX64", 0},
+  {"TargetMachine", "MACHINE:X86",
+   "MachineX86", "MachineX86", 0},
+
+  {"CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA",
+   "MTA threading attribute", "MTAThreadingAttribute", 0},
+  {"CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA",
+   "STA threading attribute", "STAThreadingAttribute", 0},
+  {"CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE",
+   "Default threading attribute", "DefaultThreadingAttribute", 0},
+
+  {"CLRImageType", "CLRIMAGETYPE:IJW",
+   "Force IJW image", "ForceIJWImage", 0},
+  {"CLRImageType", "CLRIMAGETYPE:PURE",
+   "Force Pure IL Image", "ForcePureILImage", 0},
+  {"CLRImageType", "CLRIMAGETYPE:SAFE",
+   "Force Safe IL Image", "ForceSafeILImage", 0},
+  {"CLRImageType", "",
+   "Default image type", "Default", 0},
+
+  {"LinkErrorReporting", "ERRORREPORT:PROMPT",
+   "PromptImmediately", "PromptImmediately", 0},
+  {"LinkErrorReporting", "ERRORREPORT:QUEUE",
+   "Queue For Next Login", "QueueForNextLogin", 0},
+  {"LinkErrorReporting", "ERRORREPORT:SEND",
+   "Send Error Report", "SendErrorReport", 0},
+  {"LinkErrorReporting", "ERRORREPORT:NONE",
+   "No Error Report", "NoErrorReport", 0},
+
+  {"CLRSupportLastError", "CLRSupportLastError",
+   "Enabled", "Enabled", 0},
+  {"CLRSupportLastError", "CLRSupportLastError:NO",
+   "Disabled", "Disabled", 0},
+  {"CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL",
+   "System Dlls Only", "SystemDlls", 0},
 
 
   //Bool Properties
@@ -130,21 +192,40 @@ static cmVS7FlagTable cmVS10LinkFlagTable[] =
 
   //Bool Properties With Argument
   {"EnableUAC", "MANIFESTUAC:NO", "", "false", cmVS7FlagTable::Continue},
-  {"EnableUAC", "MANIFESTUAC:NO", "Enable User Account Control (UAC)", "", cmVS7FlagTable::UserValueRequired},
+  {"EnableUAC", "MANIFESTUAC:NO", "Enable User Account Control (UAC)", "",
+   cmVS7FlagTable::UserValueRequired},
   {"EnableUAC", "MANIFESTUAC:", "", "true", cmVS7FlagTable::Continue},
-  {"UACUIAccess", "MANIFESTUAC:", "Enable User Account Control (UAC)", "", cmVS7FlagTable::UserValueRequired},
+  {"UACUIAccess", "MANIFESTUAC:", "Enable User Account Control (UAC)", "",
+   cmVS7FlagTable::UserValueRequired},
   {"GenerateMapFile", "MAP", "", "true", cmVS7FlagTable::Continue},
-  {"MapFileName", "MAP", "Generate Map File", "", cmVS7FlagTable::UserValueRequired},
+  {"MapFileName", "MAP", "Generate Map File", "",
+   cmVS7FlagTable::UserValueRequired},
 
   //String List Properties
-  {"AdditionalLibraryDirectories", "LIBPATH:", "Additional Library Directories", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-//  {"AdditionalDependencies", "", "Additional Dependencies", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"IgnoreSpecificDefaultLibraries", "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"AddModuleNamesToAssembly", "ASSEMBLYMODULE:", "Add Module to Assembly", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"EmbedManagedResourceFile", "ASSEMBLYRESOURCE:", "Embed Managed Resource File", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"DelayLoadDLLs", "DELAYLOAD:", "Delay Loaded Dlls", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:", "Assembly Link Resource", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
-  {"AdditionalManifestDependencies", "MANIFESTDEPENDENCY:", "Additional Manifest Dependencies", "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"AdditionalLibraryDirectories", "LIBPATH:",
+   "Additional Library Directories",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  // Skip [AdditionalDependencies] - no command line Switch.
+  {"IgnoreSpecificDefaultLibraries", "NODEFAULTLIB:",
+   "Ignore Specific Default Libraries",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"AddModuleNamesToAssembly", "ASSEMBLYMODULE:",
+   "Add Module to Assembly",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"EmbedManagedResourceFile", "ASSEMBLYRESOURCE:",
+   "Embed Managed Resource File",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"ForceSymbolReferences", "INCLUDE:",
+   "Force Symbol References",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"DelayLoadDLLs", "DELAYLOAD:",
+   "Delay Loaded Dlls",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:",
+   "Assembly Link Resource",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+  {"AdditionalManifestDependencies", "MANIFESTDEPENDENCY:",
+   "Additional Manifest Dependencies",
+   "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
   {0,0,0,0,0}
 };

+ 14 - 10
Source/cmVisualStudio10TargetGenerator.cxx

@@ -66,7 +66,7 @@ void cmVisualStudio10TargetGenerator::WritePlatformConfigTag(
   stream->width(indentLevel*2 ); 
   (*stream ) << "";
   (*stream ) << "<" << tag 
-                            << " Condition=\"'$(Configuration)|$(Platform)'=='";
+             << " Condition=\"'$(Configuration)|$(Platform)'=='";
   (*stream ) << config << this->Platform << "'\"";
   if(attribute)
     {
@@ -268,11 +268,12 @@ cmVisualStudio10TargetGenerator::WriteCustomRule(cmSourceFile* source,
   for(std::vector<std::string>::iterator i = configs->begin();
       i != configs->end(); ++i)
     {
-    std::string script = lg->ConstructScript(command.GetCommandLines(),
-                                             command.GetWorkingDirectory(),
-                                             i->c_str(),
-                                             command.GetEscapeOldStyle(),
-                                             command.GetEscapeAllowMakeVars());
+    std::string script = 
+      lg->ConstructScript(command.GetCommandLines(),
+                          command.GetWorkingDirectory(),
+                          i->c_str(),
+                          command.GetEscapeOldStyle(),
+                          command.GetEscapeAllowMakeVars());
     this->WritePlatformConfigTag("Message",i->c_str(), 3);
     (*this->BuildFileStream ) << comment << "</Message>\n";
     this->WritePlatformConfigTag("Command", i->c_str(), 3);
@@ -325,13 +326,15 @@ void cmVisualStudio10TargetGenerator::WriteGroups()
   
 /*
   <?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project ToolsVersion="4.0" 
+xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup>
     <CustomBuild Include="..\CMakeLists.txt" />
   </ItemGroup>
   <ItemGroup>
     <Filter Include="Source Files">
-      <UniqueIdentifier>{05072589-c7be-439a-8fd7-5db6ee5008a9}</UniqueIdentifier>
+      <UniqueIdentifier>{05072589-c7be-439a-8fd7-5db6ee5008a9}
+      </UniqueIdentifier>
     </Filter>
   </ItemGroup>
   <ItemGroup>
@@ -388,7 +391,7 @@ void cmVisualStudio10TargetGenerator::WriteCLSources()
     }
   else
     {
-    std::vector<cmSourceFile*>const & sources = this->Target->GetSourceFiles();
+    std::vector<cmSourceFile*>const& sources = this->Target->GetSourceFiles();
     for(std::vector<cmSourceFile*>::const_iterator source = sources.begin();
         source != sources.end(); ++source)
       {
@@ -943,7 +946,8 @@ WriteMidlOptions(std::string const& /*config*/,
       <HeaderFileName>%(FileName).h</HeaderFileName>
       <DllDataFileName>
       </DllDataFileName>
-      <InterfaceIdentifierFileName>%(FileName)_i.c</InterfaceIdentifierFileName>
+      <InterfaceIdentifierFileName>%(FileName)_i.c
+      </InterfaceIdentifierFileName>
       <ProxyFileName>%(FileName)_p.c</ProxyFileName>
   */
   this->WriteString("</Midl>\n", 2);

+ 7 - 4
Source/cmparseMSBuildXML.py

@@ -217,7 +217,7 @@ class MSBuildToCMake:
     toReturn += "\n  //Enum Properties\n"
     for i in self.enumProperties:
       for j in i.values:
-        toReturn+="  {\""+i.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\", \""+j.DisplayName+"\", \""+j.attributes["Name"]+"\", 0},\n"
+        toReturn+="  {\""+i.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n   \""+j.DisplayName+"\", \""+j.attributes["Name"]+"\", 0},\n"
       toReturn += "\n"
 
     
@@ -234,14 +234,17 @@ class MSBuildToCMake:
       if i.argumentProperty != "":
         if i.attributes["ReverseSwitch"] != "":
           toReturn += "  {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \"\", \"false\", cmVS7FlagTable::Continue},\n"
-          toReturn += "  {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \""+i.DisplayName+"\", \"\", cmVS7FlagTable::UserValueRequired},\n"
+          toReturn += "  {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \""+i.DisplayName+"\", \"\",\n   cmVS7FlagTable::UserValueRequired},\n"
         if i.attributes["Switch"] != "":
           toReturn += "  {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\", \"\", \"true\", cmVS7FlagTable::Continue},\n"
-          toReturn += "  {\""+i.argumentProperty+"\", \""+i.attributes["Switch"]+"\", \""+i.DisplayName+"\", \"\", cmVS7FlagTable::UserValueRequired},\n"
+          toReturn += "  {\""+i.argumentProperty+"\", \""+i.attributes["Switch"]+"\", \""+i.DisplayName+"\", \"\",\n   cmVS7FlagTable::UserValueRequired},\n"
     
     toReturn += "\n  //String List Properties\n"
     for i in self.stringListProperties:
-      toReturn+="  {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\", \""+i.DisplayName+"\", \"\", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},\n"
+      if i.attributes["Switch"] == "":
+        toReturn += "  // Skip [" + i.attributes["Name"] + "] - no command line Switch.\n";
+      else:
+        toReturn +="  {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\",\n   \""+i.DisplayName+"\",\n   \"\", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},\n"
 
     toReturn += "  {0,0,0,0,0}\n};"
     return toReturn