Parsing `ls` is fragile at best and _will_ fail when $tree
contains spaces. Replace this with a glob-generated string
and directly assign it to $ALLSOURCE_ARCHS (Kconfig is
removed as it isn't an architecture); a subshell is implied
by $(), so `cd` doesn't affect the current working directory.

Signed-off-by: Joey Pabalinas <joeypabali...@gmail.com>

 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/scripts/tags.sh b/scripts/tags.sh
index 78e546ff689c2d5f40..e4aba2983f6272fc44 100755
--- a/scripts/tags.sh
+++ b/scripts/tags.sh
@@ -29,14 +29,12 @@ fi
 ignore="$ignore ( -path ${tree}tools ) -prune -o"
 
 # Find all available archs
 find_all_archs()
 {
-       ALLSOURCE_ARCHS=""
-       for arch in `ls ${tree}arch`; do
-               ALLSOURCE_ARCHS="${ALLSOURCE_ARCHS} "${arch##\/}
-       done
+       ALLSOURCE_ARCHS="$(cd "${tree}arch/" && echo *)"
+       ALLSOURCE_ARCHS="${ALLSOURCE_ARCHS/Kconfig}"
 }
 
 # Detect if ALLSOURCE_ARCHS is set. If not, we assume SRCARCH
 if [ "${ALLSOURCE_ARCHS}" = "" ]; then
        ALLSOURCE_ARCHS=${SRCARCH}
-- 
2.17.0.rc1.35.g90bbd502d54fe92035.dirty

Attachment: signature.asc
Description: PGP signature

Reply via email to