• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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|Win32">
5      <Configuration>Debug</Configuration>
6      <Platform>Win32</Platform>
7    </ProjectConfiguration>
8    <ProjectConfiguration Include="Debug|x64">
9      <Configuration>Debug</Configuration>
10      <Platform>x64</Platform>
11    </ProjectConfiguration>
12    <ProjectConfiguration Include="PGInstrument|Win32">
13      <Configuration>PGInstrument</Configuration>
14      <Platform>Win32</Platform>
15    </ProjectConfiguration>
16    <ProjectConfiguration Include="PGInstrument|x64">
17      <Configuration>PGInstrument</Configuration>
18      <Platform>x64</Platform>
19    </ProjectConfiguration>
20    <ProjectConfiguration Include="PGUpdate|Win32">
21      <Configuration>PGUpdate</Configuration>
22      <Platform>Win32</Platform>
23    </ProjectConfiguration>
24    <ProjectConfiguration Include="PGUpdate|x64">
25      <Configuration>PGUpdate</Configuration>
26      <Platform>x64</Platform>
27    </ProjectConfiguration>
28    <ProjectConfiguration Include="Release|Win32">
29      <Configuration>Release</Configuration>
30      <Platform>Win32</Platform>
31    </ProjectConfiguration>
32    <ProjectConfiguration Include="Release|x64">
33      <Configuration>Release</Configuration>
34      <Platform>x64</Platform>
35    </ProjectConfiguration>
36  </ItemGroup>
37  <PropertyGroup Label="Globals">
38    <ProjectGuid>{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}</ProjectGuid>
39    <RootNamespace>pythoncore</RootNamespace>
40  </PropertyGroup>
41  <Import Project="python.props" />
42  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
43  <PropertyGroup Label="Configuration">
44    <ConfigurationType>DynamicLibrary</ConfigurationType>
45    <UseOfMfc>false</UseOfMfc>
46  </PropertyGroup>
47  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
48  <ImportGroup Label="ExtensionSettings">
49  </ImportGroup>
50  <PropertyGroup>
51    <MakeVersionInfoBeforeTarget>ClCompile</MakeVersionInfoBeforeTarget>
52    <KillPython>true</KillPython>
53  </PropertyGroup>
54  <ImportGroup Label="PropertySheets">
55    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
56    <Import Project="pyproject.props" />
57  </ImportGroup>
58  <PropertyGroup Label="UserMacros" />
59  <PropertyGroup>
60    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
61    <TargetName>$(PyDllName)</TargetName>
62    <!-- For VS2008, we have to embed the manifest to be able to run -->
63    <GenerateManifest Condition="'$(PlatformToolset)' == 'v90' or '$(BasePlatformToolset)' == 'v90'">true</GenerateManifest>
64    <EmbedManifest Condition="'$(PlatformToolset)' == 'v90' or '$(BasePlatformToolset)' == 'v90'">true</EmbedManifest>
65  </PropertyGroup>
66  <PropertyGroup>
67    <CustomBuildBeforeTargets>Link</CustomBuildBeforeTargets>
68  </PropertyGroup>
69  <ItemDefinitionGroup>
70    <ClCompile>
71      <AdditionalOptions>/Zm200  %(AdditionalOptions)</AdditionalOptions>
72      <AdditionalIncludeDirectories>$(PySourcePath)Python;$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
73      <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
74    </ClCompile>
75    <Link>
76      <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
77      <BaseAddress>0x1e000000</BaseAddress>
78    </Link>
79  </ItemDefinitionGroup>
80  <ItemGroup>
81    <ClInclude Include="..\Include\abstract.h" />
82    <ClInclude Include="..\Include\asdl.h" />
83    <ClInclude Include="..\Include\ast.h" />
84    <ClInclude Include="..\Include\bitset.h" />
85    <ClInclude Include="..\Include\boolobject.h" />
86    <ClInclude Include="..\Include\bufferobject.h" />
87    <ClInclude Include="..\Include\bytes_methods.h" />
88    <ClInclude Include="..\Include\bytearrayobject.h" />
89    <ClInclude Include="..\Include\bytesobject.h" />
90    <ClInclude Include="..\Include\cellobject.h" />
91    <ClInclude Include="..\Include\ceval.h" />
92    <ClInclude Include="..\Include\classobject.h" />
93    <ClInclude Include="..\Include\cobject.h" />
94    <ClInclude Include="..\Include\code.h" />
95    <ClInclude Include="..\Include\codecs.h" />
96    <ClInclude Include="..\Include\compile.h" />
97    <ClInclude Include="..\Include\complexobject.h" />
98    <ClInclude Include="..\Include\cStringIO.h" />
99    <ClInclude Include="..\Include\datetime.h" />
100    <ClInclude Include="..\Include\descrobject.h" />
101    <ClInclude Include="..\Include\dictobject.h" />
102    <ClInclude Include="..\Include\dtoa.h" />
103    <ClInclude Include="..\Include\enumobject.h" />
104    <ClInclude Include="..\Include\errcode.h" />
105    <ClInclude Include="..\Include\eval.h" />
106    <ClInclude Include="..\Include\fileobject.h" />
107    <ClInclude Include="..\Include\floatobject.h" />
108    <ClInclude Include="..\Include\frameobject.h" />
109    <ClInclude Include="..\Include\funcobject.h" />
110    <ClInclude Include="..\Include\genobject.h" />
111    <ClInclude Include="..\Include\graminit.h" />
112    <ClInclude Include="..\Include\grammar.h" />
113    <ClInclude Include="..\Include\import.h" />
114    <ClInclude Include="..\Include\intobject.h" />
115    <ClInclude Include="..\Include\intrcheck.h" />
116    <ClInclude Include="..\Include\iterobject.h" />
117    <ClInclude Include="..\Include\listobject.h" />
118    <ClInclude Include="..\Include\longintrepr.h" />
119    <ClInclude Include="..\Include\longobject.h" />
120    <ClInclude Include="..\Include\marshal.h" />
121    <ClInclude Include="..\Include\memoryobject.h" />
122    <ClInclude Include="..\Include\metagrammar.h" />
123    <ClInclude Include="..\Include\methodobject.h" />
124    <ClInclude Include="..\Include\modsupport.h" />
125    <ClInclude Include="..\Include\moduleobject.h" />
126    <ClInclude Include="..\Include\node.h" />
127    <ClInclude Include="..\Include\object.h" />
128    <ClInclude Include="..\Include\objimpl.h" />
129    <ClInclude Include="..\Include\opcode.h" />
130    <ClInclude Include="..\Include\osdefs.h" />
131    <ClInclude Include="..\Include\parsetok.h" />
132    <ClInclude Include="..\Include\patchlevel.h" />
133    <ClInclude Include="..\Include\pgen.h" />
134    <ClInclude Include="..\Include\pgenheaders.h" />
135    <ClInclude Include="..\Include\py_curses.h" />
136    <ClInclude Include="..\Include\pyarena.h" />
137    <ClInclude Include="..\Include\pycapsule.h" />
138    <ClInclude Include="..\Include\pyctype.h" />
139    <ClInclude Include="..\Include\pydebug.h" />
140    <ClInclude Include="..\Include\pyerrors.h" />
141    <ClInclude Include="..\Include\pyexpat.h" />
142    <ClInclude Include="..\Include\pyfpe.h" />
143    <ClInclude Include="..\Include\pygetopt.h" />
144    <ClInclude Include="..\Include\pymactoolbox.h" />
145    <ClInclude Include="..\Include\pymath.h" />
146    <ClInclude Include="..\Include\pymem.h" />
147    <ClInclude Include="..\Include\pyport.h" />
148    <ClInclude Include="..\Include\pystate.h" />
149    <ClInclude Include="..\Include\pystrcmp.h" />
150    <ClInclude Include="..\Include\pystrtod.h" />
151    <ClInclude Include="..\Include\Python-ast.h" />
152    <ClInclude Include="..\Include\Python.h" />
153    <ClInclude Include="..\Include\pythonrun.h" />
154    <ClInclude Include="..\Include\pythread.h" />
155    <ClInclude Include="..\Include\rangeobject.h" />
156    <ClInclude Include="..\Include\setobject.h" />
157    <ClInclude Include="..\Include\sliceobject.h" />
158    <ClInclude Include="..\Include\stringobject.h" />
159    <ClInclude Include="..\Include\structmember.h" />
160    <ClInclude Include="..\Include\structseq.h" />
161    <ClInclude Include="..\Include\symtable.h" />
162    <ClInclude Include="..\Include\sysmodule.h" />
163    <ClInclude Include="..\Include\timefuncs.h" />
164    <ClInclude Include="..\Include\token.h" />
165    <ClInclude Include="..\Include\traceback.h" />
166    <ClInclude Include="..\Include\tupleobject.h" />
167    <ClInclude Include="..\Include\ucnhash.h" />
168    <ClInclude Include="..\Include\unicodeobject.h" />
169    <ClInclude Include="..\Include\weakrefobject.h" />
170    <ClInclude Include="..\Modules\_math.h" />
171    <ClInclude Include="..\Modules\md5.h" />
172    <ClInclude Include="..\Modules\rotatingtree.h" />
173    <ClInclude Include="..\Modules\zlib\crc32.h" />
174    <ClInclude Include="..\Modules\zlib\deflate.h" />
175    <ClInclude Include="..\Modules\zlib\inffast.h" />
176    <ClInclude Include="..\Modules\zlib\inffixed.h" />
177    <ClInclude Include="..\Modules\zlib\inflate.h" />
178    <ClInclude Include="..\Modules\zlib\inftrees.h" />
179    <ClInclude Include="..\Modules\zlib\trees.h" />
180    <ClInclude Include="..\Modules\zlib\zconf.h" />
181    <ClInclude Include="..\Modules\zlib\zconf.in.h" />
182    <ClInclude Include="..\Modules\zlib\zlib.h" />
183    <ClInclude Include="..\Modules\zlib\zutil.h" />
184    <ClInclude Include="..\Modules\cjkcodecs\alg_jisx0201.h" />
185    <ClInclude Include="..\Modules\cjkcodecs\cjkcodecs.h" />
186    <ClInclude Include="..\Modules\cjkcodecs\emu_jisx0213_2000.h" />
187    <ClInclude Include="..\Modules\cjkcodecs\mappings_cn.h" />
188    <ClInclude Include="..\Modules\cjkcodecs\mappings_hk.h" />
189    <ClInclude Include="..\Modules\cjkcodecs\mappings_jisx0213_pair.h" />
190    <ClInclude Include="..\Modules\cjkcodecs\mappings_jp.h" />
191    <ClInclude Include="..\Modules\cjkcodecs\mappings_kr.h" />
192    <ClInclude Include="..\Modules\cjkcodecs\mappings_tw.h" />
193    <ClInclude Include="..\Modules\cjkcodecs\multibytecodec.h" />
194    <ClInclude Include="..\Modules\_io\_iomodule.h" />
195    <ClInclude Include="..\Objects\stringlib\count.h" />
196    <ClInclude Include="..\Objects\stringlib\fastsearch.h" />
197    <ClInclude Include="..\Objects\stringlib\find.h" />
198    <ClInclude Include="..\Objects\stringlib\partition.h" />
199    <ClInclude Include="..\Objects\stringlib\split.h" />
200    <ClInclude Include="..\Objects\unicodetype_db.h" />
201    <ClInclude Include="..\Parser\parser.h" />
202    <ClInclude Include="..\Parser\tokenizer.h" />
203    <ClInclude Include="..\PC\errmap.h" />
204    <ClInclude Include="..\PC\pyconfig.h" />
205    <ClInclude Include="..\Python\importdl.h" />
206    <ClInclude Include="..\Python\thread_nt.h" />
207  </ItemGroup>
208  <ItemGroup>
209    <ClCompile Include="..\Modules\_bisectmodule.c" />
210    <ClCompile Include="..\Modules\_codecsmodule.c" />
211    <ClCompile Include="..\Modules\_collectionsmodule.c" />
212    <ClCompile Include="..\Modules\_csv.c" />
213    <ClCompile Include="..\Modules\_functoolsmodule.c" />
214    <ClCompile Include="..\Modules\_heapqmodule.c" />
215    <ClCompile Include="..\Modules\_hotshot.c" />
216    <ClCompile Include="..\Modules\_json.c" />
217    <ClCompile Include="..\Modules\_localemodule.c" />
218    <ClCompile Include="..\Modules\_lsprof.c" />
219    <ClCompile Include="..\Modules\_math.c" />
220    <ClCompile Include="..\Modules\_randommodule.c" />
221    <ClCompile Include="..\Modules\_sre.c" />
222    <ClCompile Include="..\Modules\_struct.c" />
223    <ClCompile Include="..\Modules\_weakref.c" />
224    <ClCompile Include="..\Modules\arraymodule.c" />
225    <ClCompile Include="..\Modules\audioop.c" />
226    <ClCompile Include="..\Modules\binascii.c" />
227    <ClCompile Include="..\Modules\cmathmodule.c" />
228    <ClCompile Include="..\Modules\cPickle.c" />
229    <ClCompile Include="..\Modules\cStringIO.c" />
230    <ClCompile Include="..\Modules\datetimemodule.c" />
231    <ClCompile Include="..\Modules\errnomodule.c" />
232    <ClCompile Include="..\Modules\future_builtins.c" />
233    <ClCompile Include="..\Modules\gcmodule.c" />
234    <ClCompile Include="..\Modules\imageop.c" />
235    <ClCompile Include="..\Modules\itertoolsmodule.c" />
236    <ClCompile Include="..\Modules\main.c" />
237    <ClCompile Include="..\Modules\mathmodule.c" />
238    <ClCompile Include="..\Modules\md5.c" />
239    <ClCompile Include="..\Modules\md5module.c" />
240    <ClCompile Include="..\Modules\mmapmodule.c" />
241    <ClCompile Include="..\Modules\operator.c" />
242    <ClCompile Include="..\Modules\parsermodule.c" />
243    <ClCompile Include="..\Modules\posixmodule.c" />
244    <ClCompile Include="..\Modules\rotatingtree.c" />
245    <ClCompile Include="..\Modules\sha256module.c" />
246    <ClCompile Include="..\Modules\sha512module.c" />
247    <ClCompile Include="..\Modules\shamodule.c" />
248    <ClCompile Include="..\Modules\signalmodule.c" />
249    <ClCompile Include="..\Modules\stropmodule.c" />
250    <ClCompile Include="..\Modules\symtablemodule.c" />
251    <ClCompile Include="..\Modules\threadmodule.c" />
252    <ClCompile Include="..\Modules\timemodule.c" />
253    <ClCompile Include="..\Modules\xxsubtype.c" />
254    <ClCompile Include="..\Modules\zipimport.c" />
255    <ClCompile Include="..\Modules\zlibmodule.c" />
256    <ClCompile Include="..\Modules\zlib\adler32.c" />
257    <ClCompile Include="..\Modules\zlib\compress.c" />
258    <ClCompile Include="..\Modules\zlib\crc32.c" />
259    <ClCompile Include="..\Modules\zlib\deflate.c" />
260    <ClCompile Include="..\Modules\zlib\gzclose.c" />
261    <ClCompile Include="..\Modules\zlib\gzlib.c" />
262    <ClCompile Include="..\Modules\zlib\gzread.c" />
263    <ClCompile Include="..\Modules\zlib\gzwrite.c" />
264    <ClCompile Include="..\Modules\zlib\infback.c" />
265    <ClCompile Include="..\Modules\zlib\inffast.c" />
266    <ClCompile Include="..\Modules\zlib\inflate.c" />
267    <ClCompile Include="..\Modules\zlib\inftrees.c" />
268    <ClCompile Include="..\Modules\zlib\trees.c" />
269    <ClCompile Include="..\Modules\zlib\uncompr.c" />
270    <ClCompile Include="..\Modules\zlib\zutil.c" />
271    <ClCompile Include="..\Modules\cjkcodecs\_codecs_cn.c" />
272    <ClCompile Include="..\Modules\cjkcodecs\_codecs_hk.c" />
273    <ClCompile Include="..\Modules\cjkcodecs\_codecs_iso2022.c" />
274    <ClCompile Include="..\Modules\cjkcodecs\_codecs_jp.c" />
275    <ClCompile Include="..\Modules\cjkcodecs\_codecs_kr.c" />
276    <ClCompile Include="..\Modules\cjkcodecs\_codecs_tw.c" />
277    <ClCompile Include="..\Modules\cjkcodecs\multibytecodec.c" />
278    <ClCompile Include="..\Modules\_io\_iomodule.c" />
279    <ClCompile Include="..\Modules\_io\bufferedio.c" />
280    <ClCompile Include="..\Modules\_io\bytesio.c" />
281    <ClCompile Include="..\Modules\_io\fileio.c" />
282    <ClCompile Include="..\Modules\_io\iobase.c" />
283    <ClCompile Include="..\Modules\_io\stringio.c" />
284    <ClCompile Include="..\Modules\_io\textio.c" />
285    <ClCompile Include="..\Objects\abstract.c" />
286    <ClCompile Include="..\Objects\boolobject.c" />
287    <ClCompile Include="..\Objects\bufferobject.c" />
288    <ClCompile Include="..\Objects\bytes_methods.c" />
289    <ClCompile Include="..\Objects\bytearrayobject.c" />
290    <ClCompile Include="..\Objects\capsule.c" />
291    <ClCompile Include="..\Objects\cellobject.c" />
292    <ClCompile Include="..\Objects\classobject.c" />
293    <ClCompile Include="..\Objects\cobject.c" />
294    <ClCompile Include="..\Objects\codeobject.c" />
295    <ClCompile Include="..\Objects\complexobject.c" />
296    <ClCompile Include="..\Objects\descrobject.c" />
297    <ClCompile Include="..\Objects\dictobject.c" />
298    <ClCompile Include="..\Objects\enumobject.c" />
299    <ClCompile Include="..\Objects\exceptions.c" />
300    <ClCompile Include="..\Objects\fileobject.c" />
301    <ClCompile Include="..\Objects\floatobject.c" />
302    <ClCompile Include="..\Objects\frameobject.c" />
303    <ClCompile Include="..\Objects\funcobject.c" />
304    <ClCompile Include="..\Objects\genobject.c" />
305    <ClCompile Include="..\Objects\intobject.c" />
306    <ClCompile Include="..\Objects\iterobject.c" />
307    <ClCompile Include="..\Objects\listobject.c" />
308    <ClCompile Include="..\Objects\longobject.c" />
309    <ClCompile Include="..\Objects\memoryobject.c" />
310    <ClCompile Include="..\Objects\methodobject.c" />
311    <ClCompile Include="..\Objects\moduleobject.c" />
312    <ClCompile Include="..\Objects\object.c" />
313    <ClCompile Include="..\Objects\obmalloc.c" />
314    <ClCompile Include="..\Objects\rangeobject.c" />
315    <ClCompile Include="..\Objects\setobject.c" />
316    <ClCompile Include="..\Objects\sliceobject.c" />
317    <ClCompile Include="..\Objects\stringobject.c" />
318    <ClCompile Include="..\Objects\structseq.c" />
319    <ClCompile Include="..\Objects\tupleobject.c" />
320    <ClCompile Include="..\Objects\typeobject.c" />
321    <ClCompile Include="..\Objects\unicodectype.c" />
322    <ClCompile Include="..\Objects\unicodeobject.c" />
323    <ClCompile Include="..\Objects\weakrefobject.c" />
324    <ClCompile Include="..\Parser\acceler.c" />
325    <ClCompile Include="..\Parser\bitset.c" />
326    <ClCompile Include="..\Parser\firstsets.c" />
327    <ClCompile Include="..\Parser\grammar.c" />
328    <ClCompile Include="..\Parser\grammar1.c" />
329    <ClCompile Include="..\Parser\listnode.c" />
330    <ClCompile Include="..\Parser\metagrammar.c" />
331    <ClCompile Include="..\Parser\myreadline.c" />
332    <ClCompile Include="..\Parser\node.c" />
333    <ClCompile Include="..\Parser\parser.c" />
334    <ClCompile Include="..\Parser\parsetok.c" />
335    <ClCompile Include="..\Parser\tokenizer.c" />
336    <ClCompile Include="..\PC\_subprocess.c" />
337    <ClCompile Include="..\PC\_winreg.c" />
338    <ClCompile Include="..\PC\config.c" />
339    <ClCompile Include="..\PC\dl_nt.c" />
340    <ClCompile Include="..\PC\getpathp.c" />
341    <ClCompile Include="..\PC\import_nt.c" />
342    <ClCompile Include="..\PC\msvcrtmodule.c" />
343    <ClCompile Include="..\Python\_warnings.c" />
344    <ClCompile Include="..\Python\asdl.c" />
345    <ClCompile Include="..\Python\ast.c" />
346    <ClCompile Include="..\Python\bltinmodule.c" />
347    <ClCompile Include="..\Python\ceval.c" />
348    <ClCompile Include="..\Python\codecs.c" />
349    <ClCompile Include="..\Python\compile.c" />
350    <ClCompile Include="..\Python\dtoa.c" />
351    <ClCompile Include="..\Python\dynload_win.c" />
352    <ClCompile Include="..\Python\errors.c" />
353    <ClCompile Include="..\Python\formatter_string.c" />
354    <ClCompile Include="..\Python\formatter_unicode.c" />
355    <ClCompile Include="..\Python\frozen.c" />
356    <ClCompile Include="..\Python\future.c" />
357    <ClCompile Include="..\Python\getargs.c" />
358    <ClCompile Include="..\Python\getcompiler.c" />
359    <ClCompile Include="..\Python\getcopyright.c" />
360    <ClCompile Include="..\Python\getopt.c" />
361    <ClCompile Include="..\Python\getplatform.c" />
362    <ClCompile Include="..\Python\getversion.c" />
363    <ClCompile Include="..\Python\graminit.c" />
364    <ClCompile Include="..\Python\import.c" />
365    <ClCompile Include="..\Python\importdl.c" />
366    <ClCompile Include="..\Python\marshal.c" />
367    <ClCompile Include="..\Python\modsupport.c" />
368    <ClCompile Include="..\Python\mysnprintf.c" />
369    <ClCompile Include="..\Python\mystrtoul.c" />
370    <ClCompile Include="..\Python\peephole.c" />
371    <ClCompile Include="..\Python\pyarena.c" />
372    <ClCompile Include="..\Python\pyctype.c" />
373    <ClCompile Include="..\Python\pyfpe.c" />
374    <ClCompile Include="..\Python\pymath.c" />
375    <ClCompile Include="..\Python\pystate.c" />
376    <ClCompile Include="..\Python\pystrcmp.c" />
377    <ClCompile Include="..\Python\pystrtod.c" />
378    <ClCompile Include="..\Python\Python-ast.c" />
379    <ClCompile Include="..\Python\pythonrun.c" />
380    <ClCompile Include="..\Python\random.c" />
381    <ClCompile Include="..\Python\structmember.c" />
382    <ClCompile Include="..\Python\symtable.c" />
383    <ClCompile Include="..\Python\sysmodule.c" />
384    <ClCompile Include="..\Python\thread.c" />
385    <ClCompile Include="..\Python\traceback.c" />
386  </ItemGroup>
387  <ItemGroup>
388    <ResourceCompile Include="..\PC\python_nt.rc" />
389  </ItemGroup>
390  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
391  <ImportGroup Label="ExtensionTargets">
392  </ImportGroup>
393  <Target Name="_GetBuildInfo" BeforeTargets="PrepareForBuild">
394    <PropertyGroup>
395      <GIT Condition="$(GIT) == ''">git</GIT>
396      <_GIT>$(GIT)</_GIT>
397      <_GIT Condition="$(GIT.Contains(` `))">"$(GIT)"</_GIT>
398    </PropertyGroup>
399    <Message Text="Getting build info from $(_GIT)" Importance="high" />
400    <MakeDir Directories="$(IntDir)" Condition="!Exists($(IntDir))" />
401    <Exec Command="$(_GIT) name-rev --name-only HEAD &gt; &quot;$(IntDir)gitbranch.txt&quot;" ContinueOnError="true" />
402    <Exec Command="$(_GIT) rev-parse --short HEAD &gt; &quot;$(IntDir)gitversion.txt&quot;" ContinueOnError="true" />
403    <Exec Command="$(_GIT) describe --all --always --dirty &gt; &quot;$(IntDir)gittag.txt&quot;" ContinueOnError="true" />
404    <PropertyGroup>
405      <GitBranch Condition="Exists('$(IntDir)gitbranch.txt')">$([System.IO.File]::ReadAllText('$(IntDir)gitbranch.txt').Trim())</GitBranch>
406      <GitVersion Condition="Exists('$(IntDir)gitversion.txt')">$([System.IO.File]::ReadAllText('$(IntDir)gitversion.txt').Trim())</GitVersion>
407      <GitTag Condition="Exists('$(IntDir)gittag.txt')">$([System.IO.File]::ReadAllText('$(IntDir)gittag.txt').Trim())</GitTag>
408    </PropertyGroup>
409    <Message Text="Building $(GitTag):$(GitVersion) $(GitBranch)" Importance="high" />
410    <ItemGroup>
411      <ClCompile Include="..\Modules\getbuildinfo.c">
412        <PreprocessorDefinitions>GITVERSION="$(GitVersion)";GITTAG="$(GitTag)";GITBRANCH="$(GitBranch)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
413      </ClCompile>
414    </ItemGroup>
415  </Target>
416  <Target Name="_WarnAboutToolset" BeforeTargets="PrepareForBuild" Condition="$(PlatformToolset) != 'v90'">
417    <Warning Text="Toolset $(PlatformToolset) is not used for official builds. Your build may have errors or incompatibilities." />
418  </Target>
419</Project>
420