It seems to me that the rpm packagers need to provide a way
for the admin to use an existing config file which has enabled
all that is needed, as a base config file. Thus running rpmbuild
should somehow use this base config file, and add to it if necessary,
but at least keep the features/drivers that are enabled in the
base config file, enabled for the actual build.
+1. I echo that 100% and up until 3 days ago I assumed, wrongly as it
turns out, that the oldconfig target does just that.
I did follow the instructions at
http://fedoraproject.org/wiki/Docs/CustomKernel
very very closely, to no avail.
Maybe I AM doing someting wrong, but I have no idea what that might be.
So, what do I do? I simply prep from source
(rpmbuild -bp kernel.spec)
and then cd to ~/rpmbuild/BUILD/kernel-2.6.35.10-74/linux-2.6.35.i686,
copy my current kernel's config file to .config, run
make oldconfig and
male all
and that does it.
The new config file inherits my enabled drivers selections.
It does inherits old settings and it also does include new ones, but it
doesn't always work as I found with the .34 and .35 files.
To me, the oldconfig target needs to be modified so that when I copy my
.34 (i.e. old) config and then run "make oldconfig" all options
(old+new) are merged AND the resultant .config file is used - unmodified
- as a basis for the "rpmbuild -bb" command.
Whether 'stacking' of all previous config files happens is only
relevant during the execution of oldmenuconfig (there is another version
of oldconfig called silentoldconfig which resolves the dependencies as
well - I found this a couple of hours ago while messing about with the
make targets), but such stacking should not happen once the target
.config file is built. My opinion, of course.