39 строки
2.4 KiB
XML
39 строки
2.4 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License. See LICENSE in the project root for license information. -->
|
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
|
|
<PropertyGroup Condition="'$(HybridCrtConfiguration)'==''">
|
|
<HybridCrtConfiguration>$(Configuration)</HybridCrtConfiguration>
|
|
</PropertyGroup>
|
|
|
|
<ItemDefinitionGroup Condition="'$(HybridCrtConfiguration)'=='Debug'">
|
|
<ClCompile>
|
|
<!-- We use MultiThreadedDebug, rather than MultiThreadedDebugDLL, to avoid DLL dependencies on VCRUNTIME140d.dll and MSVCP140d.dll. -->
|
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
</ClCompile>
|
|
<Link>
|
|
<!-- Link statically against the runtime and STL, but link dynamically against the CRT by ignoring the static CRT
|
|
lib and instead linking against the Universal CRT DLL import library. This "hybrid" linking mechanism is
|
|
supported according to the CRT maintainer. Dynamic linking against the CRT makes the binaries a bit smaller
|
|
than they would otherwise be if the CRT, runtime, and STL were all statically linked in. -->
|
|
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries);libucrtd.lib</IgnoreSpecificDefaultLibraries>
|
|
<AdditionalOptions>%(AdditionalOptions) /defaultlib:ucrtd.lib</AdditionalOptions>
|
|
</Link>
|
|
</ItemDefinitionGroup>
|
|
<ItemDefinitionGroup Condition="'$(HybridCrtConfiguration)'=='Release'">
|
|
<ClCompile>
|
|
<!-- We use MultiThreaded, rather than MultiThreadedDLL, to avoid DLL dependencies on VCRUNTIME140.dll and MSVCP140.dll. -->
|
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
</ClCompile>
|
|
<Link>
|
|
<!-- Link statically against the runtime and STL, but link dynamically against the CRT by ignoring the static CRT
|
|
lib and instead linking against the Universal CRT DLL import library. This "hybrid" linking mechanism is
|
|
supported according to the CRT maintainer. Dynamic linking against the CRT makes the binaries a bit smaller
|
|
than they would otherwise be if the CRT, runtime, and STL were all statically linked in. -->
|
|
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries);libucrt.lib</IgnoreSpecificDefaultLibraries>
|
|
<AdditionalOptions>%(AdditionalOptions) /defaultlib:ucrt.lib</AdditionalOptions>
|
|
</Link>
|
|
</ItemDefinitionGroup>
|
|
|
|
</Project>
|