Okay on that.

Mike.

On 09/14/2014 06:13 AM, Robert Yang wrote:

Hi Mike,

I've updated the patch in the repo:

git://git.openembedded.org/meta-openembedded-contrib rbt/rdeps

And used a patch rather than sed command since patch is preferred, here
is the patch with your signed off:

diff --git
a/meta-networking/recipes-daemons/autofs/autofs-5.1.0/remove-bashism.patch
b/meta-networking/recipes-daemons/autofs/autofs-5.1.0/remove-bashism.patch
new file mode 100644
index 0000000..282d6f0
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.1.0/remove-bashism.patch
@@ -0,0 +1,120 @@
+From 79034f969bbd12215d65b4337dfd38a13d02d4ef Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.y...@windriver.com>
+Date: Sat, 13 Sep 2014 20:19:28 -0700
+Subject: [PATCH] autofs.init.in: remove bashism
+
+It can work without the bashism.
+
+Upstream-Status: Pending
+
+Signed-off-by: Mike Looijmans <mike.looijm...@topic.nl>
+Signed-off-by: Robert Yang <liezhi.y...@windriver.com>
+---
+ redhat/autofs.init.in |   12 ++++++------
+ samples/rc.autofs.in  |   10 +++++-----
+ 2 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/redhat/autofs.init.in b/redhat/autofs.init.in
+index 9d008ff..4f1c0d8 100644
+--- a/redhat/autofs.init.in
++++ b/redhat/autofs.init.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # rc file for automount using a Sun-style "master map".
+ #
+@@ -42,7 +42,7 @@ if [ -r $confdir/autofs ]; then
+       . $confdir/autofs
+ fi
+
+-function start() {
++start() {
+       # Make sure autofs4 module is loaded
+       if ! grep -q autofs /proc/filesystems

+       then
+@@ -102,7 +102,7 @@ function start() {
+       return $RETVAL
+ }
+
+-function stop() {
++stop() {
+       echo -n $"Stopping $prog: "
+       count=0
+       while [ -n "`pidof $prog`" -a $count -lt 15 ] ; do
+@@ -125,7 +125,7 @@ function stop() {
+       return $RETVAL
+ }
+
+-function restart() {
++restart() {
+       status autofs > /dev/null 2>&1
+       if [ $? -eq 0 ]; then
+               stop
+@@ -143,7 +143,7 @@ function restart() {
+       start
+ }
+
+-function reload() {
++reload() {
+       if [ ! -f /var/lock/subsys/autofs ]; then
+               echo $"$prog not running"
+               RETVAL=1
+@@ -161,7 +161,7 @@ function reload() {
+       return $RETVAL
+ }
+
+-function usage_message() {
++usage_message() {
+       echo $"Usage: $0
{start|forcestart|stop|status|restart|force-reload|forcerestart|reload|condrestart|try-restart|usage}"

+ }
+
+diff --git a/samples/rc.autofs.in b/samples/rc.autofs.in
+index 487669f..e96cde1 100644
+--- a/samples/rc.autofs.in
++++ b/samples/rc.autofs.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # rc file for automount using a Sun-style "master map".
+ #
+@@ -36,7 +36,7 @@ if [ -r $confdir/autofs ]; then
+       . $confdir/autofs
+ fi
+
+-function start() {
++start() {
+       echo -n "Starting $prog: "
+
+       # Make sure autofs4 module is loaded
+@@ -85,7 +85,7 @@ function start() {
+       return $RETVAL
+ }
+
+-function stop() {
++stop() {
+       echo -n $"Stopping $prog: "
+       count=0
+       while [ -n "`pidof $prog`" -a $count -lt 15 ] ; do
+@@ -102,7 +102,7 @@ function stop() {
+       return $RETVAL
+ }
+
+-function restart() {
++restart() {
+       stop
+       while [ -n "`pidof $prog`" ] ; do
+               sleep 5
+@@ -110,7 +110,7 @@ function restart() {
+       start
+ }
+
+-function reload() {
++reload() {
+       pid=`pidof $prog`
+       if [ -z $pid ]; then
+               echo $"$prog not running"
+--
+1.7.9.5
+
diff --git a/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
b/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
index aab2187..13af2fe 100644
--- a/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
+++ b/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
@@ -19,6 +19,7 @@ SRC_URI =
"${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.gz \
             file://add-the-needed-stdarg.h.patch \
             file://using-pkg-config-to-detect-libxml-2.0-and-krb5.patch \
             file://force-STRIP-to-emtpy.patch \
+           file://remove-bashism.patch \
  "

  SRC_URI[md5sum] = "b7724a9a55923f3c06933a8dfd1e79d3"



// Robert

On 09/12/2014 08:57 PM, Mike Looijmans wrote:
On 09/11/2014 05:28 PM, Robert Yang wrote:


On 09/11/2014 01:08 AM, Mike Looijmans wrote:
Wouldn't it be a LOT more constructive to fix the bashism. I fail to
see the
virtue in adding 2MB of "bash" to an embedded system just for a text echo
statement that no-one will actually read unless they hook up a serial
console to
their TV set or so.

The problem is that there are more bashism, here is the full list:

possible bashism in autofs/etc/init.d/autofs line 39 ('function' is
useless):
function start() {
possible bashism in autofs/etc/init.d/autofs line 52 ([^] should be [!]):
         elif ([ -f /proc/modules ] && lsmod) | grep -q autofs[^4]
possible bashism in autofs/etc/init.d/autofs line 88 ('function' is
useless):
function stop() {
possible bashism in autofs/etc/init.d/autofs line 89 ($"foo" should be
eval_gettext "foo"):
         echo -n $"Stopping $prog: "
possible bashism in autofs/etc/init.d/autofs line 92 (should be >word
2>&1):
                 killall -TERM $prog >& /dev/null
possible bashism in autofs/etc/init.d/autofs line 105 ('function' is
useless):
function restart() {
possible bashism in autofs/etc/init.d/autofs line 113 ('function' is
useless):
function reload() {
possible bashism in autofs/etc/init.d/autofs line 116 ($"foo" should be
eval_gettext "foo"):
                 echo $"$prog not running"
possible bashism in autofs/etc/init.d/autofs line 120 ($"foo" should be
eval_gettext "foo"):
                 echo $"Reloading maps"
possible bashism in autofs/etc/init.d/autofs line 150 ($"foo" should be
eval_gettext "foo"):
                 echo $"Usage: $0
{start|forcestart|stop|restart|forcerestart|reload}"

// Robert


I put the following in a bbappend to work around the bashism, this was
enough to
make the scripts work just fine with busybox's shell:


# Remove bash scripting from init script (meaning, remove "function"
# from each shell function)
do_configure_prepend () {
     for bashfile in redhat/autofs.init.in samples/rc.autofs.in
     do
         sed -i 's.#!/bin/bash.#!/bin/sh.' $bashfile
         sed -i 's/^function //g' $bashfile
     done
}


I wanted to point to the commit on sourceforge, but the site is unresponsive at
the moment.



On 9-9-2014 18:27, Robert Yang wrote:
Bashism:
[snip]
possible bashism in autofs/etc/init.d/autofs line 116 ($"foo" should be
eval_gettext "foo"):
                 echo $"$prog not running"
possible bashism in autofs/etc/init.d/autofs line 120 ($"foo" should be
eval_gettext "foo"):
                 echo $"Reloading maps"
possible bashism in autofs/etc/init.d/autofs line 150 ($"foo" should be
eval_gettext "foo"):
                 echo $"Usage: $0
{start|forcestart|stop|restart|forcerestart|reload}"
[snip]

Signed-off-by: Robert Yang <liezhi.y...@windriver.com>
---
  .../recipes-daemons/autofs/autofs_5.1.0.bb         |    1 +
  1 file changed, 1 insertion(+)

diff --git a/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
b/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
index aab2187..06ee77b 100644
--- a/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
+++ b/meta-networking/recipes-daemons/autofs/autofs_5.1.0.bb
@@ -4,6 +4,7 @@ LICENSE = "GPL-2.0"
  LIC_FILES_CHKSUM =
"file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"

  DEPENDS += "libtirpc flex-native bison-native"
+RDEPENDS_${PN} += "bash"

  inherit autotools-brokensep systemd









Met vriendelijke groet / kind regards,

Mike Looijmans

TOPIC Embedded Systems
Eindhovenseweg 32-C, NL-5683 KH Best
Postbus 440, NL-5680 AK Best
Telefoon: (+31) (0) 499 33 69 79
Telefax:  (+31) (0) 499 33 69 70
E-mail: mike.looijm...@topic.nl
Website: www.topic.nl

Please consider the environment before printing this e-mail

Topic zoekt gedreven (embedded) software specialisten!
http://topic.nl/vacatures/topic-zoekt-software-engineers/

--
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Reply via email to