git: 6edf5082bab7 - stable/12 - one-true-awk: import 20210221 (1e4bc42c53a1) which fixes a number of bugs

Warner Losh imp at bsdimp.com
Sat Jul 31 19:31:53 UTC 2021


Hmmm, maketab keeps getting rebuilt, which is the issue. It looks
like it has extra depends that don't trip up -current but do trip up
stable/12.

I've enclosed a patch that seems to work for me as well. It looks like
the earlier patch moved the race for me, but maketab was still built twice,
like your logs show (the 2nd time was after proctab.c was built in my logs,
a detail I didn't notice until now).

Please try the attached patch.

Warner

On Sat, Jul 31, 2021 at 1:21 PM Kristof Provost <kp at freebsd.org> wrote:

> On 31 Jul 2021, at 20:08, Warner Losh wrote:
> > On Sat, Jul 31, 2021 at 11:28 AM Warner Losh <imp at bsdimp.com> wrote:
> >
> >>
> >>
> >> On Sat, Jul 31, 2021 at 9:37 AM Kristof Provost <kp at freebsd.org>
> >> wrote:
> >>
> >>> On 31 Jul 2021, at 16:20, Warner Losh wrote:
> >>>> On Sat, Jul 31, 2021 at 8:07 AM Warner Losh <imp at bsdimp.com> wrote:
> >>>>
> >>>>>
> >>>>>
> >>>>> On Sat, Jul 31, 2021 at 3:11 AM Kristof Provost <kp at freebsd.org>
> >>>>> wrote:
> >>>>>
> >>>>>> Hi Warner,
> >>>>>>
> >>>>>> On 10 Jul 2021, at 19:12, Warner Losh wrote:
> >>>>>>
> >>>>>> The branch stable/12 has been updated by imp:
> >>>>>>
> >>>>>> URL:
> >>>>>>
> >>>
> https://cgit.FreeBSD.org/src/commit/?id=6edf5082bab71cf923efff9f18e38efe5b83b0ec
> >>>>>>
> >>>>>> commit 6edf5082bab71cf923efff9f18e38efe5b83b0ec
> >>>>>> Author: Warner Losh <imp at FreeBSD.org>
> >>>>>> AuthorDate: 2021-07-07 23:30:35 +0000
> >>>>>> Commit: Warner Losh <imp at FreeBSD.org>
> >>>>>> CommitDate: 2021-07-10 17:11:15 +0000
> >>>>>>
> >>>>>> one-true-awk: import 20210221 (1e4bc42c53a1) which fixes a number
> >>>>>> of
> >>>>>> bugs
> >>>>>>
> >>>>>> Import the latest bsd-features branch of the one-true-awk
> >>>>>> upstream:
> >>>>>>
> >>>>>> o Move to bison for $YACC
> >>>>>> o Set close-on-exec flag for file and pipe redirects that aren't
> >>>>>> std*
> >>>>>> o lots of little fixes to modernize ocde base
> >>>>>> o free sval member before setting it
> >>>>>> o fix a bug where a{0,3} could match aaaa
> >>>>>> o pull in systime and strftime from NetBSD awk
> >>>>>> o pull in fixes from {Net,Free,Open}BSD (normalized our code with
> >>>>>> them)
> >>>>>> o add BSD extensions and, or, xor, compl, lsheift, rshift (mostly
> >>>>>> a
> >>>>>> nop)
> >>>>>>
> >>>>>> Also revert a few of the trivial FreeBSD changes that were done
> >>>>>> slightly
> >>>>>> differently in the upstreaming process. Also, our PR database may
> >>>>>> have
> >>>>>> been mined by upstream for these fixes, and Mikolaj Golub may
> >>>>>> deserve
> >>>>>> credit for some of the fixes in this update.
> >>>>>>
> >>>>>> Suggested by: Mikolaj Golub <to.my.trociny at gmail.com>
> >>>>>> PR: 143363,143365,143368,143369,143373,143375,214782
> >>>>>> Sponsored by: Netflix
> >>>>>>
> >>>>>> (cherry picked from commit
> >>>>>> f39dd6a9784467f0db5886012b3f4b13899be6b8)
> >>>>>>
> >>>>>> I *think* this is the relevant commit, but I’m not 100% sure.
> >>>>>>
> >>>>>> Anyway, I’ve recently started seeing issues building pfSense
> >>>>>> for
> >>>>>> aarch64.
> >>>>>> I’ve finally narrowed it down, and replicated the problem on
> >>>>>> base
> >>>>>> FreeBSD
> >>>>>> (stable/12, but I assume other branches are affected too).
> >>>>>>
> >>>>>> It fails to build proctab.c. This file is generated by maketab, a
> >>>>>> tool
> >>>>>> built as part of the build process. In my case this tool is built
> >>>>>> for
> >>>>>> aarch64, which makes executing it on amd64 less successful than
> >>>>>> we’d like.
> >>>>>>
> >>>>>> This only happens when building with META_MODE though. I do not
> >>>>>> understand the build system sufficiently to debug why. Hopefully
> >>>>>> you’ll
> >>>>>> have a better idea.
> >>>>>>
> >>>>> Generally I do, but this one is a bit weird. Also, the amount of
> >>>>> context
> >>>>> you've included omits the actual error :( Though I'm guessing it's
> >>>>> wrong
> >>>>> arch for the build tool...
> >>>>>
> >>>>> I rarely use meta mode, and understand it not at all, but awk
> >>>>> follows
> >>>>> the
> >>>>> same patterns as /bin/sh and /bin/csh does
> >>>>>
> >>>>
> >>>> [[ stupid gmail ]]
> >>>>
> >>>> I've just pushed removal of proctab.c. That may fix this, though
> >>>> I'm
> >>>> not
> >>>> hopeful.
> >>> Unfortunately that didn’t help.
> >>>
> >>>> I've rarely used metamode, and not for quite some time, but this
> >>>> an extra file that would confuse things so that maketab might not
> >>>> be
> >>>> built
> >>>> during build-tools and instead is built later. Please give that a
> >>>> try,
> >>>> and
> >>>> I'll start a meta build, but that takes a while, not least because
> >>>> I
> >>>> have
> >>>> to re-leran how to do that :)
> >>>>
> >>> I’ve posted my build log and the proctab.c.meta and maketab.meta
> >>> files
> >>> on https://people.freebsd.org/~kp/meta/
> >>>
> >>> I’m a little confused by maketab.meta, because what’s in the
> >>> meta
> >>> file doesn’t seem to match the build command seen in the
> >>> metamode.log
> >>> file.
> >>>
> >>
> >> Yea. It's getting confused and rebuilding it bogusly. For the mknodes
> >> in
> >> sh, we don't see the naked cc command, but we do for maketab.
> >>
> >> I'm testing a fix right now, though, and we'll see if that fixes
> >> things. I
> >> think I know what's going on.
> >>
> >
> > I just pushed 1dfb6e5d1f462af4f4df818ee93766f09f3aa787, which fixed
> > the
> > issues I was seeing. Does that do the trick for you as well?
> >
> Unfortunately that doesn’t appear to have worked.
>
> I’ve uploaded the log of this build run (after I’d deleted
> everything in /usr/obj) here:
> https://people.freebsd.org/~kp/meta/metamode_1dfb6e5d1f462af.log
>
> Best regards,
> Kristof
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: awk-fix.diff
Type: application/octet-stream
Size: 24 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/dev-commits-src-branches/attachments/20210731/51b30a10/attachment.obj>


More information about the dev-commits-src-branches mailing list