Re: Source upgrade to stable/11 amd64 broken

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Wed, 11 Aug 2021 18:56:05 UTC
On 11 Aug 2021, at 20:09, Warner Losh <imp@bsdimp.com> wrote:
> 
> On Wed, Aug 11, 2021, 12:01 PM Paul Mather <paul@gromit.dlib.vt.edu> wrote:
>> On Aug 11, 2021, at 1:44 PM, Dimitry Andric <dim@FreeBSD.org> wrote:
>>> On 11 Aug 2021, at 05:13, Eugene Grosbein <eugen@grosbein.net> wrote:
>>>> 
>>>> I'm in process of upgrading very old remote FreeBSD server running
>> 9.3-STABLE/amd64.
...
>>> The best way forward is to attempt to buildworld (and buildkernel) with
>>> a clean stable/11 checkout at r360783, which is just before clang 10.0.0
>>> got imported. You will also need to add:
>>> 
>>> CXXFLAGS.clang=-Wno-out-of-line-declaration
>>> 
>>> to your src.conf, otherwise it will get an unexpected error during the
>>> build.
>>> 
>>> After this has completed, install world and kernel and reboot, and then
>>> you should have clang 9.0.0 and the corresponding libc++. This should
>>> allow you to do a regular update to the latest stable/11.
>>> 
>>> From there you should upgrade to stable/12, as 11 is going EOL in about
>>> a month... :)
>> 
>> 
>> As the OP is currently at 10-STABLE, would it also not work to upgrade
>> from there to 11.0-RELEASE (releng/11.0) and then from there to do the
>> recommended upgrade path to whatever is the desired endpoint?  It might
>> require more work, but it would be a known supported upgrade path.  Just
>> wondering...
>> 
> 
> In theory, going from the tip of stable/10 to releng/11.0  should work as
> lots of people did that back when 11.0 was new... from there you can follow
> dim's instructions to get to the tip of stable/11 and from there to 12.2 or
> stable/12. I have not tried that lately as I've retired even my old 10.x
> testing jails some tie ago.

There are multiple ways to do this, as usual. I have verified that on a
default installation of 10.4-RELEASE, I can follow the scenario that I
wrote up, and it successfully upgrades to stable/11 r360783, with clang
9.0.0.

That can certainly be used to go to the tip of stable/11, but I think it
is also possible to upgrade right to stable/12 from there.

-Dimitry