1 2005-09-04 Derek Price <derek@ximbiot.com>
3 * Makefile.am (EXTRA_DIST): Add .cvsignore.
5 2004-11-05 Conrad T. Pino <Conrad@Pino.com>
7 * libdiff.dep: Regenerated after complete rebuild.
9 2004-05-15 Derek Price <derek@ximbiot.com>
11 * libdiff.dsp: Header file list updated.
12 * libdiff.dep: Regenerated for "libdiff.dsp" changes.
13 * libdiff.mak: Regenerated for "libdiff.dsp" changes.
14 (Patch from Conrad Pino <conrad@pino.com>.)
16 2004-05-13 Derek Price <derek@ximbiot.com>
18 * .cvsignore: Changed for "libdiff.dsp" changes.
19 * libdiff.dep: Added for "../cvsnt.dsw" changes.
20 * libdiff.dsp: Changed for "../cvsnt.dsw" changes.
21 * libdiff.mak: Regenerated for "../cvsnt.dsw" changes.
22 (Patch from Conrad Pino <conrad@pino.com>.)
24 2004-03-20 Derek Price <derek@ximbiot.com>
26 * diff.c (diff_run): Update string arg to const.
27 * diffrun.h: Update prototype to match.
29 2003-07-12 Larry Jones <lawrence.jones@eds.com>
31 * io.c (find_identical_ends): Update to match current diffutils
32 code and improve handling of files with no newline at end.
33 (Patch from Andrew Moise <chops@demiurgestudios.com>.)
35 2003-06-13 Derek Price <derek@ximbiot.com>
37 * diff3.c (read_diff): Fix memory leak.
38 (Patch from Kenneth Lorber <keni@his.com>.)
40 2003-05-21 Derek Price <derek@ximbiot.com>
42 * Makefile.in: Regenerate with Automake version 1.7.5.
44 2003-05-09 Derek Price <derek@ximbiot.com>
46 * system.h: Define S_ISSOCK on SCO OpenServer.
48 2003-04-10 Larry Jones <lawrence.jones@eds.com>
50 * Makefile.in: Regenerated.
52 2003-02-25 Derek Price <derek@ximbiot.com>
54 * Makefile.in: Regenerated.
56 2003-02-01 Larry Jones <lawrence.jones@eds.com>
58 * util.c (finish_output): Handle EINTR from waitpid.
60 2002-09-24 Derek Price <derek@ximbiot.com>
62 * Makefile.in: Regenerated using Automake 1.6.3.
64 2002-09-24 Larry Jones <lawrence.jones@eds.com>
66 * system.h: Use HAVE_STRUCT_STAT_ST_BLKSIZE instead of the
67 obsolete HAVE_ST_BLKSIZE.
69 2002-09-24 Derek Price <derek@ximbiot.com>
71 * Makefile.in: Regenerated.
73 2002-04-30 Derek Price <oberon@umich.edu>
75 * Makefile.in: Regenerated with automake 1.6.
77 2002-04-28 Derek Price <oberon@umich.edu>
79 * diff.c: Use the system fnmatch.h when present.
81 2001-09-04 Derek Price <dprice@collab.net>
83 * Makefile.in: Regenerated with automake 1.5.
85 2001-08-09 Derek Price <dprice@collab.net>
87 * system.h: Source some header files when present to eliminate warning
88 messages under Windows.
89 (Patch from "Manfred Klug" <manklu@web.de>.)
91 2001-08-07 Derek Price <dprice@collab.net>
93 * build_diff.com: Turn on verify to get a better trace of the DCL.
94 * diff3.c: Eliminate compiler warning. The VMS read rval is ssize_t
95 (signed). The VMS size_t appears to be unsigned.
96 * io.c: Eliminate compiler warning (ssize_t).
97 (Patch from Mike Marciniszyn <Mike.Marciniszyn@sanchez.com>.)
99 2001-08-06 Derek Price <dprice@collab.net>
101 * Makefile.in: Regenerated.
103 2001-07-04 Derek Price <dprice@collab.net>
105 * Makefile.in: Regenerated with new Automake release candidate 1.4h.
107 2001-06-28 Derek Price <dprice@collab.net>
109 * Makefile.in: Regenerated with new version of Automake.
111 2001-05-07 Larry Jones <larry.jones@sdrc.com>
113 * diff3.c (diff3_run): Put the name of the output file in the error
114 message instead of "could not open output file" to aid in debugging.
116 2001-04-25 Derek Price <dprice@collab.net>
118 * Makefile.in: Regenerated using AM 1.4e as of today at 18:10 -0400.
120 2001-03-24 Noel Cragg <noel@shave.red-bean.com>
122 * diff.c: fix typo in usage string.
124 2001-03-20 Derek Price <derek.price@openavenue.com>
125 for Karl Tomlinson <k.tomlinson@auckland.ac.nz>
127 * diff3.c (main): changed the common file of the two diffs to
128 OLDFILE for merges and edscripts so that the diffs are more likely
129 to contain the intended changes. Not changing the horizon-lines
130 arg for the second diff. If the two diffs have the same parameters
131 equal changes in each diff are more likely to appear the same.
133 * analyze.c (shift_boundaries): undid Paul Eggert's patch to fix
134 the diff3 merge bug described in ccvs/doc/DIFFUTILS-2.7-BUG. The
135 patch is no longer necessary now that diff3 does its differences
136 differently. I think the hunk merges provide a better indication
137 of the area modified by the user now that the diffs are actually
138 done between the appropriate revisions.
140 2001-03-15 Derek Price <derek.price@openavenue.com>
142 * Makefile.am (INCLUDES): Add -I$(top_srcdir)/lib for platforms which
143 need the regex library there.
145 * Makefile.in: Regenerated.
147 2001-03-14 Derek Price <derek.price@openavenue.com>
149 * .cvsignore: Added '.deps'.
151 Pavel Roskin <proski@gnu.org>
153 * Makefile.am: New file.
154 * Makefile.in: Regenerated.
156 2001-02-22 Derek Price <derek.price@openavenue.com>
157 Pavel Roskin <proski@gnu.org>
159 * Makefile.in: Don't define PR_PROGRAM - it's defined by configure.
160 Remove separate rule for util.c.
162 2001-02-06 Derek Price <derek.price@openavenue.com>
163 Rex Jolliff <Rex_Jolliff@notes.ymp.gov>
164 Shawn Smith <Shawn_Smith@notes.ymp.gov>
166 * dir.c: Replace opendir, closedir, & readdir calls with CVS_OPENDIR,
167 CVS_CLOSEDIR, & CVS_READDIR in support of changes to handle VMS DEC C
168 5.7 {open,read,close}dir problems. Check today's entry in the vms
170 * system.h: definitions of CVS_*DIR provided here.
172 2000-12-21 Derek Price <derek.price@openavenue.com>
174 * Makefile.in: Some changes to support Automake targets
176 2000-10-26 Larry Jones <larry.jones@sdrc.com>
178 * Makefile.in: Get PR_PROGRAM from autoconf instead of hard coding.
179 (Patch submitted by Urs Thuermann <urs@isnogud.escape.de>.)
180 Also add a dependency for util.o on Makefile since PR_PROGRAM gets
183 2000-08-03 Larry Jones <larry.jones@sdrc.com>
185 * diff3.c (read_diff): Use cvs_temp_name () instead of tmpnam () so
186 there's at least a chance of getting the file in the correct tmp dir.
188 2000-07-10 Larry Jones <larry.jones@sdrc.com>
190 * util.c (printf_output): Fix type clashes.
192 2000-06-15 Larry Jones <larry.jones@sdrc.com>
194 * diff3.c (diff3_run, make_3way_diff): Plug memory leaks.
196 1999-12-29 Jim Kingdon <http://developer.redhat.com/>
198 * diff.c (compare_files): Use explicit braces with if-if-else, per
199 GNU coding standards and gcc -Wall.
201 1999-11-23 Larry Jones <larry.jones@sdrc.com>
203 * diff3.c: Explicitly initialize zero_diff3 to placate neurotic
204 compilers that gripe about implicitly initialized const variables.
205 Reported by Eric Veum <sysv@yahoo.com>.
207 1999-09-15 Larry Jones <larry.jones@sdrc.com>
209 * diff.c (diff_run): Move the setjmp call before the options
210 processing since option errors can call fatal which in turn
213 1999-05-06 Jim Kingdon <http://www.cyclic.com>
215 * Makefile.in (DISTFILES): Remove libdiff.mak.
216 * libdiff.mak: Removed; we are back to a single makefile for
217 Visual C++ version 4.
219 1999-04-29 Jim Kingdon <http://www.cyclic.com>
221 * diff.c (diff_run): Use separate statement for setjmp call and if
222 statement. This is better style in general (IMHO) but in the case
223 of setjmp the UNICOS compiler apparently cares (I don't have the
224 standard handy, but there are lots of legitimate restrictions on
225 how you can call setjmp).
227 1999-04-26 Jim Kingdon <http://www.cyclic.com>
229 * Makefile.in (DISTFILES): Add libdiff.dsp libdiff.mak .cvsignore.
231 1999-04-26 (submitted 1999-03-24) John O'Connor <john@shore.net>
233 * libdiff.dsp: new file. MSVC project file used to build the library.
235 * libdiff.mak: new file. Makefile for building from the command-line.
237 * .cvsignore: Removed un-used entries related to MSVC. Added
238 entries to ignore directories generated by the NT build, Debug
241 1999-03-24 Larry Jones <larry.jones@sdrc.com>
244 * diff3.c (diff3_run): Use a separate stream for the input to
245 output_diff3_merge instead of reopening stdin to avoid problems
246 with leaving it open.
248 1999-02-17 Jim Kingdon <http://www.cyclic.com>
249 and Hallvard B Furuseth.
251 * util.c: Use __STDC__ consistently with ./system.h.
252 * system.h: Add comment about PARAMS.
254 1999-01-12 Jim Kingdon <http://www.cyclic.com>
256 * Makefile.in, analyze.c, cmpbuf.c, cmpbuf.h, context.c, diff.c,
257 diff.h, diff3.c, diffrun.h, dir.c, ed.c, io.c, normal.c, system.h,
258 util.c: Remove paragraph containing the old snail mail address of
259 the Free Software Foundation.
261 1998-09-21 Jim Kingdon <kingdon@harvey.cyclic.com>
263 * util.c (printf_output): Make msg static; avoids auto
264 initializer, which is not portable to SunOS4 /bin/cc.
265 Reported by Mike Sutton@SAIC.
267 1998-09-14 Jim Kingdon <kingdon@harvey.cyclic.com>
269 * Makefile.in (DISTFILES): Add diagmeet.note.
271 1998-08-15 Jim Kingdon <kingdon@harvey.cyclic.com>
273 * diffrun.h (struct diff_callbacks): Change calling convention of
274 write_output so that a zero length means to output zero bytes.
275 The cvs_output convention is just too ugly/error-prone.
276 * util.c (printf_output): Rewrite to parse format string
277 overselves rather than calling vasprintf, which cannot be
278 implemented in portable C.
280 1998-08-06 David Masterson of kla-tencor.com
282 * util.c (flush_output): Don't prototype.
284 Thu Jul 2 16:34:38 1998 Ian Lance Taylor <ian@cygnus.com>
286 Simplify the callback interface:
287 * diffrun.h: Don't include <stdarg.h> or <varargs.h>.
288 (struct diff_callbacks): Remove printf_output field.
289 * util.c: Include <stdarg.h> or <varargs.h>.
290 (printf_output): Use vasprintf and write_output callback rather
291 than printf_output callback.
292 * diff3.c (read_diff): Don't set my_callbacks.printf_output.
294 Thu Jun 18 12:43:53 1998 Ian Lance Taylor <ian@cygnus.com>
296 * diffrun.h: New file.
297 * diff.h: Include diffrun.h.
298 (callbacks): New EXTERN variable.
299 (write_output, printf_output, flush_output): Declare.
300 * diff.c (diff_run): Add parameter callbacks_arg. Use callback
301 functions rather than writing to stdout. Don't open a file if
302 there is a write_output callback. Call perror_with_name rather
304 (usage): Use callbacks if defined rather than writing to stdout.
305 (compare_files): Call flush_output rather than fflush (outfile).
306 * diff3.c: Include diffrun.h. Change several functions to use
307 output functions from util.c rather than direct printing. Use
308 diff_error and friends rather than printing to stderr. Set global
310 (outfile, callbacks): Declare.
311 (write_output, printf_output, flush_output): Declare.
312 (diff3_run): Add parameter callbacks_arg. Use callback functions
313 rather than writing to stdout.
314 (usage): Use callbacks if defined rather than writing to stdout.
315 (read_diff): Preserve callbacks and outfile around call to
317 * util.c (perror_with_name): Use error callback if defined.
318 (pfatal_with_name, diff_error): Likewise.
319 (message5): Use printf_output and write_output.
320 (print_message_queue, print_1_line, output_1_line): Likewise.
321 (begin_output): Reject paginate_flag if there are output
323 (write_output, printf_output, flush_output): New functions.
324 * context.c: Change all output to outfile to use printf_output and
328 * normal.c: Likewise.
330 * Makefile.in (SOURCES): Add diffrun.h.
331 ($(OBJECTS)): Depend upon diffrun.h.
333 Fri Jan 16 14:58:19 1998 Larry Jones <larry.jones@sdrc.com>
335 * diff.c, diff3.c: Plug memory leaks.
337 Thu Jan 15 13:36:46 1998 Jim Kingdon <kingdon@harvey.cyclic.com>
339 * Makefile.in (installdirs): New rule, for when ../Makefile
340 recurses into this directory (bug reported by W. L. Estes).
342 Tue Nov 11 10:48:19 1997 Jim Kingdon <kingdon@harvey.cyclic.com>
344 * diff.c (diff_run): Change #ifdef on HAVE_SETMODE to #if to match
345 the other uses (fixes compilation error on unix).
347 * diff.c (diff_run): Don't set stdout to binary mode.
349 Mon, 10 Nov 1997 Jim Kingdon
351 * diff.c (run_diff): Open outfile in binary mode if --binary.
353 Thu Nov 6 12:42:12 1997 Karl Fogel <kfogel@floss.red-bean.com>
354 and Paul Eggert <eggert@twinsun.com>
356 * analyze.c: applied Paul Eggert's patch to fix the diff3 merge
357 bug described in ccvs/doc/DIFFUTILS-2.7-BUG:
358 (shift_boundaries): new var `inhibit_hunk_merge'; use it to
359 control something important that I don't quite understand, but
360 Paul apparently does, so that's okay.
362 Sat Nov 1 14:17:57 1997 Michael L.H. Brouwer <michael@thi.nl>
364 * Makefile.in: Add call to ranlib to build a table of contents for
365 the library since some systems seem to require this.
367 1997-10-28 Jim Kingdon
369 * .cvsignore: Add files du jour for Visual C++, vc50.pdb and vc50.idb.
371 * system.h: Define HAVE_TIME_H.
372 * dir.c [_WIN32]: Define CLOSEDIR_VOID.
374 1997-10-18 Jim Kingdon
376 * build_diff.com: Add diff3.c
378 Fri Sep 26 14:24:42 1997 Tim Pierce <twp@twp.tezcat.com>
380 * diff.c (diff_run): Save old value of optind before calling
381 getopt_long, then restore before returning. Eventually it would
382 be nice if diff_run were fully reentrant.
384 New diff3 library for CVS.
385 * Makefile.in (SOURCES): Add diff3.c.
386 (OBJECTS): Add diff3.o.
387 * diff3.c: New file, copied from diffutils-2.7. See diffutils for
388 earlier ChangeLogs. Undefine initialize_main macro. Remove <signal.h>.
389 (diff3_run): Renamed from main(). Add `outfile' argument. Remove
390 SIGCLD handling; we do not fork. Save optind and reset to 0
391 before calling getopt_long; restore after option processing done.
392 (read_diff): Use diff_run with a temporary output file,
393 instead of forking a diff subprocess and reading from a pipe.
394 Change DIFF_PROGRAM to "diff"; this argument is now used only for
395 diagnostic reporting.
396 (xmalloc, xrealloc): Removed.
397 (diff_program): Removed.
398 (diff_program_name): Made extern, so it may be used in other
399 library calls like `error'.
400 (initialize_main): New function.
402 Namespace munging. util.c defines both fatal() and
403 perror_with_exit(), but these cannot be used to abort diff3: both
404 attempt to longjmp() to a buffer set in diff.c, used only by
405 diff_run. This is an awful solution, but necessary until the code
406 can be cleaned up. (These functions do not *have* to be renamed,
407 since both are declared static to diff3.c and should not clash
408 with libdiff.a, but it reduces potential confusion.)
409 * diff3.c (diff3_fatal): Renamed from fatal.
410 (diff3_perror_with_exit): Renamed from perror_with_exit.
412 Eliminate exit calls.
413 (try_help): Change from `void' to `int'. Return, do not exit.
414 (diff3_fatal, diff3_perror_with_exit, process_diff): Change `exit'
416 (diff3_run): Initialize jump buffer for nonlocal exits. Change
417 exit calls to returns. Change `perror_with_exit' to
418 `perror_with_name' and add a return. Change `fatal' to
419 `diff_error' and add a return. The reasoning is that we shouldn't
420 rely on setjmp/longjmp any more than necessary.
423 (check_output): Renamed from check_stdout. Take stream argument
424 instead of blindly checking stdout. Do not close stream, but
426 (diff3_run): Initialize outstream, and close when done. Pass this
427 stream (instead of stdout) to output_diff3_edscript,
428 output_diff3_merge, and output_diff3.
430 Thu Sep 25 14:34:22 1997 Jim Kingdon <kingdon@harvey.cyclic.com>
432 * util.c (begin_output, finish_output): If PR_PROGRAM is not
433 defined (VMS), just give a fatal error if --paginate specified.
435 * Makefile.in (DISTFILES): Add ChangeLog build_diff.com
437 * build_diff.com: New file.
439 Wed Sep 24 10:27:00 1997 Jim Kingdon <kingdon@harvey.cyclic.com>
441 * Makefile.in: Also set top_srcdir. Needed to make today's other
442 Makefile.in change work.
444 * .cvsignore: New file.
446 * Makefile.in (COMPILE): Add -I options for srcdir (perhaps
447 unneeded) and change -I option for lib to use top_srcdir (needed
448 to avoid mixups with CVS's regex.h vs. the system one).
450 Sun Sep 21 19:44:42 1997 Jim Kingdon <kingdon@harvey.cyclic.com>
452 * Makefile.in (util.o): Change util.c to $<, needed for srcdir.
454 Sat Sep 20 12:06:41 1997 Tim Pierce <twp@twp.tezcat.com>
456 New diff library for CVS, based on diffutils-2.7. See diffutils
457 for earlier ChangeLogs.
458 * Makefile.in, analyze.c, cmpbuf.c, cmpbuf.h, config.hin,
459 context.c, diagmeet.note, diff.c, diff.h, dir.c, ed.c, ifdef.c,
460 io.c, normal.c, side.c, stamp-h.in, system.h, util.c, version.c:
462 (COMPILE): Add -I../lib, so we can get getopt.h.
464 * Makefile.in: Removed anything not related to libdiff.a.
465 (dist-dir): New target, copied from ../lib/Makefile.in.
466 (DISTFILES): New variable.
467 (SOURCES): Renamed from `srcs'.
468 (OBJECTS): Renamed from `libdiff_o'.
469 (Makefile): Changed dependencies to reflect
470 new, shallow config directory structure.
471 (stamp-h.in, config.h.in, config.h, stamp-h): Removed.
472 * stamp-h.in, config.h.in: Removed.
474 * system.h: Remove dup2 macro (provided by ../lib/dup2.c).
475 Include stdlib.h if STDC_HEADERS is defined (not just
478 Sat Sep 20 05:32:18 1997 Tim Pierce <twp@twp.tezcat.com>
480 Diff librarification.
482 * diff.c (diff_run): New function, renamed from `main'.
483 Initialize `outfile' based on the value of the new `out' filename
485 (initialize_main): New function.
486 * system.h: Removed initialize_main macro.
487 * diffmain.c: New file.
488 * Makefile.in (diff): Added diffmain.o.
489 (libdiff): New target.
490 (AR, libdiff_o): New variables. libdiff_o does not include
491 xmalloc.o, fnmatch.o, getopt.o, getopt1.o, regex.o or error.o,
492 because these functions are already present in CVS. It will take
493 some work to make this more general-purpose.
495 Redirect standard output.
496 * util.c: Redirect stdout to outfile: change all naked `printf'
497 and `putchar' statements to `fprintf (outfile)' and `putc (...,
498 outfile)' throughout. This should permit redirecting diff output
499 by changing `outfile' just once in `diff_run'.
500 (output_in_progress): New variable.
501 (begin_output, finish_output): Use `output_in_progress', rather than
502 `outfile', as a semaphore to avoid reentrancy problems.
503 (finish_output): Close `outfile' only if paginate_flag is set.
504 * diff.c (check_output): New function, was check_stdout. Take a
505 `file' argument, and flush it instead of closing it.
506 (diff_run): Change check_stdout to check_output.
507 (compare_files): Fflush outfile, not stdout.
509 Eliminate exit statements.
510 * diff.h: Include setjmp.h.
511 (diff_abort_buf): New variable.
512 (DIFF_ABORT): New macro.
513 * diff.c (diff_run): Change all `exit' statements to `return'.
514 Set up diff_abort_buf, so we can abort diff without
515 terminating (for libdiff.a).
516 (try_help): Return int instead of void; do not exit.
517 * util.c (fatal): Use DIFF_ABORT instead of exit.
518 (pfatal_with_name): Use DIFF_ABORT instead of exit.
520 Namespace cleanup (rudimentary). Strictly speaking, this is not
521 necessary to make diff into a library. However, namespace
522 clashes between diff and CVS must be resolved immediately, since
523 CVS is the first application targeted for use with difflib.
525 * analyze.c, diff.c, diff.h, util.c (diff_error): Renamed from `error'.
527 * version.c, diff.c, diff.h, cmp.c, diff3.c, sdiff.c
528 (diff_version_string): Renamed from version_string.
529 * diff.c, util.c, diff.h, diff3.c, error.c (diff_program_name):
530 Renamed from program_name.
532 * util.c (xmalloc, xrealloc): Removed.
533 * Makefile.in (diff_o): Added error.o and xmalloc.o.