Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Jan 2017 08:59:04 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        Mark Millard <markmi@dsl-only.net>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: =mcpu=cortex-a7 buildlworld (for example) vs. __aeabi_uidiv use in ports from pkg
Message-ID:  <1485446344.30533.72.camel@freebsd.org>
In-Reply-To: <15C25780-588B-43EF-8DAC-000C301018BE@dsl-only.net>
References:  <15C25780-588B-43EF-8DAC-000C301018BE@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 2017-01-26 at 02:10 -0800, Mark Millard wrote:
> If I buildworld buildkernel for arm.armv6 with the likes of:
> 
> CFLAGS+= =mcpu=cortex-a7
> CXXFLAGS+= =mcpu=cortex-a7
> CPPFLAGS+= =mcpu=cortex-a7
> 
> (say for targeting a bpim3 or rpi2) then what package
> installs for that context tends to report:
> 
> Undefined symbol "__aeabi_uidiv"
> 
> In other words __aeabi_uidiv is only implemented
> for armv6 buildworld, not if one explicitly targets
> armv7. (armv7 has instruction support but that does
> not make software built to support other processor
> variants that are without instruction support also
> work unless the routine is still provided.)
> 
> Note: I normally build ports from source anyway
> so this is just an FYI in case the lack of
> __aeabi_uidiv was not deliberate.
> 
> ===
> Mark Millard
> markmi at dsl-only.net

I believe problems like this will not go away unless we stop trying to
pretend that armv6 and armv7 are the same thing, and actually start
treating armv7 as its own arch, especially for the purpose of packages
and ports.

I've said/suggested this more than once, and every time it gets shot
down by the people who actually understand what it takes to create a
new arch (if I knew how to do it, I would have, long ago).  As near as
I can tell, the argument against doing it is essentially "because it's
hard".

So I guess... don't expect it to get better any time soon.

-- Ian




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