[oe-commits] Richard Purdie : terminal.bbclass: Use BB_ORIGENV to restore user environmental variables

git at git.openembedded.org git at git.openembedded.org
Thu Feb 7 23:39:12 UTC 2013


Module: openembedded-core.git
Branch: master-next
Commit: 131643695d7ba9d0c32bf8e192e7e3942f50f318
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=131643695d7ba9d0c32bf8e192e7e3942f50f318

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Tue Feb  5 16:01:20 2013 +0000

terminal.bbclass: Use BB_ORIGENV to restore user environmental variables

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

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

diff --git a/meta/classes/terminal.bbclass b/meta/classes/terminal.bbclass
index cec854d..d5a6277 100644
--- a/meta/classes/terminal.bbclass
+++ b/meta/classes/terminal.bbclass
@@ -4,7 +4,7 @@ OE_TERMINAL[choices] = 'auto none \
                         ${@" ".join(o.name \
                                     for o in oe.terminal.prioritized())}'
 
-OE_TERMINAL_EXPORTS += 'XAUTHORITY SHELL DBUS_SESSION_BUS_ADDRESS DISPLAY EXTRA_OEMAKE SCREENDIR'
+OE_TERMINAL_EXPORTS += 'EXTRA_OEMAKE'
 OE_TERMINAL_EXPORTS[type] = 'list'
 
 XAUTHORITY ?= "${HOME}/.Xauthority"
@@ -26,6 +26,17 @@ def oe_terminal(command, title, d):
             os.environ[export] = str(value)
             env[export] = str(value)
 
+    # Add in all variables from the user's original environment which
+    # haven't subsequntly been set/changed
+    origbbenv = d.getVar("BB_ORIGENV", False) or {}
+    for key in origbbenv:
+        if key in env:
+            continue
+        value = origbbenv.getVar(key, True)
+        if value is not None:
+            os.environ[key] = str(value)
+            env[key] = str(value)
+
     terminal = oe.data.typed_value('OE_TERMINAL', d).lower()
     if terminal == 'none':
         bb.fatal('Devshell usage disabled with OE_TERMINAL')





More information about the Openembedded-commits mailing list