[xbuild] Add new reserved properties $(MSBuildThisFile*).
[mono.git] / mcs / class / Microsoft.Build.Engine / Microsoft.Build.BuildEngine / Target.cs
index 158ffdef94bc40a0894d7721b18996d587fb8653..439c56fd94b14b4887d57ace200ec0d5f5e82e71 100644 (file)
@@ -122,6 +122,16 @@ namespace Microsoft.Build.BuildEngine {
                }
 
                bool Build (string built_targets_key, out bool executeOnErrors)
+               {
+                       project.PushThisFileProperty (TargetFile);
+                       try {
+                               return BuildActual (built_targets_key, out executeOnErrors);
+                       } finally {
+                               project.PopThisFileProperty ();
+                       }
+               }
+
+               bool BuildActual (string built_targets_key, out bool executeOnErrors)
                {
                        bool result = false;
                        executeOnErrors = false;
@@ -165,7 +175,6 @@ namespace Microsoft.Build.BuildEngine {
                        }
 
                        project.ParentEngine.BuiltTargetsOutputByName [built_targets_key] = (ITaskItem[]) Outputs.Clone ();
-                       project.BuiltTargetKeys.Add (built_targets_key);
 
                        return result;
                }