]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commit
sstate.bbclass: sstate_hardcode_path(): fix for multilib rbt/2ssfixes
authorRobert Yang <liezhi.yang@windriver.com>
Thu, 19 Oct 2017 01:37:12 +0000 (09:37 +0800)
committerRobert Yang <liezhi.yang@windriver.com>
Mon, 23 Oct 2017 02:33:30 +0000 (10:33 +0800)
commitbd775e649a6e9942c66d2cd538940b1e9fd7eacc
treeae3cff44871ea4821d978814bc1c87ac4eb33456
parent60ffbe2c916746caa8e35fb29444699886349eb1
sstate.bbclass: sstate_hardcode_path(): fix for multilib

It only substituted staging_target for target recipe which didn't work
for multilib, for example, postinst-useradd-lib32-polkit:

* No multilib:
  PATH=/path/to/tmp-glibc/work/core2-64-wrs-linux/polkit/0.113-r0/recipe-sysroot-native/bin
  It would be substituted to:
  FIXMESTAGINGDIRTARGET-native/bin
  Not the funny "-native/bin", this works well.

* When multilib:
  PATH=/path/to/tmp-glibc/work/core2-32-wrsmllib32-linux/lib32-polkit/0.113-r0/recipe-sysroot-native/bin
  Now staging_target endswith "/lib32-recipe-sysroot", so it can't
  replace '/recipe-sysroot-native', there would be build errors when
  building multilib + rm_work, for example:
  chown: invalid user: ‘polkitd:root’

Substitute staging_host for target recipe can fix the problem, now all
of native, cross and target need substitute staging_host, so we can
simply the code a little.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/classes/sstate.bbclass