Home | History | Annotate | Download | only in nuget
      1 <?xml version="1.0" encoding="utf-8"?>
      2 <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      3     <PropertyGroup>
      4         <ProjectGuid>{6BA7092C-0093-47F0-9ED2-282AEE981E14}</ProjectGuid>
      5         <OutputName>python2</OutputName>
      6         <OutputName Condition="$(Platform) == 'x86' or $(Platform) == 'Win32' or $(Platform) == ''">$(OutputName)x86</OutputName>
      7         <OutputPath Condition="$(OutputPath) == ''">$(MSBuildThisFileDirectory)</OutputPath>
      8         <OutputSuffix></OutputSuffix>
      9         <SupportSigning>false</SupportSigning>
     10         <BuildForRelease Condition="$(BuildForRelease) == ''">true</BuildForRelease>
     11     </PropertyGroup>
     12 
     13     <Import Project="..\..\PCBuild\python.props" />
     14 
     15     <PropertyGroup>
     16         <NuspecVersion>$(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)</NuspecVersion>
     17         <SignOutput>false</SignOutput>
     18         <TargetName>$(OutputName).$(NuspecVersion)</TargetName>
     19         <TargetExt>.nupkg</TargetExt>
     20         <TargetPath>$(OutputPath)\$(TargetName)$(TargetExt)</TargetPath>
     21         <IntermediateOutputPath>$(MSBuildThisFileDirectory)\obj_$(ArchName)</IntermediateOutputPath>
     22         
     23         <CleanCommand>rmdir /q/s "$(IntermediateOutputPath)"</CleanCommand>
     24         
     25         <Python Condition="$(Python) == ''">py</Python>
     26         <PythonArguments>"$(Python)" "$(MSBuildThisFileDirectory)\make_zip.py"</PythonArguments>
     27         <PythonArguments>$(PythonArguments) -s "$(PySourcePath.Trim('\'))" -t "$(IntermediateOutputPath)" -a $(ArchName)</PythonArguments>
     28         
     29         <PipArguments>"$(IntermediateOutputPath)\python.exe" -B -c "import sys; sys.path.append(r'$(PySourcePath)\Lib'); import ensurepip; ensurepip._main()"</PipArguments>
     30         <PackageArguments Condition="$(Packages) != ''">"$(IntermediateOutputPath)\python.exe" -B -m pip install -U $(Packages)</PackageArguments>
     31         
     32         <NugetArguments>"$(Nuget)" pack "$(MSBuildThisFileDirectory)\$(OutputName).nuspec"</NugetArguments>
     33         <NugetArguments>$(NugetArguments) -BasePath "$(IntermediateOutputPath)"</NugetArguments>
     34         <NugetArguments>$(NugetArguments) -OutputDirectory "$(OutputPath.Trim(`\`))"</NugetArguments>
     35         <NugetArguments>$(NugetArguments) -Version "$(NuspecVersion)"</NugetArguments>
     36         <NugetArguments>$(NugetArguments) -NoPackageAnalysis -NonInteractive</NugetArguments>
     37     </PropertyGroup>
     38 
     39     <Target Name="_NugetMissing" BeforeTargets="_Build" Condition="!Exists($(Nuget))">
     40         <Error Text="$$(Nuget) could not be found. Specify a valid path on the command line." />
     41     </Target>
     42 
     43     <Target Name="_Build">
     44         <Exec Command="$(CleanCommand)" />
     45         <Exec Command="$(PythonArguments)" />
     46         <Exec Command="$(PipArguments)" />
     47         <Exec Command="$(PackageArguments)" Condition="$(PackageArguments) != ''" />
     48         <Exec Command="$(NugetArguments)" />
     49     </Target>
     50 
     51     <Target Name="AfterBuild" />
     52     <Target Name="Build" DependsOnTargets="_Build;AfterBuild" />
     53 </Project>
     54