Hi all,
openbios fails to build with gcc 5.2 cross compilers. This is using fedora 23 packages. There's a bug here with complete info:
https://bugzilla.redhat.com/show_bug.cgi?id=1282890
The error is:
powerpc64-linux-gnu-gcc $EXTRACFLAGS -m32 -msoft-float -fno-builtin-bcopy -fno-builtin-log2 -Os -g -DNATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH -USWAP_ENDIANNESS -Wall -Wredundant-decls -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wundef -Wendif-labels -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes -Wnested-externs -Werror -MMD -MP -MT target/arch/ppc/qemu/ofmem.o -MF 'target/arch/ppc/qemu/ofmem.d' -I/root/openbios/openbios-1.1/include -I/root/openbios/openbios-1.1/kernel/include -I./target/include -c -o target/arch/ppc/qemu/ofmem.o /root/openbios/openbios-1.1/arch/ppc/qemu/ofmem.c /tmp/ccznzzOd.s: Assembler messages: /tmp/ccznzzOd.s:551: Error: missing operand rules.mak:309: recipe for target 'target/arch/ppc/qemu/ofmem.o' failed make[1]: *** [target/arch/ppc/qemu/ofmem.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/root/openbios/openbios-1.1/obj-ppc' Makefile:32: recipe for target 'subdir-ppc' failed make: *** [subdir-ppc] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.DSB86j (%build)
David Howells' commented in the bug with a suggested fix... but I don't even have a setup to test openbios so I'd prefer if someone else cooks up the patch :)
Thanks, Cole
On 21/11/15 02:03, Cole Robinson wrote:
Hi all,
openbios fails to build with gcc 5.2 cross compilers. This is using fedora 23 packages. There's a bug here with complete info:
https://bugzilla.redhat.com/show_bug.cgi?id=1282890
The error is:
powerpc64-linux-gnu-gcc $EXTRACFLAGS -m32 -msoft-float -fno-builtin-bcopy -fno-builtin-log2 -Os -g -DNATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH -USWAP_ENDIANNESS -Wall -Wredundant-decls -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wundef -Wendif-labels -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes -Wnested-externs -Werror -MMD -MP -MT target/arch/ppc/qemu/ofmem.o -MF 'target/arch/ppc/qemu/ofmem.d' -I/root/openbios/openbios-1.1/include -I/root/openbios/openbios-1.1/kernel/include -I./target/include -c -o target/arch/ppc/qemu/ofmem.o /root/openbios/openbios-1.1/arch/ppc/qemu/ofmem.c /tmp/ccznzzOd.s: Assembler messages: /tmp/ccznzzOd.s:551: Error: missing operand rules.mak:309: recipe for target 'target/arch/ppc/qemu/ofmem.o' failed make[1]: *** [target/arch/ppc/qemu/ofmem.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/root/openbios/openbios-1.1/obj-ppc' Makefile:32: recipe for target 'subdir-ppc' failed make: *** [subdir-ppc] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.DSB86j (%build)
David Howells' commented in the bug with a suggested fix... but I don't even have a setup to test openbios so I'd prefer if someone else cooks up the patch :)
My understanding is that the earliest CPU we need to be supporting for PPC is the 750 (which should be POWER7 series) although there was interest in using OpenBIOS for PReP which I believe is a 604?
Hervé/Laurent in particular - any further thoughts on this?
ATB,
Mark.
On Nov 21, 2015, at 7:46 AM, Mark Cave-Ayland wrote:
On 21/11/15 02:03, Cole Robinson wrote:
Hi all,
openbios fails to build with gcc 5.2 cross compilers. This is using fedora 23 packages. There's a bug here with complete info:
https://bugzilla.redhat.com/show_bug.cgi?id=1282890
The error is:
powerpc64-linux-gnu-gcc $EXTRACFLAGS -m32 -msoft-float -fno-builtin-bcopy -fno-builtin-log2 -Os -g -DNATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH -USWAP_ENDIANNESS -Wall -Wredundant-decls -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wundef -Wendif-labels -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes -Wnested-externs -Werror -MMD -MP -MT target/arch/ppc/qemu/ofmem.o -MF 'target/arch/ppc/qemu/ofmem.d' -I/root/openbios/openbios-1.1/include -I/root/openbios/openbios-1.1/kernel/include -I./target/include -c -o target/arch/ppc/qemu/ofmem.o /root/openbios/openbios-1.1/arch/ppc/qemu/ofmem.c /tmp/ccznzzOd.s: Assembler messages: /tmp/ccznzzOd.s:551: Error: missing operand rules.mak:309: recipe for target 'target/arch/ppc/qemu/ofmem.o' failed make[1]: *** [target/arch/ppc/qemu/ofmem.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/root/openbios/openbios-1.1/obj-ppc' Makefile:32: recipe for target 'subdir-ppc' failed make: *** [subdir-ppc] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.DSB86j (%build)
David Howells' commented in the bug with a suggested fix... but I don't even have a setup to test openbios so I'd prefer if someone else cooks up the patch :)
My understanding is that the earliest CPU we need to be supporting for PPC is the 750 (which should be POWER7 series) although there was interest in using OpenBIOS for PReP which I believe is a 604?
The Power7 chip is different from the PowerPC 750 (G3). The PowerPC is more like a subset of the Power processors.
Le 21/11/2015 13:46, Mark Cave-Ayland a écrit :
On 21/11/15 02:03, Cole Robinson wrote:
Hi all,
openbios fails to build with gcc 5.2 cross compilers. This is using fedora 23 packages. There's a bug here with complete info:
https://bugzilla.redhat.com/show_bug.cgi?id=1282890
The error is:
powerpc64-linux-gnu-gcc $EXTRACFLAGS -m32 -msoft-float -fno-builtin-bcopy -fno-builtin-log2 -Os -g -DNATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH -USWAP_ENDIANNESS -Wall -Wredundant-decls -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wundef -Wendif-labels -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes -Wnested-externs -Werror -MMD -MP -MT target/arch/ppc/qemu/ofmem.o -MF 'target/arch/ppc/qemu/ofmem.d' -I/root/openbios/openbios-1.1/include -I/root/openbios/openbios-1.1/kernel/include -I./target/include -c -o target/arch/ppc/qemu/ofmem.o /root/openbios/openbios-1.1/arch/ppc/qemu/ofmem.c /tmp/ccznzzOd.s: Assembler messages: /tmp/ccznzzOd.s:551: Error: missing operand rules.mak:309: recipe for target 'target/arch/ppc/qemu/ofmem.o' failed make[1]: *** [target/arch/ppc/qemu/ofmem.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/root/openbios/openbios-1.1/obj-ppc' Makefile:32: recipe for target 'subdir-ppc' failed make: *** [subdir-ppc] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.DSB86j (%build)
David Howells' commented in the bug with a suggested fix... but I don't even have a setup to test openbios so I'd prefer if someone else cooks up the patch :)
My understanding is that the earliest CPU we need to be supporting for PPC is the 750 (which should be POWER7 series) although there was
I think 750 (G3) is POWER2, 970 (G5) is POWER4
interest in using OpenBIOS for PReP which I believe is a 604?
Hervé/Laurent in particular - any further thoughts on this?
by default gcc-5.1 produces POWER4 assembler (".machine power4").
If we target 750, we should use "-mcpu=G3". it generates a ".machine ppc", whereas "-mcpu=G5" generates ".machine power4".
I'm going to reproduce the problem and propose a fix.
Laurent