I was compiling 2.4.18 and I ran into this (this was all done after the
symbolic links were set up to the mips directories):
When compiling /usr/src/kernel-source-2.4.18/drivers/char/keyboard.c:
Included in this order
redeclared as different kind of symbol
declaration of `pckbd_rate'
extern int pckbd_rate(struct kbd_repeat *rep);
#define kbd_rate pckbd_rate
In that order, but, as I understand, the preprocessor will make a pass
and substitution before the c compiler is called so effectively
extern int kbd_rate(struct kbd_repeat *rep);
and in linux/vt_kern.h
extern int (*kbd_rate)(struct kbd_repeat *rep);
As you can see, the first is the variable and the second is a pointer.
Which is right?
I commented out the pointer, chosen at random and crashed a bit later at
pc_keyb.c. So I went back and commented out the first one. Crashed in
the same place. So I grabbed my keyboard.h from my 2.4.16 kernel and
copied it in. It works fine.
Is this just me?
"I believe the use of noise to make music will increase until we reach a
music produced through the aid of electrical instruments which will make
available for musical purposes any and all sounds that can be heard."
-- composer John Cage, 1937