summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
Diffstat (limited to 'eclass')
-rw-r--r--eclass/linux-info.eclass9
1 files changed, 4 insertions, 5 deletions
diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass
index 5456d6be02eb..124fb70e78ad 100644
--- a/eclass/linux-info.eclass
+++ b/eclass/linux-info.eclass
@@ -395,7 +395,7 @@ kernel_is() {
linux-info_get_any_version
# Now we can continue
- local operator
+ local operator test value
case ${1#-} in
lt) operator="-lt"; shift;;
@@ -407,10 +407,9 @@ kernel_is() {
esac
[[ $# -gt 3 ]] && die "Error in kernel-2_kernel_is(): too many parameters"
- ver_test \
- "${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}" \
- "${operator}" \
- "${1:-${KV_MAJOR}}.${2:-${KV_MINOR}}.${3:-${KV_PATCH}}"
+ : $(( test = (KV_MAJOR << 16) + (KV_MINOR << 8) + KV_PATCH ))
+ : $(( value = (${1:-${KV_MAJOR}} << 16) + (${2:-${KV_MINOR}} << 8) + ${3:-${KV_PATCH}} ))
+ [ ${test} ${operator} ${value} ]
}
get_localversion() {