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.
> 
> 

Reply via email to