From: Ankit Jain Date: Fri, 11 Mar 2011 09:00:20 +0000 (+0530) Subject: [xbuild] Set ProjectFile and TargetName metadata on target outputs. X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=mono.git;a=commitdiff_plain;h=faf1e90312a15b30f99686aa41f05ab891cf6027 [xbuild] Set ProjectFile and TargetName metadata on target outputs. Set "MSBuildProjectFile" and "MSBuildTargetName" metadata on target outputs. --- diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs index 43affc109cc..92e369b888b 100644 --- a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs +++ b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs @@ -30,6 +30,7 @@ using System; using System.Collections; using System.Collections.Generic; +using System.Linq; using System.Xml; using Microsoft.Build.Framework; using Microsoft.Build.Utilities; @@ -175,7 +176,12 @@ namespace Microsoft.Build.BuildEngine { project.PopBatch (); } - project.ParentEngine.BuiltTargetsOutputByName [built_targets_key] = (ITaskItem[]) OutputsAsITaskItems.Clone (); + ITaskItem[] outputs = (ITaskItem[]) OutputsAsITaskItems.Clone (); + foreach (ITaskItem item in outputs) { + item.SetMetadata ("MSBuildProjectFile", TargetFile); + item.SetMetadata ("MSBuildTargetName", Name); + } + project.ParentEngine.BuiltTargetsOutputByName [built_targets_key] = outputs; return result; }