svn commit: r363658 - stable/12
Don Lewis
truckman at FreeBSD.org
Wed Jul 29 04:36:46 UTC 2020
Author: truckman
Date: Wed Jul 29 04:36:45 2020
New Revision: 363658
URL: https://svnweb.freebsd.org/changeset/base/363658
Log:
Make lex a bootstrap tool when cross-building on recent 13-CURRENT if
binutils/ld is going to be built. The latter is no longer true by default.
The import of flex 2.6.4 into -CURRENT changed the type of yy_n_chars
in the lex skeleton from yy_size_t to int, which breaks the build of
binutils/ld when using the host copy of lex.
ldlex.c:3216:3: error: incompatible pointer types passing 'int *' to parameter
of type 'yy_size_t *' (aka 'unsigned long *')
[-Werror,-Wincompatible-pointer-types]
...YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is a direct commit to stable/12 since binutils/ld has been removed
from -CURRENT, and it would require a different fix there since the
bootstrap tool version of lex would also cause breakage. This is similar
to the stable/11 change in r363653, but in stable/12 we only need to
build lex as a bootstrap tool if binutils/ld is going to be built.
Modified:
stable/12/Makefile.inc1
Modified: stable/12/Makefile.inc1
==============================================================================
--- stable/12/Makefile.inc1 Wed Jul 29 00:34:24 2020 (r363657)
+++ stable/12/Makefile.inc1 Wed Jul 29 04:36:45 2020 (r363658)
@@ -2066,10 +2066,15 @@ _vtfontcvt= usr.bin/vtfontcvt
.if ${BOOTSTRAPPING} < 1000033
_m4= usr.bin/m4
-_lex= usr.bin/lex
${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd
${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4
+.endif
+
+# flex 2.6.4 introduced in 13-CURRRENT r362333 breaks binutils/ld build
+.if ${BOOTSTRAPPING} < 1000033 || \
+ (${BOOTSTRAPPING} > 1300098 && ${MK_LLD_IS_LD} == "no")
+_lex= usr.bin/lex
.endif
# r245440 mtree -N support added
More information about the svn-src-all
mailing list