Date: Sat, 31 Jul 2021 13:31:41 -0600 From: Warner Losh <imp@bsdimp.com> To: Kristof Provost <kp@freebsd.org> Cc: Warner Losh <imp@freebsd.org>, src-committers <src-committers@freebsd.org>, "<dev-commits-src-all@freebsd.org>" <dev-commits-src-all@freebsd.org>, dev-commits-src-branches@freebsd.org Subject: Re: git: 6edf5082bab7 - stable/12 - one-true-awk: import 20210221 (1e4bc42c53a1) which fixes a number of bugs Message-ID: <CANCZdfqcfT_WAe6Fkn90FpLS=SPeGJAN1BTq5AimuE1xUmH8FQ@mail.gmail.com> In-Reply-To: <EE93BC95-21AD-44A8-A664-574B041859D0@FreeBSD.org> References: <202107101712.16AHCwoE088447@gitrepo.freebsd.org> <4AD3AB8C-A960-43BE-A89B-5D9C4CD077DD@FreeBSD.org> <CANCZdfp96v_oinwe75-LVsn3Y0Y%2Bn5Q=BSLWHwfk5xJ4KW%2BekQ@mail.gmail.com> <CANCZdfpB99o%2BhmTn5qK6pqiJN46oPuN36WPNZ5m_qWdz9h37xg@mail.gmail.com> <8300183E-DD11-4C2F-AE5A-0B6FDE6E9E8F@FreeBSD.org> <CANCZdfpr0f0J=EkZqKFvkXX=h8eXLPOZwtOAUjV-WOsQZMt9NQ@mail.gmail.com> <CANCZdfpAjejG1BEVRp4e_PNxqHTRU6oBWbqRBbMkx3Un6bRrpA@mail.gmail.com> <EE93BC95-21AD-44A8-A664-574B041859D0@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000060b43f05c87063d3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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@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@bsdimp.com> wrote: > > > >> > >> > >> On Sat, Jul 31, 2021 at 9:37 AM Kristof Provost <kp@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@bsdimp.com> wrote: > >>>> > >>>>> > >>>>> > >>>>> On Sat, Jul 31, 2021 at 3:11 AM Kristof Provost <kp@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=3D6edf5082bab71cf923efff9f18e38ef= e5b83b0ec > >>>>>> > >>>>>> commit 6edf5082bab71cf923efff9f18e38efe5b83b0ec > >>>>>> Author: Warner Losh <imp@FreeBSD.org> > >>>>>> AuthorDate: 2021-07-07 23:30:35 +0000 > >>>>>> Commit: Warner Losh <imp@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@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=E2=80=99m not 100% su= re. > >>>>>> > >>>>>> Anyway, I=E2=80=99ve recently started seeing issues building pfSen= se > >>>>>> for > >>>>>> aarch64. > >>>>>> I=E2=80=99ve 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=E2=80=99d like. > >>>>>> > >>>>>> This only happens when building with META_MODE though. I do not > >>>>>> understand the build system sufficiently to debug why. Hopefully > >>>>>> you=E2=80=99ll > >>>>>> 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=E2=80=99t 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=E2=80=99ve posted my build log and the proctab.c.meta and maketab.m= eta > >>> files > >>> on https://people.freebsd.org/~kp/meta/ > >>> > >>> I=E2=80=99m a little confused by maketab.meta, because what=E2=80=99s= in the > >>> meta > >>> file doesn=E2=80=99t 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=E2=80=99t appear to have worked. > > I=E2=80=99ve uploaded the log of this build run (after I=E2=80=99d delete= d > everything in /usr/obj) here: > https://people.freebsd.org/~kp/meta/metamode_1dfb6e5d1f462af.log > > Best regards, > Kristof > --00000000000060b43f05c87063d3 Content-Type: application/octet-stream; name="awk-fix.diff" Content-Disposition: attachment; filename="awk-fix.diff" Content-Transfer-Encoding: base64 Content-ID: <f_krs65uar0> X-Attachment-Id: f_krs65uar0 L2hvbWUvaW1wL2dpdC9zdGFibGUtMTIK --00000000000060b43f05c87063d3--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfqcfT_WAe6Fkn90FpLS=SPeGJAN1BTq5AimuE1xUmH8FQ>