[CF List] automake/libtool support
Mark Wedel
mwedel at sonic.net
Mon Aug 5 22:19:40 CDT 2002
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.
More information about the crossfire
mailing list