Skip to content

Commit e190590

Browse files
AA-TurnerPranjal095
authored andcommitted
pythonGH-132983: Build _zstd on Windows (python#133366)
1 parent d8a7261 commit e190590

17 files changed

+454
-9
lines changed

Misc/externals.spdx.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,27 @@
190190
"name": "zlib-ng",
191191
"primaryPackagePurpose": "SOURCE",
192192
"versionInfo": "2.2.4"
193+
},
194+
{
195+
"SPDXID": "SPDXRef-PACKAGE-zstd",
196+
"checksums": [
197+
{
198+
"algorithm": "SHA256",
199+
"checksumValue": "f24b52470d12f466e9fa4fcc94e6c530625ada51d7b36de7fdc6ed7e6f499c8e"
200+
}
201+
],
202+
"downloadLocation": "https://github.com/python/cpython-source-deps/archive/refs/tags/zstd-1.5.7.tar.gz",
203+
"externalRefs": [
204+
{
205+
"referenceCategory": "SECURITY",
206+
"referenceLocator": "cpe:2.3:a:facebook:zstandard:1.5.7:*:*:*:*:*:*:*",
207+
"referenceType": "cpe23Type"
208+
}
209+
],
210+
"licenseConcluded": "NOASSERTION",
211+
"name": "zstd",
212+
"primaryPackagePurpose": "SOURCE",
213+
"versionInfo": "1.5.7"
193214
}
194215
],
195216
"spdxVersion": "SPDX-2.3"

Modules/Setup

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,8 @@ PYTHONPATH=$(COREPYTHONPATH)
200200
#_dbm _dbmmodule.c -lgdbm_compat -DUSE_GDBM_COMPAT
201201
#_gdbm _gdbmmodule.c -lgdbm
202202
#_lzma _lzmamodule.c -llzma
203-
#_zstd _zstd/_zstdmodule.c -lzstd -I$(srcdir)/Modules/_zstd
204203
#_uuid _uuidmodule.c -luuid
204+
#_zstd _zstd/_zstdmodule.c -lzstd -I$(srcdir)/Modules/_zstd
205205
#zlib zlibmodule.c -lz
206206

207207
# The readline module also supports libeditline (-leditline).

Modules/Setup.stdlib.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
@MODULE_BINASCII_TRUE@binascii binascii.c
7070
@MODULE__BZ2_TRUE@_bz2 _bz2module.c
7171
@MODULE__LZMA_TRUE@_lzma _lzmamodule.c
72-
@MODULE__ZSTD_TRUE@_zstd _zstd/_zstdmodule.c _zstd/zdict.c _zstd/compressor.c _zstd/decompressor.c
72+
@MODULE__ZSTD_TRUE@_zstd _zstd/_zstdmodule.c _zstd/zstddict.c _zstd/compressor.c _zstd/decompressor.c
7373
@MODULE_ZLIB_TRUE@zlib zlibmodule.c
7474

7575
# dbm/gdbm
File renamed without changes.

Modules/_zstd/zdict.c renamed to Modules/_zstd/zstddict.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ _zstd_ZstdDict___init___impl(ZstdDict *self, PyObject *dict_content,
136136
}
137137

138138
#define clinic_state() (get_zstd_state(type))
139-
#include "clinic/zdict.c.h"
139+
#include "clinic/zstddict.c.h"
140140
#undef clinic_state
141141

142142
PyDoc_STRVAR(ZstdDict_dictid_doc,

PCbuild/_zstd.vcxproj

Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup Label="ProjectConfigurations">
4+
<ProjectConfiguration Include="Debug|ARM">
5+
<Configuration>Debug</Configuration>
6+
<Platform>ARM</Platform>
7+
</ProjectConfiguration>
8+
<ProjectConfiguration Include="Debug|ARM64">
9+
<Configuration>Debug</Configuration>
10+
<Platform>ARM64</Platform>
11+
</ProjectConfiguration>
12+
<ProjectConfiguration Include="Debug|Win32">
13+
<Configuration>Debug</Configuration>
14+
<Platform>Win32</Platform>
15+
</ProjectConfiguration>
16+
<ProjectConfiguration Include="Debug|x64">
17+
<Configuration>Debug</Configuration>
18+
<Platform>x64</Platform>
19+
</ProjectConfiguration>
20+
<ProjectConfiguration Include="PGInstrument|ARM">
21+
<Configuration>PGInstrument</Configuration>
22+
<Platform>ARM</Platform>
23+
</ProjectConfiguration>
24+
<ProjectConfiguration Include="PGInstrument|ARM64">
25+
<Configuration>PGInstrument</Configuration>
26+
<Platform>ARM64</Platform>
27+
</ProjectConfiguration>
28+
<ProjectConfiguration Include="PGInstrument|Win32">
29+
<Configuration>PGInstrument</Configuration>
30+
<Platform>Win32</Platform>
31+
</ProjectConfiguration>
32+
<ProjectConfiguration Include="PGInstrument|x64">
33+
<Configuration>PGInstrument</Configuration>
34+
<Platform>x64</Platform>
35+
</ProjectConfiguration>
36+
<ProjectConfiguration Include="PGUpdate|ARM">
37+
<Configuration>PGUpdate</Configuration>
38+
<Platform>ARM</Platform>
39+
</ProjectConfiguration>
40+
<ProjectConfiguration Include="PGUpdate|ARM64">
41+
<Configuration>PGUpdate</Configuration>
42+
<Platform>ARM64</Platform>
43+
</ProjectConfiguration>
44+
<ProjectConfiguration Include="PGUpdate|Win32">
45+
<Configuration>PGUpdate</Configuration>
46+
<Platform>Win32</Platform>
47+
</ProjectConfiguration>
48+
<ProjectConfiguration Include="PGUpdate|x64">
49+
<Configuration>PGUpdate</Configuration>
50+
<Platform>x64</Platform>
51+
</ProjectConfiguration>
52+
<ProjectConfiguration Include="Release|ARM">
53+
<Configuration>Release</Configuration>
54+
<Platform>ARM</Platform>
55+
</ProjectConfiguration>
56+
<ProjectConfiguration Include="Release|ARM64">
57+
<Configuration>Release</Configuration>
58+
<Platform>ARM64</Platform>
59+
</ProjectConfiguration>
60+
<ProjectConfiguration Include="Release|Win32">
61+
<Configuration>Release</Configuration>
62+
<Platform>Win32</Platform>
63+
</ProjectConfiguration>
64+
<ProjectConfiguration Include="Release|x64">
65+
<Configuration>Release</Configuration>
66+
<Platform>x64</Platform>
67+
</ProjectConfiguration>
68+
</ItemGroup>
69+
<PropertyGroup Label="Globals">
70+
<ProjectGuid>{07029b86-f3e9-443e-86fb-78aa6d47fed1}</ProjectGuid>
71+
<RootNamespace>_zstd</RootNamespace>
72+
<Keyword>Win32Proj</Keyword>
73+
</PropertyGroup>
74+
<Import Project="python.props" />
75+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
76+
<PropertyGroup Label="Configuration">
77+
<ConfigurationType>DynamicLibrary</ConfigurationType>
78+
<CharacterSet>NotSet</CharacterSet>
79+
</PropertyGroup>
80+
<PropertyGroup Label="Configuration" />
81+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
82+
<PropertyGroup>
83+
<TargetExt>$(PyStdlibPydExt)</TargetExt>
84+
</PropertyGroup>
85+
<ImportGroup Label="ExtensionSettings">
86+
</ImportGroup>
87+
<ImportGroup Label="PropertySheets">
88+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
89+
<Import Project="pyproject.props" />
90+
</ImportGroup>
91+
<PropertyGroup Label="UserMacros" />
92+
<PropertyGroup>
93+
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
94+
</PropertyGroup>
95+
<ItemDefinitionGroup>
96+
<ClCompile>
97+
<PreprocessorDefinitions>WIN32;ZSTD_MULTITHREAD=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
98+
<AdditionalIncludeDirectories>$(zstdDir)lib\;$(zstdDir)lib\common;$(zstdDir)lib\compress;$(zstdDir)lib\decompress;$(zstdDir)lib\dictBuilder;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99+
</ClCompile>
100+
</ItemDefinitionGroup>
101+
<ItemGroup>
102+
<ClCompile Include="..\Modules\_zstd\_zstdmodule.c" />
103+
<ClCompile Include="..\Modules\_zstd\compressor.c" />
104+
<ClCompile Include="..\Modules\_zstd\decompressor.c" />
105+
<ClCompile Include="..\Modules\_zstd\zstddict.c" />
106+
<ClCompile Include="$(zstdDir)lib\common\debug.c" />
107+
<ClCompile Include="$(zstdDir)lib\common\entropy_common.c" />
108+
<ClCompile Include="$(zstdDir)lib\common\error_private.c" />
109+
<ClCompile Include="$(zstdDir)lib\common\fse_decompress.c" />
110+
<ClCompile Include="$(zstdDir)lib\common\pool.c" />
111+
<ClCompile Include="$(zstdDir)lib\common\threading.c" />
112+
<ClCompile Include="$(zstdDir)lib\common\xxhash.c" />
113+
<ClCompile Include="$(zstdDir)lib\common\zstd_common.c" />
114+
<ClCompile Include="$(zstdDir)lib\compress\fse_compress.c" />
115+
<ClCompile Include="$(zstdDir)lib\compress\hist.c" />
116+
<ClCompile Include="$(zstdDir)lib\compress\huf_compress.c" />
117+
<ClCompile Include="$(zstdDir)lib\compress\zstd_compress.c" />
118+
<ClCompile Include="$(zstdDir)lib\compress\zstd_compress_literals.c" />
119+
<ClCompile Include="$(zstdDir)lib\compress\zstd_compress_sequences.c" />
120+
<ClCompile Include="$(zstdDir)lib\compress\zstd_compress_superblock.c" />
121+
<ClCompile Include="$(zstdDir)lib\compress\zstd_double_fast.c" />
122+
<ClCompile Include="$(zstdDir)lib\compress\zstd_fast.c" />
123+
<ClCompile Include="$(zstdDir)lib\compress\zstd_lazy.c" />
124+
<ClCompile Include="$(zstdDir)lib\compress\zstd_ldm.c" />
125+
<ClCompile Include="$(zstdDir)lib\compress\zstd_opt.c" />
126+
<ClCompile Include="$(zstdDir)lib\compress\zstd_preSplit.c" />
127+
<ClCompile Include="$(zstdDir)lib\compress\zstdmt_compress.c" />
128+
<ClCompile Include="$(zstdDir)lib\decompress\huf_decompress.c" />
129+
<ClCompile Include="$(zstdDir)lib\decompress\zstd_ddict.c" />
130+
<ClCompile Include="$(zstdDir)lib\decompress\zstd_decompress.c" />
131+
<ClCompile Include="$(zstdDir)lib\decompress\zstd_decompress_block.c" />
132+
<ClCompile Include="$(zstdDir)lib\dictBuilder\cover.c" />
133+
<ClCompile Include="$(zstdDir)lib\dictBuilder\divsufsort.c" />
134+
<ClCompile Include="$(zstdDir)lib\dictBuilder\fastcover.c" />
135+
<ClCompile Include="$(zstdDir)lib\dictBuilder\zdict.c" />
136+
</ItemGroup>
137+
<ItemGroup>
138+
<ClInclude Include="..\Modules\_zstd\_zstdmodule.h" />
139+
<ClInclude Include="..\Modules\_zstd\buffer.h" />
140+
<ClInclude Include="$(zstdDir)lib\common\bitstream.h" />
141+
<ClInclude Include="$(zstdDir)lib\common\error_private.h" />
142+
<ClInclude Include="$(zstdDir)lib\common\fse.h" />
143+
<ClInclude Include="$(zstdDir)lib\common\huf.h" />
144+
<ClInclude Include="$(zstdDir)lib\common\mem.h" />
145+
<ClInclude Include="$(zstdDir)lib\common\pool.h" />
146+
<ClInclude Include="$(zstdDir)lib\common\threading.h" />
147+
<ClInclude Include="$(zstdDir)lib\common\xxhash.h" />
148+
<ClInclude Include="$(zstdDir)lib\common\zstd_internal.h" />
149+
<ClInclude Include="$(zstdDir)lib\compress\zstd_compress.h" />
150+
<ClInclude Include="$(zstdDir)lib\compress\zstd_compress_literals.h" />
151+
<ClInclude Include="$(zstdDir)lib\compress\zstd_compress_sequences.h" />
152+
<ClInclude Include="$(zstdDir)lib\compress\zstd_compress_superblock.h" />
153+
<ClInclude Include="$(zstdDir)lib\compress\zstd_cwksp.h" />
154+
<ClInclude Include="$(zstdDir)lib\compress\zstd_double_fast.h" />
155+
<ClInclude Include="$(zstdDir)lib\compress\zstd_fast.h" />
156+
<ClInclude Include="$(zstdDir)lib\compress\zstd_lazy.h" />
157+
<ClInclude Include="$(zstdDir)lib\compress\zstd_ldm.h" />
158+
<ClInclude Include="$(zstdDir)lib\compress\zstd_opt.h" />
159+
<ClInclude Include="$(zstdDir)lib\compress\zstdmt_compress.h" />
160+
<ClInclude Include="$(zstdDir)lib\decompress\zstd_ddict.h" />
161+
<ClInclude Include="$(zstdDir)lib\zstd.h" />
162+
<ClInclude Include="$(zstdDir)lib\zstd_errors.h" />
163+
</ItemGroup>
164+
<ItemGroup>
165+
<ResourceCompile Include="..\PC\python_nt.rc" />
166+
</ItemGroup>
167+
<ItemGroup>
168+
<ProjectReference Include="pythoncore.vcxproj">
169+
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
170+
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
171+
</ProjectReference>
172+
</ItemGroup>
173+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
174+
<ImportGroup Label="ExtensionTargets">
175+
</ImportGroup>
176+
</Project>

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy