diff mbox series

[meta-oe,v2] poke: Fix the reproducibility of installed scripts

Message ID 20250324224157.301065-1-yoann.congal@smile.fr
State Accepted
Headers show
Series [meta-oe,v2] poke: Fix the reproducibility of installed scripts | expand

Commit Message

Yoann Congal March 24, 2025, 10:41 p.m. UTC
From: Yoann Congal <yoann.congal@smile.fr>

Upstream does not support our default parallel "make -j install"[0]. So,
disable it with PARALLEL_MAKEINST = "-j1" to avoid non-reproducibility
where some scripts can be installed or not.

Explanation for the non-reproducibility:
There is a race condition between 2 actions at install around the
installed script in $pkgdatadir:
* Removal of existing scripts /usr/share/poke/*.pk
* Installation of default scripts in the same directory

Sadly, those 2 actions are not ordered. Depending on the build system
load, removal can (rarely) happen *after* the installation. In this
case, no script in present in /usr/share/poke/ when the install process
end.

[0]: https://sourceware.org/bugzilla/show_bug.cgi?id=32815#c1

Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
---
 meta-oe/recipes-devtools/poke/poke_4.2.bb | 3 +++
 1 file changed, 3 insertions(+)
diff mbox series

Patch

diff --git a/meta-oe/recipes-devtools/poke/poke_4.2.bb b/meta-oe/recipes-devtools/poke/poke_4.2.bb
index a31b6605a2..0ae392947e 100644
--- a/meta-oe/recipes-devtools/poke/poke_4.2.bb
+++ b/meta-oe/recipes-devtools/poke/poke_4.2.bb
@@ -24,5 +24,8 @@  PACKAGECONFIG[mi] = "--enable-mi,--disable-mi,json-c"
 
 PACKAGES =+ "${PN}-emacs ${PN}-vim"
 
+# Disable parallel install as it is not supported upstream
+PARALLEL_MAKEINST = "-j1"
+
 FILES:${PN}-emacs += "${datadir}/emacs/site-lisp"
 FILES:${PN}-vim += "${datadir}/vim/vimfiles"