Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 Feb 2021 20:30:27 -0800
From:      Cy Schubert <Cy.Schubert@cschubert.com>
To:        "Hartmann, O." <ohartmann@walstatt.org>
Cc:        Cy Schubert <Cy.Schubert@cschubert.com>, Mark Johnston <markj@FreeBSD.org>, src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   Re: git: 8ba333e02eaa - main - libdtrace: Stop relying on lex  compatibility
Message-ID:  <202102180430.11I4URfn029789@slippy.cwsent.com>
In-Reply-To: <20210218051755.42e541ae@hermann.fritz.box>
References:  <202102171602.11HG2FVf099522@gitrepo.freebsd.org>  <20210217214505.0d4b544e@hermann.fritz.box> <202102172059.11HKxkCj012745@slippy.cwsent.com> <20210218051755.42e541ae@hermann.fritz.box>

next in thread | previous in thread | raw e-mail | index | archive | help
In message <20210218051755.42e541ae@hermann.fritz.box>, "Hartmann, O." 
writes:
> --Sig_/X1LkchSIHpgyL/AopZmz9/Y
> Content-Type: text/plain; charset=US-ASCII
> Content-Transfer-Encoding: quoted-printable
>
> On Wed, 17 Feb 2021 12:59:46 -0800
> Cy Schubert <Cy.Schubert@cschubert.com> wrote:
>
> > In message <20210217214505.0d4b544e@hermann.fritz.box>, "Hartmann, O."=20
> > writes:
> > > --Sig_/xVHYogKjgyXovADc1VoD_Ap
> > > Content-Type: text/plain; charset=3DUS-ASCII
> > > Content-Transfer-Encoding: quoted-printable
> > >
> > > On Wed, 17 Feb 2021 16:02:15 GMT
> > > Mark Johnston <markj@FreeBSD.org> wrote:
> > > =20
> > > > The branch main has been updated by markj:
> > > >=3D20
> > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3D3D8ba333e02eaa59337a4e=
> 1d5534=3D =20
> > > d4e894344c8226 =20
> > > >=3D20
> > > > commit 8ba333e02eaa59337a4e1d5534d4e894344c8226
> > > > Author:     Mark Johnston <markj@FreeBSD.org>
> > > > AuthorDate: 2021-02-17 15:49:38 +0000
> > > > Commit:     Mark Johnston <markj@FreeBSD.org>
> > > > CommitDate: 2021-02-17 15:57:19 +0000
> > > >=3D20
> > > >     libdtrace: Stop relying on lex compatibility
> > > >    =3D20
> > > >     It does not appear to be required, and as of commit 6b7e592c215f
> > > >     ("lex: Do not let input() return 0 when end-of-file is reached") =
> it
> > > >     causes input to return 0 instead of EOF when end-of-input is reac=
> hed.
> > > >    =3D20
> > > >     PR:             253440
> > > >     MFC after:      3 days
> > > >     Sponsored by:   The FreeBSD Foundation
> > > > ---
> > > >  cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h | 2 +-
> > > >  cddl/lib/libdtrace/Makefile                             | 2 --
> > > >  2 files changed, 1 insertion(+), 3 deletions(-)
> > > >=3D20
> > > > diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h
> > > > b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h index
> > > > f2c60a2b07d4..b3f69bb6329d 100644 ---
> > > > a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h +++
> > > > b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h @@ -717,7 +=
> 717,=3D =20
> > > 7 @@ extern =20
> > > > dt_pcb_t *yypcb;		/* pointer to current parser control bl
> ock */ e =20
> > > xtern =20
> > > > char yyintprefix;	/* int token prefix for macros (+/-) */ extern 
> char
> > > > yyintsuffix[4];	/* int token suffix ([uUlL]*) */ extern int yyintdeci=
> ma =20
> > > l; =20
> > > > /* int token is decimal (1) or octal/hex (0) */ -extern char yytext[];
> > > > /* lex input buffer */ +extern char *yytext;		/* lex input bu
>  =20
> > > ffer */ =20
> > > >  extern int yylineno;		/* lex line number */
> > > >  extern int yydebug;		/* lex debugging */
> > > >  extern dt_node_t *yypragma;	/* lex token list for control lines */
> > > > diff --git a/cddl/lib/libdtrace/Makefile b/cddl/lib/libdtrace/Makefile
> > > > index efd73751e2c0..45ca1692cf48 100644
> > > > --- a/cddl/lib/libdtrace/Makefile
> > > > +++ b/cddl/lib/libdtrace/Makefile
> > > > @@ -129,8 +129,6 @@ SRCS+=3D3D		dis_tables.c
> > > >  DSRCS+=3D3D		regs_x86.d
> > > >  .endif
> > > > =3D20
> > > > -LFLAGS+=3D3D-l
> > > > -
> > > >  YFLAGS+=3D3D-d
> > > > =3D20
> > > >  LIBADD=3D3D	ctf elf proc pthread rtld_db
> > > > _______________________________________________
> > > > dev-commits-src-main@freebsd.org mailing list
> > > > https://lists.freebsd.org/mailman/listinfo/dev-commits-src-main
> > > > To unsubscribe, send any mail to "dev-commits-src-main-unsubscribe@fr=
> eebs=3D =20
> > > d.org"
> > >
> > > This commit breaks buildworld (also breask starting from scratch/clean =
> /usr=3D
> > > /obj):
> > >
> > > [...]
> > > -MD  -MF.depend.arc_os.pico -MTarc_os.pico -std=3D3Diso9899:1999 -Wno-f=
> ormat-=3D
> > > zero-length
> > > -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -Wno-un=
> init=3D
> > > ialized
> > > -Wno-pointer-sign -Wno-unknown-pragmas -Wno-empty-body -Wno-string-plus=
> -int
> > > -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
> > > -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
> > > -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wn=
> o-sw=3D
> > > itch-enum
> > > -Wno-knr-promoted-parameter  -Qunused-arguments    -c
> > > /usr/src/sys/contrib/openzfs/module/os/linux/zfs/arc_os.c -o arc_os.pic=
> o ---
> > > all_subdir_cddl/lib/libdtrace --- --- dt_names.o --- --- dt_lex.o --- I=
> n fi=3D
> > > le included
> > > from /usr/src/cddl/contrib/opensolaris/lib/libdtrace/common/dt_lex.l:38:
> > > /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdt=
> race=3D
> > > /common/dt_impl.h:720:14:
> > > error: redeclaration of 'yytext' with a different type: 'char *' vs 'ch=
> ar [=3D
> > > 8192]' extern
> > > char *yytext;            /* lex input buffer */ ^ dt_lex.c:1075:6: note=
> : pr=3D
> > > evious
> > > definition is here char yytext[YYLMAX]; ^ 1 error generated. *** [dt_le=
> x.o]=3D
> > >  Error code 1
> > >
> > > make[5]: stopped in /usr/src/cddl/lib/libdtrace
> > > --- all_subdir_cddl/lib/libzpool ---
> > > =20
> >=20
> > Restart your build without -DNO_CLEAN.
> >=20
> >=20
>
> I did, that worked for me.
> Tried to avoid, my hardware isn't very fast and take the night to build.
>
> cleanworld salvaged the problem.
>
> Kind regards and thank you very much
>
> O. Hartmann

In situations such as this one can surgically remove the offending file or 
directory in /usr/obj. Since __FreeBSD_version had already been updated, at 
least since my last build, going through the extra effort to save a couple 
of minutes wouldn't have done much. However the directory to remove would 
have been /usr/obj/.../cddl/contrib/openslolaris/libdtrace, or there about.

The other change that forced a complete rebuild was an update to ctype.h, 
again causing an almost complete rebuild. In this case rather than spend 
the time simply rebuild from scratch. Either way you're rebuilding 
everything anyway.


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  https://FreeBSD.org
NTP:           <cy@nwtime.org>    Web:  https://nwtime.org

	The need of the many outweighs the greed of the few.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202102180430.11I4URfn029789>