mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 12:59:02 +02:00
oe-init-buildenv/base: Relax python version checks in favour of HOSTTOOLS manipulation
Several distros are now shipping "python" as python v3 contra to the original python guidelines. This causes users confusion/pain in trying to use our tools. We can just force "python" to "python2" within HOSTTOOLS to avoid this issue and hide the complexity from the user. (From OE-Core rev: b06a6cde5c5503f456f260c773cf126085e18c8d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
fcf55f58ae
commit
8929ffd67c
|
@ -128,6 +128,12 @@ def setup_hosttools_dir(dest, toolsvar, d, fatal=True):
|
||||||
os.symlink(srctool, desttool)
|
os.symlink(srctool, desttool)
|
||||||
else:
|
else:
|
||||||
notfound.append(tool)
|
notfound.append(tool)
|
||||||
|
# Force "python" -> "python2"
|
||||||
|
desttool = os.path.join(dest, "python")
|
||||||
|
if not os.path.exists(desttool):
|
||||||
|
srctool = "python2"
|
||||||
|
os.symlink(srctool, desttool)
|
||||||
|
|
||||||
if notfound and fatal:
|
if notfound and fatal:
|
||||||
bb.fatal("The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:\n %s" % " ".join(notfound))
|
bb.fatal("The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:\n %s" % " ".join(notfound))
|
||||||
|
|
||||||
|
|
|
@ -476,12 +476,13 @@ export PATH
|
||||||
HOSTTOOLS_DIR = "${TMPDIR}/hosttools"
|
HOSTTOOLS_DIR = "${TMPDIR}/hosttools"
|
||||||
|
|
||||||
# Tools needed to run builds with OE-Core
|
# Tools needed to run builds with OE-Core
|
||||||
|
# python is special cased to point at python2
|
||||||
HOSTTOOLS += " \
|
HOSTTOOLS += " \
|
||||||
[ ar as awk basename bash bzip2 cat chgrp chmod chown chrpath cmp comm cp cpio \
|
[ ar as awk basename bash bzip2 cat chgrp chmod chown chrpath cmp comm cp cpio \
|
||||||
cpp cut date dd diff diffstat dirname du echo egrep env expand expr false \
|
cpp cut date dd diff diffstat dirname du echo egrep env expand expr false \
|
||||||
fgrep file find flock g++ gawk gcc getconf getopt git grep gunzip gzip \
|
fgrep file find flock g++ gawk gcc getconf getopt git grep gunzip gzip \
|
||||||
head hostname id install ld ldd ln ls make makeinfo md5sum mkdir mknod \
|
head hostname id install ld ldd ln ls make makeinfo md5sum mkdir mknod \
|
||||||
mktemp mv nm objcopy objdump od patch perl pod2man pr printf pwd python python2 \
|
mktemp mv nm objcopy objdump od patch perl pod2man pr printf pwd python2 \
|
||||||
python2.7 python3 ranlib readelf readlink rm rmdir rpcgen sed sh sha256sum \
|
python2.7 python3 ranlib readelf readlink rm rmdir rpcgen sed sh sha256sum \
|
||||||
sleep sort split stat strings strip tail tar tee test touch tr true uname \
|
sleep sort split stat strings strip tail tar tee test touch tr true uname \
|
||||||
uniq wc wget which xargs \
|
uniq wc wget which xargs \
|
||||||
|
|
|
@ -40,16 +40,7 @@ if [ -z "$OE_SKIP_SDK_CHECK" ] && [ -n "$OECORE_SDK_VERSION" ]; then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Make sure we're not using python v3.x as 'python', we don't support it.
|
py_v27_check=$(python2 -c 'import sys; print sys.version_info >= (2,7,3)')
|
||||||
py_v2_check=$(/usr/bin/env python --version 2>&1 | grep "Python 3")
|
|
||||||
if [ -n "$py_v2_check" ]; then
|
|
||||||
echo >&2 "OpenEmbedded requires 'python' to be python v2 (>= 2.7.3), not python v3."
|
|
||||||
echo >&2 "Please set up python v2 as your default 'python' interpreter."
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
unset py_v2_check
|
|
||||||
|
|
||||||
py_v27_check=$(python -c 'import sys; print sys.version_info >= (2,7,3)')
|
|
||||||
if [ "$py_v27_check" != "True" ]; then
|
if [ "$py_v27_check" != "True" ]; then
|
||||||
echo >&2 "OpenEmbedded requires 'python' to be python v2 (>= 2.7.3), not python v3."
|
echo >&2 "OpenEmbedded requires 'python' to be python v2 (>= 2.7.3), not python v3."
|
||||||
echo >&2 "Please upgrade your python v2."
|
echo >&2 "Please upgrade your python v2."
|
||||||
|
|
Loading…
Reference in New Issue
Block a user