[Pkg-cli-apps-commits] [SCM] monodevelop branch, master-experimental, updated. debian/2.4.1+dfsg-1-16-g8264ecb

Jo Shields directhex at apebox.org
Sun Jun 26 15:47:23 UTC 2011


The following commit has been merged in the master-experimental branch:
commit 8264ecbd83a991e1de866ef1a74deeb989692606
Author: Jo Shields <directhex at apebox.org>
Date:   Sun Jun 26 16:43:58 2011 +0100

    Patch MonoDevelop to force .NET 4.0 as the default framework version on new projects. This is recommended for new projects because our GTK# (plus every other library not bundled inside Mono itself) is built for .NET 4.0, so users will get nasty errors building their projects with the 3.5 compiler when consuming 4.0 libraries.

diff --git a/debian/patches/make_4.0_default_framework.patch b/debian/patches/make_4.0_default_framework.patch
new file mode 100644
index 0000000..1c3ce53
--- /dev/null
+++ b/debian/patches/make_4.0_default_framework.patch
@@ -0,0 +1,119 @@
+Index: monodevelop.git/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs
+===================================================================
+--- monodevelop.git.orig/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs	2011-06-26 16:43:02.958100798 +0100
++++ monodevelop.git/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs	2011-06-26 16:43:15.728141574 +0100
+@@ -50,9 +50,9 @@
+ 		
+ 		//NOTE: default toolsversion should match the default format.
+ 		// remember to update the builder process' app.config too
+-		public const string DefaultFormat = "MSBuild08";
+-		const string REFERENCED_MSBUILD_TOOLS = "3.5";
+-		const string REFERENCED_MSBUILD_UTILS = "Microsoft.Build.Utilities.v3.5";
++		public const string DefaultFormat = "MSBuild10";
++		const string REFERENCED_MSBUILD_TOOLS = "4.0";
++		const string REFERENCED_MSBUILD_UTILS = "Microsoft.Build.Utilities.v4.0";
+ 		internal const string DefaultToolsVersion = REFERENCED_MSBUILD_TOOLS;
+ 		
+ 		static DataContext dataContext;
+Index: monodevelop.git/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs
+===================================================================
+--- monodevelop.git.orig/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs	2011-06-26 16:42:39.548030172 +0100
++++ monodevelop.git/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs	2011-06-26 16:42:51.628065930 +0100
+@@ -61,7 +61,7 @@
+ 		TargetFramework defaultTargetFramework;
+ 		
+ 		string defaultPlatformTarget = "x86";
+-		public static readonly TargetFrameworkMoniker DefaultTargetFrameworkId = TargetFrameworkMoniker.NET_3_5;
++		public static readonly TargetFrameworkMoniker DefaultTargetFrameworkId = TargetFrameworkMoniker.NET_4_0;
+ 		
+ 		public const string BuildTarget = "Build";
+ 		public const string CleanTarget = "Clean";
+@@ -379,7 +379,7 @@
+ 					ExcludeEntries (obj, includedChildIds);
+ 					if (format != null)
+ 						obj.ConvertToFormat (format, true);
+-					obj.Save (monitor);
++					obj.Save (monitor);
+ 					List<FilePath> newFiles = obj.GetItemFiles (true);
+ 					
+ 					foreach (FilePath f in newFiles) {
+@@ -392,12 +392,12 @@
+ 						oldFiles.Remove (f);
+ 					}
+ 	
+-					// Remove old files
++					// Remove old files
+ 					foreach (FilePath file in oldFiles) {
+ 						if (File.Exists (file)) {
+ 							File.Delete (file);
+ 						
+-							// Exclude empty directories
++							// Exclude empty directories
+ 							FilePath dir = file.ParentDirectory;
+ 							if (Directory.GetFiles (dir).Length == 0 && Directory.GetDirectories (dir).Length == 0) {
+ 								try {
+@@ -437,17 +437,17 @@
+ 						item.ParentFolder.Items.Remove (item);
+ 				}
+ 			}
+-		}
+-
++		}
++
+ 		bool CopyFiles (IProgressMonitor monitor, IWorkspaceFileObject obj, IEnumerable<FilePath> files, FilePath targetBasePath, bool ignoreExternalFiles)
+-		{
+-			FilePath baseDir = obj.BaseDirectory.FullPath;
++		{
++			FilePath baseDir = obj.BaseDirectory.FullPath;
+ 			foreach (FilePath file in files) {
+ 
+ 				if (!File.Exists (file)) {
+ 					monitor.ReportWarning (GettextCatalog.GetString ("File '{0}' not found.", file));
+ 					continue;
+-				}
++				}
+ 				FilePath fname = file.FullPath;
+ 				
+ 				// Can't export files from outside the root solution directory
+@@ -459,9 +459,9 @@
+ 					else
+ 						monitor.ReportError ("The project '" + obj.Name + "' is referencing the file '" + Path.GetFileName (file) + "' which is located outside the project directory.", null);
+ 					return false;
+-				}
+-
+-				FilePath rpath = fname.ToRelative (baseDir);
++				}
++
++				FilePath rpath = fname.ToRelative (baseDir);
+ 				rpath = rpath.ToAbsolute (targetBasePath);
+ 				
+ 				if (!Directory.Exists (rpath.ParentDirectory))
+@@ -650,8 +650,8 @@
+ 		public override void Save (IProgressMonitor monitor, WorkspaceItem entry)
+ 		{
+ 			entry.OnSave (monitor);
+-		}
+-
++		}
++
+ 		public override List<FilePath> GetItemFiles (SolutionEntityItem entry, bool includeReferencedFiles)
+ 		{
+ 			return entry.OnGetItemFiles (includeReferencedFiles);
+Index: monodevelop.git/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config
+===================================================================
+--- monodevelop.git.orig/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config	2011-06-26 16:43:24.508170476 +0100
++++ monodevelop.git/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config	2011-06-26 16:43:33.558200977 +0100
+@@ -5,11 +5,11 @@
+ 		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ 			<dependentAssembly>
+ 				<assemblyIdentity name="Microsoft.Build.Framework" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+-				<bindingRedirect oldVersion="0.0.0.0-100.0.0.0" newVersion="3.5.0.0" />
++				<bindingRedirect oldVersion="0.0.0.0-100.0.0.0" newVersion="4.0.0.0" />
+ 			</dependentAssembly>
+ 			<dependentAssembly>
+ 				<assemblyIdentity name="Microsoft.Build.Engine" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+-				<bindingRedirect oldVersion="0.0.0.0-100.0.0.0" newVersion="3.5.0.0" />
++				<bindingRedirect oldVersion="0.0.0.0-100.0.0.0" newVersion="4.0.0.0" />
+ 			</dependentAssembly>
+ 		</assemblyBinding>
+ 	</runtime>
diff --git a/debian/patches/series b/debian/patches/series
index c9a6bf4..68f2e6f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,6 +3,7 @@
 #avoid-dependency-on-Mono.Addins-0.5.patch
 #use_system_Mono.Debugger.Soft.patch
 #use_keyfile_not_keycontainer.patch
+make_4.0_default_framework.patch
 link_system_nunit.patch
 use_libsvn1.patch
 use_libapr1.patch

-- 
monodevelop



More information about the Pkg-cli-apps-commits mailing list