- // FIXME: this is likely hack. Test ImportedProject.Properties to see what exactly should happen.
- if (parent != null) {
- properties = parent.properties;
- } else {
- properties = new List<ProjectProperty> ();
-
- foreach (DictionaryEntry p in Environment.GetEnvironmentVariables ())
- // FIXME: this is kind of workaround for unavoidable issue that PLATFORM=* is actually given
- // on some platforms and that prevents setting default "PLATFORM=AnyCPU" property.
- if (!string.Equals ("PLATFORM", (string) p.Key, StringComparison.OrdinalIgnoreCase))
- this.properties.Add (new EnvironmentProjectProperty (this, (string)p.Key, (string)p.Value));
- foreach (var p in GlobalProperties)
- this.properties.Add (new GlobalProjectProperty (this, p.Key, p.Value));
- var tools = ProjectCollection.GetToolset (this.ToolsVersion) ?? ProjectCollection.GetToolset (this.ProjectCollection.DefaultToolsVersion);
- foreach (var p in ProjectCollection.GetReservedProperties (tools, this))
- this.properties.Add (p);
- foreach (var p in ProjectCollection.GetWellKnownProperties (this))
- this.properties.Add (p);
- }
-
- ProcessXml (parent);
+ properties = new List<ProjectProperty> ();
+
+ foreach (DictionaryEntry p in Environment.GetEnvironmentVariables ())
+ // FIXME: this is kind of workaround for unavoidable issue that PLATFORM=* is actually given
+ // on some platforms and that prevents setting default "PLATFORM=AnyCPU" property.
+ if (!string.Equals ("PLATFORM", (string) p.Key, StringComparison.OrdinalIgnoreCase))
+ this.properties.Add (new EnvironmentProjectProperty (this, (string)p.Key, (string)p.Value));
+ foreach (var p in GlobalProperties)
+ this.properties.Add (new GlobalProjectProperty (this, p.Key, p.Value));
+ var tools = ProjectCollection.GetToolset (this.ToolsVersion) ?? ProjectCollection.GetToolset (this.ProjectCollection.DefaultToolsVersion);
+ foreach (var p in ProjectCollection.GetReservedProperties (tools, this))
+ this.properties.Add (p);
+ foreach (var p in ProjectCollection.GetWellKnownProperties (this))
+ this.properties.Add (p);
+
+ ProcessXml ();