[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[XENBUS PATCH] Dynamically link UCRT into release binaries



Since we target Windows 10 and later, we have access to ucrtbase.dll.

Use the Hybrid CRT technique to avoid having to statically link the
entire CRT.

Signed-off-by: Tu Dinh <ngoc-tu.dinh@xxxxxxxxxx>
---
Hybrid CRT reference: 
https://github.com/microsoft/WindowsAppSDK/blob/main/docs/Coding-Guidelines/HybridCRT.md
---
 vs2019/xenbus_monitor/xenbus_monitor.vcxproj | 4 ++++
 vs2022/xenbus_monitor/xenbus_monitor.vcxproj | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/vs2019/xenbus_monitor/xenbus_monitor.vcxproj 
b/vs2019/xenbus_monitor/xenbus_monitor.vcxproj
index 047166e..3b44e29 100644
--- a/vs2019/xenbus_monitor/xenbus_monitor.vcxproj
+++ b/vs2019/xenbus_monitor/xenbus_monitor.vcxproj
@@ -39,6 +39,10 @@
       <GenerateMapFile>true</GenerateMapFile>
       <MapExports>true</MapExports>
     </Link>
+    <Link Condition="'$(UseDebugLibraries)'=='false'">
+      
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries);libucrt.lib</IgnoreSpecificDefaultLibraries>
+      <AdditionalOptions>%(AdditionalOptions) 
/defaultlib:ucrt.lib</AdditionalOptions>
+    </Link>
     <ResourceCompile>
       
<AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
diff --git a/vs2022/xenbus_monitor/xenbus_monitor.vcxproj 
b/vs2022/xenbus_monitor/xenbus_monitor.vcxproj
index 0437024..484fa1c 100644
--- a/vs2022/xenbus_monitor/xenbus_monitor.vcxproj
+++ b/vs2022/xenbus_monitor/xenbus_monitor.vcxproj
@@ -39,6 +39,10 @@
       <GenerateMapFile>true</GenerateMapFile>
       <MapExports>true</MapExports>
     </Link>
+    <Link Condition="'$(UseDebugLibraries)'=='false'">
+      
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries);libucrt.lib</IgnoreSpecificDefaultLibraries>
+      <AdditionalOptions>%(AdditionalOptions) 
/defaultlib:ucrt.lib</AdditionalOptions>
+    </Link>
     <ResourceCompile>
       
<AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
-- 
2.49.0.windows.1



Ngoc Tu Dinh | Vates XCP-ng Developer

XCP-ng & Xen Orchestra - Vates solutions

web: https://vates.tech




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.