summaryrefslogtreecommitdiffstats
path: root/bitbake-dev/lib/bb/utils.py
diff options
context:
space:
mode:
authorRobert Bradford <rob@openedhand.com>2008-10-17 09:46:23 +0000
committerRobert Bradford <rob@openedhand.com>2008-10-17 09:46:23 +0000
commit9294b951744b5fc64dea7f10760bee0b1d8cd6f0 (patch)
treef28c47805f0fb89a5376645edaa9dead71379568 /bitbake-dev/lib/bb/utils.py
parent603ae240ffb8833bf47dfbcc4e5be808714adf15 (diff)
downloadpoky-9294b951744b5fc64dea7f10760bee0b1d8cd6f0.tar.gz
bitbake-dev: Refactor the environment variable handling.
Do not clear the environment when saving the environment to the data store. Instead clear this once the cooker has forked. This ensures that the UI operates in a filtered (but not empty) environment. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5526 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'bitbake-dev/lib/bb/utils.py')
-rw-r--r--bitbake-dev/lib/bb/utils.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/bitbake-dev/lib/bb/utils.py b/bitbake-dev/lib/bb/utils.py
index 119f08582d..94bc62f7cf 100644
--- a/bitbake-dev/lib/bb/utils.py
+++ b/bitbake-dev/lib/bb/utils.py
@@ -354,6 +354,28 @@ def filter_environment(good_vars):
354 354
355 return removed_vars 355 return removed_vars
356 356
357def clean_environment():
358 """
359 Clean up any spurious environment variables. This will remove any
360 variables the user hasn't chose to preserve.
361 """
362 if 'BB_PRESERVE_ENV' not in os.environ:
363 if 'BB_ENV_WHITELIST' in os.environ:
364 good_vars = os.environ['BB_ENV_WHITELIST'].split()
365 else:
366 good_vars = preserved_envvars_list()
367 if 'BB_ENV_EXTRAWHITE' in os.environ:
368 good_vars.extend(os.environ['BB_ENV_EXTRAWHITE'].split())
369 filter_environment(good_vars)
370
371def empty_environment():
372 """
373 Remove all variable from the environment.
374 """
375 for s in os.environ.keys():
376 os.unsetenv(s)
377 del os.environ[s]
378
357def prunedir(topdir): 379def prunedir(topdir):
358 # Delete everything reachable from the directory named in 'topdir'. 380 # Delete everything reachable from the directory named in 'topdir'.
359 # CAUTION: This is dangerous! 381 # CAUTION: This is dangerous!