After some fun hacking and many, many complete rebuilds, I've built and
submitted for testing a version of epel-rpm-macros for EPEL5 which
removes the need for several pieces of RPM junk which have annoyed me
for many years now.
These macros do the following, entirely by "magic" without requiring the
use of any boilerplate or line noise:
*) Provide a BuildRoot: tag if one is not specified. (The recommend value
from the EPEL guidelines is used.)
*) Provide Group: tags for the main package and any subpackages which don't
have one. The value used is "Unspecified".
*) Automatically provide a %clean section.
*) Automatically delete the %buildroot at the beginning of %install.
*) Allow the use of %license in the %files section (maps to %doc as usual).
I found a better method for setting up %license which doesn't appear to
have the issues with %define vs. %global that the one I used in the
EPEL6 macros has. I will probably revisit that at a later date, but
what's there is working. The upside to this is that as far as I can
tell these macros introduce no build issues at all to the current EPEL5
I've found but one caveat: If the spec has a %clean section, it must
come before %files and after %description but not _immediately_ after
%description. Otherwise, due to magic I used to add %clean, the
%contents of the existing %clean section will be appended to the
%description. It's pretty weird, but unless the package completely
fails to follow the usual Fedora packaging conventions, things should be
OK. rpmdiff is still running, but there are indeed a couple of packages
which do this. I'll be fixing them up as I find them.
Please do test this out when it hits the testing repo (or pull it from
koji now). Try cleaning some of the cruft out of a few of your EL5
packages and please let me know how it goes. The sooner this can get to
stable and into the buildroot, the sooner I can move on to doing more
macro cleanup and %ifdef elimination. (I think EL6 python macros will