mirror of
https://github.com/ARM-software/workload-automation.git
synced 2025-01-18 20:11:20 +00:00
276f146c1e
In later versions of pylint the 'version' attribute has been moved, therefore check both options while attempting to detect the installed version number.
66 lines
1.5 KiB
Bash
Executable File
66 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
DEFAULT_DIRS=(
|
|
wa
|
|
)
|
|
|
|
target=$1
|
|
|
|
compare_versions() {
|
|
if [[ $1 == $2 ]]; then
|
|
return 0
|
|
fi
|
|
|
|
local IFS=.
|
|
local i ver1=($1) ver2=($2)
|
|
|
|
for ((i=${#ver1[@]}; i<${#ver2[@]}; i++)); do
|
|
ver1[i]=0
|
|
done
|
|
|
|
for ((i=0; i<${#ver1[@]}; i++)); do
|
|
if [[ -z ${ver2[i]} ]]; then
|
|
ver2[i]=0
|
|
fi
|
|
if ((10#${ver1[i]} > 10#${ver2[i]})); then
|
|
return 1
|
|
fi
|
|
if ((10#${ver1[i]} < 10#${ver2[i]})); then
|
|
return 2
|
|
fi
|
|
done
|
|
|
|
return 0
|
|
}
|
|
|
|
pylint_version=$(python -c 'from pylint.__pkginfo__ import version; print(version)' 2>/dev/null)
|
|
if [ "x$pylint_version" == "x" ]; then
|
|
pylint_version=$(python3 -c 'from pylint.__pkginfo__ import version; print(version)' 2>/dev/null)
|
|
fi
|
|
if [ "x$pylint_version" == "x" ]; then
|
|
pylint_version=$(python3 -c 'from pylint import version; print(version)' 2>/dev/null)
|
|
fi
|
|
if [ "x$pylint_version" == "x" ]; then
|
|
echo "ERROR: no pylint verison found; is it installed?"
|
|
exit 1
|
|
fi
|
|
|
|
compare_versions $pylint_version "1.9.2"
|
|
result=$?
|
|
if [ "$result" == "2" ]; then
|
|
echo "ERROR: pylint version must be at least 1.9.2; found $pylint_version"
|
|
exit 1
|
|
fi
|
|
|
|
set -e
|
|
THIS_DIR="`dirname \"$0\"`"
|
|
CWD=$PWD
|
|
pushd $THIS_DIR > /dev/null
|
|
if [[ "$target" == "" ]]; then
|
|
for dir in "${DEFAULT_DIRS[@]}"; do
|
|
PYTHONPATH=. pylint --rcfile ../extras/pylintrc --load-plugins pylint_plugins ../$dir
|
|
done
|
|
else
|
|
PYTHONPATH=. pylint --rcfile ../extras/pylintrc --load-plugins pylint_plugins $CWD/$target
|
|
fi
|
|
popd > /dev/null
|