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>{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}</ProjectGuid> 71 <RootNamespace>pythoncore</RootNamespace> 72 </PropertyGroup> 73 <Import Project="python.props" /> 74 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> 75 <PropertyGroup Label="Configuration"> 76 <ConfigurationType>DynamicLibrary</ConfigurationType> 77 <UseOfMfc>false</UseOfMfc> 78 </PropertyGroup> 79 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> 80 <ImportGroup Label="ExtensionSettings"> 81 </ImportGroup> 82 <PropertyGroup> 83 <KillPython>true</KillPython> 84 <RequirePGCFiles>true</RequirePGCFiles> 85 <IncludeExternals Condition="$(IncludeExternals) == '' and Exists('$(zlibDir)\zlib.h')">true</IncludeExternals> 86 <IncludeExternals Condition="$(IncludeExternals) == ''">false</IncludeExternals> 87 </PropertyGroup> 88 <ImportGroup Label="PropertySheets"> 89 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> 90 <Import Project="pyproject.props" /> 91 </ImportGroup> 92 <PropertyGroup Label="UserMacros" /> 93 <PropertyGroup> 94 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion> 95 <TargetName>$(PyDllName)</TargetName> 96 </PropertyGroup> 97 <PropertyGroup> 98 <CustomBuildBeforeTargets>Link</CustomBuildBeforeTargets> 99 </PropertyGroup> 100 <ItemDefinitionGroup> 101 <ClCompile> 102 <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions> 103 <AdditionalIncludeDirectories>$(PySourcePath)Modules\_hacl\include;$(PySourcePath)Modules\_hacl\internal;$(PySourcePath)Python;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> 104 <AdditionalIncludeDirectories Condition="$(IncludeExternals)">$(zlibDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> 105 <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions)</PreprocessorDefinitions> 106 <PreprocessorDefinitions Condition="$(IncludeExternals)">_Py_HAVE_ZLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> 107 <PreprocessorDefinitions Condition="'$(UseJIT)' == 'true'">_Py_JIT;%(PreprocessorDefinitions)</PreprocessorDefinitions> 108 <PreprocessorDefinitions Condition="'$(UseTIER2)' != '' and '$(UseTIER2)' != '0'">_Py_TIER2=$(UseTIER2);%(PreprocessorDefinitions)</PreprocessorDefinitions> 109 </ClCompile> 110 <Link> 111 <AdditionalDependencies>version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies> 112 </Link> 113 </ItemDefinitionGroup> 114 <ItemGroup> 115 <ClCompile Include="..\Modules\getpath.c"> 116 <AdditionalIncludeDirectories>$(GeneratedFrozenModulesDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> 117 <PreprocessorDefinitions> 118 PREFIX=NULL; 119 EXEC_PREFIX=NULL; 120 VERSION=NULL; 121 VPATH="$(PyVPath)"; 122 PYDEBUGEXT="$(PyDebugExt)"; 123 PLATLIBDIR="DLLs"; 124 %(PreprocessorDefinitions) 125 </PreprocessorDefinitions> 126 </ClCompile> 127 </ItemGroup> 128 <ItemGroup> 129 <ClInclude Include="..\Include\Python.h" /> 130 <ClInclude Include="..\Include\abstract.h" /> 131 <ClInclude Include="..\Include\boolobject.h" /> 132 <ClInclude Include="..\Include\bytearrayobject.h" /> 133 <ClInclude Include="..\Include\bytesobject.h" /> 134 <ClInclude Include="..\Include\ceval.h" /> 135 <ClInclude Include="..\Include\codecs.h" /> 136 <ClInclude Include="..\Include\compile.h" /> 137 <ClInclude Include="..\Include\complexobject.h" /> 138 <ClInclude Include="..\Include\critical_section.h" /> 139 <ClInclude Include="..\Include\cpython\abstract.h" /> 140 <ClInclude Include="..\Include\cpython\bytearrayobject.h" /> 141 <ClInclude Include="..\Include\cpython\bytesobject.h" /> 142 <ClInclude Include="..\Include\cpython\cellobject.h" /> 143 <ClInclude Include="..\Include\cpython\ceval.h" /> 144 <ClInclude Include="..\Include\cpython\classobject.h" /> 145 <ClInclude Include="..\Include\cpython\code.h" /> 146 <ClInclude Include="..\Include\cpython\compile.h" /> 147 <ClInclude Include="..\Include\cpython\complexobject.h" /> 148 <ClInclude Include="..\Include\cpython\context.h" /> 149 <ClInclude Include="..\Include\cpython\critical_section.h" /> 150 <ClInclude Include="..\Include\cpython\descrobject.h" /> 151 <ClInclude Include="..\Include\cpython\dictobject.h" /> 152 <ClInclude Include="..\Include\cpython\fileobject.h" /> 153 <ClInclude Include="..\Include\cpython\fileutils.h" /> 154 <ClInclude Include="..\Include\cpython\floatobject.h" /> 155 <ClInclude Include="..\Include\cpython\frameobject.h" /> 156 <ClInclude Include="..\Include\cpython\funcobject.h" /> 157 <ClInclude Include="..\Include\cpython\genobject.h" /> 158 <ClInclude Include="..\Include\cpython\import.h" /> 159 <ClInclude Include="..\Include\cpython\initconfig.h" /> 160 <ClInclude Include="..\Include\cpython\listobject.h" /> 161 <ClInclude Include="..\Include\cpython\lock.h" /> 162 <ClInclude Include="..\Include\cpython\longintrepr.h" /> 163 <ClInclude Include="..\Include\cpython\longobject.h" /> 164 <ClInclude Include="..\Include\cpython\memoryobject.h" /> 165 <ClInclude Include="..\Include\cpython\methodobject.h" /> 166 <ClInclude Include="..\Include\cpython\modsupport.h" /> 167 <ClInclude Include="..\Include\cpython\object.h" /> 168 <ClInclude Include="..\Include\cpython\objimpl.h" /> 169 <ClInclude Include="..\Include\cpython\odictobject.h" /> 170 <ClInclude Include="..\Include\cpython\parser_interface.h" /> 171 <ClInclude Include="..\Include\cpython\picklebufobject.h" /> 172 <ClInclude Include="..\Include\cpython\pyarena.h" /> 173 <ClInclude Include="..\Include\cpython\pyatomic.h" /> 174 <ClInclude Include="..\Include\cpython\pyatomic_msc.h" /> 175 <ClInclude Include="..\Include\cpython\pyctype.h" /> 176 <ClInclude Include="..\Include\cpython\pydebug.h" /> 177 <ClInclude Include="..\Include\cpython\pyerrors.h" /> 178 <ClInclude Include="..\Include\cpython\pyfpe.h" /> 179 <ClInclude Include="..\Include\cpython\pyframe.h" /> 180 <ClInclude Include="..\Include\cpython\pyhash.h" /> 181 <ClInclude Include="..\Include\cpython\pylifecycle.h" /> 182 <ClInclude Include="..\Include\cpython\pymem.h" /> 183 <ClInclude Include="..\Include\cpython\pystate.h" /> 184 <ClInclude Include="..\Include\cpython\pystats.h" /> 185 <ClInclude Include="..\Include\cpython\pythonrun.h" /> 186 <ClInclude Include="..\Include\cpython\pythread.h" /> 187 <ClInclude Include="..\Include\cpython\setobject.h" /> 188 <ClInclude Include="..\Include\cpython\sysmodule.h" /> 189 <ClInclude Include="..\Include\cpython\traceback.h" /> 190 <ClInclude Include="..\Include\cpython\tracemalloc.h" /> 191 <ClInclude Include="..\Include\cpython\tupleobject.h" /> 192 <ClInclude Include="..\Include\cpython\unicodeobject.h" /> 193 <ClInclude Include="..\Include\cpython\warnings.h" /> 194 <ClInclude Include="..\Include\cpython\weakrefobject.h" /> 195 <ClInclude Include="..\Include\datetime.h" /> 196 <ClInclude Include="..\Include\descrobject.h" /> 197 <ClInclude Include="..\Include\dictobject.h" /> 198 <ClInclude Include="..\Include\dynamic_annotations.h" /> 199 <ClInclude Include="..\Include\enumobject.h" /> 200 <ClInclude Include="..\Include\errcode.h" /> 201 <ClInclude Include="..\Include\fileobject.h" /> 202 <ClInclude Include="..\Include\fileutils.h" /> 203 <ClInclude Include="..\Include\floatobject.h" /> 204 <ClInclude Include="..\Include\frameobject.h" /> 205 <ClInclude Include="..\Include\import.h" /> 206 <ClInclude Include="..\Include\internal\pycore_abstract.h" /> 207 <ClInclude Include="..\Include\internal\pycore_asdl.h" /> 208 <ClInclude Include="..\Include\internal\pycore_ast.h" /> 209 <ClInclude Include="..\Include\internal\pycore_ast_state.h" /> 210 <ClInclude Include="..\Include\internal\pycore_atexit.h" /> 211 <ClInclude Include="..\Include\internal\pycore_backoff.h" /> 212 <ClInclude Include="..\Include\internal\pycore_bitutils.h" /> 213 <ClInclude Include="..\Include\internal\pycore_brc.h" /> 214 <ClInclude Include="..\Include\internal\pycore_bytes_methods.h" /> 215 <ClInclude Include="..\Include\internal\pycore_bytesobject.h" /> 216 <ClInclude Include="..\Include\internal\pycore_call.h" /> 217 <ClInclude Include="..\Include\internal\pycore_capsule.h" /> 218 <ClInclude Include="..\Include\internal\pycore_cell.h" /> 219 <ClInclude Include="..\Include\internal\pycore_ceval.h" /> 220 <ClInclude Include="..\Include\internal\pycore_ceval_state.h" /> 221 <ClInclude Include="..\Include\internal\pycore_cfg.h" /> 222 <ClInclude Include="..\Include\internal\pycore_code.h" /> 223 <ClInclude Include="..\Include\internal\pycore_codecs.h" /> 224 <ClInclude Include="..\Include\internal\pycore_compile.h" /> 225 <ClInclude Include="..\Include\internal\pycore_complexobject.h" /> 226 <ClInclude Include="..\Include\internal\pycore_condvar.h" /> 227 <ClInclude Include="..\Include\internal\pycore_context.h" /> 228 <ClInclude Include="..\Include\internal\pycore_critical_section.h" /> 229 <ClInclude Include="..\Include\internal\pycore_crossinterp.h" /> 230 <ClInclude Include="..\Include\internal\pycore_descrobject.h" /> 231 <ClInclude Include="..\Include\internal\pycore_dict.h" /> 232 <ClInclude Include="..\Include\internal\pycore_dict_state.h" /> 233 <ClInclude Include="..\Include\internal\pycore_dtoa.h" /> 234 <ClInclude Include="..\Include\internal\pycore_exceptions.h" /> 235 <ClInclude Include="..\Include\internal\pycore_faulthandler.h" /> 236 <ClInclude Include="..\Include\internal\pycore_fileutils.h" /> 237 <ClInclude Include="..\Include\internal\pycore_fileutils_windows.h" /> 238 <ClInclude Include="..\Include\internal\pycore_floatobject.h" /> 239 <ClInclude Include="..\Include\internal\pycore_format.h" /> 240 <ClInclude Include="..\Include\internal\pycore_frame.h" /> 241 <ClInclude Include="..\Include\internal\pycore_freelist.h" /> 242 <ClInclude Include="..\Include\internal\pycore_function.h" /> 243 <ClInclude Include="..\Include\internal\pycore_gc.h" /> 244 <ClInclude Include="..\Include\internal\pycore_genobject.h" /> 245 <ClInclude Include="..\Include\internal\pycore_getopt.h" /> 246 <ClInclude Include="..\Include\internal\pycore_gil.h" /> 247 <ClInclude Include="..\Include\internal\pycore_global_objects.h" /> 248 <ClInclude Include="..\Include\internal\pycore_global_objects_fini_generated.h" /> 249 <ClInclude Include="..\Include\internal\pycore_hamt.h" /> 250 <ClInclude Include="..\Include\internal\pycore_hashtable.h" /> 251 <ClInclude Include="..\Include\internal\pycore_identifier.h" /> 252 <ClInclude Include="..\Include\internal\pycore_import.h" /> 253 <ClInclude Include="..\Include\internal\pycore_importdl.h" /> 254 <ClInclude Include="..\Include\internal\pycore_initconfig.h" /> 255 <ClInclude Include="..\Include\internal\pycore_instruction_sequence.h" /> 256 <ClInclude Include="..\Include\internal\pycore_interp.h" /> 257 <ClInclude Include="..\Include\internal\pycore_intrinsics.h" /> 258 <ClInclude Include="..\Include\internal\pycore_jit.h" /> 259 <ClInclude Include="..\Include\internal\pycore_list.h" /> 260 <ClInclude Include="..\Include\internal\pycore_llist.h" /> 261 <ClInclude Include="..\Include\internal\pycore_lock.h" /> 262 <ClInclude Include="..\Include\internal\pycore_long.h" /> 263 <ClInclude Include="..\Include\internal\pycore_modsupport.h" /> 264 <ClInclude Include="..\Include\internal\pycore_moduleobject.h" /> 265 <ClInclude Include="..\Include\internal\pycore_namespace.h" /> 266 <ClInclude Include="..\Include\internal\pycore_object.h" /> 267 <ClInclude Include="..\Include\internal\pycore_object_alloc.h" /> 268 <ClInclude Include="..\Include\internal\pycore_object_state.h" /> 269 <ClInclude Include="..\Include\internal\pycore_obmalloc.h" /> 270 <ClInclude Include="..\Include\internal\pycore_obmalloc_init.h" /> 271 <ClInclude Include="..\Include\internal\pycore_optimizer.h" /> 272 <ClInclude Include="..\Include\internal\pycore_parking_lot.h" /> 273 <ClInclude Include="..\Include\internal\pycore_pathconfig.h" /> 274 <ClInclude Include="..\Include\internal\pycore_pyarena.h" /> 275 <ClInclude Include="..\Include\internal\pycore_pyatomic_ft_wrappers.h" /> 276 <ClInclude Include="..\Include\internal\pycore_pyerrors.h" /> 277 <ClInclude Include="..\Include\internal\pycore_pyhash.h" /> 278 <ClInclude Include="..\Include\internal\pycore_pylifecycle.h" /> 279 <ClInclude Include="..\Include\internal\pycore_pymem.h" /> 280 <ClInclude Include="..\Include\internal\pycore_pymem_init.h" /> 281 <ClInclude Include="..\Include\internal\pycore_pystate.h" /> 282 <ClInclude Include="..\Include\internal\pycore_pystats.h" /> 283 <ClInclude Include="..\Include\internal\pycore_pythonrun.h" /> 284 <ClInclude Include="..\Include\internal\pycore_pythread.h" /> 285 <ClInclude Include="..\Include\internal\pycore_qsbr.h" /> 286 <ClInclude Include="..\Include\internal\pycore_range.h" /> 287 <ClInclude Include="..\Include\internal\pycore_runtime.h" /> 288 <ClInclude Include="..\Include\internal\pycore_runtime_init.h" /> 289 <ClInclude Include="..\Include\internal\pycore_runtime_init_generated.h" /> 290 <ClInclude Include="..\Include\internal\pycore_semaphore.h" /> 291 <ClInclude Include="..\Include\internal\pycore_setobject.h" /> 292 <ClInclude Include="..\Include\internal\pycore_signal.h" /> 293 <ClInclude Include="..\Include\internal\pycore_sliceobject.h" /> 294 <ClInclude Include="..\Include\internal\pycore_strhex.h" /> 295 <ClInclude Include="..\Include\internal\pycore_structseq.h" /> 296 <ClInclude Include="..\Include\internal\pycore_sysmodule.h" /> 297 <ClInclude Include="..\Include\internal\pycore_symtable.h" /> 298 <ClInclude Include="..\Include\internal\pycore_stackref.h" /> 299 <ClInclude Include="..\Include\internal\pycore_time.h" /> 300 <ClInclude Include="..\Include\internal\pycore_token.h" /> 301 <ClInclude Include="..\Include\internal\pycore_traceback.h" /> 302 <ClInclude Include="..\Include\internal\pycore_tracemalloc.h" /> 303 <ClInclude Include="..\Include\internal\pycore_tstate.h" /> 304 <ClInclude Include="..\Include\internal\pycore_tuple.h" /> 305 <ClInclude Include="..\Include\internal\pycore_typeobject.h" /> 306 <ClInclude Include="..\Include\internal\pycore_typevarobject.h" /> 307 <ClInclude Include="..\Include\internal\pycore_ucnhash.h" /> 308 <ClInclude Include="..\Include\internal\pycore_unionobject.h" /> 309 <ClInclude Include="..\Include\internal\pycore_unicodeobject.h" /> 310 <ClInclude Include="..\Include\internal\pycore_unicodeobject_generated.h" /> 311 <ClInclude Include="..\Include\internal\pycore_warnings.h" /> 312 <ClInclude Include="..\Include\internal\pycore_weakref.h" /> 313 <ClInclude Include="..\Include\intrcheck.h" /> 314 <ClInclude Include="..\Include\iterobject.h" /> 315 <ClInclude Include="..\Include\listobject.h" /> 316 <ClInclude Include="..\Include\lock.h" /> 317 <ClInclude Include="..\Include\longobject.h" /> 318 <ClInclude Include="..\Include\marshal.h" /> 319 <ClInclude Include="..\Include\memoryobject.h" /> 320 <ClInclude Include="..\Include\methodobject.h" /> 321 <ClInclude Include="..\Include\internal\mimalloc\mimalloc\atomic.h" /> 322 <ClInclude Include="..\Include\internal\mimalloc\mimalloc\internal.h" /> 323 <ClInclude Include="..\Include\internal\mimalloc\mimalloc\prim.h" /> 324 <ClInclude Include="..\Include\internal\mimalloc\mimalloc\track.h" /> 325 <ClInclude Include="..\Include\internal\mimalloc\mimalloc\types.h" /> 326 <ClInclude Include="..\Include\internal\mimalloc\mimalloc.h" /> 327 <ClInclude Include="..\Include\modsupport.h" /> 328 <ClInclude Include="..\Include\moduleobject.h" /> 329 <ClInclude Include="..\Include\object.h" /> 330 <ClInclude Include="..\Include\objimpl.h" /> 331 <ClInclude Include="..\Include\opcode.h" /> 332 <ClInclude Include="..\Include\osdefs.h" /> 333 <ClInclude Include="..\Include\osmodule.h" /> 334 <ClInclude Include="..\Include\patchlevel.h" /> 335 <ClInclude Include="..\Include\py_curses.h" /> 336 <ClInclude Include="..\Include\pyatomic.h" /> 337 <ClInclude Include="..\Include\pybuffer.h" /> 338 <ClInclude Include="..\Include\pycapsule.h" /> 339 <ClInclude Include="..\Include\pyerrors.h" /> 340 <ClInclude Include="..\Include\pyexpat.h" /> 341 <ClInclude Include="..\Include\pyframe.h" /> 342 <ClInclude Include="..\Include\pyhash.h" /> 343 <ClInclude Include="..\Include\pylifecycle.h" /> 344 <ClInclude Include="..\Include\pymacro.h" /> 345 <ClInclude Include="..\Include\pymath.h" /> 346 <ClInclude Include="..\Include\pymem.h" /> 347 <ClInclude Include="..\Include\pyport.h" /> 348 <ClInclude Include="..\Include\pystate.h" /> 349 <ClInclude Include="..\Include\pystats.h" /> 350 <ClInclude Include="..\Include\pystrcmp.h" /> 351 <ClInclude Include="..\Include\pystrtod.h" /> 352 <ClInclude Include="..\Include\pythonrun.h" /> 353 <ClInclude Include="..\Include\pythread.h" /> 354 <ClInclude Include="..\Include\pytypedefs.h" /> 355 <ClInclude Include="..\Include\rangeobject.h" /> 356 <ClInclude Include="..\Include\setobject.h" /> 357 <ClInclude Include="..\Include\sliceobject.h" /> 358 <ClInclude Include="..\Include\structmember.h" /> 359 <ClInclude Include="..\Include\structseq.h" /> 360 <ClInclude Include="..\Include\symtable.h" /> 361 <ClInclude Include="..\Include\sysmodule.h" /> 362 <ClInclude Include="..\Include\traceback.h" /> 363 <ClInclude Include="..\Include\tupleobject.h" /> 364 <ClInclude Include="..\Include\unicodeobject.h" /> 365 <ClInclude Include="..\Include\weakrefobject.h" /> 366 <ClInclude Include="..\Modules\_math.h" /> 367 <ClInclude Include="..\Modules\hashtable.h" /> 368 <ClInclude Include="..\Modules\rotatingtree.h" /> 369 <ClInclude Include="..\Modules\_io\_iomodule.h" /> 370 <ClInclude Include="..\Modules\cjkcodecs\alg_jisx0201.h" /> 371 <ClInclude Include="..\Modules\cjkcodecs\cjkcodecs.h" /> 372 <ClInclude Include="..\Modules\cjkcodecs\emu_jisx0213_2000.h" /> 373 <ClInclude Include="..\Modules\cjkcodecs\mappings_cn.h" /> 374 <ClInclude Include="..\Modules\cjkcodecs\mappings_hk.h" /> 375 <ClInclude Include="..\Modules\cjkcodecs\mappings_jisx0213_pair.h" /> 376 <ClInclude Include="..\Modules\cjkcodecs\mappings_jp.h" /> 377 <ClInclude Include="..\Modules\cjkcodecs\mappings_kr.h" /> 378 <ClInclude Include="..\Modules\cjkcodecs\mappings_tw.h" /> 379 <ClInclude Include="..\Modules\cjkcodecs\multibytecodec.h" /> 380 <ClInclude Include="..\Objects\stringlib\count.h" /> 381 <ClInclude Include="..\Objects\stringlib\fastsearch.h" /> 382 <ClInclude Include="..\Objects\stringlib\find.h" /> 383 <ClInclude Include="..\Objects\stringlib\partition.h" /> 384 <ClInclude Include="..\Objects\stringlib\replace.h" /> 385 <ClInclude Include="..\Objects\stringlib\split.h" /> 386 <ClInclude Include="..\Objects\unicodetype_db.h" /> 387 <ClInclude Include="..\Parser\lexer\state.h" /> 388 <ClInclude Include="..\Parser\lexer\lexer.h" /> 389 <ClInclude Include="..\Parser\lexer\buffer.h" /> 390 <ClInclude Include="..\Parser\tokenizer\helpers.h" /> 391 <ClInclude Include="..\Parser\tokenizer\tokenizer.h" /> 392 <ClInclude Include="..\Parser\string_parser.h" /> 393 <ClInclude Include="..\Parser\pegen.h" /> 394 <ClInclude Include="..\PC\errmap.h" /> 395 <ClInclude Include="..\PC\pyconfig.h.in" /> 396 <ClInclude Include="..\Python\condvar.h" /> 397 <ClInclude Include="..\Python\stdlib_module_names.h" /> 398 <ClInclude Include="..\Python\thread_nt.h" /> 399 </ItemGroup> 400 <ItemGroup Condition="$(IncludeExternals)"> 401 <ClInclude Include="$(zlibDir)\crc32.h" /> 402 <ClInclude Include="$(zlibDir)\deflate.h" /> 403 <ClInclude Include="$(zlibDir)\inffast.h" /> 404 <ClInclude Include="$(zlibDir)\inffixed.h" /> 405 <ClInclude Include="$(zlibDir)\inflate.h" /> 406 <ClInclude Include="$(zlibDir)\inftrees.h" /> 407 <ClInclude Include="$(zlibDir)\trees.h" /> 408 <ClInclude Include="$(zlibDir)\zconf.h" /> 409 <ClInclude Include="$(zlibDir)\zconf.in.h" /> 410 <ClInclude Include="$(zlibDir)\zlib.h" /> 411 <ClInclude Include="$(zlibDir)\zutil.h" /> 412 </ItemGroup> 413 <ItemGroup> 414 <ClCompile Include="..\Modules\_abc.c" /> 415 <ClCompile Include="..\Modules\_bisectmodule.c" /> 416 <ClCompile Include="..\Modules\_blake2\blake2module.c" /> 417 <ClCompile Include="..\Modules\_blake2\blake2b_impl.c" /> 418 <ClCompile Include="..\Modules\_blake2\blake2s_impl.c" /> 419 <ClCompile Include="..\Modules\_codecsmodule.c" /> 420 <ClCompile Include="..\Modules\_collectionsmodule.c" /> 421 <ClCompile Include="..\Modules\_contextvarsmodule.c" /> 422 <ClCompile Include="..\Modules\_csv.c" /> 423 <ClCompile Include="..\Modules\_functoolsmodule.c" /> 424 <ClCompile Include="..\Modules\_hacl\Hacl_Hash_MD5.c" /> 425 <ClCompile Include="..\Modules\_hacl\Hacl_Hash_SHA1.c" /> 426 <ClCompile Include="..\Modules\_hacl\Hacl_Hash_SHA2.c" /> 427 <ClCompile Include="..\Modules\_hacl\Hacl_Hash_SHA3.c" /> 428 <ClCompile Include="..\Modules\_heapqmodule.c" /> 429 <ClCompile Include="..\Modules\_json.c" /> 430 <ClCompile Include="..\Modules\_localemodule.c" /> 431 <ClCompile Include="..\Modules\_lsprof.c" /> 432 <ClCompile Include="..\Modules\_pickle.c" /> 433 <ClCompile Include="..\Modules\_randommodule.c" /> 434 <ClCompile Include="..\Modules\_sre\sre.c" /> 435 <ClInclude Include="..\Modules\_sre\sre.h" /> 436 <ClInclude Include="..\Modules\_sre\sre_constants.h" /> 437 <ClInclude Include="..\Modules\_sre\sre_lib.h" /> 438 <ClCompile Include="..\Modules\_stat.c" /> 439 <ClCompile Include="..\Modules\_struct.c" /> 440 <ClCompile Include="..\Modules\_suggestions.c" /> 441 <ClCompile Include="..\Modules\_weakref.c" /> 442 <ClCompile Include="..\Modules\arraymodule.c" /> 443 <ClCompile Include="..\Modules\atexitmodule.c" /> 444 <ClCompile Include="..\Modules\binascii.c"> 445 <PreprocessorDefinitions>USE_ZLIB_CRC32;%(PreprocessorDefinitions)</PreprocessorDefinitions> 446 </ClCompile> 447 <ClCompile Include="..\Modules\cmathmodule.c" /> 448 <ClCompile Include="..\Modules\_datetimemodule.c" /> 449 <ClCompile Include="..\Modules\errnomodule.c" /> 450 <ClCompile Include="..\Modules\faulthandler.c" /> 451 <ClCompile Include="..\Modules\gcmodule.c" /> 452 <ClCompile Include="..\Modules\getbuildinfo.c" /> 453 <ClCompile Include="..\Modules\itertoolsmodule.c" /> 454 <ClCompile Include="..\Modules\main.c" /> 455 <ClCompile Include="..\Modules\mathmodule.c" /> 456 <ClCompile Include="..\Modules\md5module.c" /> 457 <ClCompile Include="..\Modules\mmapmodule.c" /> 458 <ClCompile Include="..\Modules\_opcode.c" /> 459 <ClCompile Include="..\Modules\_operator.c" /> 460 <ClCompile Include="..\Modules\posixmodule.c" /> 461 <ClCompile Include="..\Modules\rotatingtree.c" /> 462 <ClCompile Include="..\Modules\sha1module.c" /> 463 <ClCompile Include="..\Modules\sha2module.c" /> 464 <ClCompile Include="..\Modules\sha3module.c" /> 465 <ClCompile Include="..\Modules\signalmodule.c" /> 466 <ClCompile Include="..\Modules\_statisticsmodule.c" /> 467 <ClCompile Include="..\Modules\symtablemodule.c" /> 468 <ClCompile Include="..\Modules\_sysconfig.c" /> 469 <ClCompile Include="..\Modules\_threadmodule.c" /> 470 <ClCompile Include="..\Modules\_tracemalloc.c" /> 471 <ClCompile Include="..\Modules\_typingmodule.c" /> 472 <ClCompile Include="..\Modules\timemodule.c" /> 473 <ClCompile Include="..\Modules\xxsubtype.c" /> 474 <ClCompile Include="..\Modules\_interpretersmodule.c" /> 475 <ClCompile Include="..\Modules\_interpchannelsmodule.c" /> 476 <ClCompile Include="..\Modules\_interpqueuesmodule.c" /> 477 <ClCompile Include="..\Modules\_io\fileio.c" /> 478 <ClCompile Include="..\Modules\_io\bytesio.c" /> 479 <ClCompile Include="..\Modules\_io\stringio.c" /> 480 <ClCompile Include="..\Modules\_io\bufferedio.c" /> 481 <ClCompile Include="..\Modules\_io\iobase.c" /> 482 <ClCompile Include="..\Modules\_io\textio.c" /> 483 <ClCompile Include="..\Modules\_io\winconsoleio.c" /> 484 <ClCompile Include="..\Modules\_io\_iomodule.c" /> 485 <ClCompile Include="..\Modules\cjkcodecs\_codecs_cn.c" /> 486 <ClCompile Include="..\Modules\cjkcodecs\_codecs_hk.c" /> 487 <ClCompile Include="..\Modules\cjkcodecs\_codecs_iso2022.c" /> 488 <ClCompile Include="..\Modules\cjkcodecs\_codecs_jp.c" /> 489 <ClCompile Include="..\Modules\cjkcodecs\_codecs_kr.c" /> 490 <ClCompile Include="..\Modules\cjkcodecs\_codecs_tw.c" /> 491 <ClCompile Include="..\Modules\cjkcodecs\multibytecodec.c" /> 492 <ClCompile Include="..\Modules\_winapi.c" /> 493 <ClCompile Include="..\Objects\abstract.c" /> 494 <ClCompile Include="..\Objects\boolobject.c" /> 495 <ClCompile Include="..\Objects\bytearrayobject.c" /> 496 <ClCompile Include="..\Objects\bytes_methods.c" /> 497 <ClCompile Include="..\Objects\bytesobject.c" /> 498 <ClCompile Include="..\Objects\call.c" /> 499 <ClCompile Include="..\Objects\capsule.c" /> 500 <ClCompile Include="..\Objects\cellobject.c" /> 501 <ClCompile Include="..\Objects\classobject.c" /> 502 <ClCompile Include="..\Objects\codeobject.c" /> 503 <ClCompile Include="..\Objects\complexobject.c" /> 504 <ClCompile Include="..\Objects\descrobject.c" /> 505 <ClCompile Include="..\Objects\dictobject.c" /> 506 <ClCompile Include="..\Objects\enumobject.c" /> 507 <ClCompile Include="..\Objects\exceptions.c" /> 508 <ClCompile Include="..\Objects\fileobject.c" /> 509 <ClCompile Include="..\Objects\floatobject.c" /> 510 <ClCompile Include="..\Objects\frameobject.c" /> 511 <ClCompile Include="..\Objects\funcobject.c" /> 512 <ClCompile Include="..\Objects\genericaliasobject.c" /> 513 <ClCompile Include="..\Objects\genobject.c" /> 514 <ClCompile Include="..\Objects\iterobject.c" /> 515 <ClCompile Include="..\Objects\listobject.c" /> 516 <ClCompile Include="..\Objects\longobject.c" /> 517 <ClCompile Include="..\Objects\memoryobject.c" /> 518 <ClCompile Include="..\Objects\methodobject.c" /> 519 <ClCompile Include="..\Objects\moduleobject.c" /> 520 <ClCompile Include="..\Objects\namespaceobject.c" /> 521 <ClCompile Include="..\Objects\object.c" /> 522 <ClCompile Include="..\Objects\obmalloc.c" /> 523 <ClCompile Include="..\Objects\odictobject.c" /> 524 <ClCompile Include="..\Objects\picklebufobject.c" /> 525 <ClCompile Include="..\Objects\rangeobject.c" /> 526 <ClCompile Include="..\Objects\setobject.c" /> 527 <ClCompile Include="..\Objects\sliceobject.c" /> 528 <ClCompile Include="..\Objects\structseq.c" /> 529 <ClCompile Include="..\Objects\tupleobject.c" /> 530 <ClCompile Include="..\Objects\typeobject.c" /> 531 <ClCompile Include="..\Objects\typevarobject.c" /> 532 <ClCompile Include="..\Objects\unicodectype.c" /> 533 <ClCompile Include="..\Objects\unicodeobject.c" /> 534 <ClCompile Include="..\Objects\unionobject.c" /> 535 <ClCompile Include="..\Objects\weakrefobject.c" /> 536 <ClCompile Include="..\Parser\myreadline.c" /> 537 <ClCompile Include="..\Parser\lexer\state.c" /> 538 <ClCompile Include="..\Parser\lexer\lexer.c" /> 539 <ClCompile Include="..\Parser\lexer\buffer.c" /> 540 <ClCompile Include="..\Parser\tokenizer\string_tokenizer.c" /> 541 <ClCompile Include="..\Parser\tokenizer\file_tokenizer.c" /> 542 <ClCompile Include="..\Parser\tokenizer\utf8_tokenizer.c" /> 543 <ClCompile Include="..\Parser\tokenizer\readline_tokenizer.c" /> 544 <ClCompile Include="..\Parser\tokenizer\helpers.c" /> 545 <ClCompile Include="..\Parser\token.c" /> 546 <ClCompile Include="..\Parser\pegen.c" /> 547 <ClCompile Include="..\Parser\pegen_errors.c" /> 548 <ClCompile Include="..\Parser\action_helpers.c" /> 549 <ClCompile Include="..\Parser\parser.c" /> 550 <ClCompile Include="..\Parser\string_parser.c" /> 551 <ClCompile Include="..\Parser\peg_api.c" /> 552 <ClCompile Include="..\PC\invalid_parameter_handler.c" /> 553 <ClCompile Include="..\PC\winreg.c" /> 554 <ClCompile Include="..\PC\config.c" /> 555 <ClCompile Include="..\PC\msvcrtmodule.c" /> 556 <ClCompile Include="..\Python\pyhash.c" /> 557 <ClCompile Include="..\Python\_warnings.c" /> 558 <ClCompile Include="..\Python\asdl.c" /> 559 <ClCompile Include="..\Python\assemble.c" /> 560 <ClCompile Include="..\Python\ast.c" /> 561 <ClCompile Include="..\Python\ast_opt.c" /> 562 <ClCompile Include="..\Python\ast_unparse.c" /> 563 <ClCompile Include="..\Python\bltinmodule.c" /> 564 <ClCompile Include="..\Python\bootstrap_hash.c" /> 565 <ClCompile Include="..\Python\brc.c" /> 566 <ClCompile Include="..\Python\ceval.c" /> 567 <ClCompile Include="..\Python\codecs.c" /> 568 <ClCompile Include="..\Python\compile.c" /> 569 <ClCompile Include="..\Python\context.c" /> 570 <ClCompile Include="..\Python\critical_section.c" /> 571 <ClCompile Include="..\Python\crossinterp.c" /> 572 <ClCompile Include="..\Python\dynamic_annotations.c" /> 573 <ClCompile Include="..\Python\dynload_win.c" /> 574 <ClCompile Include="..\Python\errors.c" /> 575 <ClCompile Include="..\Python\fileutils.c" /> 576 <ClCompile Include="..\Python\flowgraph.c" /> 577 <ClCompile Include="..\Python\formatter_unicode.c" /> 578 <ClCompile Include="..\Python\frame.c" /> 579 <ClCompile Include="..\Python\frozen.c"> 580 <AdditionalIncludeDirectories>$(GeneratedFrozenModulesDir)Python;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> 581 </ClCompile> 582 <ClCompile Include="..\Python\future.c" /> 583 <ClCompile Include="..\Python\gc.c" /> 584 <ClCompile Include="..\Python\gc_free_threading.c" /> 585 <ClCompile Include="..\Python\gc_gil.c" /> 586 <ClCompile Include="..\Python\getargs.c" /> 587 <ClCompile Include="..\Python\getcompiler.c" /> 588 <ClCompile Include="..\Python\getcopyright.c" /> 589 <ClCompile Include="..\Python\getopt.c" /> 590 <ClCompile Include="..\Python\getplatform.c" /> 591 <ClCompile Include="..\Python\getversion.c" /> 592 <ClCompile Include="..\Python\ceval_gil.c" /> 593 <ClCompile Include="..\Python\hamt.c" /> 594 <ClCompile Include="..\Python\hashtable.c" /> 595 <ClCompile Include="..\Python\import.c" /> 596 <ClCompile Include="..\Python\importdl.c" /> 597 <ClCompile Include="..\Python\initconfig.c" /> 598 <ClCompile Include="..\Python\interpconfig.c" /> 599 <ClCompile Include="..\Python\intrinsics.c" /> 600 <ClCompile Include="..\Python\instruction_sequence.c" /> 601 <ClCompile Include="..\Python\instrumentation.c" /> 602 <ClCompile Include="..\Python\jit.c" /> 603 <ClCompile Include="..\Python\legacy_tracing.c" /> 604 <ClCompile Include="..\Python\lock.c" /> 605 <ClCompile Include="..\Python\marshal.c" /> 606 <ClCompile Include="..\Python\modsupport.c" /> 607 <ClCompile Include="..\Python\mysnprintf.c" /> 608 <ClCompile Include="..\Python\mystrtoul.c" /> 609 <ClCompile Include="..\Python\object_stack.c" /> 610 <ClCompile Include="..\Python\optimizer.c" /> 611 <ClCompile Include="..\Python\optimizer_analysis.c" /> 612 <ClCompile Include="..\Python\optimizer_symbols.c" /> 613 <ClCompile Include="..\Python\parking_lot.c" /> 614 <ClCompile Include="..\Python\pathconfig.c" /> 615 <ClCompile Include="..\Python\perf_trampoline.c" /> 616 <ClCompile Include="..\Python\perf_jit_trampoline.c" /> 617 <ClCompile Include="..\Python\preconfig.c" /> 618 <ClCompile Include="..\Python\pyarena.c" /> 619 <ClCompile Include="..\Python\pyctype.c" /> 620 <ClCompile Include="..\Python\pyfpe.c" /> 621 <ClCompile Include="..\Python\pylifecycle.c" /> 622 <ClCompile Include="..\Python\pymath.c" /> 623 <ClCompile Include="..\Python\pytime.c" /> 624 <ClCompile Include="..\Python\pystate.c" /> 625 <ClCompile Include="..\Python\pystrcmp.c" /> 626 <ClCompile Include="..\Python\pystrhex.c" /> 627 <ClCompile Include="..\Python\pystrtod.c" /> 628 <ClCompile Include="..\Python\qsbr.c" /> 629 <ClCompile Include="..\Python\dtoa.c" /> 630 <ClCompile Include="..\Python\Python-ast.c" /> 631 <ClCompile Include="..\Python\Python-tokenize.c" /> 632 <ClCompile Include="..\Python\pythonrun.c" /> 633 <ClCompile Include="..\Python\specialize.c" /> 634 <ClCompile Include="..\Python\suggestions.c" /> 635 <ClCompile Include="..\Python\structmember.c" /> 636 <ClCompile Include="..\Python\symtable.c" /> 637 <ClCompile Include="..\Python\sysmodule.c"> 638 <PreprocessorDefinitions>VPATH="$(PyVPath)";%(PreprocessorDefinitions)</PreprocessorDefinitions> 639 </ClCompile> 640 <ClCompile Include="..\Python\thread.c" /> 641 <ClCompile Include="..\Python\traceback.c" /> 642 <ClCompile Include="..\Python\tracemalloc.c" /> 643 </ItemGroup> 644 <ItemGroup Condition="$(IncludeExternals)"> 645 <ClCompile Include="..\Modules\zlibmodule.c" /> 646 <ClCompile Include="$(zlibDir)\adler32.c" /> 647 <ClCompile Include="$(zlibDir)\compress.c" /> 648 <ClCompile Include="$(zlibDir)\crc32.c" /> 649 <ClCompile Include="$(zlibDir)\deflate.c"> 650 <DisableSpecificWarnings>4244</DisableSpecificWarnings> 651 </ClCompile> 652 <ClCompile Include="$(zlibDir)\infback.c" /> 653 <ClCompile Include="$(zlibDir)\inffast.c" /> 654 <ClCompile Include="$(zlibDir)\inflate.c" /> 655 <ClCompile Include="$(zlibDir)\inftrees.c" /> 656 <ClCompile Include="$(zlibDir)\trees.c" /> 657 <ClCompile Include="$(zlibDir)\uncompr.c" /> 658 <ClCompile Include="$(zlibDir)\zutil.c" /> 659 </ItemGroup> 660 <ItemGroup> 661 <ClCompile Include="..\PC\dl_nt.c" /> 662 </ItemGroup> 663 <ItemGroup> 664 <ResourceCompile Include="..\PC\python_nt.rc" /> 665 </ItemGroup> 666 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> 667 <ImportGroup Label="ExtensionTargets"> 668 <Import Project="regen.targets" /> 669 </ImportGroup> 670 <Target Name="_TriggerRegen" BeforeTargets="PrepareForBuild" DependsOnTargets="Regen" /> 671 672 <Target Name="_UpdatePyconfig" BeforeTargets="PrepareForBuild"> 673 <MakeDir Directories="$(IntDir)" Condition="!Exists($(IntDir))" /> 674 <ItemGroup> 675 <PyConfigH Remove="@(PyConfigH)" /> 676 <PyConfigH Include="@(ClInclude)" Condition="'%(Filename)%(Extension)' == 'pyconfig.h.in'" /> 677 </ItemGroup> 678 <Error Text="Did not find pyconfig.h" Condition="@(ClInclude) == ''" /> 679 <PropertyGroup> 680 <PyConfigH>@(PyConfigH->'%(FullPath)', ';')</PyConfigH> 681 <PyConfigHText>$([System.IO.File]::ReadAllText($(PyConfigH)))</PyConfigHText> 682 <OldPyConfigH Condition="Exists('$(IntDir)pyconfig.h')">$([System.IO.File]::ReadAllText('$(IntDir)pyconfig.h'))</OldPyConfigH> 683 </PropertyGroup> 684 <PropertyGroup Condition="$(DisableGil) == 'true'"> 685 <PyConfigHText>$(PyConfigHText.Replace('/* #define Py_GIL_DISABLED 1 */', '#define Py_GIL_DISABLED 1'))</PyConfigHText> 686 </PropertyGroup> 687 <Message Text="Updating pyconfig.h" Condition="$(PyConfigHText.TrimEnd()) != $(OldPyConfigH.TrimEnd())" /> 688 <WriteLinesToFile File="$(IntDir)pyconfig.h" 689 Lines="$(PyConfigHText)" 690 Overwrite="true" 691 Condition="$(PyConfigHText.TrimEnd()) != $(OldPyConfigH.TrimEnd())" /> 692 </Target> 693 <Target Name="_CopyPyconfig" Inputs="$(IntDir)pyconfig.h" Outputs="$(OutDir)pyconfig.h" AfterTargets="Build" DependsOnTargets="_UpdatePyconfig"> 694 <Copy SourceFiles="$(IntDir)pyconfig.h" DestinationFolder="$(OutDir)" /> 695 </Target> 696 <Target Name="_CleanPyconfig" AfterTargets="Clean"> 697 <Delete Files="$(IntDir)pyconfig.h;$(OutDir)pyconfig.h" /> 698 </Target> 699 700 <Target Name="_GetBuildInfo" BeforeTargets="PrepareForBuild"> 701 <PropertyGroup> 702 <GIT Condition="$(GIT) == ''">git</GIT> 703 <_GIT>$(GIT)</_GIT> 704 <_GIT Condition="$(GIT.Contains(` `))">"$(GIT)"</_GIT> 705 </PropertyGroup> 706 <Message Text="Getting build info from $(_GIT)" Importance="high" /> 707 <MakeDir Directories="$(IntDir)" Condition="!Exists($(IntDir))" /> 708 <Exec Command="$(_GIT) name-rev --name-only HEAD > "$(IntDir)gitbranch.txt"" ContinueOnError="true" /> 709 <Exec Command="$(_GIT) rev-parse --short HEAD > "$(IntDir)gitversion.txt"" ContinueOnError="true" /> 710 <Exec Command="$(_GIT) describe --all --always --dirty > "$(IntDir)gittag.txt"" ContinueOnError="true" /> 711 <PropertyGroup> 712 <GitBranch Condition="Exists('$(IntDir)gitbranch.txt')">$([System.IO.File]::ReadAllText('$(IntDir)gitbranch.txt').Trim())</GitBranch> 713 <GitVersion Condition="Exists('$(IntDir)gitversion.txt')">$([System.IO.File]::ReadAllText('$(IntDir)gitversion.txt').Trim())</GitVersion> 714 <GitTag Condition="Exists('$(IntDir)gittag.txt')">$([System.IO.File]::ReadAllText('$(IntDir)gittag.txt').Trim())</GitTag> 715 </PropertyGroup> 716 <Message Text="Building $(GitTag):$(GitVersion) $(GitBranch)" Importance="high" /> 717 <ItemGroup> 718 <ClCompile Condition="%(Filename) == 'getbuildinfo'"> 719 <PreprocessorDefinitions>GITVERSION="$(GitVersion)";GITTAG="$(GitTag)";GITBRANCH="$(GitBranch)";%(PreprocessorDefinitions)</PreprocessorDefinitions> 720 </ClCompile> 721 </ItemGroup> 722 </Target> 723 <Target Name="_WarnAboutToolset" BeforeTargets="PrepareForBuild" Condition="$(PlatformToolset) != 'v140' and $(PlatformToolset) != 'v141' and $(PlatformToolset) != 'v142' and $(PlatformToolset) != 'v143'"> 724 <Warning Text="Toolset $(PlatformToolset) is not used for official builds. Your build may have errors or incompatibilities." /> 725 </Target> 726 <Target Name="_WarnAboutZlib" BeforeTargets="PrepareForBuild" Condition="!$(IncludeExternals)"> 727 <Warning Text="Not including zlib is not a supported configuration." /> 728 </Target> 729 730 <Target Name="_CopyVCRuntime" AfterTargets="Build" Inputs="@(VCRuntimeDLL)" Outputs="$(OutDir)%(Filename)%(Extension)" DependsOnTargets="FindVCRuntime"> 731 <!-- bpo-38597: When we switch to another VCRuntime DLL, include vcruntime140.dll as well --> 732 <Warning Text="A copy of vcruntime140.dll is also required" Condition="!$(VCToolsRedistVersion.StartsWith(`14.`))" /> 733 <Copy SourceFiles="%(VCRuntimeDLL.FullPath)" DestinationFolder="$(OutDir)" /> 734 </Target> 735 <Target Name="_CleanVCRuntime" AfterTargets="Clean"> 736 <Delete Files="@(VCRuntimeDLL->'$(OutDir)%(Filename)%(Extension)')" /> 737 </Target> 738 739 <Target Name="_DeletePyBuildDirTxt" BeforeTargets="PrepareForBuild"> 740 <Delete Files="$(OutDir)pybuilddir.txt" /> 741 </Target> 742</Project> 743