diff options
author | Matthias Schiffer <matthias.schiffer@ew.tq-group.com> | 2019-05-22 11:13:10 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-05-30 12:37:03 +0100 |
commit | 482da97cfc8b926fd5e5f3c9e8e7933741937ad1 (patch) | |
tree | 68efbec751e95edb849c1133743a85ebae2a35b4 /bitbake | |
parent | cc67ce63d5f08eb8d4cf84b09c9b12390666ef9a (diff) | |
download | poky-482da97cfc8b926fd5e5f3c9e8e7933741937ad1.tar.gz |
bitbake: fetch2: runfetchcmd(): unset _PYTHON_SYSCONFIGDATA_NAME
Since warrior, python3native.bbclass sets _PYTHON_SYSCONFIGDATA_NAME;
unfortunately, this also affects Python scripts run as fetch commands like
git-make-shallow, breaking it with a message like
Failed to import the site module
Traceback (most recent call last):
File "/usr/lib/python3.6/site.py", line 570, in <module>
main()
File "/usr/lib/python3.6/site.py", line 556, in main
known_paths = addusersitepackages(known_paths)
File "/usr/lib/python3.6/site.py", line 288, in addusersitepackages
user_site = getusersitepackages()
File "/usr/lib/python3.6/site.py", line 264, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
File "/usr/lib/python3.6/site.py", line 254, in getuserbase
USER_BASE = get_config_var('userbase')
File "/usr/lib/python3.6/sysconfig.py", line 607, in get_config_var
return get_config_vars().get(name)
File "/usr/lib/python3.6/sysconfig.py", line 550, in get_config_vars
_init_posix(_CONFIG_VARS)
File "/usr/lib/python3.6/sysconfig.py", line 421, in _init_posix
_temp = __import__(name, globals(), locals(), ['build_time_vars'], 0)
ModuleNotFoundError: No module named '_sysconfigdata'
on an Ubuntu 18.04 system (and likely others) when building with
BB_GIT_SHALLOW and BB_GENERATE_SHALLOW_TARBALLS.
Unset _PYTHON_SYSCONFIGDATA_NAME in runfetchcmd() to work around this.
(Bitbake rev: d94ccd506d04aff182ab48f501f6f366d5dd14f5)
Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/fetch2/__init__.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 0126e0d7c7..f6b5529bb8 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py | |||
@@ -843,6 +843,11 @@ def runfetchcmd(cmd, d, quiet=False, cleanup=None, log=None, workdir=None): | |||
843 | if val: | 843 | if val: |
844 | cmd = 'export ' + var + '=\"%s\"; %s' % (val, cmd) | 844 | cmd = 'export ' + var + '=\"%s\"; %s' % (val, cmd) |
845 | 845 | ||
846 | # Ensure that a _PYTHON_SYSCONFIGDATA_NAME value set by a recipe | ||
847 | # (for example via python3native.bbclass since warrior) is not set for | ||
848 | # host Python (otherwise tools like git-make-shallow will fail) | ||
849 | cmd = 'unset _PYTHON_SYSCONFIGDATA_NAME; ' + cmd | ||
850 | |||
846 | # Disable pseudo as it may affect ssh, potentially causing it to hang. | 851 | # Disable pseudo as it may affect ssh, potentially causing it to hang. |
847 | cmd = 'export PSEUDO_DISABLED=1; ' + cmd | 852 | cmd = 'export PSEUDO_DISABLED=1; ' + cmd |
848 | 853 | ||