Hi Sam!
Commit 51b563fc93c8cb5bff1d67a0a71c374e4a4ea049 breaks
Alchemy build in vmlinux.lds:
mipsel-softfloat-linux-gnu-gcc -E
-Wp,-MD,arch/mips/kernel/.vmlinux.lds.d -nostdinc -isystem
/usr/lib/gcc/mipsel-softfloat-linux-gnu/4.3.4/include -Iinclude
-Iinclude2 -I/mnt/work/au1200/kernel/linux-2.6.git/include
-I/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/include -include
include/linux/autoconf.h -D__KERNEL__
-D"VMLINUX_LOAD_ADDRESS=0xffffffff80100000" -D"DATAOFFSET=0" -P -C
-Umips -D__ASSEMBLY__ -DLINKER_SCRIPT -o arch/mips/kernel/vmlinux.lds
/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/kernel/vmlinux.lds.S
In file included from
/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/kernel/vmlinux.lds.S:2:
/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/include/asm/page.h:12:20:
error: spaces.h: No such file or directory
make[2]: *** [arch/mips/kernel/vmlinux.lds] Error 1
make[1]: *** [arch/mips/kernel] Error 2
make: *** [sub-make] Error 2
I tracked it to this part in the commit:
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index c825b14..77f5021 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
[...]
-#
-# Choosing incompatible machines durings configuration will result in
-# error messages during linking. Select a default linkscript if
-# none has been choosen above.
-#
-
-CPPFLAGS_vmlinux.lds := \
- $(KBUILD_CFLAGS) \
- -D"LOADADDR=$(load-y)" \
- -D"JIFFIES=$(JIFFIES)" \
- -D"DATAOFFSET=$(if $(dataoffset-y),$(dataoffset-y),0)"
-
This eliminates the a whole lot of include directives, among which is
"-Iarch/mips/include/asm/mach-generic" which provides a path to the
now-missing "spaces.h".
Is there a cheap way to add this back again?
For reference, here's the full compiler command for the previously-working
case:
mipsel-softfloat-linux-gnu-gcc -E
-Wp,-MD,arch/mips/kernel/.vmlinux.lds.d -nostdinc -isystem
/usr/lib/gcc/mipsel-softfloat-linux-gnu/4.3.4/include -Iinclude
-Iinclude2 -I/mnt/work/au1200/kernel/linux-2.6.git/include
-I/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/include -include
include/linux/autoconf.h -D__KERNEL__ -Wall -Wundef
-Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common
-Werror-implicit-function-declaration -Wno-format-security
-fno-delete-null-pointer-checks -O2 -ffunction-sections
-mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe
-msoft-float -ffreestanding -march=mips32 -Wa,-mips32 -Wa,--trap
-I/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/include/asm/mach-db1x00
-I/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/include/asm/mach-au1x00
-I/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/include/asm/mach-generic
-D"VMLINUX_LOAD_ADDRESS=0xffffffff80100000"
-D"LOADADDR=0xffffffff80100000" -D"JIFFIES=jiffies_64"
-D"DATAOFFSET=0" -P -C -Umips -D__ASSEMBLY__ -o
arch/mips/kernel/vmlinux.lds
/mnt/work/au1200/kernel/linux-2.6.git/arch/mips/kernel/vmlinux.lds.S
Btw, I've been using bash-4 on my hosts since Gentoo added it to
their repos a few months ago, and I haven't noticed any breakages
so far.
Thanks!
Manuel Lauss
|