Jacek Konieczny wrote: > Hi, > > I am crossfire player for a long time now. Some time ago I have even > improved sound support in crossfire client (I know this should be > updated now, but this needs more time than I currently need). > I am also member of PLD (PLD Linux Distribution) team, so I make > packeges of different things, including, of course, crossfire. > Being a rpm-packager I see things, that other don't see, like things > being installed in wrong directory, some compatibility issues etc. > > Recently I found out, that crossfire-1.3.0 traball is incomplete > (plugin_python.h is missing), and that plugins and installed in bad > directory (under ${datadir} instead od ${libdir}). Does automake prevent against human errors :)? Normally, the make files don't change much, so this isn't an issue. But when they do, yeah, it seems that something may be missing. But this is mostly because the developer forgot to update some file - I don't think the complexity of the Makefile.in is much an issue, rather just forgetting to do it. > > I thing, that what crossfire code needs now is automake/libtool support. > What whould it give: > > Automake: > - Easy creation of distribution tarballs > - Easier maintanace, as Makefile.am files are much simplier than Makefile.in > - Created tarballs will be much easier for packaging for different > distribution > ... and probably some more I don't remember now I'd like to see a Makefile.am of how one of the current makefiles would look in this new format so I could make a more educated opinion on whether it is worthwhile or not. Presumably, only the developers will need automake - my guess would be they modify the makefile.am, run automake, run configure (maybe autoconf first)? But end users just type configure, make, correct? > > Libtool: > - portable way of building and loading plugins > ... and probably some more I'm a little wary of adding additional dependencies that end users must have in order to install/create. Of course, you could do something like if libtool is available, then build the loader for plugins, and if not, then you have no plugin support. It's unclear why the current script code needs to be done as a loadable library instead of just compiling it in. I suppose that its possible you might start the server and don't have a plugin available, but at some later time, you want to add the plugin without restarting the server. But the plugin code is there, seems to work, so not a big deal (other case could be plugins distributed in binary format for whatever reason, but for those to work reliable, they really couldn't look at any of the structures as they could be different). > Should I start? See comments above. If it makes the makefiles significantly simpler, I suppose so - I'm uncertain that it will really prevent the errors you are seeing however.