Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Jun 2011 11:14:08 -0500
From:      Mark Tinguely <marktinguely@gmail.com>
To:        Hans Petter Selasky <hselasky@c2i.net>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Crossbuild failure on 8-stable
Message-ID:  <4E0CA0D0.6050500@gmail.com>
In-Reply-To: <201106301122.36155.hselasky@c2i.net>
References:  <201106301122.36155.hselasky@c2i.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 6/30/2011 4:22 AM, Hans Petter Selasky wrote:
> Hi,
>
> Trying to cross build ARM fails in the following way on 8-stable:
>
> 8.2-STABLE FreeBSD 8.2-STABLE #1: Wed Jun 29 13:09:23 UTC 2011
>
> make toolchain TARGET=arm
>
> Is this perhaps also an issue in 9-current?
>
> Any clues?
>
> cc -O -pipe  -ffreestanding -Wformat -I/usr/src/lib/libstand -msoft-float -
> D_STANDALONE -DBZ_NO_STDIO -DBZ_NO_COMPRESS -DHAVE_MEMCPY -
> I/usr/src/lib/libstand/../libz -std=gnu99  -c
> /usr/src/lib/libstand/../libc/net/ntoh.c
> {standard input}: Assembler messages:
> {standard input}:27: Error: bad instruction `bswap r0'
> {standard input}:53: Error: bad instruction `bswap r0'
>

and you also said:

> Tracing down the issue:
>
> /usr/include/machine/endian.h
>
> #define __byte_swap_int_var(x) \
> __extension__ ({ register __uint32_t __X = (x); \
>     __asm ("bswap %0" : "+r" (__X)); \
>     __X; })
>
> r0 looks like an ARM register passed to a non-arm assembler. I'm going to try:
>

Looks like you have an ARM compiler/assembler because the assembler 
rejects the i386/amd64 "bswap" assembly command.

Does anyone remember if the cross compiler has the cross include paths 
compiled into them or should there be a "-I" in the compile command to 
correctly expand the "#include <machine/endian.h>" ? I thought the cross 
path was compiled into the cross compiler.

You manually test the "cc" command with the included "-I" option.

--Mark



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4E0CA0D0.6050500>