hashsum.c: Document `--progress' in the `--help' display.
[u/mdw/catacomb] / genmodes
1 #! /bin/sh
2
3 set -e
4 baselist=$1
5 extlist=$2
6
7 for i in $baselist; do
8 I=`echo "$i" | tr -d '\n' | tr a-z A-Z | tr -c a-zA-Z0-9 _`
9 for j in $extlist; do
10 J=`echo "$j" | tr -d '\n' | tr a-z A-Z | tr -c a-zA-Z0-9 _`
11 guard="CATACOMB_${I}_${J}_H"
12 cat >$i-$j.h.new <<EOF
13 /* -*-c-*-
14 *
15 * $i-$j.h [generated]
16 */
17
18 #ifndef $guard
19 #define $guard
20
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24
25 #ifndef CATACOMB_${J}_H
26 # include "$j.h"
27 #endif
28
29 #ifndef CATACOMB_${I}_H
30 # include "$i.h"
31 #endif
32
33 ${J}_DECL($I, $i)
34
35 #ifdef __cplusplus
36 }
37 #endif
38
39 #endif
40 EOF
41 if cmp "$i-$j.h" "$i-$j.h.new" >/dev/null 2>&1; then
42 rm "$i-$j.h.new"
43 else
44 mv "$i-$j.h.new" "$i-$j.h"
45 echo >&2 "Written new $i-$j.h."
46 fi
47 cat >$i-$j.c.new <<EOF
48 /* -*-c-*-
49 *
50 * $i-$j.c [generated]
51 */
52
53 #include "$i-$j.h"
54 #include "$j-def.h"
55 ${J}_DEF($I, $i)
56 EOF
57 if cmp "$i-$j.c" "$i-$j.c.new" >/dev/null 2>&1; then
58 rm "$i-$j.c.new"
59 else
60 mv "$i-$j.c.new" "$i-$j.c"
61 echo >&2 "Written new $i-$j.c."
62 fi
63 done
64 done