]> git.ipfire.org Git - thirdparty/xtables-addons.git/commitdiff
build: improve kernel version detection again
authorJan Engelhardt <jengelh@medozas.de>
Tue, 23 Nov 2010 20:44:21 +0000 (21:44 +0100)
committerJan Engelhardt <jengelh@medozas.de>
Tue, 23 Nov 2010 20:51:06 +0000 (21:51 +0100)
Apparently people don't just begin the EXTRAVERSION with a dash.
So rewrite it all and throw out /anything/ non-numeric.

configure.ac

index 9ddedadad1e24c1cc07dc2bab1d0f4dc0442fe54..1c2207280044f28fd79054019c64f6235c11abb5 100644 (file)
@@ -50,20 +50,20 @@ if grep -q "CentOS release 5\." /etc/redhat-release 2>/dev/null ||
 fi;
 AC_MSG_CHECKING([kernel version that we will build against])
 krel="$(make -sC ${kbuilddir} kernelrelease)";
-krel="${krel%%-*}";
-kmajor="${krel%%.*}";
-krel="${krel#*.}";
-kminor="${krel%%.*}";
-krel="${krel#*.}";
-kmicro="${krel%%.*}";
-if test "$kmicro" = "$krel"; then
-       kmicro="$(($kmicro+0))"; # Get rid of non numbers ("2.6.36+" -> "2.6.36")
-       kstable=0;
-else
-       kmicro="$(($kmicro+0))";
-       kstable="${krel#*.}";
-       kstable="$(($kstable+0))";
-fi;
+kmajor="${krel%%[[^0-9]]*}";
+kmajor="$(($kmajor+0))";
+krel="${krel:${#kmajor}}";
+krel="${krel#.}";
+kminor="${krel%%[[^0-9]]*}";
+kminor="$(($kminor+0))";
+krel="${krel:${#kminor}}";
+krel="${krel#.}";
+kmicro="${krel%%[[^0-9]]*}";
+kmicro="$(($kmicro+0))";
+krel="${krel:${#kmicro}}";
+krel="${krel#.}";
+kstable="${krel%%[[^0-9]]*}";
+kstable="$(($kstable+0))";
 if test -z "$kmajor" -o -z "$kminor" -o -z "$kmicro"; then
        echo "WARNING: Version detection did not succeed. Continue at own luck.";
 else