瀏覽代碼

poke: Fix the reproducibility of installed scripts

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>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Yoann Congal 2 月之前
父節點
當前提交
39250b71d9
共有 1 個文件被更改,包括 3 次插入0 次删除
  1. 3 0
      meta-oe/recipes-devtools/poke/poke_4.2.bb

+ 3 - 0
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"