From 712e43ef7c92e8903e6f9d7ca261a420c566d299 Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Sun, 7 Feb 2016 18:15:53 -0600 Subject: Add "make ls" and friends targets, with "make working" and "make pending" lists. --- scripts/genconfig.sh | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'scripts/genconfig.sh') diff --git a/scripts/genconfig.sh b/scripts/genconfig.sh index ce8c0266..7b34f085 100755 --- a/scripts/genconfig.sh +++ b/scripts/genconfig.sh @@ -119,3 +119,29 @@ genconfig() probeconfig > generated/Config.probed || rm generated/Config.probed genconfig > generated/Config.in || rm generated/Config.in + +# Find names of commands that can be built standalone in these C files +toys() +{ + grep 'TOY(.*)' "$@" | grep -v TOYFLAG_NOFORK | \ + sed -rn 's/([^:]*):.*(OLD|NEW)TOY\( *([a-zA-Z][^,]*) *,.*/\1:\3/p' +} + +WORKING= +PENDING= +toys toys/*/*.c | ( +while IFS=":" read FILE NAME +do + [ "$NAME" == help ] && continue + [ "$NAME" == install ] && continue + echo -e "$NAME:\n\tscripts/single.sh $NAME\n" + [ "${FILE/pending//}" != "$FILE" ] && + PENDING="$PENDING $NAME" || + WORKING="$WORKING $NAME" +done > .singlemake && +echo -e "clean::\n\trm -f $WORKING $PENDING" >> .singlemake && +echo -e "working:\n\t@echo $(echo $WORKING | tr ' ' '\n' | sort | xargs)" \ + >> .singlemake && +echo -e "pending:\n\t@echo $(echo $PENDING | tr ' ' '\n' | sort | xargs)" \ + >> .singlemake +) -- cgit v1.2.3