xtables-addons: build: fix configure compatiblity with POSIX shells
Fixes build with /bin/sh pointing to certain versions of dash (for example on Void Linux). Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> SVN-Revision: 49218
This commit is contained in:
parent
5099a0d386
commit
79c67071c6
2 changed files with 57 additions and 6 deletions
|
@ -0,0 +1,51 @@
|
|||
From f07a0a5cb8b3c5e1aee8b30c7fa21ccfbf24a95a Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <f07a0a5cb8b3c5e1aee8b30c7fa21ccfbf24a95a.1459880505.git.mschiffer@universe-factory.net>
|
||||
From: Matthias Schiffer <mschiffer@universe-factory.net>
|
||||
Date: Fri, 1 Apr 2016 22:24:00 +0200
|
||||
Subject: [PATCH] build: fix configure compatiblity with POSIX shells
|
||||
|
||||
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..5a5ea57 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;
|
||||
+ IFS=$save_IFS;
|
||||
+ kmajor="$(($2+0))";
|
||||
+ kminor="$(($3+0))";
|
||||
+ kmicro="$(($4+0))";
|
||||
+ kstable="$(($5+0))";
|
||||
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
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -44,7 +44,7 @@ regular_CFLAGS="-Wall -Waggregate-return
|
||||
@@ -44,7 +44,7 @@ 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)";
|
||||
+ krel="$(make -sC "$kbuilddir" M=$PWD kernelversion)";
|
||||
kmajor="${krel%%[[^0-9]]*}";
|
||||
kmajor="$(($kmajor+0))";
|
||||
krel="${krel:${#kmajor}}";
|
||||
- krel="$(make -sC "$kbuilddir" M=$PWD kernelrelease | $AWK -v 'FS=[[^0-9.]]' '{print $1; exit}')";
|
||||
+ krel="$(make -sC "$kbuilddir" M=$PWD kernelversion | $AWK -v 'FS=[[^0-9.]]' '{print $1; exit}')";
|
||||
save_IFS=$IFS;
|
||||
IFS='.';
|
||||
set x $krel;
|
||||
|
|
Loading…
Reference in a new issue