From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: openembedded-core <openembedded-core@lists.openembedded.org>
Subject: [PATCH] bitbake.conf/sstate.bbclass: Change PATH when installing sstate files to avoid issues
Date: Wed, 21 Mar 2012 10:44:43 +0000 [thread overview]
Message-ID: <1332326683.9740.136.camel@ted> (raw)
This resolves issues related to pigz-native when installing from sstate that people
have been seeing. It also gives us a way to solve issues like the gzip-native race
during sstate package creation covered in Yocto #1774.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 0d16d11..1570654 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -153,6 +153,12 @@ def sstate_installpkg(ss, d):
bb.mkdirhier(dir)
oe.path.remove(dir)
+ # We're adding binaries into the sysroots, we don't want to execute them
+ # whilst they're half installed or being installed so we need to
+ # remove the sysroots from PATH
+ savedpath = d.getVar("PATH")
+ d.setVar("PATH", "${ORIGPATH}")
+
sstateinst = d.expand("${WORKDIR}/sstate-install-%s/" % ss['name'])
sstatepkg = d.getVar('SSTATE_PKG', True) + '_' + ss['name'] + ".tgz"
@@ -190,6 +196,8 @@ def sstate_installpkg(ss, d):
# conflict with another writer
os.remove(fixmefn)
+ d.setVar("PATH", savedpath)
+
for state in ss['dirs']:
prepdir(state[1])
os.rename(sstateinst + state[0], state[1])
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index d4357d1..145a9a2 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -401,6 +401,7 @@ EXTRA_IMAGEDEPENDS = ""
# Toolchain info.
##################################################################
+ORIGPATH := "${PATH}"
PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}:${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}/${base_bindir_native}:"
export PATH
next reply other threads:[~2012-03-21 10:53 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-21 10:44 Richard Purdie [this message]
2012-03-21 17:54 ` [PATCH] bitbake.conf/sstate.bbclass: Change PATH when installing sstate files to avoid issues McClintock Matthew-B29882
2012-03-21 21:12 ` Richard Purdie
2012-03-22 3:28 ` McClintock Matthew-B29882
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1332326683.9740.136.camel@ted \
--to=richard.purdie@linuxfoundation.org \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox