12
|
1 /* $Header: /Users/kono/src/CVS/mh/miscellany/patch-2.0.12u8/util.h,v 1.1.1.1 2005/04/18 14:46:05 kono Exp $
|
0
|
2 *
|
12
|
3 * $Log: util.h,v $
|
|
4 * Revision 1.1.1.1 2005/04/18 14:46:05 kono
|
|
5 * MH pre UTF8
|
0
|
6 *
|
|
7 * Revision 2.0 86/09/17 15:40:06 lwall
|
|
8 * Baseline for netwide release.
|
|
9 *
|
|
10 */
|
|
11
|
|
12 /* and for those machine that can't handle a variable argument list */
|
|
13
|
|
14 #ifdef CANVARARG
|
|
15
|
|
16 #define say1 say
|
|
17 #define say2 say
|
|
18 #define say3 say
|
|
19 #define say4 say
|
|
20 #define ask1 ask
|
|
21 #define ask2 ask
|
|
22 #define ask3 ask
|
|
23 #define ask4 ask
|
|
24 #define fatal1 fatal
|
|
25 #define fatal2 fatal
|
|
26 #define fatal3 fatal
|
|
27 #define fatal4 fatal
|
|
28 #define pfatal1 pfatal
|
|
29 #define pfatal2 pfatal
|
|
30 #define pfatal3 pfatal
|
|
31 #define pfatal4 pfatal
|
|
32
|
|
33 #else /* hope they allow multi-line macro actual arguments */
|
|
34
|
|
35 #ifdef lint
|
|
36
|
|
37 #define say1(a) say(a, 0, 0, 0)
|
|
38 #define say2(a,b) say(a, (b)==(b), 0, 0)
|
|
39 #define say3(a,b,c) say(a, (b)==(b), (c)==(c), 0)
|
|
40 #define say4(a,b,c,d) say(a, (b)==(b), (c)==(c), (d)==(d))
|
|
41 #define ask1(a) ask(a, 0, 0, 0)
|
|
42 #define ask2(a,b) ask(a, (b)==(b), 0, 0)
|
|
43 #define ask3(a,b,c) ask(a, (b)==(b), (c)==(c), 0)
|
|
44 #define ask4(a,b,c,d) ask(a, (b)==(b), (c)==(c), (d)==(d))
|
|
45 #define fatal1(a) fatal(a, 0, 0, 0)
|
|
46 #define fatal2(a,b) fatal(a, (b)==(b), 0, 0)
|
|
47 #define fatal3(a,b,c) fatal(a, (b)==(b), (c)==(c), 0)
|
|
48 #define fatal4(a,b,c,d) fatal(a, (b)==(b), (c)==(c), (d)==(d))
|
|
49 #define pfatal1(a) pfatal(a, 0, 0, 0)
|
|
50 #define pfatal2(a,b) pfatal(a, (b)==(b), 0, 0)
|
|
51 #define pfatal3(a,b,c) pfatal(a, (b)==(b), (c)==(c), 0)
|
|
52 #define pfatal4(a,b,c,d) pfatal(a, (b)==(b), (c)==(c), (d)==(d))
|
|
53
|
|
54 #else /* lint */
|
|
55 /* if this doesn't work, try defining CANVARARG above */
|
|
56 #define say1(a) say(a, Nullch, Nullch, Nullch)
|
|
57 #define say2(a,b) say(a, b, Nullch, Nullch)
|
|
58 #define say3(a,b,c) say(a, b, c, Nullch)
|
|
59 #define say4 say
|
|
60 #define ask1(a) ask(a, Nullch, Nullch, Nullch)
|
|
61 #define ask2(a,b) ask(a, b, Nullch, Nullch)
|
|
62 #define ask3(a,b,c) ask(a, b, c, Nullch)
|
|
63 #define ask4 ask
|
|
64 #define fatal1(a) fatal(a, Nullch, Nullch, Nullch)
|
|
65 #define fatal2(a,b) fatal(a, b, Nullch, Nullch)
|
|
66 #define fatal3(a,b,c) fatal(a, b, c, Nullch)
|
|
67 #define fatal4 fatal
|
|
68 #define pfatal1(a) pfatal(a, Nullch, Nullch, Nullch)
|
|
69 #define pfatal2(a,b) pfatal(a, b, Nullch, Nullch)
|
|
70 #define pfatal3(a,b,c) pfatal(a, b, c, Nullch)
|
|
71 #define pfatal4 pfatal
|
|
72
|
|
73 #endif /* lint */
|
|
74
|
|
75 /* if neither of the above work, join all multi-line macro calls. */
|
|
76 #endif
|
|
77
|
|
78 EXT char serrbuf[BUFSIZ]; /* buffer for stderr */
|
|
79
|
|
80 char *fetchname();
|
|
81 int move_file();
|
|
82 void copy_file();
|
|
83 void say();
|
|
84 void fatal();
|
|
85 void pfatal();
|
|
86 void ask();
|
|
87 char *savestr();
|
|
88 void set_signals();
|
|
89 void ignore_signals();
|
|
90 void makedirs();
|
|
91 char *basename();
|