From: Peter A. Bigot Date: Sat, 15 Nov 2014 04:58:16 +0000 (-0600) Subject: image.bbclass: search both rootfs and native staging for passwd files X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~31976 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8c653bafaa32126c54400bb56b9a94f07cd33197;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git image.bbclass: search both rootfs and native staging for passwd files When pseudo is configured to disallow fallback to the build host /etc/hosts and /etc/group, the selection of ${IMAGE_ROOT} for PSEUDO_PASSWD is insufficient as the necessary files will not be available until base-passwd has been installed and its pkg_postinst script run. Fall back to the ${STAGING_DIR_NATIVE} version of those files until the rootfs versions are available. (The native copies are never modified by the build; the ones in ${STAGING_DIR_TARGET} are updated and may contain settings not consistent with what would be created by post-install useradd/groupadd commands invoked in the image rootfs. Signed-off-by: Peter A. Bigot --- diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index fc08653d2d0..6bbfaf8208c 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -175,7 +175,9 @@ IMAGE_LINGUAS ?= "de-de fr-fr en-gb" LINGUAS_INSTALL ?= "${@" ".join(map(lambda s: "locale-base-%s" % s, d.getVar('IMAGE_LINGUAS', True).split()))}" -PSEUDO_PASSWD = "${IMAGE_ROOTFS}" +# Prefer image, but use the fallback files for lookups if the image ones +# aren't yet available. +PSEUDO_PASSWD = "${IMAGE_ROOTFS}:${STAGING_DIR_NATIVE}" do_rootfs[dirs] = "${TOPDIR}" do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"