Commit | Line | Data |
---|---|---|
cb47fa51 | 1 | /* diff.h 4.5 85/06/03 */ |
d519abda BJ |
2 | |
3 | /* | |
4 | * diff - common declarations | |
5 | */ | |
6 | ||
7 | #include <stdio.h> | |
8 | #include <ctype.h> | |
3d9f6a35 | 9 | #include <sys/param.h> |
d519abda | 10 | #include <sys/stat.h> |
e5a20f80 | 11 | #include <sys/dir.h> |
d519abda | 12 | #include <signal.h> |
d519abda BJ |
13 | |
14 | /* | |
15 | * Output format options | |
16 | */ | |
17 | int opt; | |
18 | ||
19 | #define D_NORMAL 0 /* Normal output */ | |
20 | #define D_EDIT -1 /* Editor script out */ | |
21 | #define D_REVERSE 1 /* Reverse editor script */ | |
22 | #define D_CONTEXT 2 /* Diff with context */ | |
23 | #define D_IFDEF 3 /* Diff with merged #ifdef's */ | |
24 | ||
25 | /* | |
26 | * Algorithm related options | |
27 | */ | |
28 | int hflag; /* -h, use halfhearted DIFFH */ | |
29 | int bflag; /* ignore blanks in comparisions */ | |
30 | ||
31 | /* | |
32 | * Options on hierarchical diffs. | |
33 | */ | |
34 | int lflag; /* long output format with header */ | |
35 | int rflag; /* recursively trace directories */ | |
36 | int sflag; /* announce files which are same */ | |
37 | char *start; /* do file only if name >= this */ | |
38 | ||
39 | /* | |
40 | * Variables for -I D_IFDEF option. | |
41 | */ | |
42 | int wantelses; /* -E */ | |
43 | char *ifdef1; /* String for -1 */ | |
44 | char *ifdef2; /* String for -2 */ | |
45 | char *endifname; /* What we will print on next #endif */ | |
46 | int inifdef; | |
47 | ||
48 | /* | |
49 | * Variables for -c context option. | |
50 | */ | |
51 | int context; /* lines of context to be printed */ | |
52 | ||
53 | /* | |
54 | * State for exit status. | |
55 | */ | |
56 | int status; | |
57 | int anychange; | |
58 | char *tempfile; /* used when comparing against std input */ | |
59 | ||
60 | /* | |
61 | * Variables for diffdir. | |
62 | */ | |
63 | char **diffargv; /* option list to pass to recursive diffs */ | |
64 | ||
65 | /* | |
66 | * Input file names. | |
67 | * With diffdir, file1 and file2 are allocated BUFSIZ space, | |
68 | * and padded with a '/', and then efile0 and efile1 point after | |
69 | * the '/'. | |
70 | */ | |
71 | char *file1, *file2, *efile1, *efile2; | |
72 | struct stat stb1, stb2; | |
73 | struct stat stb1, stb2; | |
74 | ||
d519abda BJ |
75 | char *malloc(), *talloc(), *ralloc(); |
76 | char *savestr(), *splice(), *splicen(); | |
77 | char *mktemp(), *copytemp(), *rindex(); | |
78 | int done(); | |
79 | ||
80 | extern char diffh[], diff[], pr[]; |