ash: do not let EXIT trap to fire in `trap`
[oweals/busybox.git] / scripts / objsizes
index 44fbce1aa55892cd4467fb7f8884b4f581dc2a56..6df0c4fac8455985a75481f4b72274be47bd7fb4 100755 (executable)
@@ -1,8 +1,19 @@
 #!/bin/sh
 
-printf "%9s %11s %9s %9s %s\n" "text+data" text+rodata rwdata bss filename
+t_text=0
+t_data=0
+t_bss=0
+
+printf "%9s %11s %9s %9s %s\n" "text+data" "text+rodata" rwdata bss filename
+
 find -name '*.o' | grep -v '^\./scripts/' | grep -vF built-in.o \
 | sed 's:^\./::' | xargs "${CROSS_COMPILE}size" | grep '^ *[0-9]' \
-| while read text data bss dec hex filename; do
+| {
+while read text data bss dec hex filename; do
+    t_text=$((t_text+text))
+    t_data=$((t_data+data))
+    t_bss=$((t_bss+bss))
     printf "%9d %11d %9d %9d %s\n" $((text+data)) $text $data $bss "$filename"
-done | sort -r
+done
+printf "%9d %11d %9d %9d %s\n" $((t_text+t_data)) $t_text $t_data $t_bss "TOTAL"
+} | env -uLANG -uLC_ALL sort -r