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