|
|
1.1 ! root 1: /* diff.h 4.7 85/08/16 */ ! 2: ! 3: /* ! 4: * diff - common declarations ! 5: */ ! 6: ! 7: #include <stdio.h> ! 8: #include <ctype.h> ! 9: #include <sys/param.h> ! 10: #include <sys/stat.h> ! 11: #include <sys/dir.h> ! 12: #include <signal.h> ! 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: #define D_NREVERSE 4 /* Reverse ed script with numbered ! 25: lines and no trailing . */ ! 26: ! 27: int tflag; /* expand tabs on output */ ! 28: ! 29: /* ! 30: * Algorithm related options ! 31: */ ! 32: int hflag; /* -h, use halfhearted DIFFH */ ! 33: int bflag; /* ignore blanks in comparisons */ ! 34: int wflag; /* totally ignore blanks in comparisons */ ! 35: int iflag; /* ignore case in comparisons */ ! 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; ! 79: ! 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[];
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.