[Geany-devel] Geany-Plugins Dependency Consolidation

Matthew Brush mbrush at xxxxx
Sat Aug 4 02:59:36 UTC 2012


Since some plugins share dependencies, is there some way to coordinate 
both the versions of the dependencies and the build system? For example 
if Debugger and MultiTerm both depend on LibVTE, to make sure they use 
compatible API versions and depend on the same version. I'm thinking 
it's not great to require LibFoo v0.01 for one plugin and LibFoo v0.02 
for another, even if they (can) use common API (and probably do already).

I guess it's more of a build system question, is it realistic?

Common/interesting dependencies based on a quick scan of the `build` 

* GdkPixbuf
	- WebHelper - v2.0
* GTK+
	- Devhelp - v2.16
	- GenDoc - v2.12
	- MultiTerm - version unspecified
	- WebHelper - v2.16
	- GenDoc - v2.14
	- WebHelper - v2.16
	- GenDoc - v2.18
	- TreeBrowser - version unspecified
	- WebHelper - v2.18
* GModule
	- GeanyLua - version unspecified
* GThread
	- WebHelper - version unspecified
* LibSoup
	- GeniusPaste - v2.4
	- UpdateChecker - v2.4
* LibVTE
	- Debugger - v0.24
	- MultiTerm - version unspecified
* LibXML
	- PrettyPrinter - v2.6.27
	- XMLSnippets - either doesn't use or not specified
* WebKitGTK+
	- Devhelp - 1.1.13
	- WebHelper - v1.1.18
	- Markdown (Future Plugin) - version unspecified

For most of the dependencies, I think the GEANY_CFLAGS/GEANY_LIBS would 
cover it (gtk, glib, gio(?), gmodule, gthread, etc.). For the others 
maybe there could be some tweaking of versions to at least make the 
dependency versions the same. I know for my two plugins (DevHelp and 
MultiTerm) the versions of the dependencies are not very much of a 
concern and I mostly copied existing plugins' .m4 files.

Just a few thoughts I had while mucking around with the build system.

Matthew Brush

More information about the Devel mailing list