Mercurial > ~dholland > hg > ag > index.cgi
comparison lint/lint-rules.sh @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:13d2b8934445 |
---|---|
1 #!/bin/sh | |
2 # lint-rules.sh - generate make rules for lint dir | |
3 # usage: lint-rules.sh > rules.mk | |
4 | |
5 if [ $# != 0 ]; then | |
6 echo "$0: usage: $0" 1>&2 | |
7 exit 1 | |
8 fi | |
9 | |
10 SOURCESETS='tool main example' | |
11 | |
12 | |
13 # generate the lists of sources | |
14 | |
15 for S in $SOURCESETS; do | |
16 if [ ! -f $S.srcs ]; then | |
17 echo "$0: $S.srcs missing - rerun make rules?" | |
18 exit 1 | |
19 fi | |
20 | |
21 echo $S | tr a-z A-Z | awk '{ printf "%sSRCS=\\\n", $1 }' | |
22 sed < $S.srcs 's/^/ /;s/$/ \\/;$s/ \\$//' | |
23 echo | |
24 done | |
25 | |
26 for S in $SOURCESETS; do | |
27 awk < $S.srcs ' | |
28 { | |
29 file=$1; | |
30 base=file; | |
31 sub(".*/", "", base); | |
32 base = set "-" base; | |
33 ok = sprintf("$(TOP)/lint/ok/%s.ok", base) | |
34 | |
35 printf "%s.lint: $(TOP)/%s $(CHECK)\n", base, file; | |
36 printf "\t@echo \" [CHECK] %s\"\n", base; | |
37 printf "\t@$(CHECK) --%s \"$(TOP)\" %s > %s.lint\n", set, file, base; | |
38 printf "\n"; | |
39 | |
40 printf "%s.diff: %s.lint %s\n", base, base, ok; | |
41 printf "\t@diff %s %s.lint | tee %s.diff\n", ok, base, base; | |
42 printf "\n"; | |
43 | |
44 printf "all: %s.diff\n", base; | |
45 printf "\n"; | |
46 } | |
47 ' "set=$S" | |
48 done |