Wind River Support Network


LIN8-5855 : and bad host versions of cpio

Created: Feb 16, 2017    Updated: Dec 3, 2018
Resolved Date: Mar 17, 2017
Found In Version:
Fix Version:
Severity: Standard
Applicable for: Wind River Linux 8
Component/s: Build & Config


(This is a minor issue and a local workaround exist.) 

We noticed a problem withour SDK builds, where the kernel source in the SDK ended up with directory permissions that was only readable by the owner.
(They got permission 700). 

It turns out that the problem traced back to the fact that the host where kernel-devsrc was packaged used cpio version 2.9 That version of cpio have a known problem with "copy pass through" mode where the destination directory creation did not honor the umask setting. 
As such the rpm for kernel-devsrc had the too tight permissions on many directories. 

I think it is unfortunate that yocto needs cpio from host, when it carries a cpio recipe anyway. 

I fixed this locally by adding dependency to cpio-native to kernel-devsrc recipe and make sure cpio recipe was buildable as native. 

I suggest that you consider doing this fix as well. Maybe consider somehow get "cpio-native" added as always there for the build environment as cpio seems to be used in more places. 

The cpio recipe change seems to be in upstream yocto already. 

My changes as referense: 
$ cat layers/...../cpio_%.bbappend 
$ cat layers/..../kernel-devsrc.bbappend 
PR .= ".0" 
DEPENDS += "cpio-native" 


Apply attached patches to oe-core and wrlinux layer, to add cpio-native as host tool.

Other Downloads

Live chat