Page 1 of 1

Adding new files to the client distribution? Make targets.

Posted: Sat Oct 15, 2011 8:59 pm
by Angeba
A while ago I added the file `src/client/event.h' (to support display of pressed keys).
Apparently this file is in the bloodspilot GIT-repository at sourceforge, _but_ it seems that the file is still unknown to the GNU-autotools build-process. Experimenting with several make targets, like `dist-gzip' and `distcheck', failed with some errors, e.g. complaints about a missing `event.h' file.

I don't know how the autotools work, but I guess one needs to tell them about an added, removed or renamed file somehow, but how?

My aim is to build a new bloodspilot client tarball, because there is a lot of new/changed stuff since the "current" tarball (4 years old).


I'd also like to learn about make and make targets. How can I find out which make targets are available and what they do? Are all the available targets automatically available by using the GNU-autotools? In that case I should be able to find documentation in the respective documentation (e.g. info), correct?

Re: Adding new files to the client distribution? Make targe

Posted: Sat Oct 15, 2011 11:00 pm
by rotunda
Autotools are quite flexible. Top-level targets (the ones you build the entire project with) are defined in the main Makefile.
Makefiles are generated from Makefile.in when you run ./configure.
Makefile.in are generated from Makefile.am when you run automake.
There is more (like autogeneration of the ./configure script). Luckily, we have ./bootstrap that regenerates Makefile.in and ./configure.
When you change the contents of some Makefile.am, you need to run ./bootstrap.