[Mono-devel-list] Proposal: Library Loading

Tom von Schwerdtner tvon at etria.com
Tue Apr 13 22:23:43 EDT 2004


On Tue, 2004-04-13 at 19:06 -0700, Vladimir Vukicevic wrote:
> On Tue, 2004-04-13 at 18:50, Rachel Hestilow wrote:
> <snip/>
> > <library>
> >     <!-- Generic DLL mapping -->
> >     <dll import="libfoo" target="libfoo.so" version="2" />
> >     <!-- Custom DLL mapping for MyLegacyApp -->
> >     <dll import="libfoo" target="libfoo.so" version="1" 
> > assembly="MyLegacyApp.exe" />
> > </library>
> 
> I like this, but then you lose the ability for the libfoo provider to
> ship the mapping with the library package, because they're not going to
> want to have to track which app is using which version.  The app itself
> also can't install its own entry unless we use some sort of helper tools
> for apps to register/unregister themselves, so we're back to the user
> manually putting in these strings into the magic file.

You could make the config.d filenames insignificant and just keep them
as convention.

conf.d/libfoo.xml:

<library>
    <dll import="libfoo" target="libfoo.so" version="2"/>
</library>

conf.d/barmeister.xml:

<library>
    <dll import="libfoo" target="libfoo.so" version="1"
assembly="BarMeister.exe"/>
</library>

So each app could add/control/whatever any files it needed for its
purposes without conflicting with files from other packages.  Granted,
there is a chance for filename conflicts, but no more of a chance than
anywhere else in the *nix world.

I don't know how the currently config file loading/scanning works, so
I'm not sure if this would push any sort of performance loss considering
you could not just scan for conf.d/the-library-Im-looking-for.xml but
would instead have to check for conf.d/* (I'd assume not, I mean they're
just 3 line text files after all)

-T




More information about the Mono-devel-list mailing list