aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2008-05-12 01:23:19 -0500
committerRob Landley <rob@landley.net>2008-05-12 01:23:19 -0500
commitda5709494710925cf9d35b91ba2690148031b840 (patch)
tree15a921299df89f4e648d8cfab58cc77041865fe5 /scripts
parent988abb33a5c9d8023a8e1bd5535a75a16e5d9e46 (diff)
downloadtoybox-da5709494710925cf9d35b91ba2690148031b840.tar.gz
Sort was including the trailing comma and getting the order wrong.
(Specifically, it was comparing "sh," with "sha1sum," and putting sha1sum first in generated/newtoys.h so the binary search wasn't finding sha1sum. Alas, you can't feed separate beginning and ending delimiters to "sort -t". The fix is to copy the appropriate field out with sed, duplicate it at the start of the string where it's easy to compare, and then remove it again with a second sed after the sort.
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/make.sh3
1 files changed, 2 insertions, 1 deletions
diff --git a/scripts/make.sh b/scripts/make.sh
index 2e7fd3b6..6d31a5e8 100755
--- a/scripts/make.sh
+++ b/scripts/make.sh
@@ -22,7 +22,8 @@ function newtoys()
done
}
echo "NEWTOY(toybox, NULL, 0)" > generated/newtoys.h
-newtoys | sort -t '(' -k3,3 >> generated/newtoys.h
+newtoys | sed 's/\(.*TOY(\)\([^,]*\),\(.*\)/\2 \1\2,\3/' | sort -k 1,1 \
+ | sed 's/[^ ]* //' >> generated/newtoys.h
# Extract global structure definitions from toys/*.c