On Fri, Jul 03, 2026 at 04:58:59PM +0200, Marc Espie wrote:
> Ping. It's fairly straightforward once you figure it out,
> but I lost half-an-hour looking at cproto before I figured out
> the cache problem.
>
PING ? Can someone try this out or tell me why it's a bad idea ?
> On Thu, Jun 25, 2026 at 12:26:31PM +0200, Marc Espie wrote:
> > I was trying to port cproto (port attached more or less)
> > and couldn't figure out why it broke.
> >
> >
> > Turns out the 3 tests for lex/flex are bogus ! specifically
> > they generate a lex.yy.c and only clean it up if the value
> > is not cached somewhere !
> >
> > This is often not a problem, because normal builds rarely use
> > the generic lex.yy.c
> >
> > Enter cproto...
> >
> >
> > I'd advise removing those cache entries like so:
> >
> > Index: config.site
> > ===================================================================
> > RCS file: /build/data/openbsd/cvs/ports/infrastructure/db/config.site,v
> > diff -u -p -r1.34 config.site
> > --- config.site 30 Jul 2024 14:58:32 -0000 1.34
> > +++ config.site 25 Jun 2026 10:23:15 -0000
> > @@ -23,6 +23,10 @@
> > #ac_cv_func_tigetstr=${ac_cv_func_tigetstr=yes}
> > # gnulib's stdbool.m4 disagrees for gcc2.95
> > #ac_cv_header_stdbool_h=${ac_cv_header_stdbool_h=yes}
> > +# XXX all 3 lex tests are intertwined and don't clean up properly
> > +#ac_cv_prog_LEX=${ac_cv_prog_LEX=flex}
> > +#ac_cv_prog_lex_root=lex.yy
> > +#ac_cv_prog_lex_yytext_pointer=${ac_cv_prog_lex_yytext_pointer=yes}
> > ac_cv_accept_arg=${ac_cv_accept_arg=socklen_t}
> > ac_cv_argtype_accept3=${ac_cv_argtype_accept3=socklen_t *}
> > ac_cv_argtype_poll2=${ac_cv_argtype_poll2=nfds_t}
> > @@ -871,7 +875,6 @@ ac_cv_path_fp_prog_sort=${ac_cv_path_fp_
> > ac_cv_path_passwd_program=${ac_cv_path_passwd_program=/usr/bin/passwd}
> > ac_cv_path_path_su=${ac_cv_path_path_su=/usr/bin/su}
> > ac_cv_prog_AWK=${ac_cv_prog_AWK=awk}
> > -ac_cv_prog_LEX=${ac_cv_prog_LEX=flex}
> > ac_cv_prog_PERL=${ac_cv_prog_PERL=/usr/bin/perl}
> > ac_cv_prog_SED=${ac_cv_prog_SED=/usr/bin/sed}
> > ac_cv_prog_SORT=${ac_cv_prog_SORT=sort}
> > @@ -885,7 +888,6 @@ ac_cv_prog_egrep=${ac_cv_prog_egrep='gre
> > ac_cv_prog_f77_g=${ac_cv_prog_f77_g=yes}
> > ac_cv_prog_gcc=${ac_cv_prog_gcc=yes}
> > ac_cv_prog_have_hp2ps=${ac_cv_prog_have_hp2ps=1}
> > -ac_cv_prog_lex_yytext_pointer=${ac_cv_prog_lex_yytext_pointer=yes}
> > ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes}
> > ac_cv_sizeof_char=${ac_cv_sizeof_char=1}
> > ac_cv_sizeof_long_long=${ac_cv_sizeof_long_long=8}
> >
> >
> > or else, if someone is brave enough to try to fix the autoconf macros
> > upstream, maybe in ten years, we'll have fixed aclocal and fixed autoconfs.
>
>