Using "kernel-source-2.4.18-22mdk.i586.rpm" from "MandrakeLinux-9.0beta2-CD3.i586.iso", during the sequence
make clean make depend make modules the compiles fail for a dozen or so files, including drivers/isdn/act2000/capi.c drivers/isdn/act2000/act2000.h drivers/isdn/act2000/module.c drivers/input/mousedev.c drivers/ieee1394/ieee1394_transactions.c drivers/char/joystick/sidewinder.c drivers/char/joystick/tmdc.c drivers/char/ftape/zftape/zftape-buffers.c drivers/char/ftape/zftape/zftape-vtbl.c drivers/char/ftape/zftape/zftape-write.c drivers/char/ftape/zftape/zftape-read.c drivers/char/ftape/lowlevel/ftape-buffer.c drivers/char/ftape/lowlevel/ftape-io.c drivers/char/ftape/lowlevel/ftape-ecc.c drivers/char/ftape/compressor/zftape-compress.c drivers/char/joystick/gf2k.c drivers/char/joystick/adi.c The problem has to do with module versions. For these files, the macro for "_ver_str" doesn't get defined, because the file 'rhconfig.h' isn't included prior to including 'sched.h' or 'delay.h'. Shifting around the include files in each of the driver files would work (usually, they include 'linux/module.h', or some other file that includes 'linux/version.h', which then pulls in 'rhconfig.h'. But it's also the case that including "linux/version.h" before the external definitions of 'loops_per_jiffy' or 'event' in delay.h or sched.h works too. Changing delay.h and sched.h allows a clean compile.
