Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Dec 2019 21:07:30 -0800
From:      Mark Millard <marklmi@yahoo.com>
To:        Cameron Berkenpas <cam@neo-zeon.de>
Cc:        FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: Building for ELFv2
Message-ID:  <520F197C-DE4D-4C1E-8EFE-71ABDC6148CF@yahoo.com>
In-Reply-To: <7c9e00c8-17a1-bc20-7c52-2dc87069fca3@neo-zeon.de>
References:  <7e305085-f848-62e4-858a-dff3acefa842@neo-zeon.de> <FCDEBB26-32F4-47A1-AC0C-CDC90A1CD638@yahoo.com> <7c9e00c8-17a1-bc20-7c52-2dc87069fca3@neo-zeon.de>

next in thread | previous in thread | raw e-mail | index | archive | help


On 2019-Dec-29, at 17:38, Cameron Berkenpas <cam@neo-zeon.de> wrote:

> I'm building on the system I wish to update. The system itself is =
13.0-CURRENT (r356092) and based on gcc 4.2.1. I was going to initially =
try a live update, but I wasn't sure how successful that would be (but =
this is a VM so I'd be able to rollback without difficulty). If that =
didn't work out, I was going to try and create some bootable media and =
install a new instance from that.
>=20
> I have currently allocated 32GB of memory and there appears to be =
about 3G of swap and 32 threads.
>=20
> The physical host is a Talos II (so POWER9) running Linux/KVM/libvirt.
>=20
> Thanks,

One thing that I've noticed is that while
devel/llvm90 has an option to enable ELFv2
as the default abi for powerpc64,
devel/llvm80 does not have such --and may
well not have all the updates required in
order to work well for generating ELFv2
materials for all I know.

Some ports are tied to llvm80 (not tracking
the default if set later). Thus, if such a
port is important to one's context, moving
to an ELFv2 context could be a problem for
now.

(I'm still dealing with building various
ways. I've not yet tried installation or
operation of an ELFv2 context, or an official
system-clang based context for 32-bit
powerpc.)


Older material (because of some earlier
top-posting):

> On 12/28/19 6:39 PM, Mark Millard wrote:
>>=20
>> On 2019-Dec-28, at 15:28, Cameron Berkenpas <cam at neo-zeon.de> =
wrote:
>>=20
>>> Hello,
>>>=20
>>> How can one build FreeBSD 13.0-CURRENT for ELFv2 support?
>>>=20
>>> I've installed xtoolchain-llvm90, and I run:
>>> CROSS_TOOLCHAIN=3Dllvm90 make buildenv
>>>=20
>>> =46rom here buildworld fails pretty early on with:
>>> /usr/src/sys/contrib/libnv/nvpair.c:33:10: fatal error: =
'sys/cdefs.h' file not found
>>>=20
>>> I can add "-I/usr/include" and so on to /etc/src.conf to hack around =
this, it just goes a bit further and finds other headers missing.
>>>=20
>>> As far as I can tell, $SYSROOT =
(/usr/obj/usr/src/powerpc.powerpc64/tmp) isn't being properly setup =
properly which is resulting in missing headers.
>>>=20
>>> I've done some searching and haven't really found anything too =
helpful. But perhaps I just don't know what to look for.
>>>=20
>>> Thanks!
>>>=20
>> You may want to specify what type of context(s) you
>> can try to bootstrap into ELFv2 from. For example:
>> cross-build? self-hosted only? system version starting
>> from on the machine doing the build? gcc 4.2.1 based
>> starting point? single boot media vs. able to have
>> an old context produce separate/new boot media?
>> the amount of RAM and swap/page space? (You may be
>> able to come up with more things to identify that
>> might contribute to how to progress.)
>>=20
>> I'm working towards updating, but I'll likely be
>> cross building and producing new media from a
>> bootable backup of the old media. (Helps avoid
>> potential live-update issues.) So what I end
>> up doing may well not match what you would do.
>=20
>=20


=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?520F197C-DE4D-4C1E-8EFE-71ABDC6148CF>