556a0a1104
This reverts commit ca6a2907c2
.
Switching to using 'command -v' instead of 'which', opened a can of
worms that is hard to fix in a timely manner:
- recursive call to 'make' from a post-build, post-iamge script, fails
because of a redefinition of HOSTCC_NOCCACHE (a bug on its own that
needs a separate fix anyway) [0];
- 'make' believeing it can call "simple" commands with execve() et al.
instead of passing them through a shell via system(), and thus
failing to find 'command' in the PATH [1].
[0] https://lore.kernel.org/buildroot/20211001175329.GA1973888@lbrmn-mmayer.ric.broadcom.net/T/#m95c17eb8374e4e3dd6eee700d397aa12cca0739e
[1] https://lore.kernel.org/buildroot/20211001180304.GV1504958@scaer/T/#m3a8f36bd76ec7d8e5038a6c8932bb6ffe23ea268
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
32 lines
756 B
Bash
Executable File
32 lines
756 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# prevent shift error
|
|
[ $# -lt 2 ] && exit 1
|
|
|
|
version_min="$(echo ${1} | awk '{ split($1, v, "."); print v[1] v[2] }')"
|
|
|
|
shift
|
|
|
|
# The host python interpreter is already checked by dependencies.sh but
|
|
# it only check if the version is at least 2.7.
|
|
# We want to check the version number of the python3 interpreter even
|
|
# if Buildroot is able to use any version but some packages may require
|
|
# a more recent version.
|
|
|
|
for candidate in "${@}" ; do
|
|
python3=`which $candidate 2>/dev/null`
|
|
if [ ! -x "$python3" ]; then
|
|
continue
|
|
fi
|
|
version=`$python3 -V 2>&1 | awk '{ split($2, v, "."); print v[1] v[2] }'`
|
|
|
|
if [ $version -lt $version_min ]; then
|
|
# no suitable python3 found
|
|
continue
|
|
fi
|
|
|
|
# suitable python3 found
|
|
echo $python3
|
|
break
|
|
done
|