Re: "make hierarchy" from main tree breaks c++ headers on older branches with unclear errors if "make install world" is interrupted
Date: Thu, 01 Jun 2023 02:42:05 UTC
> On May 31, 2023, at 2:06 AM, Dimitry Andric <dim@FreeBSD.org> wrote: > > On 31 May 2023, at 01:07, Enji Cooper <yaneurabeya@gmail.com <mailto:yaneurabeya@gmail.com>> wrote: … >> That’s a fair point, however, given that this follows the standard installation workflow… >> 1. etcupdate pre-run. >> 2. install kernel >> 3. reboot >> 4. make installworld >> 5. etcupdate post-run >> … this could surprise end-users. In particular, the C++ compiler will be broken between step 1 and step 4. > > How so? The deletion of the old __string file is done as part of installworld, i.e. in step 4, not in any of the earlier steps. The only case where you can have problems is when you start installworld, let it run until it has completed its distrib-cleanup target, and then interrupt it before it can install the new headers. No wait — you’re right. The directories aren’t created until “make installworld” is run so this is a short-lived issue — it impacts folks who run “make hierarchy” out of band, but we’re an extreme exception, not the norm. Thanks for helping me figure this out :). Cheers, -Enji