[OE-core] [PATCH] bitbake.conf: Changed PSEUDO_LOCALSTATEDIR assignment to unconditional.

Scott Garman scott.a.garman at intel.com
Wed Aug 10 00:32:51 UTC 2011


On 08/08/2011 07:04 PM, James Limbouris wrote:
> The pseudo executable sets the PSEUDO_LOCALSTATEDIR environment variable
> to point to a sysroot location. During an initial cache build, in which
> pseudo is not used as it is being built, the PSEUDO_LOCALSTATEDIR is set
> to a per-package location by bitbake.conf, and baked into the cache.
> If the cache is subsequently invalidated, bitbake may run under pseudo,
> and rebuild it with the sysroot location baked into the cache. This
> results in all packages using the same, persistent db, even on package
> rebuild, which leads to permissions errors. Making the assignment
> unconditional corrects this problem.

I can't tell if this change would impact the use of useradd.bbclass, 
which also sets PSEUDO_LOCALSTATEDIR in certain circumstances. Mark, can 
you comment on whether this is a valid concern?

Scott

>
> Signed-off-by: James Limbouris<james at digitalmatter.com.au>
> ---
>   meta/conf/bitbake.conf |    2 +-
>   1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> index 6f0b42c..9a9ab53 100644
> --- a/meta/conf/bitbake.conf
> +++ b/meta/conf/bitbake.conf
> @@ -557,7 +557,7 @@ SRCPV = "${@bb.fetch2.get_srcrev(d)}"
>   SRC_URI = "file://${FILE}"
>
>   # Use pseudo as the fakeroot implementation
> -PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/"
> +PSEUDO_LOCALSTATEDIR = "${WORKDIR}/pseudo/"
>   FAKEROOTENV = "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_PASSWD=${STAGING_DIR_TARGET} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DISABLED=0"
>   FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}"
>   PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native"


-- 
Scott Garman
Embedded Linux Engineer - Yocto Project
Intel Open Source Technology Center




More information about the Openembedded-core mailing list