From 40d88ce9057babd28074afe803086bf415527dca Mon Sep 17 00:00:00 2001
From: lbsa71
Date: Thu, 19 Feb 2009 14:35:11 +0000
Subject: * Reverted the revert, as it seems the problem was the 1.0.* in the
 separate projects.

---
 Prebuild/src/Core/Targets/VS2008Target.cs | 152 ++++++++++++++++++++++--------
 1 file changed, 114 insertions(+), 38 deletions(-)

(limited to 'Prebuild/src/Core/Targets/VS2008Target.cs')

diff --git a/Prebuild/src/Core/Targets/VS2008Target.cs b/Prebuild/src/Core/Targets/VS2008Target.cs
index 88bb5e6..f30017b 100644
--- a/Prebuild/src/Core/Targets/VS2008Target.cs
+++ b/Prebuild/src/Core/Targets/VS2008Target.cs
@@ -1,56 +1,132 @@
 using System;
-using System.Collections.Generic;
+using System.Collections;
+using System.Collections.Specialized;
+using System.IO;
 using System.Text;
+
 using Prebuild.Core.Attributes;
+using Prebuild.Core.Interfaces;
+using Prebuild.Core.Nodes;
+using Prebuild.Core.Utilities;
+using System.CodeDom.Compiler;
 
 namespace Prebuild.Core.Targets
 {
-    [Target("vs2008")]
-    public class VS2008Target : VS2005Target
-    {
-        protected override string SolutionTag
-        {
-            get { return "# Visual Studio 2008"; }
-        }
 
-        protected override string SolutionVersion
-        {
-            get
-            {
-                return "10.00";
-            }
-        }
+	/// <summary>
+	/// 
+	/// </summary>
+	[Target("vs2008")]
+	public class VS2008Target : VSGenericTarget
+	{
+		#region Fields
+		string solutionVersion = "10.00";
+		string productVersion = "9.0.21022";
+		string schemaVersion = "2.0";
+		string versionName = "Visual Studio 2008";
+		string name = "vs2008";
+		VSVersion version = VSVersion.VS90;
 
-        protected override string VersionName
-        {
-            get
-            {
-                return "Visual C# 2008";
-            }
-        }
+		Hashtable tools;
+		Kernel kernel;
 
-        protected override string ToolsVersionXml
-        {
-            get
-            {
-                return " ToolsVersion=\"3.5\"";
-            }
-        }
+		/// <summary>
+		/// Gets or sets the solution version.
+		/// </summary>
+		/// <value>The solution version.</value>
+		public override string SolutionVersion
+		{
+			get
+			{
+				return solutionVersion;
+			}
+		}
+		/// <summary>
+		/// Gets or sets the product version.
+		/// </summary>
+		/// <value>The product version.</value>
+		public override string ProductVersion
+		{
+			get
+			{
+				return productVersion;
+			}
+		}
+		/// <summary>
+		/// Gets or sets the schema version.
+		/// </summary>
+		/// <value>The schema version.</value>
+		public override string SchemaVersion
+		{
+			get
+			{
+				return schemaVersion;
+			}
+		}
+		/// <summary>
+		/// Gets or sets the name of the version.
+		/// </summary>
+		/// <value>The name of the version.</value>
+		public override string VersionName
+		{
+			get
+			{
+				return versionName;
+			}
+		}
+		/// <summary>
+		/// Gets or sets the version.
+		/// </summary>
+		/// <value>The version.</value>
+		public override VSVersion Version
+		{
+			get
+			{
+				return version;
+			}
+		}
+		/// <summary>
+		/// Gets the name.
+		/// </summary>
+		/// <value>The name.</value>
+		public override string Name
+		{
+			get
+			{
+				return name;
+			}
+		}
 
-        protected override string ProductVersion
+        protected override string GetToolsVersionXml(FrameworkVersion frameworkVersion)
         {
-            get
+            switch (frameworkVersion)
             {
-                return "9.0.21022";
+                case FrameworkVersion.v3_5:
+                    return "ToolsVersion=\"3.5\"";
+                case FrameworkVersion.v3_0:
+                    return "ToolsVersion=\"3.0\"";
+                default:
+                    return "ToolsVersion=\"2.0\"";
             }
         }
 
-        public override string Name
+        public override string SolutionTag
         {
-            get
-            {
-                return "vs2008";
-            }
+            get { return "# Visual Studio 2008"; }
         }
-    }
+
+	    #endregion
+
+		#region Constructors
+
+		/// <summary>
+		/// Initializes a new instance of the <see cref="VS2005Target"/> class.
+		/// </summary>
+		public VS2008Target()
+			: base()
+		{
+		}
+
+		#endregion
+	}
 }
-- 
cgit v1.1