guix_mirror_bot pushed a commit to branch core-packages-team
in repository guix.

commit cf36dacd40feebe1478af056818a5eb37e8df3bc
Author: Maxim Cournoyer <[email protected]>
AuthorDate: Wed Oct 22 12:34:42 2025 +0900

    gnu: flex: Apply a patch fixing a non-deterministic build failure.
    
    * gnu/packages/patches/flex-fix-make-dependencies.patch: New patch.
    * gnu/local.mk (dist_patch_DATA): Register it.
    * gnu/packages/compiler-tools (flex)[source]: Apply it.
    * gnu/packages/commencement.scm (flex-boot0)[source]: Wrap in
    ‘bootstrap-origin’ to avoid circular dependency.
    
    Change-Id: I7b9994a9239bdafa5c7768b9f954870716c76ad7
    Signed-off-by: Ludovic Courtès <[email protected]>
---
 gnu/local.mk                                       |  1 +
 gnu/packages/commencement.scm                      |  1 +
 gnu/packages/compiler-tools.scm                    |  3 +-
 .../patches/flex-fix-make-dependencies.patch       | 54 ++++++++++++++++++++++
 4 files changed, 58 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index d060447314b..b2ab108f253 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1342,6 +1342,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/flann-pc-file.patch                      \
   %D%/packages/patches/flatpak-fix-icon-validation.patch       \
   %D%/packages/patches/flatpak-unset-gdk-pixbuf-for-sandbox.patch      \
+  %D%/packages/patches/flex-fix-make-dependencies.patch         \
   %D%/packages/patches/fluxbox-1.3.7-no-dynamic-cursor.patch   \
   %D%/packages/patches/fluxbox-1.3.7-gcc.patch                 \
   %D%/packages/patches/fmt-9-overspecified-tests.patch \
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index b017824a871..6f8e9c9b24b 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2666,6 +2666,7 @@ exec " gcc-bin "/" program
   ;; This Flex is needed to build MiG as well as Linux-Libre headers.
   (package
     (inherit flex)
+    (source (bootstrap-origin (package-source flex)))
     (native-inputs (list bison-boot0))
     (propagated-inputs (list m4-boot0))
     (inputs (%boot0-inputs))
diff --git a/gnu/packages/compiler-tools.scm b/gnu/packages/compiler-tools.scm
index 7e3b1103f77..2384ba3c0a7 100644
--- a/gnu/packages/compiler-tools.scm
+++ b/gnu/packages/compiler-tools.scm
@@ -129,7 +129,8 @@ prefixes of other terminals.")
              "flex-" version ".tar.gz"))
        (sha256
         (base32
-         "15g9bv236nzi665p9ggqjlfn4dwck5835vf0bbw2cz7h5c1swyp8"))))
+         "15g9bv236nzi665p9ggqjlfn4dwck5835vf0bbw2cz7h5c1swyp8"))
+       (patches (search-patches "flex-fix-make-dependencies.patch"))))
     (build-system gnu-build-system)
     (arguments
      (if (%current-target-system)
diff --git a/gnu/packages/patches/flex-fix-make-dependencies.patch 
b/gnu/packages/patches/flex-fix-make-dependencies.patch
new file mode 100644
index 00000000000..dbe9392a269
--- /dev/null
+++ b/gnu/packages/patches/flex-fix-make-dependencies.patch
@@ -0,0 +1,54 @@
+Retrieved from Poky:
+https://git.enea.com/cgit/linux/poky.git/plain/meta/recipes-devtools/flex/flex/0001-build-tests-add-missing-parser-scanner-dependencies.patch?id=bf94ea1cc4e966fa2cf55206389f9c34fbd5419d
+
+From 47e3916842ffefd7def84ae85758fdcceeb77839 Mon Sep 17 00:00:00 2001
+From: Ross Burton <[email protected]>
+Date: Thu, 20 Mar 2025 12:16:50 +0000
+Subject: [PATCH] build(tests): add missing parser->scanner dependencies
+
+With sufficient parallelism and `make --shuffle` to reorder builds the
+test suite occasionally fails to build with errors like this:
+
+ tests/bison_yylval_parser.y:36:10: fatal error: bison_yylval_scanner.h: No 
such file or directory
+    36 | #include "bison_yylval_scanner.h"
+
+Solve this by adding the missing dependencies to the *_parser.o targets
+on the _scanner.h files.
+
+Upstream-Status: Submitted [https://github.com/westes/flex/pull/702]
+Signed-off-by: Ross Burton <[email protected]>
+---
+ tests/Makefile.am | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 2cb51df..d0c199d 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -343,6 +343,7 @@ FLEX = $(top_builddir)/src/flex
+ 
+ bison_nr_main.$(OBJEXT): bison_nr_parser.h bison_nr_scanner.h
+ bison_nr_scanner.$(OBJEXT): bison_nr_parser.h
++bison_nr_parser.$(OBJEXT): bison_nr_scanner.h
+ 
+ bison_nr_scanner.h: bison_nr_scanner.c
+       @if test ! -f $@; then rm -f $<; else :; fi
+@@ -350,6 +351,7 @@ bison_nr_scanner.h: bison_nr_scanner.c
+ 
+ bison_yylloc_main.$(OBJEXT): bison_yylloc_parser.h bison_yylloc_scanner.h
+ bison_yylloc_scanner.$(OBJEXT): bison_yylloc_parser.h
++bison_yylloc_parser.$(OBJEXT): bison_yylloc_scanner.h
+ 
+ bison_yylloc_scanner.h: bison_yylloc_scanner.c
+       @if test ! -f $@; then rm -f $<; else :; fi
+@@ -357,6 +359,7 @@ bison_yylloc_scanner.h: bison_yylloc_scanner.c
+ 
+ bison_yylval_main.$(OBJEXT): bison_yylval_parser.h bison_yylval_scanner.h
+ bison_yylval_scanner.$(OBJEXT): bison_yylval_parser.h
++bison_yylval_parser.$(OBJEXT): bison_yylval_scanner.h
+ 
+ bison_yylval_scanner.h: bison_yylval_scanner.c
+       @if test ! -f $@; then rm -f $<; else :; fi
+-- 
+2.43.0
+

Reply via email to