The ipfilter crash is already known (and unrelated to this problem).
The rpm build failure is solved (I know what's going on, the patch above fixes it and should be committed to SVN).
Just for the records, explaining what's going on here. The Makefile generated by automake looks similar to this (simplified):
prefix = /usr
bindir = $(prefix)/bin
install: amule
mkdir -p $(DESTDIR)$(bindir)
cp amule $(DESTDIR)$(bindir)
This example means that running "make install" will copy amule to /usr/bin, but this is undesirable while building packages. Building packages must work without root privileges.
This is solved by using a so-called "build root", installing files to /var/tmp/amule-build/usr instead of /usr. This can be implemented in basically 2 ways:
(1) Redefine prefix = /usr to prefix = /var/tmp/amule-build/usr by running "make install prefix=$RPM_BUILD_ROOT/usr".
(2) Define DESTDIR (empty string by default) to point to the build root.
What %makeinstall does is identical to (1). The reason why it doesn't work is that redefining prefix is not enough, you have to redefine bindir, libdir, datadir etc. as well. %makeinstall does that for a lot of variables, but it misses docdir => Problem.
The much better, "official" way is (2), using DESTDIR. That's what DESTDIR has been created for: See
http://www.gnu.org/prep/standards/html_node/DESTDIR.html. It should by used.
Investigating further, the %makeinstall rpm macro was meant to be used only with Makefiles that don't support DESTDIR at all. But aMule supports it perfectly fine => It's wrong that we're using %makeinstall!