[oe-commits] Paul Eggleton : classes/terminal: fix pseudo exiting when launching devshell

git at git.openembedded.org git at git.openembedded.org
Fri Aug 16 10:11:59 UTC 2013


Module: openembedded-core.git
Branch: dylan
Commit: 88866d93b1a99a921d390044a8399c3ef24dc977
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=88866d93b1a99a921d390044a8399c3ef24dc977

Author: Paul Eggleton <paul.eggleton at linux.intel.com>
Date:   Wed Aug 14 16:18:33 2013 +0100

classes/terminal: fix pseudo exiting when launching devshell

In dylan, since the entire bitbake process is run under pseudo,
LD_PRELOAD is set when we collect BB_ORIGENV and thus when we construct
the devshell environment from the latter, LD_PRELOAD is included.
However, for a fakeroot task we explicitly run the devshell under pseudo
(e.g. "pseudo /bin/bash"), and if LD_PRELOAD is set to preload
libpseudo.so when pseudo is run, it seems to exit immediately without
error. Since LD_PRELOAD shouldn't be exported anyway, exclude this from
the environment so it doesn't prevent running the shell.

Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>

---

 meta/classes/terminal.bbclass |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/meta/classes/terminal.bbclass b/meta/classes/terminal.bbclass
index ae338e9..96d2d2a 100644
--- a/meta/classes/terminal.bbclass
+++ b/meta/classes/terminal.bbclass
@@ -62,6 +62,10 @@ def oe_terminal(command, title, d):
             envdata.setVar(key, str(value))
             envdata.setVarFlag(key, 'export', 1)
 
+    # LD_PRELOAD of pseudo will cause problems if this is a fakeroot task
+    # and we shouldn't be exporting it anyway
+    envdata.delVar('LD_PRELOAD')
+
     # Replace command with an executable wrapper script
     command = emit_terminal_func(command, envdata, d)
 



More information about the Openembedded-commits mailing list