From 0c0f398f475a9d61fbec7e004647299cd7e9e049 Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn" <uwelk@xhochy.com>
Date: Tue, 22 Jul 2025 18:07:54 +0200
Subject: [PATCH 25/25] Unvendor zstd

---
 PCbuild/_zstd.vcxproj         |  58 +------------
 PCbuild/_zstd.vcxproj.filters | 157 +---------------------------------
 2 files changed, 6 insertions(+), 209 deletions(-)

diff --git a/PCbuild/_zstd.vcxproj b/PCbuild/_zstd.vcxproj
index 6f91b8d05cc..cc6f99cb002 100644
--- a/PCbuild/_zstd.vcxproj
+++ b/PCbuild/_zstd.vcxproj
@@ -95,72 +95,22 @@
   <ItemDefinitionGroup>
     <ClCompile>
       <PreprocessorDefinitions>WIN32;ZSTD_MULTITHREAD=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>$(zstdDir)lib\;$(zstdDir)lib\common;$(zstdDir)lib\compress;$(zstdDir)lib\decompress;$(zstdDir)lib\dictBuilder;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories>$(condaDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ClCompile>
+    <Link>
+      <AdditionalDependencies>$(condaDir)\lib\zstd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_zstd\_zstdmodule.c" />
     <ClCompile Include="..\Modules\_zstd\compressor.c" />
     <ClCompile Include="..\Modules\_zstd\decompressor.c" />
     <ClCompile Include="..\Modules\_zstd\zstddict.c" />
-    <ClCompile Include="$(zstdDir)lib\common\debug.c" />
-    <ClCompile Include="$(zstdDir)lib\common\entropy_common.c" />
-    <ClCompile Include="$(zstdDir)lib\common\error_private.c" />
-    <ClCompile Include="$(zstdDir)lib\common\fse_decompress.c" />
-    <ClCompile Include="$(zstdDir)lib\common\pool.c" />
-    <ClCompile Include="$(zstdDir)lib\common\threading.c" />
-    <ClCompile Include="$(zstdDir)lib\common\xxhash.c" />
-    <ClCompile Include="$(zstdDir)lib\common\zstd_common.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\fse_compress.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\hist.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\huf_compress.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress_literals.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress_sequences.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress_superblock.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_double_fast.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_fast.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_lazy.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_ldm.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_opt.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_preSplit.c" />
-    <ClCompile Include="$(zstdDir)lib\compress\zstdmt_compress.c" />
-    <ClCompile Include="$(zstdDir)lib\decompress\huf_decompress.c" />
-    <ClCompile Include="$(zstdDir)lib\decompress\zstd_ddict.c" />
-    <ClCompile Include="$(zstdDir)lib\decompress\zstd_decompress.c" />
-    <ClCompile Include="$(zstdDir)lib\decompress\zstd_decompress_block.c" />
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\cover.c" />
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\divsufsort.c" />
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\fastcover.c" />
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\zdict.c" />
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\_zstd\_zstdmodule.h" />
     <ClInclude Include="..\Modules\_zstd\buffer.h" />
     <ClInclude Include="..\Modules\_zstd\zstddict.h" />
-    <ClInclude Include="$(zstdDir)lib\common\bitstream.h" />
-    <ClInclude Include="$(zstdDir)lib\common\error_private.h" />
-    <ClInclude Include="$(zstdDir)lib\common\fse.h" />
-    <ClInclude Include="$(zstdDir)lib\common\huf.h" />
-    <ClInclude Include="$(zstdDir)lib\common\mem.h" />
-    <ClInclude Include="$(zstdDir)lib\common\pool.h" />
-    <ClInclude Include="$(zstdDir)lib\common\threading.h" />
-    <ClInclude Include="$(zstdDir)lib\common\xxhash.h" />
-    <ClInclude Include="$(zstdDir)lib\common\zstd_internal.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress_literals.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress_sequences.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress_superblock.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_cwksp.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_double_fast.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_fast.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_lazy.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_ldm.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_opt.h" />
-    <ClInclude Include="$(zstdDir)lib\compress\zstdmt_compress.h" />
-    <ClInclude Include="$(zstdDir)lib\decompress\zstd_ddict.h" />
-    <ClInclude Include="$(zstdDir)lib\zstd.h" />
-    <ClInclude Include="$(zstdDir)lib\zstd_errors.h" />
   </ItemGroup>
   <ItemGroup>
     <ResourceCompile Include="..\PC\python_nt.rc" />
diff --git a/PCbuild/_zstd.vcxproj.filters b/PCbuild/_zstd.vcxproj.filters
index eec666e5eaf..5028bb5592d 100644
--- a/PCbuild/_zstd.vcxproj.filters
+++ b/PCbuild/_zstd.vcxproj.filters
@@ -30,96 +30,6 @@
     <ClCompile Include="..\Modules\_zstd\zstddict.c">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\debug.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\entropy_common.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\error_private.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\fse_decompress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\pool.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\threading.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\xxhash.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\common\zstd_common.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\fse_compress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\hist.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\huf_compress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress_literals.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress_sequences.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_compress_superblock.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_double_fast.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_fast.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_lazy.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_ldm.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_opt.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstd_preSplit.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\compress\zstdmt_compress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\decompress\huf_decompress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\decompress\zstd_ddict.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\decompress\zstd_decompress.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\decompress\zstd_decompress_block.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\cover.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\divsufsort.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\fastcover.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
-    <ClCompile Include="$(zstdDir)lib\dictBuilder\zdict.c">
-      <Filter>Source Files\zstd</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\_zstd\_zstdmodule.h">
@@ -131,73 +41,10 @@
     <ClInclude Include="..\Modules\_zstd\zstddict.h">
       <Filter>Header Files</Filter>
     </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\zstd.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\zstd_errors.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\bitstream.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\error_private.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\fse.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\huf.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\mem.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\pool.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\threading.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\xxhash.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\common\zstd_internal.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress_literals.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress_sequences.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_compress_superblock.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_cwksp.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_double_fast.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_fast.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_lazy.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_ldm.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstd_opt.h">
-      <Filter>Header Files\zstd</Filter>
-    </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\compress\zstdmt_compress.h">
+    <ClInclude Include="$(condaDir)\include\zstd.h">
       <Filter>Header Files\zstd</Filter>
     </ClInclude>
-    <ClInclude Include="$(zstdDir)lib\decompress\zstd_ddict.h">
+    <ClInclude Include="$(condaDir)\include\zstd_errors.h">
       <Filter>Header Files\zstd</Filter>
     </ClInclude>
   </ItemGroup>
