New multiprecision integer arithmetic suite.
[u/mdw/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="${I}_${J}_H"
11 cat >$i-$j.h <<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 ${J}_H
25 # include "$j.h"
26 #endif
27
28 #ifndef ${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 cat >$i-$j.c <<EOF
41 /* -*-c-*-
42 *
43 * $i-$j.h [generated]
44 */
45
46 #include "$i-$j.h"
47 ${J}_DEF($I, $i)
48 EOF
49 done
50 done