void WriteProjectConfigurationName(ProjectConfiguration conf)
 {
     Write(conf.IsDebug ? "Debug " : "Release ");
     Write(conf.Name);
 }
 void OutputProjectConfiguration(ProjectConfiguration conf, bool x64)
 {
     if (targetVS == TargetVS.VS2008)
     {
         WriteLine("\t\t<Configuration");
         Write("\t\t\tName=\"");
         WriteProjectConfigurationName(conf);
         WriteLine(x64 ? "|x64\"" : "|Win32\"");
         WriteLine("\t\t\tOutputDirectory=\"$(SolutionDir)$(ConfigurationName)\"");
         WriteLine("\t\t\tIntermediateDirectory=\"$(ConfigurationName)\"");
         WriteLine("\t\t\tConfigurationType=\"2\"");
         WriteLine("\t\t\tCharacterSet=\"1\"");
         WriteLine("\t\t\tManagedExtensions=\"1\"");
         if (!conf.IsDebug)
         {
             WriteLine("\t\t\tWholeProgramOptimization=\"1\"");
         }
         WriteLine("\t\t\t>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCPreBuildEventTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCCustomBuildTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCXMLDataGeneratorTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCWebServiceProxyGeneratorTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCMIDLTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCCLCompilerTool\"");
         if (conf.IsDebug)
         {
             WriteLine("\t\t\t\tOptimization=\"0\"");
         }
         else
         {
             WriteLine("\t\t\t\tInlineFunctionExpansion=\"2\"");
             //WriteLine("\t\t\t\tFavorSizeOrSpeed=\"2\"");
             WriteLine("\t\t\t\tFavorSizeOrSpeed=\"1\"");
         }
         if (!string.IsNullOrEmpty(IncludeDirectories))
         {
             Write("\t\t\t\tAdditionalIncludeDirectories=\"");
             Write(IncludeDirectories);
             WriteLine("\"");
         }
         Write("\t\t\t\tAdditionalUsingDirectories=\"");
         Write(conf.UsingDirectories);
         WriteLine("\"");
         Write("\t\t\t\tPreprocessorDefinitions=\"");
         Write(conf.Definitions);
         if (!string.IsNullOrEmpty(conf.Definitions) && !conf.Definitions.EndsWith(";"))
         {
             Write(';');
         }
         //if (!x64)
         {
             Write("WIN32;");
         }
         Write(conf.IsDebug ? "_DEBUG;" : "NDEBUG;");
         WriteLine("\"");
         if (conf.IsDebug)
         {
             WriteLine("\t\t\t\tRuntimeLibrary=\"3\"");
         }
         else
         {
             WriteLine("\t\t\t\tRuntimeLibrary=\"2\"");
         }
         WriteLine("\t\t\t\tFloatingPointModel=\"0\"");
         //WriteLine("\t\t\t\tEnableEnhancedInstructionSet=\"0\"");
         WriteLine("\t\t\t\tUsePrecompiledHeader=\"2\"");
         if (conf.IsDebug)
         {
             WriteLine("\t\t\t\tWarningLevel=\"3\"");
             WriteLine("\t\t\t\tDebugInformationFormat=\"3\"");
             WriteLine("\t\t\t\tDisableSpecificWarnings=\"4793\"");
         }
         else
         {
             WriteLine("\t\t\t\tWarningLevel=\"1\"");
         }
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCManagedResourceCompilerTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCResourceCompilerTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCPreLinkEventTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCLinkerTool\"");
         Write("\t\t\t\tAdditionalDependencies=\"");
         if (conf.IsDebug)
         {
             WriteLine("LinearMath_Debug.lib BulletCollision_Debug.lib BulletDynamics_Debug.lib\"");
         }
         else
         {
             WriteLine("LinearMath_MinSizeRel.lib BulletCollision_MinsizeRel.lib BulletDynamics_MinsizeRel.lib\"");
         }
         WriteLine("\t\t\t\tLinkIncremental=\"1\"");
         if (conf.IsDebug)
         {
             if (!string.IsNullOrEmpty(LibraryDirectoriesDebug))
             {
                 Write("\t\t\t\tAdditionalLibraryDirectories=\"");
                 Write(LibraryDirectoriesDebug);
                 WriteLine("\"");
             }
             WriteLine("\t\t\t\tGenerateDebugInformation=\"true\"");
             WriteLine("\t\t\t\tAssemblyDebug=\"1\"");
         }
         else
         {
             if (!string.IsNullOrEmpty(LibraryDirectoriesRelease))
             {
                 Write("\t\t\t\tAdditionalLibraryDirectories=\"");
                 Write(LibraryDirectoriesRelease);
                 WriteLine("\"");
             }
             WriteLine("\t\t\t\tGenerateDebugInformation=\"false\"");
         }
         WriteLine("\t\t\t\tTargetMachine=\"1\"");
         //WriteLine("\t\t\t\tCLRUnmanagedCodeCheck=\"true\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCALinkTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCManifestTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCXDCMakeTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCBscMakeTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCFxCopTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCAppVerifierTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCPostBuildEventTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t</Configuration>");
     }
     else
     {
         Write("    <ProjectConfiguration Include=\"");
         WriteProjectConfigurationName(conf);
         WriteLine(x64 ? "|x64\">" : "|Win32\">");
         Write("      <Configuration>");
         WriteProjectConfigurationName(conf);
         WriteLine("</Configuration>");
         Write("      <Platform>");
         Write(x64 ? "x64" : "Win32");
         WriteLine("</Platform>");
         WriteLine("    </ProjectConfiguration>");
     }
 }
 void WriteProjectConfigurationNameSln(ProjectConfiguration conf)
 {
     WriteSln(conf.IsDebug ? "Debug " : "Release ");
     WriteSln(conf.Name);
 }
 void OutputItemDefinitionGroup(ProjectConfiguration conf, bool x64)
 {
     Write("  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(x64 ? "|x64" : "|Win32");
     WriteLine("'\">");
     WriteLine("    <ClCompile>");
     if (conf.IsDebug)
     {
         WriteLine("      <Optimization>Disabled</Optimization>");
     }
     else
     {
         WriteLine("      <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>");
         WriteLine("      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>");
     }
     if (!string.IsNullOrEmpty(IncludeDirectories))
     {
         Write("      <AdditionalIncludeDirectories>");
         Write(IncludeDirectories);
         WriteLine("%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>");
     }
     Write("      <AdditionalUsingDirectories>");
     Write(conf.UsingDirectories);
     if (!string.IsNullOrEmpty(conf.UsingDirectories) && !conf.UsingDirectories.EndsWith(";"))
     {
         Write(';');
     }
     WriteLine("%(AdditionalUsingDirectories)</AdditionalUsingDirectories>");
     Write("      <PreprocessorDefinitions>");
     Write(conf.Definitions);
     if (!string.IsNullOrEmpty(conf.Definitions) && !conf.Definitions.EndsWith(";"))
     {
         Write(';');
     }
     //if (!x64)
     {
         Write("WIN32;");
     }
     Write(conf.IsDebug ? "_DEBUG;" : "NDEBUG;");
     WriteLine("%(PreprocessorDefinitions)</PreprocessorDefinitions>");
     if (conf.IsDebug)
     {
         WriteLine("      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>");
     }
     else
     {
         WriteLine("      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>");
         WriteLine("      <BufferSecurityCheck>false</BufferSecurityCheck>");
     }
     WriteLine("      <FloatingPointModel>Precise</FloatingPointModel>");
     WriteLine("      <PrecompiledHeader>Use</PrecompiledHeader>");
     if (conf.IsDebug)
     {
         WriteLine("      <WarningLevel>Level3</WarningLevel>");
         WriteLine("      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>");
         WriteLine("      <DisableSpecificWarnings>4793;%(DisableSpecificWarnings)</DisableSpecificWarnings>");
     }
     else
     {
         WriteLine("      <WarningLevel>Level1</WarningLevel>");
     }
     WriteLine("    </ClCompile>");
     WriteLine("    <Link>");
     if (conf.IsDebug)
     {
         WriteLine("      <AdditionalDependencies>LinearMath_Debug.lib;BulletCollision_Debug.lib;BulletDynamics_Debug.lib</AdditionalDependencies>");
         if (!string.IsNullOrEmpty(LibraryDirectoriesDebug))
         {
             Write("      <AdditionalLibraryDirectories>");
             Write(LibraryDirectoriesDebug);
             WriteLine("%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>");
         }
         WriteLine("      <GenerateDebugInformation>true</GenerateDebugInformation>");
         WriteLine("      <AssemblyDebug>true</AssemblyDebug>");
     }
     else
     {
         WriteLine("      <AdditionalDependencies>LinearMath_MinSizeRel.lib;BulletCollision_MinsizeRel.lib;BulletDynamics_MinsizeRel.lib</AdditionalDependencies>");
         if (!string.IsNullOrEmpty(LibraryDirectoriesRelease))
         {
             Write("      <AdditionalLibraryDirectories>");
             Write(LibraryDirectoriesRelease);
             WriteLine("%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>");
         }
     }
     if (!x64)
     {
         WriteLine("      <TargetMachine>MachineX86</TargetMachine>");
     }
     //WriteLine("      <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck>");
     WriteLine("    </Link>");
     WriteLine("  </ItemDefinitionGroup>");
 }
 void OutputPropertyGroupConfiguration2(ProjectConfiguration conf, bool x64)
 {
     Write("    <OutDir Condition=\"'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(x64 ? "|x64" : "|Win32");
     WriteLine("'\">$(SolutionDir)$(Configuration)\\</OutDir>");
     Write("    <IntDir Condition=\"'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(x64 ? "|x64" : "|Win32");
     WriteLine("'\">$(Configuration)\\</IntDir>");
     Write("    <LinkIncremental Condition=\"'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(x64 ? "|x64" : "|Win32");
     WriteLine("'\">false</LinkIncremental>");
 }
 void OutputPropertyGroupConfiguration(ProjectConfiguration conf, bool x64)
 {
     Write("  <PropertyGroup Condition=\"\'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(x64 ? "|x64" : "|Win32");
     WriteLine("'\" Label=\"Configuration\">");
     WriteLine("    <ConfigurationType>DynamicLibrary</ConfigurationType>");
     WriteLine("    <CharacterSet>Unicode</CharacterSet>");
     WriteLine("    <CLRSupport>true</CLRSupport>");
     if (conf.IsDebug)
     {
         if (targetVS == TargetVS.VS2012 || targetVS == TargetVS.VS2013)
         {
             WriteLine("    <UseDebugLibraries>true</UseDebugLibraries>");
         }
     }
     else
     {
         WriteLine("    <WholeProgramOptimization>true</WholeProgramOptimization>");
     }
     if (targetVS == TargetVS.VS2012)
     {
         WriteLine("    <PlatformToolset>v110</PlatformToolset>");
     }
     else if (targetVS == TargetVS.VS2013)
     {
         WriteLine("    <PlatformToolset>v120</PlatformToolset>");
     }
     WriteLine("  </PropertyGroup>");
 }
 void OutputProjectConfiguration(ProjectConfiguration conf, bool x64)
 {
     if (targetVS == TargetVS.VS2008)
     {
         WriteLine("\t\t<Configuration");
         Write("\t\t\tName=\"");
         WriteProjectConfigurationName(conf);
         WriteLine(x64 ? "|x64\"" : "|Win32\"");
         WriteLine("\t\t\tOutputDirectory=\"$(SolutionDir)$(ConfigurationName)\"");
         WriteLine("\t\t\tIntermediateDirectory=\"$(ConfigurationName)\"");
         WriteLine("\t\t\tConfigurationType=\"2\"");
         WriteLine("\t\t\tCharacterSet=\"1\"");
         WriteLine("\t\t\tManagedExtensions=\"1\"");
         if (!conf.IsDebug)
         {
             WriteLine("\t\t\tWholeProgramOptimization=\"1\"");
         }
         WriteLine("\t\t\t>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCPreBuildEventTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCCustomBuildTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCXMLDataGeneratorTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCWebServiceProxyGeneratorTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCMIDLTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCCLCompilerTool\"");
         if (conf.IsDebug)
         {
             WriteLine("\t\t\t\tOptimization=\"0\"");
         }
         else
         {
             WriteLine("\t\t\t\tInlineFunctionExpansion=\"2\"");
             //WriteLine("\t\t\t\tFavorSizeOrSpeed=\"2\"");
             WriteLine("\t\t\t\tFavorSizeOrSpeed=\"1\"");
         }
         if (!string.IsNullOrEmpty(IncludeDirectories))
         {
             Write("\t\t\t\tAdditionalIncludeDirectories=\"");
             Write(IncludeDirectories);
             WriteLine("\"");
         }
         Write("\t\t\t\tAdditionalUsingDirectories=\"");
         Write(conf.UsingDirectories);
         WriteLine("\"");
         Write("\t\t\t\tPreprocessorDefinitions=\"");
         Write(conf.Definitions);
         if (!string.IsNullOrEmpty(conf.Definitions) && !conf.Definitions.EndsWith(";"))
         {
             Write(';');
         }
         //if (!x64)
         {
             Write("WIN32;");
         }
         Write(conf.IsDebug ? "_DEBUG;" : "NDEBUG;");
         WriteLine("\"");
         if (conf.IsDebug)
         {
             WriteLine("\t\t\t\tRuntimeLibrary=\"3\"");
         }
         else
         {
             WriteLine("\t\t\t\tRuntimeLibrary=\"2\"");
         }
         WriteLine("\t\t\t\tFloatingPointModel=\"0\"");
         //WriteLine("\t\t\t\tEnableEnhancedInstructionSet=\"0\"");
         WriteLine("\t\t\t\tUsePrecompiledHeader=\"2\"");
         if (conf.IsDebug)
         {
             WriteLine("\t\t\t\tWarningLevel=\"3\"");
             WriteLine("\t\t\t\tDebugInformationFormat=\"3\"");
             WriteLine("\t\t\t\tDisableSpecificWarnings=\"4793\"");
         }
         else
         {
             WriteLine("\t\t\t\tWarningLevel=\"1\"");
         }
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCManagedResourceCompilerTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCResourceCompilerTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCPreLinkEventTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCLinkerTool\"");
         Write("\t\t\t\tAdditionalDependencies=\"");
         if (conf.IsDebug)
         {
             WriteLine("LinearMath_Debug.lib BulletCollision_Debug.lib BulletDynamics_Debug.lib\"");
         }
         else
         {
             WriteLine("LinearMath_MinSizeRel.lib BulletCollision_MinsizeRel.lib BulletDynamics_MinsizeRel.lib\"");
         }
         WriteLine("\t\t\t\tLinkIncremental=\"1\"");
         if (conf.IsDebug)
         {
             if (!string.IsNullOrEmpty(LibraryDirectoriesDebug))
             {
                 Write("\t\t\t\tAdditionalLibraryDirectories=\"");
                 Write(LibraryDirectoriesDebug);
                 WriteLine("\"");
             }
             WriteLine("\t\t\t\tGenerateDebugInformation=\"true\"");
             WriteLine("\t\t\t\tAssemblyDebug=\"1\"");
         }
         else
         {
             if (!string.IsNullOrEmpty(LibraryDirectoriesRelease))
             {
                 Write("\t\t\t\tAdditionalLibraryDirectories=\"");
                 Write(LibraryDirectoriesRelease);
                 WriteLine("\"");
             }
             WriteLine("\t\t\t\tGenerateDebugInformation=\"false\"");
         }
         WriteLine("\t\t\t\tTargetMachine=\"1\"");
         //WriteLine("\t\t\t\tCLRUnmanagedCodeCheck=\"true\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCALinkTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCManifestTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCXDCMakeTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCBscMakeTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCFxCopTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCAppVerifierTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t\t<Tool");
         WriteLine("\t\t\t\tName=\"VCPostBuildEventTool\"");
         WriteLine("\t\t\t/>");
         WriteLine("\t\t</Configuration>");
     }
     else
     {
         Write("    <ProjectConfiguration Include=\"");
         WriteProjectConfigurationName(conf);
         WriteLine(x64 ? "|x64\">" : "|Win32\">");
         Write("      <Configuration>");
         WriteProjectConfigurationName(conf);
         WriteLine("</Configuration>");
         Write("      <Platform>");
         Write(x64 ? "x64" : "Win32");
         WriteLine("</Platform>");
         WriteLine("    </ProjectConfiguration>");
     }
 }
 void OutputItemDefinitionGroup(ProjectConfiguration conf, bool x64)
 {
     Write("  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(x64 ? "|x64" : "|Win32");
     WriteLine("'\">");
     WriteLine("    <ClCompile>");
     if (conf.IsDebug)
     {
         WriteLine("      <Optimization>Disabled</Optimization>");
     }
     else
     {
         WriteLine("      <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>");
         WriteLine("      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>");
     }
     if (!string.IsNullOrEmpty(IncludeDirectories))
     {
         Write("      <AdditionalIncludeDirectories>");
         Write(IncludeDirectories);
         WriteLine("%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>");
     }
     Write("      <AdditionalUsingDirectories>");
     Write(conf.UsingDirectories);
     if (!string.IsNullOrEmpty(conf.UsingDirectories) && !conf.UsingDirectories.EndsWith(";"))
     {
         Write(';');
     }
     WriteLine("%(AdditionalUsingDirectories)</AdditionalUsingDirectories>");
     Write("      <PreprocessorDefinitions>");
     Write(conf.Definitions);
     if (!string.IsNullOrEmpty(conf.Definitions) && !conf.Definitions.EndsWith(";"))
     {
         Write(';');
     }
     //if (!x64)
     {
         Write("WIN32;");
     }
     Write(conf.IsDebug ? "_DEBUG;" : "NDEBUG;");
     WriteLine("%(PreprocessorDefinitions)</PreprocessorDefinitions>");
     if (conf.IsDebug)
     {
         WriteLine("      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>");
     }
     else
     {
         WriteLine("      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>");
         WriteLine("      <BufferSecurityCheck>false</BufferSecurityCheck>");
     }
     WriteLine("      <FloatingPointModel>Precise</FloatingPointModel>");
     WriteLine("      <PrecompiledHeader>Use</PrecompiledHeader>");
     if (conf.IsDebug)
     {
         WriteLine("      <WarningLevel>Level3</WarningLevel>");
         WriteLine("      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>");
         WriteLine("      <DisableSpecificWarnings>4793;%(DisableSpecificWarnings)</DisableSpecificWarnings>");
     }
     else
     {
         WriteLine("      <WarningLevel>Level1</WarningLevel>");
     }
     WriteLine("    </ClCompile>");
     WriteLine("    <Link>");
     if (conf.IsDebug)
     {
         WriteLine("      <AdditionalDependencies>LinearMath_Debug.lib;BulletCollision_Debug.lib;BulletDynamics_Debug.lib</AdditionalDependencies>");
         if (!string.IsNullOrEmpty(LibraryDirectoriesDebug))
         {
             Write("      <AdditionalLibraryDirectories>");
             Write(LibraryDirectoriesDebug);
             WriteLine("%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>");
         }
         WriteLine("      <GenerateDebugInformation>true</GenerateDebugInformation>");
         WriteLine("      <AssemblyDebug>true</AssemblyDebug>");
     }
     else
     {
         WriteLine("      <AdditionalDependencies>LinearMath_MinSizeRel.lib;BulletCollision_MinsizeRel.lib;BulletDynamics_MinsizeRel.lib</AdditionalDependencies>");
         if (!string.IsNullOrEmpty(LibraryDirectoriesRelease))
         {
             Write("      <AdditionalLibraryDirectories>");
             Write(LibraryDirectoriesRelease);
             WriteLine("%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>");
         }
     }
     if (!x64)
     {
         WriteLine("      <TargetMachine>MachineX86</TargetMachine>");
     }
     //WriteLine("      <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck>");
     WriteLine("    </Link>");
     WriteLine("  </ItemDefinitionGroup>");
 }
 void OutputImportGroupPropertySheets(ProjectConfiguration conf)
 {
     Write("  <ImportGroup Condition=\"'$(Configuration)|$(Platform)'=='");
     WriteProjectConfigurationName(conf);
     Write(X64 ? "|x64" : "|Win32");
     WriteLine("'\" Label=\"PropertySheets\">");
     WriteLine("    <Import Project=\"$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props\" Condition=\"exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')\" Label=\"LocalAppDataPlatform\" />");
     WriteLine("  </ImportGroup>");
 }