Using 'read' without a variable is not supported in many shells.  Lines
such as 'while read; do' in gen_build_files.sh would result in build
failures when using sh or dash as an interpreter:
$ make defconfig
read: 53: arg count
scripts/kconfig/conf -d Config.in
Config.in:727: can't open file "findutils/Config.in"
make[1]: *** [defconfig] Error 1
make: *** [defconfig] Error 2

Signed-off-by: Peter Tyser <[email protected]>
---
 scripts/gen_build_files.sh |   16 +++++++---------
 1 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/scripts/gen_build_files.sh b/scripts/gen_build_files.sh
index 2baefa2..b461557 100755
--- a/scripts/gen_build_files.sh
+++ b/scripts/gen_build_files.sh
@@ -7,9 +7,7 @@ cd -- "$2" || { echo "Syntax: $0 SRCTREE OBJTREE"; exit 1; }
 
 srctree="$1"
 
-find -type d | while read; do
-       d="$REPLY"
-
+find -type d | while read d; do
        src="$srctree/$d/Kbuild.src"
        dst="$d/Kbuild"
        if test -f "$src"; then
@@ -17,9 +15,9 @@ find -type d | while read; do
 
                s=`sed -n 's...@^//kbuild:@@p' -- "$srctree/$d"/*.c`
                echo "# DO NOT EDIT. This file is generated from Kbuild.src" 
>"$dst.$$.tmp"
-               while read; do
-                       test x"$REPLY" = x"INSERT" && REPLY="$s"
-                       printf "%s\n" "$REPLY"
+               while read line; do
+                       test x"$line" = x"INSERT" && line="$s"
+                       printf "%s\n" "$line"
                done <"$src" >>"$dst.$$.tmp"
 
                if test -f "$dst" && cmp -s "$dst.$$.tmp" "$dst"; then
@@ -37,9 +35,9 @@ find -type d | while read; do
 
                s=`sed -n 's...@^//config:@@p' -- "$srctree/$d"/*.c`
                echo "# DO NOT EDIT. This file is generated from Config.src" 
>"$dst.$$.tmp"
-               while read; do
-                       test x"$REPLY" = x"INSERT" && REPLY="$s"
-                       printf "%s\n" "$REPLY"
+               while read line; do
+                       test x"$line" = x"INSERT" && line="$s"
+                       printf "%s\n" "$line"
                done <"$src" >>"$dst.$$.tmp"
 
                if test -f "$dst" && cmp -s "$dst.$$.tmp" "$dst"; then
-- 
1.6.2.1

_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to