I am used to configuring my own kernels, because I drop a lot of stuff I don't really use. Lately, kernel-source RPMs have been deprecated in favor of SRPMs. I do can build new versions from them, but there are a couple of issues:
1. I generate kernel sources with
rpmbuild --target i686 -bp kernel-2.6.spec
and then I move the resulting .../redhat/BUILD/kernel-2.6.9/linux-2.6.9 to /usr/src/linux , and then do 'make bzImage modules modules_install install' (usually after a 'make oldconfig' using my own .config file).
An alternative approach is described at http://crab-lab.zool.ohiou.edu/kevin/kernel-compilation-tutorial-en/
This method results in a new kernel RPM that you can install/uninstall just like any other kernel RPM.
2. there's no support for 'athlon' architecture
I have an athlon-XP CPU, and if I plainly run 'rpmbuild -bp kernel-2.6.spec' it barfs that athlon is not supported and bails out. Browsing through spec file I couldn't indeed find specific support for it. Any special reason for that?
I know that RedHat say that an i686 build should be used for athlons, and you can get that using --target i686 as you described earlier. It would seem to make sense to me though for the spec file to automatically select the right architecture to use if none were specified.
Paul.