78 lines
3.5 KiB
XML
78 lines
3.5 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="build/Microsoft.DotNet.Cli.Monikers.props" />
|
|
|
|
<PropertyGroup>
|
|
<!--
|
|
$(OS) is set to Unix/Windows_NT. This comes from an environment variable on Windows and MSBuild on Unix.
|
|
-->
|
|
<PlatformScriptHost Condition=" '$(OS)' == 'Windows_NT' ">powershell -NoProfile -NoLogo -Command </PlatformScriptHost>
|
|
<PlatformScriptHost Condition=" '$(OS)' != 'Windows_NT' "></PlatformScriptHost>
|
|
|
|
<PlatformScriptExtension Condition=" '$(OS)' == 'Windows_NT' ">.ps1</PlatformScriptExtension>
|
|
<PlatformScriptExtension Condition=" '$(OS)' != 'Windows_NT' ">.sh</PlatformScriptExtension>
|
|
|
|
<CLITargets Condition=" '$(CLITargets)' == '' ">Prepare;Compile;Test;Package;Publish</CLITargets>
|
|
<CLIBuildFileName>$(MSBuildThisFileDirectory)/build_projects/dotnet-cli-build/bin/dotnet-cli-build</CLIBuildFileName>
|
|
<CLIBuildDll>$(CLIBuildFileName).dll</CLIBuildDll>
|
|
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
<RepoRoot>$(MSBuildThisFileDirectory)</RepoRoot>
|
|
|
|
<CoreSetupChannel>preview</CoreSetupChannel>
|
|
<SharedFrameworkName>Microsoft.NETCore.App</SharedFrameworkName>
|
|
<SharedFrameworkVersion>1.0.0</SharedFrameworkVersion>
|
|
<SharedHostVersion>1.0.1</SharedHostVersion>
|
|
<HostFxrVersion>1.0.1</HostFxrVersion>
|
|
|
|
<CoreCLRVersion>1.0.2</CoreCLRVersion>
|
|
<JitVersion>1.0.2</JitVersion>
|
|
|
|
<Stage0Path>$(RepoRoot)/.dotnet_stage0/$(Architecture)</Stage0Path>
|
|
<ExeExtension>.exe</ExeExtension>
|
|
<ExeExtension Condition=" '$(OS)' != 'Windows_NT' "></ExeExtension>
|
|
<DotnetStage0>$(Stage0Path)/dotnet$(ExeExtension)</DotnetStage0>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<DotnetCliBuildFrameworkInputs Include="build_projects/**/*.cs" Exclude="build_projects/**/obj/**/*.cs" />
|
|
<DotnetCliBuildFrameworkInputs Include="build_projects/**/project.json;build_projects/**/project.lock.json" />
|
|
</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">
|
|
<PropertyGroup>
|
|
<DotnetCliBuildDirectory>$(MSBuildThisFileDirectory)/build_projects/dotnet-cli-build</DotnetCliBuildDirectory>
|
|
</PropertyGroup>
|
|
|
|
<Exec Command="$(DotnetStage0) restore" WorkingDirectory="$(DotnetCliBuildDirectory)"/>
|
|
|
|
<Exec Command="$(DotnetStage0) publish -o $(DotnetCliBuildDirectory)/bin --framework netcoreapp1.0" WorkingDirectory="$(DotnetCliBuildDirectory)"/>
|
|
</Target>
|
|
|
|
<Target DependsOnTargets="$(CLITargets)" Name="BuildTheWholeCli"></Target>
|
|
|
|
<UsingTask TaskName="TestTargets" AssemblyFile="$(CLIBuildDll)" />
|
|
<UsingTask TaskName="PublishTargets" AssemblyFile="$(CLIBuildDll)" />
|
|
|
|
<Target DependsOnTargets="BuildDotnetCliBuildFramework" Name="Test">
|
|
<TestTargets />
|
|
</Target>
|
|
|
|
<Target DependsOnTargets="BuildDotnetCliBuildFramework" Name="Publish">
|
|
<PublishTargets />
|
|
</Target>
|
|
|
|
<Import Project="build/Microsoft.DotNet.Cli.Prepare.targets" />
|
|
<Import Project="build/Microsoft.DotNet.Cli.Compile.targets" />
|
|
<Import Project="build/Microsoft.DotNet.Cli.Package.targets" />
|
|
</Project>
|