| Submitter | Robert Yang |
|---|---|
| Date | March 16, 2013, 8:07 a.m. |
| Message ID | <f341ad464c4b177654dbf26d77217870a7402f1f.1363405523.git.liezhi.yang@windriver.com> |
| Download | mbox | patch |
| Permalink | /patch/46267/ |
| State | New |
| Headers | show |
Comments
Patch
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py index b2f81c8..d671f56 100644 --- a/bitbake/lib/bb/utils.py +++ b/bitbake/lib/bb/utils.py @@ -496,10 +496,13 @@ def approved_variables(): approved = [] if 'BB_ENV_WHITELIST' in os.environ: approved = os.environ['BB_ENV_WHITELIST'].split() + approved.extend(['BB_ENV_WHITELIST']) else: approved = preserved_envvars() if 'BB_ENV_EXTRAWHITE' in os.environ: approved.extend(os.environ['BB_ENV_EXTRAWHITE'].split()) + if 'BB_ENV_EXTRAWHITE' not in approved: + approved.extend(['BB_ENV_EXTRAWHITE']) return approved def clean_environment():
The BB_ENV_WHITELIST doesn't work well and flushes BB_ENV_EXTRAWHITE, here is an example: $ export BB_ENV_WHITELIST $ export BB_NUMBER_THREADS=10 (or other value) Edit conf/local.conf, change "BB_NUMBER_THREADS =" to "BB_NUMBER_THREADS ?=" $ bitbake -e | grep '^BB_NUMBER_THREADS =' we will notice that BB_NUMBER_THREADS' value doesn't change, though BB_NUMBER_THREADS in both BB_ENV_WHITELIST and BB_ENV_EXTRAWHITE. This is because the "approved" inside the function approved_variables doesn't include BB_ENV_WHITELIST or BB_ENV_EXTRAWHITE when BB_ENV_WHITELIST is set (they are incuded by preserved_envvars()), so the BB_ENV_WHITELIST and BB_ENV_EXTRAWHITE will be removed from the env in the first call from bin/bitbake, and when it is called again by cooker.py, their value will be None, then the vars inside them will be removed from the env. Add BB_ENV_WHITELIST and BB_ENV_EXTRAWHITE to the "approved" would fix the problem. [YOCTO #4031] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> --- bitbake/lib/bb/utils.py | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)