I've just built a stock 2.6.21.1 kernel for my Mandriva 2007.1 Spring.
I did have some issues compiling in external modules manually, and also
with existing dkms configured modules.

The dkms stuff calls 'make mrproper' which deletes version.h and
Module.symvers.
I got everything back with a full recompile. Since found that 'make
prepare scripts' will get back most stuff except Module.sysmvers

I've since found some external modules will not compile if make mrproper
has not been run, but this blows away Module.symvers, which will also
stop compilation.

Also there seems to be off comments in the nvidia drivers saying
do NOT run mrproper if using your own stock kernel, but then it wont
build because it's not clean??

Also googling around I see a lot of reported errors for people building
external modules regarding version.h or include/asm or Module.symvers
which all centers around this confusion of when to run mrproper and how
to maintain/recover Module.symvers.

Can anyone through any light on my confusion?

Cheers,
Lordy