Migrating from -current to stable/12 on RPI2B (ARMv7)
Mark Millard
marklmi at yahoo.com
Mon Dec 28 21:19:50 UTC 2020
On 2020-Dec-28, at 12:55, Mark Millard <marklmi at yahoo.com> wrote:
>
>
> On 2020-Dec-28, at 12:07, Mark Millard <marklmi at yahoo.com> wrote:
>
>
>> On 2020-Dec-28, at 10:56, bob prohaska <fbsd at www.zefox.net> wrote:
>>
>>> On Sun, Dec 27, 2020 at 10:10:18PM -0800, Mark Millard wrote:
>>>>
>>>>
>>>> On 2020-Dec-27, at 20:48, bob prohaska <fbsd at www.zefox.net> wrote:
>>>>
>>>>> . . .
>>>>
>>> I didn't know about LDFLAGS, but a re-try with
>>> -j1 and LDFLAGS.lld+= -Wl,--threads=1
>>> (apparently the syntax changed) in /etc/make.conf
>>> promptly reproduced the error.
>>
>> Hmm. It been a while since I did a native build instead of a
>> cross build. The cross build context has RAM and does not
>> use the assignment so I'd not noticed.
>>
>> Thanks for the report!
>
> lld for LLVM 10 always had --no-threads as I now understand
> and stable/12 still has/uses/needs LLVM 10.0.1 (with
> updates).
>
> That means that lld from LLVM 11 was in use (FreeBSD
> 13's system ld). The build was probably trying to build
> some LLVM 10.0.1 final+ materials for bootstrap style
> build use in later build stages (older FreeBSD targeting).
> It likely had not gotten to the stage of building freebsd
> stable/12 material itself.
>
> Attempting to build devel/llvm10 might well have the same
> issue without having to involve an extra FreeBSD source
> tree or build.
There is another gotcha-issue with the change from --no-threads
to --threads=1 based on neither working for both 10.0.x and
11.0.y: which ever one is listed in /etc/make.conf (say) will be
wrong for other one of:
A) building the bootstrap toolchain
B) using the bootstrap toolchain
The LDFLAGS.lld definition would need to be conditional on the
distinction in order to be correct inside each type of context.
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-arm
mailing list