[MonoDevelop] Autotools plugin.
lluis at ximian.com
Mon Jul 3 06:30:33 EDT 2006
El dv 30 de 06 del 2006 a les 16:56 +0000, en/na Scott Ellington va
> hey Miguel,
> On Fri, 2006-06-30 at 14:01 -0400, Miguel de Icaza wrote:
> > Currently the pkg-config stuff happens at the project level, and I
> > believe that this should happen at the library level (as class libraries
> > are the ones that need this bit).
> I'm not sure what you mean. Maybe you could clarify?
> Right now how it works is that it creates a pc file for the entire
> solution. It finds all buildable projects which are of type library
> (dlls) and includes them in the Libs variable. I'm not sure of a better
I think this is the correct way.
> > I also think that it should probably be enabled by default for all class
> > libraries as that is our mechanism to find/locate libraries (Lluis is
> > talking about adding this feature to the GUI for the "Add References"
> > bit, so it will fit nicely).
> I'm not sure how I would do this. How would I know which solution is a
> class library? In terms of MonoDevelop, creating a solution of type
> 'Library' just instantiates a base setup. There is no information held
> within the solution that specifies that this is what it is. Maybe Lluis
> has an idea, or maybe I am missing something.
I think handling all this at solution level is ok. You only need to
generate a .pc file if the solution contains at least one library.
> Another question: This pkgconfig file allows people to compile against
> the libraries, but it still doesn't help them at runtime. Both Banshee
> and MD have pc files set up this same way. Though I understand that the
> primary uses of their pc files would be plugins.
In the case of MD and Banshee, yes.
> However, I suspect that we would want to enable people to release an
> independent library upon which other applications could use. I see on
> the deployment guidelines page
> ( http://www.mono-project.com/Guidelines:Application_Deployment#Libraries_with_Unstable_APIs )
> there is a defined process for doing this in a pc file.
> This involves adding a separate variable with which consumers can use to copy
> the dlls into the base directory. Yet, I have never seen this used.
> So, should this be implemented?
It's very easy to implemente, so I would say yes.
> This brings up another issue: Installation to GAC. Probably that should
> be implemented as well. We would then need some notion of an unstable
> versus a stable library in MD. This could be something that the
> autotools addin stores, but it may be worthwhile for MD to track it so
> that others may use this info ( NAnt, etc. ).
I think we can add an "Install to GAC" flag in DeployTarget (or maybe in
a new subclass DotNetDeploymetTarget). In this way a solution could have
different deploy targets for unstable and stable releases.
More information about the Monodevelop-list