Index | Thread | Search

From:
Marc Espie <marc.espie.openbsd@gmail.com>
Subject:
a strange thing happened with config.site
To:
ports@openbsd.org
Date:
Thu, 25 Jun 2026 12:26:31 +0200

Download raw body.

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