[Mono-devel-list] Global dllmap entries?

Miguel de Icaza miguel at novell.com
Sat Apr 9 14:20:48 EDT 2005


Hello,

> >     The issue at hand is that gtk-sharp ships with a config file that
> > maps the libgtk-win32-etc.dll name to the proper name on the underlying
> > OS.  And I would like third party apps to be able to consume this
> > binding as opposed to introducing the logic on every application that
> > needs to bind an API from Gtk+ that might not be bound.
> 
> 1) Is the "API from Gtk+ that might not be bound" omission filed in
> bugzilla?

This is tricky.  The issue at hand is the use of the new file selector
on old installations.  See F-Spot for the actual config file, and the
CompatFileChooser implementation.

> The situation as it stands now is that we not only have platform
> specific glue, but we also have a build hack in place to dasm/hack/asm
> the assemblies on win32 for the cdecl calling convention thing.  The
> dllmap .config hack is a throwback to the good old days when we thought
> we could have "build-once-run-everywhere" deployment for Gtk#, but based
> on current knowledge I don't believe such a goal is attainable.

This is fixable for the Gtk# 2.0 by introducing a constant I guess:

namespace Gtk {
	public class Config {
		public const string dll_name = "libgtk.so.2.0";
	}
}

But the problem this is intended to resolve is the `Get me to the
library whose official name is Blah'. 

Bug or not, we will lack things to be bound, and we will have miss-bound
pieces and we will need a way to allow third party developers to bind to
the API correctly without forcing them to their own hacks to the config
goo.



More information about the Mono-devel-list mailing list