Re: git: 3fd60a6b73ac - main - awk: Merge upstream 2nd Edition Awk Book

From: Warner Losh <imp_at_bsdimp.com>
Date: Wed, 15 Nov 2023 22:20:06 UTC
On Wed, Nov 15, 2023 at 3:13 PM Jessica Clarke <jrtc27@freebsd.org> wrote:

> On 15 Nov 2023, at 21:59, Warner Losh <imp@bsdimp.com> wrote:
> >
> >
> >
> > On Wed, Nov 15, 2023 at 9:52 AM Jessica Clarke <jrtc27@freebsd.org>
> wrote:
> >> On 14 Nov 2023, at 04:51, Warner Losh <imp@FreeBSD.org> wrote:
> >> >
> >> > The branch main has been updated by imp:
> >> >
> >> > URL:
> https://cgit.FreeBSD.org/src/commit/?id=3fd60a6b73ac01a72df89751f173970fae4cae73
> >> >
> >> > commit 3fd60a6b73ac01a72df89751f173970fae4cae73
> >> > Merge: 194df014feeb 2e406c584fe4
> >> > Author:     Warner Losh <imp@FreeBSD.org>
> >> > AuthorDate: 2023-11-02 16:32:01 +0000
> >> > Commit:     Warner Losh <imp@FreeBSD.org>
> >> > CommitDate: 2023-11-14 04:49:34 +0000
> >> >
> >> >    awk: Merge upstream 2nd Edition Awk Book
> >> >
> >> >    Merge in the November 2nd, 2023 version of one true awk.
> >> >
> >> >    This brings in Unicode support, CSV support and a number of bug
> fixes.
> >> >
> >> >    Sponsored by:           Netflix
> >> >    Reviewed by:            delphij
> >> >    Differential Revision:  https://reviews.freebsd.org/D42447
> >>
> >> This seems to have broken the GitHub CI for cross-building; contrast:
> >>
> >> https://github.com/freebsd/freebsd-src/actions/runs/6859373313
> >>
> >> with:
> >>
> >> https://github.com/freebsd/freebsd-src/actions/runs/6859316228
> >>
> >> Has this broken makeobjops.awk somehow? If so it should be reproducible
> >> on FreeBSD with BOOTSTRAP_ALL_TOOLS=1, or by rebuilding on an updated
> >> system. Cross-building will just show it first because we always
> >> bootstrap awk there, like many other tools.
> >
> > It worked when it was the system awk for me...  But that might not be
> the most
> > helpful observation.
>
> For a clean kernel build?
>
> > Why didn't it work for you/github's ci runs?
>
> From GitHub (indentation sadly lost when copying):
>
> > In file included from
> /Users/runner/work/freebsd-src/freebsd-src/sys/cam/cam.c:45:
> > In file included from
> /Users/runner/work/freebsd-src/freebsd-src/sys/cam/cam_ccb.h:1052:
> > In file included from
> /Users/runner/work/freebsd-src/freebsd-src/sys/cam/mmc/mmc_bus.h:4:
> > In file included from
> /Users/runner/work/freebsd-src/freebsd-src/sys/dev/mmc/bridge.h:57:
> > In file included from
> /Users/runner/work/freebsd-src/freebsd-src/sys/sys/bus.h:787:
> > ./bus_if.h:217:35: error: expected ')'
> > int _unit);
> > ^
> > ./bus_if.h:216:33: note: to match this '('
> > typedef device_t bus_add_child_t(device_t _dev, u_int _order, const char
> *_name
> > ^
> > ./bus_if.h:241:41: error: expected ')'
> > const char *_name, int _unit)
> > ^
> > ./bus_if.h:240:39: note: to match this '('
> > static __inline device_t BUS_ADD_CHILD(device_t _dev, u_int _order
> > ^
> > ...
>
> Hence the assumption that makeobjops.awk has stopped working properly,
> which is highly consistent with this being the first commit to fail in
> CI. It looks like we’re missing commas, maybe from format_line.
>
> I haven’t tried to reproduce it locally, but given it’s across all
> macOS and Ubuntu versions I would be surprised if I couldn’t.
>
> > makeobjops.awk doesn't have any of the issues that I know are minor
> changes
> > in awk. I'll add it to the list of things to look into, though.
>
> On what timeline? If not soon, can we please revert the import as it’s
> breaking important things and thus not ready for the tree?
>

I wanted to try to recreate it, or figure out what in the env is causing it
to go astray. I also want to confirm your diagnosis that this is coming
from this awk and not because we're building it to a weird new name
(so all my testing is with the old awk) and thus falling back to using
the system's awk...

I don't like mysteries.... but if we still have one after spending
an hour or two on it, I'll revert. That puts it at anywhere from an hour
or two from now, or first thing in the morning worst case (eg, something
crazy comes up... though the odds of that are low).  Otherwise I'll
commit a fix.

Warner


> Jess
>
> > I also broke the Jenkins CI run, but not 'make check' for reasons I don't
> > understand.
> >
> > Warner
>
>
>