Update the lash shell (hopefully the last time...) so things like
[oweals/busybox.git] / busybox.sh
index e01b8816234800de25bca43ed78e619ad6fdc20d..2f9a905f53997f04fa3bedbf3500a727ad4028ec 100755 (executable)
@@ -1,10 +1,16 @@
 #!/bin/sh
 
-# I added in the extra "ls" so only source files that
-# actually exist will show up in the compile list.
-ls -1 ` \
-    gcc -E -dM Config.h | \
+export LC_ALL=POSIX
+export LC_CTYPE=POSIX
+
+RAW=` \
+    gcc -E -dM ${1:-Config.h} | \
     sed -n -e '/^.*BB_FEATURE.*$/d;s/^#define.*\<BB_\(.*\)\>/\1.c/gp;' \
-    | tr '[:upper:]' '[:lower:]' | sort
-` 2>/dev/null | sed -e 's/\.c$/\.o/g'
+    | tr A-Z a-z | sort
+`
+test "${RAW}" != "" ||  exit
+cd ${2:-.}
+# By running $RAW through "ls", we avoid listing
+# source files that don't exist.
+ls $RAW 2>/dev/null | tr '\n' ' '