61 lines
2.8 KiB
XML
61 lines
2.8 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="14.0" DefaultTargets="BuildTheWholeCli" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
|
|
|
|
<ItemGroup>
|
|
<DotnetCliBuildFrameworkInputs Include="build_projects/**/*.cs" Exclude="build_projects/**/obj/**/*.cs" />
|
|
<DotnetCliBuildFrameworkInputs Include="build_projects/**/*.csproj" />
|
|
</ItemGroup>
|
|
|
|
<!-- Workaround to "Native image cannot be loaded multiple times" issue
|
|
A target in the top level file needs to run and invoke a task
|
|
https://github.com/Microsoft/msbuild/issues/750 -->
|
|
<Target Name="MSBuildWorkaroundTarget">
|
|
<Message Text="Dont remove this target" />
|
|
</Target>
|
|
|
|
<Target Name="BuildDotnetCliBuildFramework"
|
|
Inputs="@(DotnetCliBuildFrameworkInputs)"
|
|
Outputs="$(CLIBuildDll)"
|
|
DependsOnTargets="MSBuildWorkaroundTarget;
|
|
RestoreDotnetCliBuildFramework">
|
|
|
|
<Exec Command="$(DotnetStage0) publish --no-restore -o $(DotnetCliBuildDirectory)/bin --framework netcoreapp2.0 /p:GeneratePropsFile=$(GeneratePropsFile)"
|
|
WorkingDirectory="$(DotnetCliBuildDirectory)"/>
|
|
</Target>
|
|
|
|
<ItemGroup>
|
|
<RestoreDotnetCliBuildFrameworkOutputs Include="$(DotnetCliBuildDirectory)/obj/project.assets.json" />
|
|
<RestoreDotnetCliBuildFrameworkOutputs Include="$(DotnetCliBuildDirectory)/obj/dotnet-cli-build.csproj.nuget.g.props" />
|
|
<RestoreDotnetCliBuildFrameworkOutputs Include="$(DotnetCliBuildDirectory)/obj/dotnet-cli-build.csproj.nuget.g.targets" />
|
|
</ItemGroup>
|
|
|
|
<Target Name="RestoreDotnetCliBuildFramework"
|
|
Inputs="$(DotnetCliBuildDirectory)/dotnet-cli-build.csproj"
|
|
Outputs="@(RestoreDotnetCliBuildFrameworkOutputs)"
|
|
DependsOnTargets="WriteNugetConfigFile">
|
|
|
|
<PropertyGroup>
|
|
<ExtraRestoreArgs>$(ExtraRestoreArgs) /p:GeneratePropsFile=$(GeneratePropsFile)</ExtraRestoreArgs>
|
|
<ExtraRestoreArgs Condition="'$(OS)' != 'Windows_NT'">$(ExtraRestoreArgs) --disable-parallel</ExtraRestoreArgs>
|
|
</PropertyGroup>
|
|
|
|
<Exec Command="$(DotnetStage0) restore $(ExtraRestoreArgs)"
|
|
WorkingDirectory="$(DotnetCliBuildDirectory)"/>
|
|
</Target>
|
|
|
|
<Target Name="BuildTheWholeCli" DependsOnTargets="$(CLITargets)" />
|
|
|
|
<Import Project="build/NugetConfigFile.targets" />
|
|
<Import Project="build/GitCommitInfo.targets" />
|
|
<Import Project="build/HostInfo.targets" />
|
|
<Import Project="build/BuildInfo.targets" />
|
|
<Import Project="build/DownloadPackageVersions.targets" />
|
|
<Import Project="build/Prepare.targets" />
|
|
<Import Project="build/Compile.targets" />
|
|
<Import Project="build/Package.targets" />
|
|
<Import Project="build/Test.targets" />
|
|
<Import Project="build/Publish.targets" />
|
|
|
|
<Import Project="build/InitRepo.targets" />
|
|
</Project>
|