Commit | Line | Data |
---|---|---|
a3e88724 | 1 | /* diff.h 4.7 85/08/16 */ |
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 */ | |
a3e88724 VJ |
24 | #define D_NREVERSE 4 /* Reverse ed script with numbered |
25 | lines and no trailing . */ | |
d519abda | 26 | |
c470b1f1 VJ |
27 | int tflag; /* expand tabs on output */ |
28 | ||
d519abda BJ |
29 | /* |
30 | * Algorithm related options | |
31 | */ | |
32 | int hflag; /* -h, use halfhearted DIFFH */ | |
c470b1f1 VJ |
33 | int bflag; /* ignore blanks in comparisons */ |
34 | int wflag; /* totally ignore blanks in comparisons */ | |
35 | int iflag; /* ignore case in comparisons */ | |
d519abda BJ |
36 | |
37 | /* | |
38 | * Options on hierarchical diffs. | |
39 | */ | |
40 | int lflag; /* long output format with header */ | |
41 | int rflag; /* recursively trace directories */ | |
42 | int sflag; /* announce files which are same */ | |
43 | char *start; /* do file only if name >= this */ | |
44 | ||
45 | /* | |
46 | * Variables for -I D_IFDEF option. | |
47 | */ | |
48 | int wantelses; /* -E */ | |
49 | char *ifdef1; /* String for -1 */ | |
50 | char *ifdef2; /* String for -2 */ | |
51 | char *endifname; /* What we will print on next #endif */ | |
52 | int inifdef; | |
53 | ||
54 | /* | |
55 | * Variables for -c context option. | |
56 | */ | |
57 | int context; /* lines of context to be printed */ | |
58 | ||
59 | /* | |
60 | * State for exit status. | |
61 | */ | |
62 | int status; | |
63 | int anychange; | |
64 | char *tempfile; /* used when comparing against std input */ | |
65 | ||
66 | /* | |
67 | * Variables for diffdir. | |
68 | */ | |
69 | char **diffargv; /* option list to pass to recursive diffs */ | |
70 | ||
71 | /* | |
72 | * Input file names. | |
73 | * With diffdir, file1 and file2 are allocated BUFSIZ space, | |
74 | * and padded with a '/', and then efile0 and efile1 point after | |
75 | * the '/'. | |
76 | */ | |
77 | char *file1, *file2, *efile1, *efile2; | |
78 | struct stat stb1, stb2; | |
d519abda | 79 | |
d519abda BJ |
80 | char *malloc(), *talloc(), *ralloc(); |
81 | char *savestr(), *splice(), *splicen(); | |
82 | char *mktemp(), *copytemp(), *rindex(); | |
83 | int done(); | |
84 | ||
85 | extern char diffh[], diff[], pr[]; |