Dec 192017
GNU Diff and Diff3 1.14 for OS/2 and DOS with source code.
File DIFF114.ZIP from The Programmer’s Corner in
Category C Source Code
GNU Diff and Diff3 1.14 for OS/2 and DOS with source code.
File Name File Size Zip Size Zip Type
ANALYZE.C 26427 7671 deflated
CHANGELO 10995 3865 deflated
CONTEXT.C 9146 3086 deflated
COPYING 12737 4815 deflated
DIAGMEET.NOT 1140 426 deflated
DIFF.C 20831 6073 deflated
DIFF.CS 179 140 deflated
DIFF.DEF 83 83 stored
DIFF.EXE 87051 43860 deflated
DIFF.H 10940 3816 deflated
DIFF3.C 43087 11308 deflated
DIR.C 8145 2994 deflated
ED.C 5438 1774 deflated
GETOPT.C 16710 5185 deflated
GETOPT.H 2835 1207 deflated
GETOPT1.C 3705 1308 deflated
IFDEF.C 2649 1100 deflated
IO.C 18674 5251 deflated
LIMITS.H 1213 361 deflated
NORMAL.C 2281 1002 deflated
PATCHES.OS2 22389 6588 deflated
PROTO.H 2785 774 deflated
README 2332 1158 deflated
REGEX.C 48111 12566 deflated
REGEX.H 11301 3758 deflated
UTIL.C 15330 5071 deflated
VERSION.C 70 68 deflated

Download File DIFF114.ZIP Here

Contents of the README file

This directory contains the GNU DIFF and DIFF3 utilities, version 1.14.
See file COPYING for copying conditions. To compile and install on
system V, you must edit the makefile according to comments therein.

Report bugs to [email protected]

This version of diff provides all the features of BSD's diff.
It has these additional features:

-aAlways treat files as text and compare them line-by-line,
even if they do not appear to be ASCII.

-Bignore changes that just insert or delete blank lines.

-C #
request -c format and specify number of context lines.

-F regexp
in context format, for each unit of differences, show some of
the last preceding line that matches the specified regexp.

-Huse heuristics to speed handling of large files that
have numerous scattered small changes. The algorithm becomes
asymptotically linear for such files!

-I regexp
ignore changes that just insert or delete lines that
match the specified regexp.

-Nin directory comparison, if a file is found in only one directory,
treat it as present but empty in the other directory.

-pequivalent to -c -F'^[_a-zA-Z]'. This is useful for C code
because it shows which function each change is in.

-Tprint a tab rather than a space before the text of a line
in normal or context format. This causes the alignment
of tabs in the line to look normal.

GNU DIFF was written by Mike Haertel, David Hayes, Richard Stallman
and Len Tower. The basic algorithm is described in: "An O(ND)
Difference Algorithm and its Variations", Eugene Myers, Algorithmica
Vol. 1 No. 2, 1986, p 251.

Suggested projects for improving GNU DIFF:

* Handle very large files by not keeping the entire text in core.

One way to do this is to scan the files sequentally to compute hash
codes of the lines and put the lines in equivalence classes based only
on hash code. Then compare the files normally. This will produce
some false matches.

Then scan the two files sequentially again, checking each match to see
whether it is real. When a match is not real, mark both the
"matching" lines as changed. Then build an edit script as usual.

The output routines would have to be changed to scan the files
sequentially looking for the text to print.

 December 19, 2017  Add comments

Leave a Reply