$ make
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DKBUILD_BASENAME=main -c -o init/main.o init/main.c
init/main.c: In function `init':
/usr/src/linux-2.4.20/include/asm/unistd.h:373: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:371: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:371: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:372: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:372: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:372: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:372: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/asm/unistd.h:372: can't find a register in class `BREG' while reloading `asm'
/usr/src/linux-2.4.20/include/linux/highmem.h: In function `bh_kmap_irq':
/usr/src/linux-2.4.20/include/linux/highmem.h:51: warning: asm operand 1 probably doesn't match constraints
This was when your specfile was used.