basic version checking

This commit is contained in:
Chris Punches
2024-02-10 09:14:54 -05:00
parent 5ddeaeeacb
commit c0ef3d4bf6
28 changed files with 727 additions and 17 deletions

View File

@@ -14,15 +14,19 @@ function echofail() {
ver_check()
{
if ! type -p $1 &>/dev/null; then
echo "ERROR: Cannot find $1"; return 1;
if ! type -p $2 &>/dev/null; then
echo "ERROR: Cannot find $2 ($1)"
return 1
fi
v=$($1 --version 2>&1 | grep -E -o '[0-9]+\.[0-9\.]+[a-z]*' | head -n1 )
if printf '%s\n' $2 $v | sort --version-sort --check &>/dev/null; then
printf "OK: %-9s %-6s >= $2\n" "$1" "$v"; return 0;
else
printf "ERROR: %-9s is TOO OLD ($2 or later required)\n" "$1";
return 1;
v=$($2 --version 2>&1 | grep -E -o '[0-9]+\.[0-9\.]+[a-z]*' | head -n1)
if printf '%s\n' $3 $v | sort --version-sort --check &>/dev/null; then
printf "OK: %-9s %-6s >= $3\n" "$1" "$v"
return 0
else
printf "ERROR: %-9s is TOO OLD ($3 or later required)\n" "$1"
return 1
fi
}