Date: Fri, 27 Apr 2012 00:15:31 -0700 From: Oleksandr Tymoshenko <gonzo@bluezbox.com> To: Tim Kientzle <kientzle@freebsd.org> Cc: arm@freebsd.org Subject: Re: Cross-buildworld works but not native build? Message-ID: <C90C8044-F103-4414-9167-6475D2CFAE76@bluezbox.com> In-Reply-To: <9AD7075B-B85D-40DB-84B7-FD630B858A30@freebsd.org> References: <9AD7075B-B85D-40DB-84B7-FD630B858A30@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2012-04-26, at 11:48 PM, Tim Kientzle <kientzle@freebsd.org> wrote: > I've been working with the projects/armv6 tree and have encountered a = very confusing situation. >=20 > On i386, this works: > $ make TARGET_ARCH=3Darm TARGET_CPUTYPE=3Darmv6 buildworld >=20 > If I take the resulting world and run it on arm, then the following = fails (with the exact same source): > $ make buildworld > =85.=20 > cc -O -pipe -fpic -fvisibility=3Dhidden -DVISIBILITY_HIDDEN = -std=3Dgnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k = -Wno-uninitialized -Wno-pointer-sign -c = /usr/src/lib/libcompiler_rt/../../contrib/compiler-rt/lib/umoddi3.c -o = umoddi3.o > cc -O -pipe -fpic -fvisibility=3Dhidden -DVISIBILITY_HIDDEN = -std=3Dgnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k = -Wno-uninitialized -Wno-pointer-sign -c = /usr/src/lib/libcompiler_rt/../../contrib/compiler-rt/lib/umodti3.c -o = umodti3.o > cc -O -pipe -fpic -fvisibility=3Dhidden -DVISIBILITY_HIDDEN = -std=3Dgnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k = -Wno-uninitialized -Wno-pointer-sign -c = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c -o = __sync_fetch_and_add_4.o > In file included from = /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:31, > from = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: > /usr/obj/usr/src/tmp/usr/include/machine/atomic.h: In function = 'atomic_cmpset_32': > /usr/obj/usr/src/tmp/usr/include/machine/atomic.h:491: error: = 'ARM_RAS_START' undeclared (first use in this function) > /usr/obj/usr/src/tmp/usr/include/machine/atomic.h:491: error: (Each = undeclared identifier is reported only once > /usr/obj/usr/src/tmp/usr/include/machine/atomic.h:491: error: for each = function it appears in.) > /usr/obj/usr/src/tmp/usr/include/machine/atomic.h: In function = 'atomic_add_32': > /usr/obj/usr/src/tmp/usr/include/machine/atomic.h:516: error: = 'ARM_RAS_START' undeclared (first use in this function) >=20 >=20 > Looking at the source, ARM_RAS_START really does seem to be undeclared = (it's declared in sysarch.h, but atomic.h only includes sysarch.h for = kernel builds). >=20 > So it looks to me like the cross-buildworld should fail also. In any = case, it's not clear why the two aren't behaving the same way. >=20 Warner Losh committed support for TARGET_ARCH=3Darmv6 to HEAD. It should = fix this issue. I started working on merging latest HEAD to = project/armv6=20=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C90C8044-F103-4414-9167-6475D2CFAE76>