You are viewing a plain text version of this content. The canonical link for it is here.
Posted to npanday-commits@incubator.apache.org by br...@apache.org on 2013/03/02 01:16:56 UTC

svn commit: r1451807 - in /incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src: main/csharp/Converter/Algorithms/ main/csharp/Digest/Algorithms/ main/csharp/Digest/Model/ test/resource/flat-multi-module/

Author: brett
Date: Sat Mar  2 01:16:55 2013
New Revision: 1451807

URL: http://svn.apache.org/r1451807
Log:
clean up TargetFramework

use TargetFramework as before for "2.0.50727", "4.0", etc. Use
TargetFrameworkVersion for the original value of "v2.0", "v4.0", etc.

Modified:
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/AbstractPomConverter.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/SilverlightPomConverter.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Algorithms/NormalProjectDigestAlgorithm.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/flat-multi-module/pom.test

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/AbstractPomConverter.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/AbstractPomConverter.cs?rev=1451807&r1=1451806&r2=1451807&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/AbstractPomConverter.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/AbstractPomConverter.cs Sat Mar  2 01:16:55 2013
@@ -857,29 +857,29 @@ namespace NPanday.ProjectImporter.Conver
 
                 Dictionary<string, string> targetFrameworkDirectories = new Dictionary<string, string>();
 
-                if (projectDigest.TargetFramework == "4.0")
+                if (projectDigest.TargetFrameworkVersion == "v4.0")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFramework", "Version40", "Framework40");
-                else if (projectDigest.TargetFramework == "3.5")
+                else if (projectDigest.TargetFrameworkVersion == "v3.5")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFramework", "Version35", "Framework35");
-                else if (projectDigest.TargetFramework == "3.5" || projectDigest.TargetFramework == "3.0")
+                else if (projectDigest.TargetFrameworkVersion == "v3.5" || projectDigest.TargetFrameworkVersion == "v3.0")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFramework", "Version30", "Framework30");
-                else if (projectDigest.TargetFramework == "3.5" || projectDigest.TargetFramework == "3.0" || projectDigest.TargetFramework == "2.0")
+                else if (projectDigest.TargetFrameworkVersion == "v3.5" || projectDigest.TargetFrameworkVersion == "v3.0" || projectDigest.TargetFrameworkVersion == "v2.0")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFramework", "Version20", "Framework20");
-                else if (projectDigest.TargetFramework == "1.1")
+                else if (projectDigest.TargetFrameworkVersion == "v1.1")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFramework", "Version11", "Framework11");
                 else
-                    log.WarnFormat("Unsupported framework version for determining target framework directories: {0}", projectDigest.TargetFramework);
+                    log.WarnFormat("Unsupported framework version for determining target framework directories: {0}", projectDigest.TargetFrameworkVersion);
 
                 // Add SDK directory
-                if (projectDigest.TargetFramework == "4.0")
+                if (projectDigest.TargetFrameworkVersion == "v4.0")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFrameworkSdk", "Version40", "FrameworkSdk40");
-                else if (projectDigest.TargetFramework == "3.5")
+                else if (projectDigest.TargetFrameworkVersion == "v3.5")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFrameworkSdk", "Version35", "FrameworkSdk35");
-                else if (projectDigest.TargetFramework == "3.0")
+                else if (projectDigest.TargetFrameworkVersion == "v3.0")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFrameworkSdk", "Version30", "FrameworkSdk30");
-                else if (projectDigest.TargetFramework == "2.0")
+                else if (projectDigest.TargetFrameworkVersion == "v2.0")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFrameworkSdk", "Version20", "FrameworkSdk20");
-                else if (projectDigest.TargetFramework == "1.1")
+                else if (projectDigest.TargetFrameworkVersion == "v1.1")
                     AddTargetFrameworkDirectory(targetFrameworkDirectories, "GetPathToDotNetFrameworkSdk", "Version11", "FrameworkSdk11");
 
                 log.InfoFormat("Target framework directories: {0}", string.Join(",", new List<string>(targetFrameworkDirectories.Values).ToArray()));
@@ -896,12 +896,13 @@ namespace NPanday.ProjectImporter.Conver
             // in the list of assemblies, and there's no guarantee the types will be loaded from the right one
 
             // Iterate over loaded assemblies to find ToolLocationHelper
-            Type helperType = null;
-            Type versionType = null;
+            bool found = false;
             foreach (System.Reflection.Assembly a in AppDomain.CurrentDomain.GetAssemblies())
             {
                 if (a.GetName().Name.StartsWith("Microsoft.Build.Utilities"))
                 {
+                    Type helperType = null;
+                    Type versionType = null;
                     foreach (Type t in a.GetExportedTypes())
                     {
                         if (t.Name == "ToolLocationHelper")
@@ -913,30 +914,34 @@ namespace NPanday.ProjectImporter.Conver
                             versionType = t;
                         }
                     }
-                }
-            }
-
-            if (helperType == null)
-            {
-                log.Error("Unable to find ToolLocationHelper type");
-            }
-            else if (versionType == null)
-            {
-                log.Error("Unable to find TargetDotNetFrameworkVersion type");
-            }
-            else
-            {
-                log.DebugFormat("Using ToolLocationHelper from {0}; TargetDotNetFrameworkVersion from {1}", 
-                    helperType.Assembly.GetName(), versionType.Assembly.GetName());
+                    if (helperType == null)
+                    {
+                        log.Error("Unable to find ToolLocationHelper type");
+                    }
+                    else if (versionType == null)
+                    {
+                        log.Error("Unable to find TargetDotNetFrameworkVersion type");
+                    }
+                    else
+                    {
+                        log.DebugFormat("Using ToolLocationHelper from {0}; TargetDotNetFrameworkVersion from {1}",
+                            helperType.Assembly.GetName(), versionType.Assembly.GetName());
 
-                string value = (string)helperType.InvokeMember(method,
-                    System.Reflection.BindingFlags.InvokeMethod, System.Type.DefaultBinder, "",
-                    new object[] { Enum.Parse(versionType, version) });
+                        string value = (string)helperType.InvokeMember(method,
+                            System.Reflection.BindingFlags.InvokeMethod, System.Type.DefaultBinder, "",
+                            new object[] { Enum.Parse(versionType, version) });
 
-                log.DebugFormat("Adding target directory {0} = {1}", key, value);
-                if (value == "" || value == null) throw new Exception("key bad: " + key + "; " + helperType.Assembly.GetName() + ", " + versionType.Assembly.GetName());
-                directories.Add(key, value);
+                        log.DebugFormat("Adding target directory {0} = {1}", key, value);
+                        if (!string.IsNullOrEmpty(value))
+                        {
+                            directories.Add(key, value);
+                            found = true;
+                        }
+                    }
+                }
             }
+            if (!found)
+                log.WarnFormat("Unable to find framework location for {0} {1}", method, version);
         }
 
         private Dependency ResolveDependencyFromLocalRepository(Reference reference)

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/SilverlightPomConverter.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/SilverlightPomConverter.cs?rev=1451807&r1=1451806&r2=1451807&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/SilverlightPomConverter.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/Algorithms/SilverlightPomConverter.cs Sat Mar  2 01:16:55 2013
@@ -114,7 +114,7 @@ namespace NPanday.ProjectImporter.Conver
 
                 try
                 {
-                    RegistryKey root = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Microsoft SDKs\Silverlight\v" + projectDigest.TargetFramework);
+                    RegistryKey root = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Microsoft SDKs\Silverlight\" + projectDigest.TargetFrameworkVersion);
                     RegistryKey referenceAssemblies = root.OpenSubKey("ReferenceAssemblies");
                     string value = (string)referenceAssemblies.GetValue("SLRuntimeInstallPath");
                     if (value != null)

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Algorithms/NormalProjectDigestAlgorithm.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Algorithms/NormalProjectDigestAlgorithm.cs?rev=1451807&r1=1451806&r2=1451807&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Algorithms/NormalProjectDigestAlgorithm.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Algorithms/NormalProjectDigestAlgorithm.cs Sat Mar  2 01:16:55 2013
@@ -582,7 +582,7 @@ namespace NPanday.ProjectImporter.Digest
             }
             else if ("SilverlightVersion".Equals(buildProperty.Name, StringComparison.OrdinalIgnoreCase))
             {
-                projectDigest.SilverlightVersion = buildProperty.Value.Replace("$(TargetFrameworkVersion)", projectDigest.TargetFramework);
+                projectDigest.SilverlightVersion = buildProperty.Value.Replace("$(TargetFrameworkVersion)", projectDigest.TargetFrameworkVersion);
             }
             else if ("SilverlightApplication".Equals(buildProperty.Name, StringComparison.OrdinalIgnoreCase))
             {
@@ -666,10 +666,13 @@ namespace NPanday.ProjectImporter.Digest
             }
             else if ("TargetFrameworkVersion".Equals(buildProperty.Name, StringComparison.OrdinalIgnoreCase) && projectDigest.TargetFramework == null)
             {
+                // Raw value from project
+                projectDigest.TargetFrameworkVersion = buildProperty.Value;
+
                 // changed the version to the more specific version
                 string frameworkVersion = buildProperty.Value.Substring(1);
 
-                if ("2.0".Equals(buildProperty.Value.Substring(1)))
+                if ("2.0".Equals(frameworkVersion))
                 {
                     frameworkVersion = "2.0.50727";
                 }

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs?rev=1451807&r1=1451806&r2=1451807&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs Sat Mar  2 01:16:55 2013
@@ -478,13 +478,18 @@ namespace NPanday.ProjectImporter.Digest
         }
 
         private string targetFramework;
-
         public string TargetFramework
         {
             get { return targetFramework; }
             set { targetFramework = value; }
         }
 
+        private string targetFrameworkVersion = "v2.0";
+        public string TargetFrameworkVersion
+        {
+            get { return targetFrameworkVersion; }
+            set { targetFrameworkVersion = value; }
+        }
 
         private Compile[] compiles;
         public Compile[] Compiles

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/flat-multi-module/pom.test
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/flat-multi-module/pom.test?rev=1451807&r1=1451806&r2=1451807&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/flat-multi-module/pom.test (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/flat-multi-module/pom.test Sat Mar  2 01:16:55 2013
@@ -59,8 +59,12 @@
       <groupId>Microsoft.Build.Engine</groupId>
       <artifactId>Microsoft.Build.Engine</artifactId>
       <version>2.0.0.0</version>
-      <type>gac_msil</type>
-      <classifier>b03f5f7f11d50a3a</classifier>
+      <type>dotnet-library</type>
+      <scope>system</scope>
+      <systemPath>${npanday.Framework20}/Microsoft.Build.Engine.dll</systemPath>
     </dependency>
   </dependencies>
+  <properties>
+    <npanday.Framework20>C:\Windows\Microsoft.NET\Framework\v2.0.50727</npanday.Framework20>
+  </properties>
 </project>