def1bdd693
After this commit OpenConsoleProxy will be built without a CRT. This cuts down its binary size and DLL dependency bloat. We hope that this fixes a COM server activation bug if the user doesn't have a CRT installed globally on their system. Fixes #11529
83 lines
4.1 KiB
XML
83 lines
4.1 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<PropertyGroup>
|
|
<ProjectGuid>{71CC9D78-BA29-4D93-946F-BEF5D9A3A6EF}</ProjectGuid>
|
|
<Keyword>Win32Proj</Keyword>
|
|
<RootNamespace>openconsoleproxy</RootNamespace>
|
|
<ProjectName>OpenConsoleProxy</ProjectName>
|
|
<TargetName>OpenConsoleProxy</TargetName>
|
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
</PropertyGroup>
|
|
<Import Project="$(SolutionDir)src\common.build.pre.props" />
|
|
<ItemGroup>
|
|
<Midl Include="IConsoleHandoff.idl">
|
|
<!--
|
|
In Razzle, IDL files generate %FileName%.h
|
|
In Visual Studio, IDL files generate %FileName%_h.h
|
|
Visual Studio is easier to override than Razzle.
|
|
This has to be built in both the OS and outside, so we
|
|
override the easier-to-override side to a uniform name.
|
|
-->
|
|
<HeaderFileName>IConsoleHandoff.h</HeaderFileName>
|
|
<MinimumTargetSystem>NT100</MinimumTargetSystem>
|
|
<OutputDirectory>$(IntDir)</OutputDirectory>
|
|
</Midl>
|
|
<Midl Include="ITerminalHandoff.idl">
|
|
<HeaderFileName>ITerminalHandoff.h</HeaderFileName>
|
|
<MinimumTargetSystem>NT100</MinimumTargetSystem>
|
|
<OutputDirectory>$(IntDir)</OutputDirectory>
|
|
</Midl>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ClInclude Include="$(IntDir)\IConsoleHandoff.h" />
|
|
<ClInclude Include="$(IntDir)\ITerminalHandoff.h" />
|
|
<ClInclude Include="nodefaultlib_shim.h" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ClCompile Include="$(IntDir)\dlldata.c" />
|
|
<ClCompile Include="$(IntDir)\IConsoleHandoff_i.c" />
|
|
<ClCompile Include="$(IntDir)\IConsoleHandoff_p.c" />
|
|
<ClCompile Include="$(IntDir)\ITerminalHandoff_i.c" />
|
|
<ClCompile Include="$(IntDir)\ITerminalHandoff_p.c" />
|
|
</ItemGroup>
|
|
<ItemDefinitionGroup Condition="'$(WindowsTerminalBranding)'=='Release'">
|
|
<ClCompile>
|
|
<PreprocessorDefinitions>PROXY_CLSID_IS={0x3171DE52,0x6EFA,0x4AEF,{0x8A,0x9F,0xD0,0x2B,0xD6,0x7E,0x7A,0x4F}};%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
</ClCompile>
|
|
</ItemDefinitionGroup>
|
|
<ItemDefinitionGroup Condition="'$(WindowsTerminalBranding)'=='Preview'">
|
|
<ClCompile>
|
|
<PreprocessorDefinitions>PROXY_CLSID_IS={0x1833E661,0xCC81,0x4DD0,{0x87,0xC6,0xC2,0xF7,0x4B,0xD3,0x9E,0xFA}};%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
</ClCompile>
|
|
</ItemDefinitionGroup>
|
|
<ItemDefinitionGroup Condition="'$(WindowsTerminalBranding)'==''">
|
|
<ClCompile>
|
|
<PreprocessorDefinitions>PROXY_CLSID_IS={0xDEC4804D,0x56D1,0x4F73,{0x9F,0xBE,0x68,0x28,0xE7,0xC8,0x5C,0x56}};%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
</ClCompile>
|
|
</ItemDefinitionGroup>
|
|
<ItemDefinitionGroup>
|
|
<ClCompile>
|
|
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
<CallingConvention Condition="'$(Platform)'!='ARM64'">StdCall</CallingConvention>
|
|
<!-- Must be Stdcall on all platforms to resolve _ObjectStublessClient3 -->
|
|
<PreprocessorDefinitions>REGISTER_PROXY_DLL;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
|
<SDLCheck>false</SDLCheck>
|
|
<ForcedIncludeFiles>nodefaultlib_shim.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
|
|
</ClCompile>
|
|
<Link>
|
|
<ModuleDefinitionFile>OpenConsoleProxy.def</ModuleDefinitionFile>
|
|
<!--
|
|
Not depending on the CRT cuts binary size by half and prevents issues if this DLL
|
|
is copied elsewhere and executed outside of our app package without our bundled CRT present.
|
|
-->
|
|
<AdditionalDependencies />
|
|
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
|
<EntryPointSymbol>DllMain</EntryPointSymbol>
|
|
</Link>
|
|
</ItemDefinitionGroup>
|
|
<!-- Careful reordering these. Some default props (contained in these files) are order sensitive. -->
|
|
<Import Project="$(SolutionDir)src\common.build.post.props" />
|
|
</Project>
|