[msbuild] Redefine the Exec task to prepare for remote execution from VS (#164)

Like the Copy/Delete/MakeDir/RemoveDir/Touch tasks, we need to override
this one so we can allow customer targets to also execute Mac tools
remotely when building from Windows, bringing parity to the build
customizations allowed on XS/xbuild since they build locally and Exec
"just works" there of course.
This commit is contained in:
Daniel Cazzulino 2016-06-10 05:02:53 -03:00 коммит произвёл Rolf Bjarne Kvinge
Родитель 1e7fa12f89
Коммит fbf06ee933
7 изменённых файлов: 30 добавлений и 7 удалений

Просмотреть файл

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@ -41,6 +41,7 @@
<Reference Include="System.Xml" />
<Reference Include="Mono.Cecil, Version=0.9.5.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756">
<Private>True</Private>
<HintPath Condition=" Exists('..\packages\Mono.Cecil.0.9.5.0\lib\net40\Mono.Cecil.dll') ">..\packages\Mono.Cecil.0.9.5.0\lib\net40\Mono.Cecil.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
@ -78,6 +79,8 @@
<Compile Include="Tasks\ReadItemsFromFile.cs" />
<Compile Include="Tasks\Zip.cs" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

Просмотреть файл

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Mono.Cecil" version="0.9.5.0" targetFramework="net45" />
</packages>

Просмотреть файл

@ -0,0 +1,7 @@
namespace Microsoft.Build.Tasks
{
public abstract class ExecBase : Microsoft.Build.Tasks.Exec
{
public string SessionId { get; set; }
}
}

Просмотреть файл

@ -70,6 +70,7 @@ Copyright (C) 2013-2016 Xamarin. All rights reserved.
<UsingTask TaskName="Xamarin.iOS.Tasks.ValidateAppBundleTask" AssemblyFile="Xamarin.iOS.Tasks.dll" />
<UsingTask TaskName="Xamarin.iOS.Tasks.WriteAssetPackManifest" AssemblyFile="Xamarin.iOS.Tasks.dll" />
<UsingTask TaskName="Microsoft.Build.Tasks.Exec" AssemblyFile="Xamarin.iOS.Tasks.dll"/>
<UsingTask TaskName="Microsoft.Build.Tasks.Copy" AssemblyFile="Xamarin.iOS.Tasks.dll"/>
<UsingTask TaskName="Microsoft.Build.Tasks.MakeDir" AssemblyFile="Xamarin.iOS.Tasks.dll"/>
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDir" AssemblyFile="Xamarin.iOS.Tasks.dll"/>

Просмотреть файл

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@ -54,6 +54,7 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Compile Include="MsBuildTasks\ExecBase.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="MsBuildTasks\CopyBase.cs" />
<Compile Include="MsBuildTasks\DeleteBase.cs" />

Просмотреть файл

@ -0,0 +1,6 @@
namespace Microsoft.Build.Tasks
{
public class Exec : ExecBase
{
}
}

Просмотреть файл

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@ -33,6 +33,7 @@
</PropertyGroup>
<ItemGroup>
<Compile Include="MsBuildTasks\Copy.cs" />
<Compile Include="MsBuildTasks\Exec.cs" />
<Compile Include="MsBuildTasks\Delete.cs" />
<Compile Include="MsBuildTasks\MakeDir.cs" />
<Compile Include="MsBuildTasks\RemoveDir.cs" />