Support both dynamic CRT and static CRT configurations on VS11 build. The public download needs the static one for user simplicity, while some downstream tools need the dynamic one.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24977 e7fa87d3-cd2b-0410-9028-fcbf551c1848
diff --git a/glslang.vcxproj b/glslang.vcxproj
index a95ec88..0e2afa8 100644
--- a/glslang.vcxproj
+++ b/glslang.vcxproj
@@ -1,10 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug CRT DLL|Win32">
+ <Configuration>Debug CRT DLL</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
+ <ProjectConfiguration Include="Release CRT DLL|Win32">
+ <Configuration>Release CRT DLL</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
@@ -21,33 +29,60 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110_xp</PlatformToolset>
</PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseOfMfc>false</UseOfMfc>
+ <CharacterSet>MultiByte</CharacterSet>
+ <PlatformToolset>v110_xp</PlatformToolset>
+ </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110_xp</PlatformToolset>
</PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <CharacterSet>MultiByte</CharacterSet>
+ <PlatformToolset>v110_xp</PlatformToolset>
+ </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">glslang\UserM_Debug\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">glslang\UserM_Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">glslang\UserM_Debug\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">glslang\UserM_Debug\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">glslang\UserM_Release\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">glslang\UserM_Release\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">glslang\UserM_Release\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">glslang\UserM_Release\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">false</LinkIncremental>
<PostBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</PostBuildEventUseInBuild>
+ <PostBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">false</PostBuildEventUseInBuild>
<TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.lib</TargetExt>
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">.lib</TargetExt>
<TargetExt Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.lib</TargetExt>
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">.lib</TargetExt>
<PostBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</PostBuildEventUseInBuild>
+ <PostBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">false</PostBuildEventUseInBuild>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
@@ -98,6 +133,55 @@
<Command>SubWCRev . glslang/Include/revision.template glslang/Include/revision.h -q</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>glslang;glslang\MachineIndependent;glslang\OSDependent\Windows;OGLCompilersDLL;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>false</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <PrecompiledHeaderOutputFile>
+ </PrecompiledHeaderOutputFile>
+ <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
+ <ObjectFileName>$(IntDir)</ObjectFileName>
+ <ProgramDataBaseFileName>$(IntDir)</ProgramDataBaseFileName>
+ <BrowseInformation>
+ </BrowseInformation>
+ <WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ <CallingConvention>Cdecl</CallingConvention>
+ <CompileAs>Default</CompileAs>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <StringPooling>true</StringPooling>
+ </ClCompile>
+ <Link>
+ <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
+ <AdditionalDependencies>odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <SuppressStartupBanner>false</SuppressStartupBanner>
+ <IgnoreSpecificDefaultLibraries>libcmtd.lib;libcd.lib;libcmt.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>UserM_Debug/glslang.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <ImportLibrary>UserM_Debug/generic/glslang.lib</ImportLibrary>
+ <OutputFile>$(IntDir)$(TargetName)$(TargetExt)</OutputFile>
+ </Link>
+ <Midl>
+ <TypeLibraryName>UserM_Debug/generic/glslang.tlb</TypeLibraryName>
+ </Midl>
+ <PostBuildEvent>
+ <Message>copy dll</Message>
+ <Command>del Test\$(TargetName)$(TargetExt)
+xcopy /y $(IntDir)$(TargetName)$(TargetExt) Test</Command>
+ </PostBuildEvent>
+ <ResourceCompile>
+ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <Culture>0x0809</Culture>
+ </ResourceCompile>
+ <PreBuildEvent>
+ <Command>SubWCRev . glslang/Include/revision.template glslang/Include/revision.h -q</Command>
+ </PreBuildEvent>
+ </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
@@ -154,11 +238,69 @@
<Command>SubWCRev . glslang/Include/revision.template glslang/Include/revision.h -q</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
+ <OmitFramePointers>true</OmitFramePointers>
+ <AdditionalIncludeDirectories>glslang;glslang\MachineIndependent;glslang\OSDependent\Windows;OGLCompilersDLL;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>NDEBUG;WIN32;_CONSOLE;_USRDLL;TEST_EXPORTS;GENERIC_COMPILER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <StringPooling>true</StringPooling>
+ <MinimalRebuild>false</MinimalRebuild>
+ <BasicRuntimeChecks>Default</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <BufferSecurityCheck>true</BufferSecurityCheck>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeaderOutputFile>
+ </PrecompiledHeaderOutputFile>
+ <AssemblerListingLocation>UserM_Release/</AssemblerListingLocation>
+ <ObjectFileName>UserM_Release/</ObjectFileName>
+ <ProgramDataBaseFileName>
+ </ProgramDataBaseFileName>
+ <BrowseInformation>
+ </BrowseInformation>
+ <WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ <CallingConvention>Cdecl</CallingConvention>
+ <CompileAs>Default</CompileAs>
+ </ClCompile>
+ <Link>
+ <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
+ <AdditionalDependencies>odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>UserM_Release/generic/glslang.dll</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <IgnoreSpecificDefaultLibraries>libcmtd.lib;libcd.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>UserM_Release/generic/glslang.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <ImportLibrary>UserM_Release/generic/glslang.lib</ImportLibrary>
+ </Link>
+ <Midl>
+ <TypeLibraryName>UserM_Release/generic/glslang.tlb</TypeLibraryName>
+ </Midl>
+ <PostBuildEvent>
+ <Message>copy dll</Message>
+ <Command>del Test\$(TargetName)$(TargetExt)
+xcopy /y $(IntDir)$(TargetName)$(TargetExt) Test</Command>
+ </PostBuildEvent>
+ <ResourceCompile>
+ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <Culture>0x0809</Culture>
+ </ResourceCompile>
+ <PreBuildEvent>
+ <Command>SubWCRev . glslang/Include/revision.template glslang/Include/revision.h -q</Command>
+ </PreBuildEvent>
+ </ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="glslang\MachineIndependent\Constant.cpp" />
<ClCompile Include="glslang\MachineIndependent\glslang_tab.cpp">
<DisableSpecificWarnings Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">4065</DisableSpecificWarnings>
+ <DisableSpecificWarnings Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">4065</DisableSpecificWarnings>
<DisableSpecificWarnings Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">4065</DisableSpecificWarnings>
+ <DisableSpecificWarnings Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">4065</DisableSpecificWarnings>
</ClCompile>
<ClCompile Include="glslang\MachineIndependent\InfoSink.cpp" />
<ClCompile Include="glslang\MachineIndependent\Initialize.cpp" />
@@ -188,9 +330,13 @@
<ClCompile Include="glslang\OSDependent\Windows\ossource.cpp" />
<ClCompile Include="glslang\OSDependent\Linux\ossource.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">true</ExcludedFromBuild>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
+ <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">true</ExcludedFromBuild>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
+ <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
</ClCompile>
</ItemGroup>
<ItemGroup>
@@ -226,17 +372,29 @@
<CustomBuild Include="glslang\MachineIndependent\glslang.y">
<FileType>Document</FileType>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Executing Bison on glslang.y</Message>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">Executing Bison on glslang.y</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">SET BISON_SIMPLE=%(RootDir)%(Directory)..\..\tools\bison.simple
SET BISON_HAIRY=%(RootDir)%(Directory)..\..\tools\bison.simple
cd %(RootDir)%(Directory)
%(RootDir)%(Directory)..\..\tools\bison.exe --defines=glslang_tab.cpp.h -t glslang.y -o glslang_tab.cpp</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">SET BISON_SIMPLE=%(RootDir)%(Directory)..\..\tools\bison.simple
+SET BISON_HAIRY=%(RootDir)%(Directory)..\..\tools\bison.simple
+cd %(RootDir)%(Directory)
+%(RootDir)%(Directory)..\..\tools\bison.exe --defines=glslang_tab.cpp.h -t glslang.y -o glslang_tab.cpp</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(RootDir)%(Directory)%(Filename)_tab.cpp.h;%(RootDir)%(Directory)%(Filename)_tab.cpp</Outputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug CRT DLL|Win32'">%(RootDir)%(Directory)%(Filename)_tab.cpp.h;%(RootDir)%(Directory)%(Filename)_tab.cpp</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Executing Bison on glslang.y</Message>
+ <Message Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">Executing Bison on glslang.y</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">SET BISON_SIMPLE=%(RootDir)%(Directory)..\..\tools\bison.simple
SET BISON_HAIRY=%(RootDir)%(Directory)..\..\tools\bison.simple
cd %(RootDir)%(Directory)
%(RootDir)%(Directory)..\..\tools\bison.exe --defines=glslang_tab.cpp.h -t glslang.y -o glslang_tab.cpp</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">SET BISON_SIMPLE=%(RootDir)%(Directory)..\..\tools\bison.simple
+SET BISON_HAIRY=%(RootDir)%(Directory)..\..\tools\bison.simple
+cd %(RootDir)%(Directory)
+%(RootDir)%(Directory)..\..\tools\bison.exe --defines=glslang_tab.cpp.h -t glslang.y -o glslang_tab.cpp</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(RootDir)%(Directory)%(Filename)_tab.cpp.h;%(RootDir)%(Directory)%(Filename)_tab.cpp</Outputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release CRT DLL|Win32'">%(RootDir)%(Directory)%(Filename)_tab.cpp.h;%(RootDir)%(Directory)%(Filename)_tab.cpp</Outputs>
</CustomBuild>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />