[Monodevelop-patches-list] r2021 - trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding
commit-watcher at mono-cvs.ximian.com
commit-watcher at mono-cvs.ximian.com
Tue Nov 9 13:53:52 EST 2004
Author: tberman
Date: 2004-11-09 13:53:51 -0500 (Tue, 09 Nov 2004)
New Revision: 2021
Modified:
trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/CSharpBindingCompilerManager.cs
trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog
Log:
2004-11-09 Todd Berman <tberman at off.net>
* CSharpBindingCompilerManager.cs: Use SAS for assembly detection.
This doesnt seem to break anything for me.
Modified: trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/CSharpBindingCompilerManager.cs
===================================================================
--- trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/CSharpBindingCompilerManager.cs 2004-11-02 21:20:53 UTC (rev 2020)
+++ trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/CSharpBindingCompilerManager.cs 2004-11-09 18:53:51 UTC (rev 2021)
@@ -145,10 +145,29 @@
IProjectService projectService = (IProjectService)MonoDevelop.Core.Services.ServiceManager.GetService(typeof(IProjectService));
ArrayList allProjects = Combine.GetAllProjects(projectService.CurrentOpenCombine);
-
- foreach (ProjectReference lib in p.ProjectReferences) {
- string fileName = lib.GetReferencedFileName(p);
- writer.WriteLine("\"/r:" + fileName + "\"");
+ SystemAssemblyService sas = (SystemAssemblyService)ServiceManager.GetService (typeof (SystemAssemblyService));
+ ArrayList pkg_references = new ArrayList ();
+ foreach (ProjectReference lib in project.ProjectReferences) {
+ switch (lib.ReferenceType) {
+ case ReferenceType.Gac:
+ string pkg = sas.GetPackageFromFullName (lib.Reference);
+ if (pkg == "MONO-SYSTEM") {
+ writer.WriteLine ("\"/r:" + Path.GetFileName (lib.GetReferencedFileName (project)) + "\"");
+ } else if (!pkg_references.Contains (pkg)) {
+ pkg_references.Add (pkg);
+ writer.WriteLine ("\"-pkg:" + pkg + "\"");
+ }
+ break;
+ case ReferenceType.Assembly:
+ string assembly_fileName = lib.GetReferencedFileName (project);
+ string rel_path_to = fileUtilityService.AbsoluteToRelativePath (project.BaseDirectory, Path.GetDirectoryName (assembly_fileName));
+ writer.WriteLine ("\"/r:" + Path.Combine (rel_path_to, Path.GetFileName (assembly_fileName)) + "\"");
+ break;
+ case ReferenceType.Project:
+ string project_fileName = lib.GetReferencedFileName (project);
+ writer.WriteLine ("\"/r:" + project_fileName + "\"");
+ break;
+ }
}
writer.WriteLine("/nologo");
Modified: trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog
===================================================================
--- trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog 2004-11-02 21:20:53 UTC (rev 2020)
+++ trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog 2004-11-09 18:53:51 UTC (rev 2021)
@@ -1,3 +1,8 @@
+2004-11-09 Todd Berman <tberman at off.net>
+
+ * CSharpBindingCompilerManager.cs: Use SAS for assembly detection.
+ This doesnt seem to break anything for me.
+
2004-11-01 Todd Berman <tberman at off.net>
* CSharpBindingExecutionManager.cs.in: Add fu to actually properly run
More information about the Monodevelop-patches-list
mailing list