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

[XENIFACE 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>
---
 vs2019/xenagent/xenagent.vcxproj     | 4 ++++
 vs2019/xencontrol/xencontrol.vcxproj | 4 ++++
 vs2022/xenagent/xenagent.vcxproj     | 4 ++++
 vs2022/xencontrol/xencontrol.vcxproj | 4 ++++
 4 files changed, 16 insertions(+)

diff --git a/vs2019/xenagent/xenagent.vcxproj b/vs2019/xenagent/xenagent.vcxproj
index 27bf3af..1a6c712 100644
--- a/vs2019/xenagent/xenagent.vcxproj
+++ b/vs2019/xenagent/xenagent.vcxproj
@@ -40,6 +40,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/vs2019/xencontrol/xencontrol.vcxproj 
b/vs2019/xencontrol/xencontrol.vcxproj
index 5da405e..0f6ba12 100644
--- a/vs2019/xencontrol/xencontrol.vcxproj
+++ b/vs2019/xencontrol/xencontrol.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/xenagent/xenagent.vcxproj b/vs2022/xenagent/xenagent.vcxproj
index 5f360ca..c81ef86 100644
--- a/vs2022/xenagent/xenagent.vcxproj
+++ b/vs2022/xenagent/xenagent.vcxproj
@@ -40,6 +40,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/xencontrol/xencontrol.vcxproj 
b/vs2022/xencontrol/xencontrol.vcxproj
index aed7b7f..bf71aeb 100644
--- a/vs2022/xencontrol/xencontrol.vcxproj
+++ b/vs2022/xencontrol/xencontrol.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®.