iproute2: de-bash its scripts to remove the bash dependency

If we build a minimal image with iproute2 installed, the following
error will appear during rootfs.

error: Can't install iproute2-3.10.0-r0.0@i586: no package provides /bin/bash

The problem is that iproute2 has an implicit dependency on 'bash'.
This dependency is from per-file dependency checking.

Patch two scripts, ifcfg and rtpr, from iproute2 to remove the bash
specific syntax.

[YOCTO #5415]

(From OE-Core master rev: 1132c4210eddd59b22b2640935ab0bb8f48c0124)

(From OE-Core rev: ca55e7321f0c52fbe13d301d0dfe3adff5435639)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Chen Qi 2014-03-07 01:39:27 -05:00 committed by Richard Purdie
parent 6c9133d887
commit 8d326e6728
2 changed files with 65 additions and 0 deletions

View File

@ -0,0 +1,64 @@
Subject: [PATCH] iproute2: de-bash scripts
de-bash these two scripts to make iproute2 not depend on bash.
Upstream-Status: Pending
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
ip/ifcfg | 15 ++++++++-------
ip/rtpr | 2 +-
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/ip/ifcfg b/ip/ifcfg
index 083d9df..60bcf1f 100644
--- a/ip/ifcfg
+++ b/ip/ifcfg
@@ -1,12 +1,13 @@
-#! /bin/bash
+#! /bin/sh
CheckForwarding () {
- local sbase fwd
+ local sbase fwd forwarding
sbase=/proc/sys/net/ipv4/conf
fwd=0
if [ -d $sbase ]; then
for dir in $sbase/*/forwarding; do
- fwd=$[$fwd + `cat $dir`]
+ forwarding=`cat $dir`
+ fwd=$(($fwd+$forwarding))
done
else
fwd=2
@@ -127,12 +128,12 @@ fi
arping -q -A -c 1 -I $dev $ipaddr
noarp=$?
( sleep 2 ;
- arping -q -U -c 1 -I $dev $ipaddr ) >& /dev/null </dev/null &
+ arping -q -U -c 1 -I $dev $ipaddr ) > /dev/null 2>&1 </dev/null &
-ip route add unreachable 224.0.0.0/24 >& /dev/null
-ip route add unreachable 255.255.255.255 >& /dev/null
+ip route add unreachable 224.0.0.0/24 > /dev/null 2>&1
+ip route add unreachable 255.255.255.255 > /dev/null 2>&1
if [ `ip link ls $dev | grep -c MULTICAST` -ge 1 ]; then
- ip route add 224.0.0.0/4 dev $dev scope global >& /dev/null
+ ip route add 224.0.0.0/4 dev $dev scope global > /dev/null 2>&1
fi
if [ $fwd -eq 0 ]; then
diff --git a/ip/rtpr b/ip/rtpr
index c3629fd..674198d 100644
--- a/ip/rtpr
+++ b/ip/rtpr
@@ -1,4 +1,4 @@
-#! /bin/bash
+#! /bin/sh
exec tr "[\\\\]" "[
]"
--
1.7.9.5

View File

@ -2,6 +2,7 @@ require iproute2.inc
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BPN}-${PV}.tar.xz \
file://configure-cross.patch \
file://0001-iproute2-de-bash-scripts.patch \
"
SRC_URI[md5sum] = "45fb5427fc723a0001c72b92c931ba02"