I'm compiling the extra/source/grub stuff by running the supplied SlackBuild, and it's barfing at an early stage. I'm using an installed Slackware 14 to do it.
Code:
make[2]: Entering directory `/tmp/grub-0.97/netboot'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/tmp/grub-0.97/netboot'
Making all in stage2
make[2]: Entering directory `/tmp/grub-0.97/stage2'
gcc -fno-builtin -nostdinc -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1
-DFSYS_EXT2FS=1 -DFSYS_FAT=1 -DFSYS_FFS=1 -DFSYS_UFS2=1 -DFSYS_MINIX=1
-DFSYS_REISERFS=1 -DFSYS_VSTAFS=1 -DFSYS_JFS=1 -DFSYS_XFS=1 -DFSYS_ISO9660=1
-DUSE_MD5_PASSWORDS=1 -DHAVE_CONFIG_H -I. -I. -I.. -I../stage1 -Wall
-Wmissing-prototypes -Wunused -Wshadow -Wpointer-arith -falign-jumps=1
-falign-loops=1 -falign-functions=1 -Wundef -m32 -O2 -c -o pre_stage2_exec-asm.o
`test -f 'asm.S'
|| echo './'`asm.S
asm.S: Assembler messages:
asm.S:1852: Error: operand type mismatch for `and'
asm.S:1854: Error: operand type mismatch for `and'
make[2]: *** [pre_stage2_exec-asm.o] Error 1
make[2]: Leaving directory `/tmp/grub-0.97/stage2'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/grub-0.97'
make: *** [all] Error 2
The assembler seems ok, at least 'and' appears ok in that context.
Code:
longmode:
mov $0x2BADB002, %eax
mov %rsi, %rbx
and $0xffffffff, %rsi #line 1852
and $0xffffffff, %rdi #line 1854
call *%rdi
/* NOTREACHED */
call EXT_C(stop)
Did this go out broken and is there a handy fix?