All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH xtables-addons] build: fix configure compatiblity with POSIX shells
@ 2016-04-01 20:35 Matthias Schiffer
  2016-04-03 10:11 ` Jan Engelhardt
  0 siblings, 1 reply; 4+ messages in thread
From: Matthias Schiffer @ 2016-04-01 20:35 UTC (permalink / raw)
  To: jengelh; +Cc: netfilter-devel

The kernel version detection code uses some bashisms, which makes the build
fail on Debian systems where /bin/sh links to dash. Replace with POSIX-
conforming commands at the cost of requiring awk.
---
 configure.ac | 24 +++++++++---------------
 1 file changed, 9 insertions(+), 15 deletions(-)

diff --git a/configure.ac b/configure.ac
index 82a1355..735c090 100644
--- a/configure.ac
+++ b/configure.ac
@@ -44,21 +44,15 @@ regular_CFLAGS="-Wall -Waggregate-return -Wmissing-declarations \
 
 if test -n "$kbuilddir"; then
 	AC_MSG_CHECKING([kernel version that we will build against])
-	krel="$(make -sC "$kbuilddir" M=$PWD kernelrelease)";
-	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))";
+	krel="$(make -sC "$kbuilddir" M=$PWD kernelrelease | $AWK -v 'FS=[[^0-9.]]' '{print $1; exit}')";
+	save_IFS=$IFS;
+	IFS='.';
+	set x $krel;
+	kmajor="$(($2+0))";
+	kminor="$(($3+0))";
+	kmicro="$(($4+0))";
+	kstable="$(($5+0))";
+	IFS=$save_IFS;
 	if test -z "$kmajor" -o -z "$kminor" -o -z "$kmicro"; then
 		echo "WARNING: Version detection did not succeed. Continue at own luck.";
 	else
-- 
2.8.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-04-03 16:01 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-01 20:35 [PATCH xtables-addons] build: fix configure compatiblity with POSIX shells Matthias Schiffer
2016-04-03 10:11 ` Jan Engelhardt
2016-04-03 11:57   ` Matthias Schiffer
2016-04-03 16:01     ` Jan Engelhardt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.