[2556] | 1 | 2002-04-05 Paul Eggert <eggert@sic.twinsun.com>
|
---|
| 2 |
|
---|
| 3 | * NEWS, configure.ac (AC_INIT): Version 2.8.1.
|
---|
| 4 |
|
---|
| 5 | * configure.ac (AC_HEADER_STDBOOL): Add.
|
---|
| 6 | (AC_CHECK_HEADERS): Remove stdbool.h.
|
---|
| 7 | * m4/stdbool.m4: New file.
|
---|
| 8 | * m4/prereq.m4 (jm_PREREQ_EXCLUDE):
|
---|
| 9 | Use AC_HEADER_STDBOOL rather than AC_CHECK_HEADERS(stdbool.h).
|
---|
| 10 | (jm_PREREQ_HASH): Likewise.
|
---|
| 11 |
|
---|
| 12 | * src/system.h (SSIZE_MAX): Define if limits.h doesn't.
|
---|
| 13 |
|
---|
| 14 | * src/analyze.c (diff_2_files): Assign PTRDIFF_MAX - 1 to a
|
---|
| 15 | size_t variable, just in case there's a problem with ptrdiff_t
|
---|
| 16 | versus size_t.
|
---|
| 17 |
|
---|
| 18 | * lib/cmpbuf.c (errno): Remove decl; K&R C is no longer supported.
|
---|
| 19 | Include limits.h.
|
---|
| 20 | (SIZE_MAX, SSIZE_MAX): Define if standard headers don't.
|
---|
| 21 | (MIN): New macro.
|
---|
| 22 | (block_read): Do not attempt to read more than SSIZE_MAX bytes, as the
|
---|
| 23 | resulting behavior is implementation-defined. Work around bug in
|
---|
| 24 | Tru64 5.1, which can't read more than INT_MAX bytes at a time.
|
---|
| 25 | * src/cmp.c (cmp): Use block_read instead of read, to work
|
---|
| 26 | around Tru64 5.1 bug.
|
---|
| 27 | * src/diff3.c (read_diff): Likewise.
|
---|
| 28 | * src/diff3.c: Include cmpbuf.h.
|
---|
| 29 |
|
---|
| 30 | * THANKS: Add Ulrich Drepper.
|
---|
| 31 |
|
---|
| 32 | * INSTALLME: Mention GNU texinfo.
|
---|
| 33 |
|
---|
| 34 | * doc/diff.texi:
|
---|
| 35 | Use new @copying directive.
|
---|
| 36 | Put @contents first, not last, since Texinfo now suggests this.
|
---|
| 37 | Fix bug in -w documentation noted by Karl Berry.
|
---|
| 38 | Mention links for speedup.
|
---|
| 39 | New node "Speedups" for future speedups.
|
---|
| 40 | Just say "Index", not "Concept Index".
|
---|
| 41 |
|
---|
| 42 | 2002-03-26 Paul Eggert <eggert@twinsun.com>
|
---|
| 43 |
|
---|
| 44 | * src/Makefile.am:
|
---|
| 45 | (INCLUDES): Remove this obsolete macro, replacing it with:
|
---|
| 46 | (AM_CPPFLAGS): New macro.
|
---|
| 47 |
|
---|
| 48 | 2002-03-26 Albert Chin-A-Young <china@thewrittenword.com>
|
---|
| 49 |
|
---|
| 50 | * src/Makefile.am (datadir): Remove, as it conflicts with --datadir.
|
---|
| 51 |
|
---|
| 52 | 2002-03-26 Paul Eggert <eggert@twinsun.com>
|
---|
| 53 |
|
---|
| 54 | * doc/diff.texi (dircategory GNU packages): Fix typo: a "* " was
|
---|
| 55 | missing before the menu entry. Bug diagnosed by Adam Heath.
|
---|
| 56 | Also, put this dircategory after the Individual utilities dircategory,
|
---|
| 57 | to work around a compatibility problem with Debian install-info.
|
---|
| 58 |
|
---|
| 59 | 2002-03-24 Eli Zaretskii <eliz@is.elta.co.il>
|
---|
| 60 |
|
---|
| 61 | * src/io.c (sip): Do not mishandle buffered count when reverting
|
---|
| 62 | to text mode.
|
---|
| 63 |
|
---|
| 64 | 2002-03-23 Paul Eggert <eggert@twinsun.com>
|
---|
| 65 |
|
---|
| 66 | * NEWS, configure.ac (AC_INIT): Version 2.8.
|
---|
| 67 | * configure.ac (AC_PREREQ): 2.53.
|
---|
| 68 | * INSTALLME: Upgrade to gettext 0.11.1 and help2man 1.27.
|
---|
| 69 |
|
---|
| 70 | * doc/diff.texi: Upgrade the description of `patch' to GNU patch
|
---|
| 71 | 2.5.4, and revamp the documentation accordingly.
|
---|
| 72 |
|
---|
| 73 | * src/diff.c (main): Fix typo that prevented diff -y from working.
|
---|
| 74 | Bug reported by Mitsuru Chinen.
|
---|
| 75 |
|
---|
| 76 | 2002-03-15 Paul Eggert <eggert@twinsun.com>
|
---|
| 77 |
|
---|
| 78 | * lib/c-stack.c (c_stack_die) [!HAVE_SIGINFO_T]: Don't use info.
|
---|
| 79 | Bug reported by Eli Zaretskii.
|
---|
| 80 |
|
---|
| 81 | 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
|
---|
| 82 |
|
---|
| 83 | * ms/config.sed: Tweak editing of install-info-am target.
|
---|
| 84 |
|
---|
| 85 | 2002-03-12 Paul Eggert <eggert@twinsun.com>
|
---|
| 86 |
|
---|
| 87 | * NEWS, configure.ac (AC_INIT): Version 2.7.10.
|
---|
| 88 |
|
---|
| 89 | * NEWS: cmp -l -s and cmp -s -l are not allowed.
|
---|
| 90 | Deprecate diff -h, -H, -L, -P, --inhibit-hunk-merge.
|
---|
| 91 |
|
---|
| 92 | * configure.ac (jm_PREREQ_HARD_LOCALE): Add.
|
---|
| 93 | (AM_INIT_AUTOMAKE): Do not distribute shar file.
|
---|
| 94 |
|
---|
| 95 | * doc/diff.texi (Overview): byte != character.
|
---|
| 96 | (Detailed Context, Detailed Unified, Alternate Names, diff Options):
|
---|
| 97 | Do not document diff -L.
|
---|
| 98 | (Comparing Directories, Making Patches, diff Options):
|
---|
| 99 | Do not document diff -P.
|
---|
| 100 | (diff Performance, sdiff Option Summary, diff Options, sdiff Options):
|
---|
| 101 | Do not document diff -H.
|
---|
| 102 | (diff Performance, diff Options): Do not document --horizon-lines.
|
---|
| 103 | (cmp Options): Prefer -b to -c.
|
---|
| 104 | (cmp Options, diff Options, diff3 Options, patch Options,
|
---|
| 105 | sdiff Options): Put short options next to the similar long options.
|
---|
| 106 | Document --help, and use the same wording for --verbose.
|
---|
| 107 | (diff3 Options): Fix typo in description of -E, which used wrongly used
|
---|
| 108 | "-e" instead of "-E".
|
---|
| 109 |
|
---|
| 110 | * lib/hard-locale.c (alloca): Remove.
|
---|
| 111 | Include stdlib.h if available, for malloc.
|
---|
| 112 | (hard_locale): Use malloc, not alloca, so that we need not worry about
|
---|
| 113 | alloca issues. Test for storage allocation failure.
|
---|
| 114 |
|
---|
| 115 | * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HARD_LOCALE.
|
---|
| 116 | (jm_PREREQ_HARD_LOCALE): New macro.
|
---|
| 117 |
|
---|
| 118 | * src/cmp.c (specify_comparison_type): New function.
|
---|
| 119 | (check_stdout): "indices and codes" -> "byte numbers and values"
|
---|
| 120 | (main): Detect clashing options.
|
---|
| 121 | (cmp): Use "byte" rather than "char" if a translation for "byte"
|
---|
| 122 | is available, even when in the POSIX locale.
|
---|
| 123 |
|
---|
| 124 | * src/diff.c (option_help_msgid): Do not document -L, -P,
|
---|
| 125 | --horizon-lines, --inhibit-hunk-merge, -H.
|
---|
| 126 | * src/diff.h: -L -> --label
|
---|
| 127 |
|
---|
| 128 | 2002-03-11 Paul Eggert <eggert@twinsun.com>
|
---|
| 129 |
|
---|
| 130 | * NEWS, configure.ac (AC_INIT): Version 2.7.9.
|
---|
| 131 |
|
---|
| 132 | * INSTALLME: Update to autoconf 2.53, automake 1.6, help2man
|
---|
| 133 | 1.25 with patch.
|
---|
| 134 |
|
---|
| 135 | * configure.ac (AC_INIT):
|
---|
| 136 | Change package name from diff to diffutils.
|
---|
| 137 | (AM_INIT_AUTOMAKE): Use new form, with option gnits,
|
---|
| 138 | rather than old from that duplicated AC_INIT.
|
---|
| 139 | (AM_MISSING_PROG): Add help2man.
|
---|
| 140 | (REGEX_MALLOC): Define.
|
---|
| 141 | (AC_CONFIG_FILES): Add man/Makefile.
|
---|
| 142 |
|
---|
| 143 | * Makefile.am (AUTOMAKE_OPTIONS): Remove.
|
---|
| 144 | * doc/Makefile.am (AUTOMAKE_OPTIONS): Remove.
|
---|
| 145 | * lib/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
|
---|
| 146 | * ms/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
|
---|
| 147 | * src/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
|
---|
| 148 |
|
---|
| 149 | * lib/c-stack.c: Include <errno.h>
|
---|
| 150 | (ENOTSUP): Define if errno.h doesn't.
|
---|
| 151 | (SA_NODEFER, SA_ONSTACK, SA_RESETHAND, SA_SIGINFO, SIGSTKSZ,
|
---|
| 152 | _SC_PAGESIZE, ALTERNATE_STACK_SIZE, stack_t, sigaltstack):
|
---|
| 153 | Remove; we now assume them all when
|
---|
| 154 | HAVE_XSI_STACK_OVERFLOW_HEURISTIC, so we don't need
|
---|
| 155 | substitutes.
|
---|
| 156 | (<ucontext.h>): Include only if HAVE_XSI_STACK_OVERFLOW_HEURISTIC.
|
---|
| 157 | (alternate_signal_stack): Now of size SIGSTKSZ.
|
---|
| 158 | (segv_handler): Simplify, under the assumption that
|
---|
| 159 | HAVE_XSI_STACK_OVERFLOW_HEURISTIC is nonzero.
|
---|
| 160 | (c_stack_action): Likewise.
|
---|
| 161 | (exit_failure) [DEBUG]: Initialize to 0, not 1.
|
---|
| 162 | (recurse, main) [DEBUG]: Remove main args.
|
---|
| 163 |
|
---|
| 164 | * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Change
|
---|
| 165 | wording of message. Do not check for stdbool.h or ucontext.h,
|
---|
| 166 | or for ucontext_t or sigaction or sigaltstack.
|
---|
| 167 |
|
---|
| 168 | * po/LINGUAS: Add zh_TW.
|
---|
| 169 |
|
---|
| 170 | * Makefile.am (SUBDIRS): Add man.
|
---|
| 171 | * man/Makefile.am: New file.
|
---|
| 172 | * src/cmp.c (usage): Reword for help2man.
|
---|
| 173 | * src/diff.c (option_help_msgid): Likewise.
|
---|
| 174 | * src/diff3.c (option_help_msgid, usage): Likewise.
|
---|
| 175 | * src/sdiff3.c (option_help_msgid, usage): Likewise.
|
---|
| 176 | Reword for help2man.
|
---|
| 177 |
|
---|
| 178 | * THANKS: Add email address for Tower.
|
---|
| 179 |
|
---|
| 180 | * config/config.guess, config/config.sub, config/depcomp,
|
---|
| 181 | config/install-sh, config/mdate-sh, config/missing,
|
---|
| 182 | config/mkinstalldirs, config/texinfo.texi: Update
|
---|
| 183 | to recent version (maintained in other packages).
|
---|
| 184 |
|
---|
| 185 | 2002-03-04 Bruno Haible <haible@ilog.fr>
|
---|
| 186 |
|
---|
| 187 | * m4/gettext.m4 (AM_GNU_GETTEXT): Set LIBINTL and LTLIBINTL to empty if
|
---|
| 188 | no preinstalled GNU gettext was found.
|
---|
| 189 |
|
---|
| 190 | 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
|
---|
| 191 |
|
---|
| 192 | * ms/config.sed: Tweak editing of install-info-am and
|
---|
| 193 | uninstall-info-am targets, to include 8+3-butchered names of Info
|
---|
| 194 | files.
|
---|
| 195 |
|
---|
| 196 | 2002-02-28 Paul Eggert <eggert@twinsun.com>
|
---|
| 197 |
|
---|
| 198 | * NEWS, configure.ac (AC_INIT, AM_INIT_AUTOMAKE): Version 2.7.8.
|
---|
| 199 |
|
---|
| 200 | * doc/diff.texi: Add vr index.
|
---|
| 201 | Update copyright to 2002.
|
---|
| 202 | (Standards conformance): New chapter.
|
---|
| 203 | (Binary): Differing binary files are trouble unless the user asked for
|
---|
| 204 | brief output.
|
---|
| 205 | (Detailed Context): Prefer ISO time stamp format in discussion.
|
---|
| 206 | (Detailed Unified, Pagination): Likewise.
|
---|
| 207 | (Less Context): Likewise. Also use short option.
|
---|
| 208 | (Alternate Names): Separate option from arg.
|
---|
| 209 | (Making Patches): Mention -U 2.
|
---|
| 210 | (diff Options): Deprecate -LINES, as POSIX 1003.1-2001 does not
|
---|
| 211 | allow it.
|
---|
| 212 |
|
---|
| 213 | * INSTALLME: Update advice for Solaris installation problems.
|
---|
| 214 | We no longer use a test version of gettext.
|
---|
| 215 | Autoconf test version updated from 2.52f to 2.52h.
|
---|
| 216 | POSIX 1003.1-2001 patch for Automake.
|
---|
| 217 |
|
---|
| 218 | * configure.ac (AC__GNU_SOURCE): Add this,
|
---|
| 219 | replacing AH_VERBATIM of _GNU_SOURCE.
|
---|
| 220 | (tempname): Use AC_LIBOBJS, not LIBOBJS=, as now required by autoconf.
|
---|
| 221 | (jm_PREREQ_C_STACK): Add.
|
---|
| 222 | (AC_CONFIG_FILES): Remove intl/Makefile.
|
---|
| 223 | (AM_GNU_GETTEXT): Add external arg, from gettext 0.11.
|
---|
| 224 |
|
---|
| 225 | * lib/c-stack.c, lib/c-stack.h, lib/exitfail.c, lib/exitfail.h,
|
---|
| 226 | lib/posixver.c, lib/posixver.h, m4/c-stack.m4, m4/gnu-source.m4,
|
---|
| 227 | po/cs.po, po/ja.po: New files.
|
---|
| 228 |
|
---|
| 229 | * intl/ChangeLog, intl/Makefile.in, intl/VERSION,
|
---|
| 230 | intl/bindtextdom.c, intl/config.charset, intl/dcgettext.c,
|
---|
| 231 | intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c,
|
---|
| 232 | intl/dngettext.c, intl/explodename.c, intl/finddomain.c,
|
---|
| 233 | intl/gettext.c, intl/gettextP.h, intl/gmo.h, intl/hash-string.h,
|
---|
| 234 | intl/intl-compat.c, intl/l10nflist.c, intl/libgnuintl.h,
|
---|
| 235 | intl/loadinfo.h, intl/loadmsgcat.c, intl/localcharset.c,
|
---|
| 236 | intl/locale.alias, intl/localealias.c, intl/localename.c,
|
---|
| 237 | intl/ngettext.c, intl/os2compat.c, intl/os2compat.h, intl/osdep.c,
|
---|
| 238 | intl/plural-eval.c, intl/plural-exp.c, intl/plural-exp.h,
|
---|
| 239 | intl/plural.c, intl/plural.y, intl/ref-add.sin, intl/ref-del.sin,
|
---|
| 240 | intl/textdomain.c, m4/isc-posix.m4, m4/libtool.m4: Remove.
|
---|
| 241 |
|
---|
| 242 | * ABOUT-NLS: Update to Gettext 0.11.
|
---|
| 243 |
|
---|
| 244 | * Makefile.am (SUBDIRS): Remove intl.
|
---|
| 245 |
|
---|
| 246 | * config/config.guess, config/config.rpath, config/config.sub,
|
---|
| 247 | config/texinfo.tex, config/depcomp, config/texinfo.tex,
|
---|
| 248 | lib/tempname.c: Update to latest version from other packages.
|
---|
| 249 |
|
---|
| 250 | * lib/xalloc.h (xalloc_exit_failure): Remove; subsumed by exit_failure.
|
---|
| 251 | * lib/xmalloc.c: Include exitfail.h.
|
---|
| 252 | (xalloc_exit_failure): Remove; subsumed by exit_failure.
|
---|
| 253 | All uses changed.
|
---|
| 254 |
|
---|
| 255 | * lib/Makefile.am (noinst_HEADERS): Add c-stack.h, exitfail.h.
|
---|
| 256 | (libdiffutils_a_SOURCES): Add c-stack.c, exitfail.c, quotesys.c.
|
---|
| 257 | (INCLUDES): Remove.
|
---|
| 258 |
|
---|
| 259 | * lib/cmpbuf.h (buffer_lcm): New arg LCM_MAX.
|
---|
| 260 | * lib/cmpbuf.c: Include errno.h.
|
---|
| 261 | (errno): Declare if !STDC_HEADERS.
|
---|
| 262 | Include signal.h.
|
---|
| 263 | (SA_RESTART): Define if not already defined.
|
---|
| 264 | Include <inttypes.h>.
|
---|
| 265 | (PTRDIFF_MAX): Define if not already defined.
|
---|
| 266 | (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Likewise.
|
---|
| 267 | (block_read): Accommodate ancient AIX hosts that set errno to EINTR
|
---|
| 268 | after uncaught SIGCONT.
|
---|
| 269 | (buffer_lcm): Return a reasonable size if the multiple is too large.
|
---|
| 270 | New arg LCM_MAX. All callers changed.
|
---|
| 271 |
|
---|
| 272 | * lib/hard-locale.c: Include "hard-locale.h".
|
---|
| 273 | (hard_locale): Ignore ENABLE_NLS, since we want to operate on
|
---|
| 274 | locales other than LC_MESSAGES.
|
---|
| 275 |
|
---|
| 276 | * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_POSIXVER.
|
---|
| 277 | (jm_PREREQ_POSIXVER): New macro.
|
---|
| 278 |
|
---|
| 279 | * m4/setmode.m4 (AC_FUNC_SETMODE_DOS):
|
---|
| 280 | Check for fcntl.h and unistd.h unconditionally.
|
---|
| 281 | Suggested by Bruno Haible.
|
---|
| 282 |
|
---|
| 283 | * po/LINGUAS: Add cs, ja.
|
---|
| 284 | * po/POTFILES.in: Add lib/c-stack.c, src/dir.c.
|
---|
| 285 |
|
---|
| 286 | * src/Makefile.am (datadir): @DATADIRNAME@ -> share.
|
---|
| 287 | (INCLUDES): Remove intl.
|
---|
| 288 | (LDADD): Change INTLLIBS to LIBINTL.
|
---|
| 289 | No longer need to link libdiffutils.a twice.
|
---|
| 290 |
|
---|
| 291 | * src/analyze.c (diff_2_files):
|
---|
| 292 | Avoid arithmetic overflow in buffer size calculation.
|
---|
| 293 |
|
---|
| 294 | * src/cmp.c: Include c-stack.h, exitfail.h.
|
---|
| 295 | (hard_locale_LC_MESSAGES): Depend on ENABLE_NLS.
|
---|
| 296 | (try_help, check_stdout, main, cmp): 2 -> EXIT_TROUBLE.
|
---|
| 297 | (main): Check for stack overflow.
|
---|
| 298 | 0 -> EXIT_SUCCESS.
|
---|
| 299 | 1 -> EXIT_FAILURE.
|
---|
| 300 | (cmp): Likewise.
|
---|
| 301 | Accommodate ancient AIX hosts that set errno to
|
---|
| 302 | EINTR after uncaught SIGCONT.
|
---|
| 303 |
|
---|
| 304 | * src/context.c (pr_context_hunk):
|
---|
| 305 | Do not dump core if an enormous context causes an
|
---|
| 306 | arithmetic overflow.
|
---|
| 307 | (pr_unidiff_hunk): Likewise.
|
---|
| 308 | (find_hunk): Likewise.
|
---|
| 309 |
|
---|
| 310 | * src/diff.h: unsigned -> unsigned int.
|
---|
| 311 | * src/diff.c: Include c-stack.h, exitfail.h.
|
---|
| 312 | Do not include signal.h.
|
---|
| 313 | (specify_style, specify_value): Bring these routines back, as POSIX
|
---|
| 314 | requires that the order of options not matter.
|
---|
| 315 | (shortopts): New constant.
|
---|
| 316 | (group_format_option, line_format_option): New constants.
|
---|
| 317 | (main): 0 -> EXIT_SUCCESS, 1 -> EXIT_FAILURE, 2 -> EXIT_TROUBLE.
|
---|
| 318 | Ensure that order of options does not matter.
|
---|
| 319 | Check for stack overflow.
|
---|
| 320 | If contexts overflow, substitute LIN_MAX, as that's good enough.
|
---|
| 321 | If multiple contexts are specified, use their maximum.
|
---|
| 322 | -c is equivalent to -C 3 now, instead of having an implicit context;
|
---|
| 323 | likewise for -u and -U 3.
|
---|
| 324 | Use specify_style and specify_value.
|
---|
| 325 | (SIGCHLD): Do not define; now done in a header.
|
---|
| 326 | Use new style time stamp format for -u / -U.
|
---|
| 327 | Reject numeric-string options if operating in POSIX 1003.1-2001 mode.
|
---|
| 328 | Avoid overflow problems with tab width.
|
---|
| 329 | Simplify from-file and to-file code.
|
---|
| 330 | (usage): Do not mention obsolete options.
|
---|
| 331 | (filetype): Do not mention whether a file is executable.
|
---|
| 332 | Add typed memory objects.
|
---|
| 333 | (compare_files): 0 -> EXIT_SUCCESS, 1 -> EXIT_FAILURE, 2 ->
|
---|
| 334 | EXIT_TROUBLE.
|
---|
| 335 |
|
---|
| 336 | * src/diff3.c: Include c-stack.h, exitfail.h.
|
---|
| 337 | (ALLOCATE): Remove. All uses changed to xmalloc, or to xmalloc plus
|
---|
| 338 | an overflow check.
|
---|
| 339 | (myread): Remove.
|
---|
| 340 | (main): Check for stack overflow.
|
---|
| 341 | 0 -> EXIT_SUCCESS, 1 -> EXIT_FAIULRE, 2 -> EXIT_TROUBLE.
|
---|
| 342 | (try_help): Likewise.
|
---|
| 343 | (process_diff): Check for integer overflow, to avoid core dumps.
|
---|
| 344 | 2 -> EXIT_TROUBLE.
|
---|
| 345 | (read_diff): Exit with status 126 if the file is not executable,
|
---|
| 346 | for compatibility with POSIX 1003.1-2001.
|
---|
| 347 | Accommodate ancient AIX hosts that set errno to EINTR after uncaught
|
---|
| 348 | SIGCONT.
|
---|
| 349 | Check for integer overflow to avoid core dumps.
|
---|
| 350 | (fatal, perror_with_exit): 2 -> EXIT_TROUBLE.
|
---|
| 351 |
|
---|
| 352 | * src/dir.c (dir_read):
|
---|
| 353 | Ignore st_size of directories: POSIX says it's garbage.
|
---|
| 354 | Check for integer overflow to avoid core dumps.
|
---|
| 355 | (diff_dirs): 0 -> EXIT_SUCCESS, 2 -> EXIT_TROUBLE.
|
---|
| 356 |
|
---|
| 357 | * src/ifdef.c: Include <xalloc.h>.
|
---|
| 358 | (format_group, print_ifdef_lines): Avoid core dumps with bad formats.
|
---|
| 359 | (do_printf_spec): Avoid alloca.
|
---|
| 360 |
|
---|
| 361 | * src/io.c (sip):
|
---|
| 362 | Avoid integer overflow and core dumps if buffer alignments are
|
---|
| 363 | preposterously incompatible.
|
---|
| 364 | (slurp): Do not dump core if the file is growing as we read it.
|
---|
| 365 | If a regular file grows, keep reading until we catch up with its EOF.
|
---|
| 366 | (find_and_hash_each_line): Check for integer overflow to avoid cores.
|
---|
| 367 | (GUESS_LINES): Remove.
|
---|
| 368 | (guess_lines): New function. Avoid integer overflow.
|
---|
| 369 | (find_identical_ends): Use it.
|
---|
| 370 | Avoid integer overflow and possible core dumps.
|
---|
| 371 |
|
---|
| 372 | * src/sdiff.c: Include c-stack.h, exitfail.h. Do not include signal.h.
|
---|
| 373 | 0 -> EXIT_SUCCESS, 1 -> EXIT_FAILURE, 2 -> EXIT_TROUBLE.
|
---|
| 374 | (ck_editor_status): New function.
|
---|
| 375 | (main): Check for stack overflow.
|
---|
| 376 | Adopt POSIX convention for subsidiary programs not found.
|
---|
| 377 | (diffarg): Check for integer overflow to avoid core dumps.
|
---|
| 378 | (trapsigs): Remove SA_INTERRUPT special case; now done by header.
|
---|
| 379 | (SIGCHLD): Likewise.
|
---|
| 380 | (edit): Adopt POSIX convention for subsidiary programs not found.
|
---|
| 381 |
|
---|
| 382 | * src/side.c: unsigned -> unsigned int.
|
---|
| 383 |
|
---|
| 384 | * src/system.h: Don't use alloca or include <alloca.h>.
|
---|
| 385 | unsigned -> unsigned int
|
---|
| 386 | (EXIT_SUCCESS, EXIT_FAILURE, EXIT_TROUBLE): Define if not defined.
|
---|
| 387 | Include signal.h.
|
---|
| 388 | (SA_RESTART): Define if not defined.
|
---|
| 389 | (SIGCHLD): Likewise.
|
---|
| 390 |
|
---|
| 391 | * src/util.c: 2 -> EXIT_TROUBLE.
|
---|
| 392 | Adopt POSIX convention for ENOEXEC and exit status 126.
|
---|
| 393 | unsigned -> unsigned int
|
---|
| 394 |
|
---|
| 395 | 2002-01-24 Paul Eggert <eggert@twinsun.com>
|
---|
| 396 |
|
---|
| 397 | * NEWS, configure.ac (AC_INIT, AM_INIT_AUTOMAKE): Version 2.7.7.
|
---|
| 398 |
|
---|
| 399 | * intl/plural.c: Regenerate with Bison 1.31.
|
---|
| 400 |
|
---|
| 401 | * ABOUT-NLS, intl/*: Update to Gettext 0.11-pre5++.
|
---|
| 402 | * INSTALL: Update to Autoconf 2.52f.
|
---|
| 403 |
|
---|
| 404 | * INSTALLME: New file.
|
---|
| 405 | * Makefile.am (EXTRA_DIST): Add config/config.rpath, INSTALLME.
|
---|
| 406 | (DISTCLEANFILES): Remove.
|
---|
| 407 | * NEWS: Reformat for imminent 2.8 release.
|
---|
| 408 | * README: Mention INSTALLME.
|
---|
| 409 | * README-alpha: Move most of contents to INSTALLME.
|
---|
| 410 | * THANKS: Add Bruno Haible, Jim Meyering, and Eli Zaretskii.
|
---|
| 411 |
|
---|
| 412 | * config: New subdirectory, containing the following files from .:
|
---|
| 413 | config.guess, config.sub, depcomp, missing, install-sh, mkinstalldirs.
|
---|
| 414 | Move the following files here from doc: texinfo.tex, mdate-sh.
|
---|
| 415 | * config/config.guess, config/config.sub, config/texinfo.tex:
|
---|
| 416 | Update to latest version from FSF.
|
---|
| 417 | * config/config.rpath: New file, from Gettext 0.11-pre5++.
|
---|
| 418 |
|
---|
| 419 | * configure.ac (AC_INIT): Use new 3-arg form.
|
---|
| 420 | (AC_CONFIG_SRCDIR): Specify src/diff.c here, not in AC_INIT.
|
---|
| 421 | (ALL_LINGUAS): Remove: now in po/LINGUAS as per Gettext 0.11.
|
---|
| 422 | (AC_CONFIG_AUX_DIR): New macro invocation.
|
---|
| 423 |
|
---|
| 424 | * lib/Makefile.am (noinst_HEADERS): Add gettext.h.
|
---|
| 425 | * lib/gettext.h: New file, from Gettext 0.11-pre5++.
|
---|
| 426 | * lib/prepargs.c: Include <string.h>. Reported by Bruno Haible.
|
---|
| 427 |
|
---|
| 428 | * m4/codeset.m4, m4/gettext.m4, glibc21.m4, iconv.m4, isc-posix.m4,
|
---|
| 429 | lcmessage.m4, progtest.m4: Upgrade to Gettext 0.11-pre5++.
|
---|
| 430 | * m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4: New files, from
|
---|
| 431 | Gettext 0.11-pre5++.
|
---|
| 432 |
|
---|
| 433 | * po/LINGUAS: New file.
|
---|
| 434 | * po/Makefile.in.in: Upgrade to Gettext 0.11-pre5++.
|
---|
| 435 | * po/Makevars, po/Rules-quot, po/boldquot.sed: New files,
|
---|
| 436 | from Gettext 0.11-pre5++.
|
---|
| 437 |
|
---|
| 438 | * src/cmp.c (copyright_string): Update to 2002.
|
---|
| 439 | * src/diff.c (copyright_string): Likewise.
|
---|
| 440 | * src/diff3.c (copyright_string): Likewise.
|
---|
| 441 | * src/sdiff.c (copyright_string): Likewise.
|
---|
| 442 |
|
---|
| 443 | * src/cmp.c (bytes, parse_ignore_initial, cmp): Use UINTMAX_MAX
|
---|
| 444 | instead of (uintmax_t) -1, to avoid warnings on some compilers.
|
---|
| 445 | * src/io.c (file_block_read): Likewise, for SIZE_MAX.
|
---|
| 446 |
|
---|
| 447 | * src/cmp.c (usage): Reformat messages to ease translation.
|
---|
| 448 | * src/diff3.c (usage): Likewise.
|
---|
| 449 | * src/sdiff.c (usage): Likewise.
|
---|
| 450 |
|
---|
| 451 | * src/diff3.c (main): Remove unused variable.
|
---|
| 452 |
|
---|
| 453 | * src/dir.c: Include <setjmp.h>
|
---|
| 454 | (struct dirdata): New member nnames.
|
---|
| 455 | (locale_specific_sorting, failed_strcoll): New vars.
|
---|
| 456 | (dir_read): Renamed from dir_sort. Don't sort the dir.
|
---|
| 457 | Set new nnames member of struct dirdata. All callers changed.
|
---|
| 458 | (compare_names): Don't check for errno after strcasecmp.
|
---|
| 459 | Use strcoll only if locale_specific_sorting is nonzero.
|
---|
| 460 | If strcoll fails, longjmp out rather than returning a value
|
---|
| 461 | that might result in an invalid comparison function that might
|
---|
| 462 | make qsort dump core.
|
---|
| 463 | (diff_dirs): Sort the directory ourselves. Use setjmp to recover
|
---|
| 464 | from strcoll failure, falling back on native byte comparison.
|
---|
| 465 | Make local variables volatile if they need to preserve their value
|
---|
| 466 | after setjmp/longjmp.
|
---|
| 467 |
|
---|
| 468 | * src/sdiff.c (handler_index_of_SIGINT, handler_index_of_SIGPIPE):
|
---|
| 469 | New macros.
|
---|
| 470 | (main): Do not confuse signal numbers with their indices.
|
---|
| 471 | Bug reported by Bruno Haible.
|
---|
| 472 | (edit): Cat lin to long before printing with %ld, since lin might
|
---|
| 473 | be narrow than long.
|
---|
| 474 |
|
---|
| 475 | * src/system.h (UINTMAX_MAX): New macro.
|
---|
| 476 | Include gettext.h, not libgettext.h.
|
---|
| 477 | (N_): Do not wrap arg in parentheses. Fix from Bruno Haible.
|
---|
| 478 |
|
---|
| 479 | * src/util.c (finish_output): Ensure that werrno is initialized.
|
---|
| 480 | (lines_differ): Have an explicit do-nothing case for
|
---|
| 481 | IGNORE_NO_WHITE_SPACE, to pacify gcc -Wall.
|
---|
| 482 |
|
---|
| 483 | 2001-12-29 Eli Zaretskii <eliz@is.elta.co.il>
|
---|
| 484 |
|
---|
| 485 | * src/sdiff.c (interact): After extracting rlen from the editor
|
---|
| 486 | command, test for a terminating null character, not for a newline.
|
---|
| 487 |
|
---|
| 488 | * ms/config.bat: Allow longer source directory names without
|
---|
| 489 | overflowing the line length limits. Create the cache in the
|
---|
| 490 | build directory, not in the source directory
|
---|
| 491 | * ms/config.sed: Fix AC_CONFIG_LINKS for when symlinks are
|
---|
| 492 | unavailable.
|
---|
| 493 |
|
---|
| 494 | 2001-12-23 Paul Eggert <eggert@twinsun.com>
|
---|
| 495 |
|
---|
| 496 | * NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.6.
|
---|
| 497 |
|
---|
| 498 | * configure.ac (ALL_LINGUAS): Add tr.
|
---|
| 499 |
|
---|
| 500 | * src/util.c (begin_output):
|
---|
| 501 | Have child exit with status 127 rather than reporting
|
---|
| 502 | failure on its own. Set errno to 0 before invoking popen.
|
---|
| 503 | (finish_output): Report errno on pclose failure.
|
---|
| 504 | Distinguish between subsidiary program not found, and failure.
|
---|
| 505 |
|
---|
| 506 | * src/sdiff.c (not_found, execdiff): Remove.
|
---|
| 507 | (DIFF_PROGRAM_OPTION): New constant.
|
---|
| 508 | (longopts, option_help_msgid, main): Add --diff-program=PROGRAM.
|
---|
| 509 | (check_stdout): New function.
|
---|
| 510 | (main): Remove DIFF_PROGRAM. Check stdout after printing version.
|
---|
| 511 | Use check_stdout after printing help. Use execvp/perror_fatail rather
|
---|
| 512 | than execdiff. Set errno to 0 before invoking popen.
|
---|
| 513 | Check for pclose failure properly.
|
---|
| 514 | (main, edit): If child exec fails, exit with 127 rather than trying to
|
---|
| 515 | print diagnostic.
|
---|
| 516 | Distinguish between subsidiary program failing and not being found.
|
---|
| 517 | (edit): Handle signals the same way, regardless of whether we're using
|
---|
| 518 | system or fork+exec. Check for system returning -1.
|
---|
| 519 |
|
---|
| 520 | * src/diff3.c (DIFF_PROGRAM_OPTION, HELP_OPTION): New constants.
|
---|
| 521 | (longopts, main): Use them.
|
---|
| 522 | (longopts, main, option_help_msgid): New option --diff-option=PROGRAM.
|
---|
| 523 | (main): Remove DIFF_PROGRAM support.
|
---|
| 524 | Check stdout after printing version.
|
---|
| 525 | (check_stdout): Report errno info if fclose fails.
|
---|
| 526 | (read_diff): Have child exit with status 127 when program is not found,
|
---|
| 527 | rather than trying to have the child report failure. Check for
|
---|
| 528 | pclose returning -1.
|
---|
| 529 |
|
---|
| 530 | * src/diff.c (DEFAULT_WIDTH): Remove.
|
---|
| 531 | (main): Use 130 instead of DEFAULT_WIDTH, since it's not really
|
---|
| 532 | builder-settable. Do not prepend DIFF_OPTIONS.
|
---|
| 533 | (check-stdout): If fclose (stdout) fails, print errno info.
|
---|
| 534 | (option_help_msgid): Default context is 3, not 2.
|
---|
| 535 | (usage): Work even if ptrdiff_t is wider than int.
|
---|
| 536 |
|
---|
| 537 | * doc/diff.texi (diff Options): Remove DIFF_OPTIONS.
|
---|
| 538 | (Invoking diff3, Invoking sdiff): Remove DIFF_PROGRAM.
|
---|
| 539 | (diff3 Options, sdiff Options): Add --diff-program.
|
---|
| 540 |
|
---|
| 541 | * src/cmp.c (valid_suffixes):
|
---|
| 542 | Add '0', to support suffixes like "MB" and "MiB".
|
---|
| 543 | (check_stdout): Don't assume that the translations of "write failed"
|
---|
| 544 | and of "standard output" lack '%'.
|
---|
| 545 | (main): Check stdout after printing version.
|
---|
| 546 |
|
---|
| 547 | * lib/setmode.c: [HAVE_FCNTL_H && HAVE_SETMODE_DOS]: Include <fcntl.h>.
|
---|
| 548 | [!HAVE_SETMODE_DOS]: Do not include <unistd.h>.
|
---|
| 549 | (set_binary_mode): Return mode (not 1) if fd is a tty.
|
---|
| 550 | Do not assume that O_TEXT is zero.
|
---|
| 551 |
|
---|
| 552 | * doc/diff.texi (cmp Options):
|
---|
| 553 | In byte counts, a plain suffix (without any integer)
|
---|
| 554 | is assumed to modify the integer 1. Index terms like "kibibyte".
|
---|
| 555 | Document plain "k".
|
---|
| 556 |
|
---|
| 557 | (Reporting Bugs): Mention bug-report archive and test version
|
---|
| 558 | location. Ask for "diff --version" in bug reports.
|
---|
| 559 |
|
---|
| 560 | 2001-12-13 Paul Eggert <eggert@twinsun.com>
|
---|
| 561 |
|
---|
| 562 | * src/diff.c (DEFAULT_WIDTH): Remove; couldn't be changed without
|
---|
| 563 | also changing option_help_msgid. All uses replaced with 130.
|
---|
| 564 |
|
---|
| 565 | * lib/setmode.c: Include fcntl.h and unistd.h only if
|
---|
| 566 | HAVE_SETMODE_DOS.
|
---|
| 567 | (setmode): Assume a file is binary unless the mode is O_TEXT.
|
---|
| 568 | * ms/README: Fix minor typos.
|
---|
| 569 |
|
---|
| 570 | 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
|
---|
| 571 |
|
---|
| 572 | * ms/README: New file.
|
---|
| 573 |
|
---|
| 574 | * lib/setmode.c (set_binary_mode) [HAVE_SETMODE_DOS]: Don't assume
|
---|
| 575 | O_TEXT has a zero value. If FD is a terminal device, do nothing
|
---|
| 576 | and return MODE, thus pretending that it was already in the
|
---|
| 577 | requested MODE.
|
---|
| 578 | [HAVE_FCNTL_H]: Include fcntl.h (needed for O_BINARY).
|
---|
| 579 |
|
---|
| 580 | * ms/config.sed: Remove the split prevention of config.status.
|
---|
| 581 | Fix Sed commands for converting absolute file names into
|
---|
| 582 | top_srcdir-relative ones.
|
---|
| 583 |
|
---|
| 584 | * ms/config.bat: Fix typos.
|
---|
| 585 |
|
---|
| 586 | 2001-12-12 Neal H Walfield <neal@cs.uml.edu>
|
---|
| 587 |
|
---|
| 588 | * diff.c (option_help_msgid): Correct the default context width
|
---|
| 589 | from 2 to 3.
|
---|
| 590 |
|
---|
| 591 | 2001-12-11 Paul Eggert <eggert@twinsun.com>
|
---|
| 592 |
|
---|
| 593 | * m4/Makefile.am.in: Remove jm-glibc-io.m4
|
---|
| 594 |
|
---|
| 595 | * NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.5.
|
---|
| 596 |
|
---|
| 597 | * configure.ac (PR_PROGRAM): Use AC_DEFINE_UNQUOTED, so that
|
---|
| 598 | $PR_PROGRAM is expanded by sh.
|
---|
| 599 | (ptrdiff_t, ssize_t): Use AC_CHECK_TYPE with a default of int,
|
---|
| 600 | not AC_CHECK_TYPES.
|
---|
| 601 | (jm_AC_DOS, AC_FUNC_SETMODE_DOS): New macros.
|
---|
| 602 | (AC_CONFIG_FILES): Add ms/Makefile.
|
---|
| 603 |
|
---|
| 604 | * doc/diff.texi: Add --no-ignore-file-name-case.
|
---|
| 605 | File name case sensitivity now affects file name exclusion.
|
---|
| 606 | Fix typos.
|
---|
| 607 |
|
---|
| 608 | * src/util.c: Include dirname.h.
|
---|
| 609 | (dir_file_pathname): Use base_name rather than file_name_lastdirchar.
|
---|
| 610 |
|
---|
| 611 | * src/system.h (S_IXUSR, S_IXGRP, S_IXOTH): New macros.
|
---|
| 612 | Include <libgettext.h> rather than rolling it ourselves.
|
---|
| 613 | (file_name_lastdirchar, HAVE_SETMODE, set_binary_mode): Remove.
|
---|
| 614 |
|
---|
| 615 | * src/sdiff.c: Include <dirname.h>.
|
---|
| 616 | (expand_name): Use base_name rather than file_name_lastdirchar, for
|
---|
| 617 | portability to DOS.
|
---|
| 618 | (main): Initialize xalloc_exit_failure before possibly invoking
|
---|
| 619 | any memory allocator.
|
---|
| 620 |
|
---|
| 621 | * src/io.c: Include setmode.h.
|
---|
| 622 |
|
---|
| 623 | * src/diff3.c (main):
|
---|
| 624 | Initialize xalloc_exit_failure before possibly invoking any memory
|
---|
| 625 | allocator.
|
---|
| 626 |
|
---|
| 627 | * src/diff.c: Include dirname.h, setmode.h.
|
---|
| 628 |
|
---|
| 629 | (main): Later values and/or styles now silently override earlier.
|
---|
| 630 | (specify_value, specify_style): Likewise. All callers changed.
|
---|
| 631 | Remove.
|
---|
| 632 | (binary, main, option_help_msgid, compare_files):
|
---|
| 633 | HAVE_SETMODE -> HAVE_SETMODE_DOS.
|
---|
| 634 | (NO_IGNORE_FILE_NAME_CASE_OPTION): New constant.
|
---|
| 635 | (longopts, main, option_help_msgid): Support it.
|
---|
| 636 | (exclude_options): New function.
|
---|
| 637 | (main): Use it. Initialize xalloc_exit_failure before potentially
|
---|
| 638 | allocating memory.
|
---|
| 639 |
|
---|
| 640 | (filetype): Distinguish executable files from others, as POSIX
|
---|
| 641 | suggests.
|
---|
| 642 |
|
---|
| 643 | (compare_files): Use base_name instead of file_name_lastdirchar.
|
---|
| 644 |
|
---|
| 645 | * src/cmp.c: Include <hard-locale.h>, <setmode.h>.
|
---|
| 646 | (hard_locale_LC_MESSAGES): New macro.
|
---|
| 647 | (sprintc): Remove int width arg; it's now the caller's responsibility
|
---|
| 648 | to pad. All callers changed.
|
---|
| 649 | (stat_buf): New static var; was formerly a local var in 'main'.
|
---|
| 650 | (valid_suffixes): Add 'K', for 'KiB'.
|
---|
| 651 | (option_help_msgid): Don't confuse bytes with characters.
|
---|
| 652 | (main): Set xalloc_exit_failure before invoking anything that might
|
---|
| 653 | allocate memory. Fix bug: -n was incorrectly ignored when optimizing
|
---|
| 654 | the case of regular files with different lengths.
|
---|
| 655 | (cmp): Use an index column wide enough to store this comparison's
|
---|
| 656 | indexes. In locales other than the POSIX locale, say "byte"
|
---|
| 657 | rather than "char".
|
---|
| 658 |
|
---|
| 659 | * ms/config.bat: pc -> ms
|
---|
| 660 |
|
---|
| 661 | * ms/Makefile.am, m4/setmode.m4, lib/setmode.c, lib/setmode.h:
|
---|
| 662 | New file.
|
---|
| 663 |
|
---|
| 664 | * lib/Makefile.am (noinst_HEADERS): Add dirname.h, setmode.h.
|
---|
| 665 | (libdiffutils_a_SOURCES): Add basename.c, setmode.c.
|
---|
| 666 |
|
---|
| 667 | * Makefile.am (SUBDIRS): Add ms.
|
---|
| 668 |
|
---|
| 669 | 2001-12-10 Paul Eggert <eggert@twinsun.com>
|
---|
| 670 |
|
---|
| 671 | * m4/fnmatch.m4: Test for FNM_CASEFOLD.
|
---|
| 672 |
|
---|
| 673 | 2001-12-03 Paul Eggert <eggert@twinsun.com>
|
---|
| 674 |
|
---|
| 675 | * lib/posix/regex.h: Fix copyright notice.
|
---|
| 676 |
|
---|
| 677 | 2001-12-03 Paul Eggert <eggert@twinsun.com>
|
---|
| 678 |
|
---|
| 679 | * NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.4.
|
---|
| 680 |
|
---|
| 681 | * diff.texi (direntry, Overview, Comparison, Binary, Invoking cmp):
|
---|
| 682 | Use "byte" rather than "character" when talking about cmp, since
|
---|
| 683 | it compares bytes, not character.
|
---|
| 684 | (Invoking cmp): New trailing operands FROM-SKIP and TO-SKIP.
|
---|
| 685 | -i or --ignore-initial now accepts FROM-SKIP:TO-SKIP.
|
---|
| 686 | New option -n or --bytes.
|
---|
| 687 | Count operands now may be in octal or hex, and may be followed by a
|
---|
| 688 | size multiplier.
|
---|
| 689 |
|
---|
| 690 | * configure.ac (DEFAULT_DIFF_PROGRAM):
|
---|
| 691 | Define to "diff", not "$bindir/diff" (which didn't work anyway).
|
---|
| 692 | (AC_CHECK_MEMBERS): Add struct stat.st_blksize, struct stat.st_rdev.
|
---|
| 693 | (AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_RDEV): Remove; obsolescent.
|
---|
| 694 | (AC_FUNC_FORK): Use this, instead of obsolescent AC_FUNC_VFORK.
|
---|
| 695 | (AC_CONFIG_FILES, AC_CONFIG_COMMANDS): Add.
|
---|
| 696 | (AC_OUTPUT): Remove args; they were obsolescent.
|
---|
| 697 |
|
---|
| 698 | * util.c (setup_output, begin_output, finish_output):
|
---|
| 699 | HAVE_FORK -> HAVE_WORKING_FORK || HAVE_WORKING_VFORK.
|
---|
| 700 | * sdiff.c (diffpid, cleanup, main, edit): Likewise.
|
---|
| 701 | * diff3.c (read_diff): Likewise.
|
---|
| 702 |
|
---|
| 703 | * system.h (STAT_BLOCKSIZE):
|
---|
| 704 | Use HAVE_STRUCT_STAT_ST_BLKSIZE, not HAVE_ST_BLKSIZE.
|
---|
| 705 | (vfork): New macro.
|
---|
| 706 | (HAVE_FORK): Remove.
|
---|
| 707 | (set_binary_mode): New macro.
|
---|
| 708 |
|
---|
| 709 | * sdiff.c (main): HAVE_VFORK -> HAVE_WORKING_VFORK.
|
---|
| 710 | (edit): Reopen the temporary file after the editor has run, in case
|
---|
| 711 | the editor operates by unlinking the old file and linking a new one.
|
---|
| 712 | (P_tmpdir): Rename from PVT_tmpdir; this fixes a typo.
|
---|
| 713 | All uses changed.
|
---|
| 714 |
|
---|
| 715 | * io.c (sip, read_files):
|
---|
| 716 | Remove tests for HAVE_SETMODE; use set_binary_mode
|
---|
| 717 | instead of setmode.
|
---|
| 718 | (sip): Fix typo in backward lseek when reverting to text mode.
|
---|
| 719 |
|
---|
| 720 | * config.site, config.sed, config.bat: New file.
|
---|
| 721 |
|
---|
| 722 | * Makefile.am (EXTRA_DIST): Add xstrtol.c.
|
---|
| 723 | (noinst_HEADERS): Add xstrtol.h.
|
---|
| 724 | (libdiffutils_a_SOURCES): Add xstrtoumax.c.
|
---|
| 725 |
|
---|
| 726 | * cmp.c: <xstrtol.h>: Include.
|
---|
| 727 | (ignore_initial): Now an array with 2 elements. All uses changed.
|
---|
| 728 | (bytes): New var.
|
---|
| 729 | (HELP_OPTION): New constant.
|
---|
| 730 | (long_options, main): Use it.
|
---|
| 731 | (long_options, option_help_msgid, main, cmp):
|
---|
| 732 | Add support for -n or --bytes.
|
---|
| 733 | (parse_ignore_initial): New function.
|
---|
| 734 | (option_help_msgid, main): Add -i M:N.
|
---|
| 735 | (usage, main): Add two optional trailing operands, a la BSD.
|
---|
| 736 | (main): setmode -> set_binary_mode.
|
---|
| 737 | (cmp): Report byte number of what we've seen, not of the entire file.
|
---|
| 738 | This is to be consistent with the line number, which is always relative
|
---|
| 739 | with what we've seen.
|
---|
| 740 |
|
---|
| 741 | 2001-12-02 Paul Eggert <eggert@twinsun.com>
|
---|
| 742 |
|
---|
| 743 | * diff.c (main, compare_files): setmode -> set_binary_mode.
|
---|
| 744 |
|
---|
| 745 | * xstrtol.c (__xstrtol): Don't accept 'Ki'; require 'KiB'.
|
---|
| 746 |
|
---|
| 747 | * xstrtol.c (__xstrtol): Add support for IEC 60027-2.
|
---|
| 748 |
|
---|
| 749 | 2001-11-25 Paul Eggert <eggert@twinsun.com>
|
---|
| 750 |
|
---|
| 751 | * NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.3.
|
---|
| 752 |
|
---|
| 753 | * README-alpha: New file.
|
---|
| 754 |
|
---|
| 755 | * src/Makefile.am (INCLUDES): Add -I../lib, for regex.h.
|
---|
| 756 |
|
---|
| 757 | * configure.ac:
|
---|
| 758 | Don't set LIB_CLOCK_GETTIME to 'none required'; set it to
|
---|
| 759 | the empty string instead.
|
---|
| 760 |
|
---|
| 761 | * lib/Makefile.am (EXTRA_DIST): Add strtoimax.c, strtol.c.
|
---|
| 762 |
|
---|
| 763 | * Makefile.am (SUBDIRS): Put intl before lib, so that libintl.h exists.
|
---|
| 764 |
|
---|
| 765 | * lib/Makefile.am (noinst_HEADERS): Add unlocked-io.h.
|
---|
| 766 |
|
---|
| 767 | * configure.ac (__EXTENSIONS__): New define, for the unlocked macros.
|
---|
| 768 |
|
---|
| 769 | * README: Add copyright notice.
|
---|
| 770 | Remove stuff that doesn't apply any more.
|
---|
| 771 |
|
---|
| 772 | * doc/diff.texi: offsets -> indices for cmp
|
---|
| 773 |
|
---|
| 774 | * src/cmp.c (option_help_msgid): offsets -> indices
|
---|
| 775 |
|
---|
| 776 | * src/diff.c (option_help_msgid):
|
---|
| 777 | Don't mention --binary on POSIX hosts.
|
---|
| 778 |
|
---|
| 779 | * src/sdiff.c (STRIP_TRAILING_CR_OPTION): New constant.
|
---|
| 780 | (longopts, option_help_msgid, main): Add -E, --ignore-tab-expansion,
|
---|
| 781 | --strip-trailing-cr.
|
---|
| 782 |
|
---|
| 783 | * doc/diff.texi: Change direcategory from Utilities to GNU Packages.
|
---|
| 784 | Add individual utilities.
|
---|
| 785 | Switch to Free Documentation License.
|
---|
| 786 | @code -> @command
|
---|
| 787 | @samp -> @option
|
---|
| 788 | GNU -> @sc{gnu}
|
---|
| 789 | Expand tabs to spaces, except when in an example that actually
|
---|
| 790 | uses tabs.
|
---|
| 791 | Prefer @node with just one arg.
|
---|
| 792 | Document -E or --ignore-tab-expansion, --strip-trailing-cr,
|
---|
| 793 | --ignore-file-name-case.
|
---|
| 794 | Regular expressions are now grep style, not Emacs style.
|
---|
| 795 | cmp's -c or --print-chars option is now -b or --print-bytes.
|
---|
| 796 | Time stamps now depend on LC_TIME.
|
---|
| 797 | -p now implies ^[[:alpha:]$_].
|
---|
| 798 | Flags now include ' and 0.
|
---|
| 799 | cmp -i is an alias for --ignore-initial
|
---|
| 800 | Document --from-file, --to-file.
|
---|
| 801 | Document DIFF_OPTIONS.
|
---|
| 802 |
|
---|
| 803 | * configure.ac (AC_CHECK_FUNCS): Add gettimeofday, clock_gettime.
|
---|
| 804 | (LIB_CLOCK_GETTIME): New subst.
|
---|
| 805 |
|
---|
| 806 | * src/system.h: Assume C89 or better.
|
---|
| 807 | (_GNU_SOURCE): Remove; config.h now defines it.
|
---|
| 808 | (alloca): Declare like coreutils does it.
|
---|
| 809 | (verify, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, O_RDWR,
|
---|
| 810 | S_IRUSR, S_IWUSR): New macros.
|
---|
| 811 | (STAT_BLOCKSIZE): Parenthesize definiens.
|
---|
| 812 | <inttypes.h>: Include if HAVE_INTTYPES_H.
|
---|
| 813 | (CHAR_MAX, INT_MAX): Remove.
|
---|
| 814 | (PTRDIFF_MAX, SIZE_MAX): New macros.
|
---|
| 815 | (strtoumax): New decl.
|
---|
| 816 | Include stddef.h.
|
---|
| 817 | (bzero): Remove.
|
---|
| 818 | (bindtextdomain, textdomain, N_): New macros.
|
---|
| 819 | (ISPRINT, ISSPACE): Remove ifndef wrappers.
|
---|
| 820 | (ISUPPER, ISDIGIT): Remove.
|
---|
| 821 | (TOLOWER): New macro.
|
---|
| 822 | (MIN): Renamed from min; all callers changed.
|
---|
| 823 | (MAX): Likewise, from max.
|
---|
| 824 | (lin): New type.
|
---|
| 825 | (LIN_MAX): New macro.
|
---|
| 826 | (file_name_cmp): Renamed from filename_cmp. All callers changed.
|
---|
| 827 | (file_name_lastdirchar): Renamed from file_name_lastdirchar.
|
---|
| 828 | All callers changed.
|
---|
| 829 | (could_be_mvfs_stat_bug, could_be_nfs_stat_bug,
|
---|
| 830 | dev_may_have_duplicate_ino): Remove.
|
---|
| 831 | (HAVE_SETMODE, NULL_DEVICE): New macros.
|
---|
| 832 | (same_file): Do not check attributes.
|
---|
| 833 | (same_file_attributes): New macro.
|
---|
| 834 |
|
---|
| 835 | * src/util.c: Assume C89 or better.
|
---|
| 836 | int -> bool for booleans.
|
---|
| 837 | int -> lin for line numbers.
|
---|
| 838 | int -> size_t for sizes.
|
---|
| 839 | Use angle-brackets when including quotesys.h.
|
---|
| 840 | Include error.h, regex.h, xalloc.h.
|
---|
| 841 | (message5): sizeof -> offsetof
|
---|
| 842 | (begin_output): Invoke pr without -f.
|
---|
| 843 | (lines_differ): Renamed from line_cmp, and return bool not 3-way int.
|
---|
| 844 | All callers changed.
|
---|
| 845 | Add support for IGNORE_TAB_EXPANSION.
|
---|
| 846 | (change_letter): Now an array rather than a function. All
|
---|
| 847 | callers changed.
|
---|
| 848 | (translate_range): Translate line numbers to long, not lin,
|
---|
| 849 | for convenience with printf.
|
---|
| 850 | (analyze_hunk): Return enum changes instead of a count of
|
---|
| 851 | inserts and deletes. All callers changed.
|
---|
| 852 | (zalloc): New function.
|
---|
| 853 |
|
---|
| 854 | * src/side.c: Assume C89 or better.
|
---|
| 855 | int -> bool for booleans.
|
---|
| 856 | int -> lin for line numbers.
|
---|
| 857 |
|
---|
| 858 | * src/sdiff.c: Assume C89 or better.
|
---|
| 859 | int -> bool for booleans.
|
---|
| 860 | int -> lin for line numbers.
|
---|
| 861 | Use angle-brackets when including getopt.h, quotesys.h.
|
---|
| 862 | Include error.h, freesoft.h, stdio.h, xalloc.h.
|
---|
| 863 | (copyright_string): Use only most recent year.
|
---|
| 864 | (authorship_msgid, option_help_msgid): Wrap in N_().
|
---|
| 865 |
|
---|
| 866 | (tmpname): Now volatile.
|
---|
| 867 | (tmpmade): Remove.
|
---|
| 868 | (tmp): New var.
|
---|
| 869 | (private_tempnam, exists, letters): Remove.
|
---|
| 870 | (temporary_file): New function.
|
---|
| 871 | (edit): Use it.
|
---|
| 872 | (interact): Use strtoumax, not atoi.
|
---|
| 873 |
|
---|
| 874 | * src/normal.c: Assume C89 or better.
|
---|
| 875 | int -> lin for line numbers.
|
---|
| 876 |
|
---|
| 877 | * src/io.c: Assume C89 or better.
|
---|
| 878 | int -> bool for booleans.
|
---|
| 879 | int -> lin for line numbers.
|
---|
| 880 | int -> size_t for sizes.
|
---|
| 881 | Use angle-brackets when including cmpbuf.h.
|
---|
| 882 | Include regex.h, xalloc.h.
|
---|
| 883 | (word): Remove; now done in system.h.
|
---|
| 884 | (hash_value): New type; use it instead of 'unsigned' for hash values.
|
---|
| 885 | (file_block_read): New function.
|
---|
| 886 | (sip, slurp): Use it. Now static.
|
---|
| 887 | (sip): Ensure block size is a multiple of word size. Clear eof flag.
|
---|
| 888 | (slurp): Use xalloc_die to report memory exhaustion.
|
---|
| 889 | (find_and_hash_each_line): Use TOLOWER instead of _tolower.
|
---|
| 890 | Add support for IGNORE_TAB_EXPANSION.
|
---|
| 891 | (prepare_text_end): Strip trailing CR if requested.
|
---|
| 892 | (find_identical_ends): Prepare the text only once,
|
---|
| 893 | if they're duplicates.
|
---|
| 894 | Let the compiler take advantage more of the fact that the buffers are
|
---|
| 895 | word-aligned.
|
---|
| 896 | (primes): Remove.
|
---|
| 897 | (prime_offset): New var.
|
---|
| 898 | (read_var): Use prime_offset instead of primes.
|
---|
| 899 | Use zalloc instead of xmalloc + bzero.
|
---|
| 900 |
|
---|
| 901 | * src/ifdef.c: Assume C89 or better.
|
---|
| 902 | int -> lin for line numbers.
|
---|
| 903 | (format_group): Use strtoumax to parse line numbers.
|
---|
| 904 | (format_group, print_ifdef_lines): Use do_printf_spec to
|
---|
| 905 | handle printf specs.
|
---|
| 906 | (groups_letter_value): Don't use _tolower; it's locale-dependent.
|
---|
| 907 | (do_printf_spec): Renamed from scan_printf_spec; now does the printing.
|
---|
| 908 |
|
---|
| 909 | * src/ed.c: Assume C89 or better.
|
---|
| 910 | int -> lin for line numbers (or 'long' when that's more convenient).
|
---|
| 911 | (print_ed_hunk): Fix bug when handling double-dot inserts.
|
---|
| 912 |
|
---|
| 913 | * src/dir.c: Assume C89 or better.
|
---|
| 914 | int -> bool for booleans.
|
---|
| 915 | Include error.h, exclude.h, xalloc.h.
|
---|
| 916 |
|
---|
| 917 | (dir_sort): Return 0 on error, 1 on success. All callers changed.
|
---|
| 918 | compare_names -> compare_names_for_qsort.
|
---|
| 919 |
|
---|
| 920 | (compare_names): Try strcasecmp if ignore_file_name_case. Then try
|
---|
| 921 | strcoll. Use file_name_cmp only as a last resort. Warn about
|
---|
| 922 | strcasecmp or strcoll failure.
|
---|
| 923 | (compare_names_for_qsort): New function.
|
---|
| 924 |
|
---|
| 925 | (diff_dirs): Use compare_names rather than filename_cmp.
|
---|
| 926 |
|
---|
| 927 | * src/diff3.c: Assume C89 or better.
|
---|
| 928 | int -> bool for booleans.
|
---|
| 929 | int -> lin for line numbers.
|
---|
| 930 | Use angle-brackets when including getopt.h, quotesys.h.
|
---|
| 931 | Include error.h, freesoft.h, inttostr.h, xalloc.h.
|
---|
| 932 | (copyright_string): Use only most recent year.
|
---|
| 933 | (authorship_msgid, option_help_msgid): Wrap in N_().
|
---|
| 934 |
|
---|
| 935 | Rename the following variables for consistency with user-visible
|
---|
| 936 | option spellings. All uses changed.
|
---|
| 937 | (text): Renamed from always_text.
|
---|
| 938 | (initial_tab): Renamed from tab_align_flag.
|
---|
| 939 |
|
---|
| 940 | (horizon_lines): Remove. Remove all uses.
|
---|
| 941 |
|
---|
| 942 | (main): Invoke bindtextdomain and textdomain after setlocale.
|
---|
| 943 | Rename "DIFF" to "DIFF_PROGRAM".
|
---|
| 944 |
|
---|
| 945 | Try to compare file0 to file1, because this is where changes are
|
---|
| 946 | expected to come from. Diffing between these pairs of files is more
|
---|
| 947 | likely to avoid phantom changes from file0 to file1.
|
---|
| 948 | However, use file2 as the common file if this is a 3-way diff,
|
---|
| 949 | for backward compatibility. Suggested by Karl Tomlinson.
|
---|
| 950 |
|
---|
| 951 | (create_diff3_block): Use xcalloc instead of malloc + bzero.
|
---|
| 952 |
|
---|
| 953 | (INT_STRLEN_BOUND): Remove; now in system.h.
|
---|
| 954 |
|
---|
| 955 | (read_diff): Always use --horizon-lines=100 rather than trying
|
---|
| 956 | to guess it.
|
---|
| 957 | Do not pass --inhibit-hunk-merge.
|
---|
| 958 | Minimum chunk size is 1, not 8KiB.
|
---|
| 959 | Use xalloc_die to report memory exhaustion.
|
---|
| 960 | (undotlines): Use long for start, not int.
|
---|
| 961 |
|
---|
| 962 | * src/diff.h: Assume C89 or better.
|
---|
| 963 | int -> bool for booleans.
|
---|
| 964 | int -> lin for line numbers.
|
---|
| 965 | Don't include regex.h.
|
---|
| 966 | (enum changes): New enum.
|
---|
| 967 | (enum line_class): Remove; subsumed by enum changes.
|
---|
| 968 | (enum output_style): New constant OUTPUT_UNSPECIFIED.
|
---|
| 969 |
|
---|
| 970 | (ignore_space_change_flag, ignore_all_space_flag): Remove.
|
---|
| 971 | (ignore_white_space): New decl, subsuming the above two. All
|
---|
| 972 | uses changed.
|
---|
| 973 |
|
---|
| 974 | Rename the following decls for consistency with user-visible
|
---|
| 975 | option spellings. All uses changed.
|
---|
| 976 | (text): Renamed from always_text_flag.
|
---|
| 977 | (ignore_blank_lines): Renamed from ignore_blank_lines_flag.
|
---|
| 978 | (ignore_case): Renamed from ignore_case_flag.
|
---|
| 979 | (brief): Renamed from no_details_flag.
|
---|
| 980 | (initial_tab): Renamed from tab_align_flag.
|
---|
| 981 | (expand_tabs): Renamed from tab_expand_flag.
|
---|
| 982 | (starting_file): Renamed from dir_start_file.
|
---|
| 983 | (paginate): Renamed from paginate_flag.
|
---|
| 984 | (sdiff_merge_assist): Renamed from sdiff_help_sdiff.
|
---|
| 985 | (left_column): Renamed from sdiff_left_only.
|
---|
| 986 | (suppress_common_lines): Renamed from sdiff_skip_common_lines.
|
---|
| 987 | (speed_large_files): Renamed from heuristic.
|
---|
| 988 | (minimal): Renamed from no_discards.
|
---|
| 989 |
|
---|
| 990 | (inhibit_hunk_merge): Remove.
|
---|
| 991 |
|
---|
| 992 | (strip_trailing_cr, excluded, time_format): New decls.
|
---|
| 993 |
|
---|
| 994 | (files_can_be_treated_as_binary): Renamed from ignore_some_changes.
|
---|
| 995 |
|
---|
| 996 | (group_format, line_format): Now char const *[], not char *[].
|
---|
| 997 |
|
---|
| 998 | (struct file_data): Buffer is now word*, not char*, as it's always
|
---|
| 999 | aligned and this can help the compiler. buffered_chars -> buffered
|
---|
| 1000 | (since it's a byte count, not a char count). All uses changed.
|
---|
| 1001 | New member `eof'.
|
---|
| 1002 |
|
---|
| 1003 | (FILE_BUFFER): New macro.
|
---|
| 1004 |
|
---|
| 1005 | (excluded_filename, error, free_software_msgid): Remove decls; now in
|
---|
| 1006 | other .h files.
|
---|
| 1007 |
|
---|
| 1008 | (sip, slurp): Remove decls.
|
---|
| 1009 | (file_block_read): New decl.
|
---|
| 1010 | (change_letter): Now an array, not a function.
|
---|
| 1011 | (lines_differ): Renamed from line_cmp.
|
---|
| 1012 | (analyze_hunk): Now returns enum changes rather than two change counts.
|
---|
| 1013 |
|
---|
| 1014 | * src/Makefile.am (diff_LDADD): New symbol.
|
---|
| 1015 |
|
---|
| 1016 | * src/diff.c: Assume C89 or better.
|
---|
| 1017 | int -> bool for booleans.
|
---|
| 1018 | long -> off_t for line numbers.
|
---|
| 1019 | Use angle-brackets when including getopt.h, fnmatch.h, quotesys.h.
|
---|
| 1020 | Include error.h, exclude.h, freesoft.h, hard-locale.h, prepargs.h,
|
---|
| 1021 | regex.h, signal.h, xalloc.h.
|
---|
| 1022 | (copyright_string): Use only most recent year.
|
---|
| 1023 | (authorship_msgid, option_help_msgid): Wrap in N_().
|
---|
| 1024 |
|
---|
| 1025 | Rename the following variables for consistency with user-visible
|
---|
| 1026 | option spellings. All uses changed.
|
---|
| 1027 | (binary): Renamed from binary_flag.
|
---|
| 1028 | (new_file): Renamed from entire_new_file_flag.
|
---|
| 1029 | (unidirectional_new_file): Renamed from unidirectional_new_file_flag.
|
---|
| 1030 | (report_identical_files): Renamed from print_file_same_flag.
|
---|
| 1031 |
|
---|
| 1032 | (numeric_arg): Remove.
|
---|
| 1033 |
|
---|
| 1034 | (exclude, exclude_alloc, exclude_count, excluded_filename, add_exclude,
|
---|
| 1035 | add_exclude_file):
|
---|
| 1036 | Remove; now done by exclude.h.
|
---|
| 1037 |
|
---|
| 1038 | (BINARY_OPTION, FROM_FILE_OPTION, HELP_OPTION, HORIZON_LINES_OPTION,
|
---|
| 1039 | IGNORE_FILE_NAME_CASE_OPTION, INHIBIT_HUNK_MERGE_OPTION,
|
---|
| 1040 | LEFT_COLUMN_OPTION, LINE_FORMAT_OPTION, NORMAL_OPTION,
|
---|
| 1041 | SDIFF_MERGE_ASSIST_OPTION, STRIP_TRAILING_CR_OPTION,
|
---|
| 1042 | SUPPRESS_COMMON_LINES_OPTION, TO_FILE_OPTION,
|
---|
| 1043 | UNCHANGED_LINE_FORMAT_OPTION, OLD_LINE_FORMAT_OPTION,
|
---|
| 1044 | NEW_LINE_FORMAT_OPTION, UNCHANGED_GROUP_FORMAT_OPTION,
|
---|
| 1045 | OLD_GROUP_FORMAT_OPTION, NEW_GROUP_FORMAT_OPTION,
|
---|
| 1046 | CHANGED_GROUP_FORMAT_OPTION): New constants.
|
---|
| 1047 | (longopts, main): Use them.
|
---|
| 1048 |
|
---|
| 1049 | (longopts, main, option_help_msgid): Add -E, --from-file, --to-file.
|
---|
| 1050 |
|
---|
| 1051 | (main): Invoke bindtextdomain and textdomain after setlocale.
|
---|
| 1052 | Use grep syntax, not Emacs, for regular expressions.
|
---|
| 1053 | Use exclude.h, not our own functions.
|
---|
| 1054 | Use ISO 8601 time format in hard locales.
|
---|
| 1055 | Prepend DIFF_OPTIONS.
|
---|
| 1056 | Don't update ignore_some_changes.
|
---|
| 1057 | Use strtoumax instead of numeric_arg.
|
---|
| 1058 | Use specify_value when appropriate.
|
---|
| 1059 | error -> try_help when appropriate.
|
---|
| 1060 | -p now means ^[[:alpha:]$_], not ^[_a-zA-Z$].
|
---|
| 1061 | Ignore --inhibit-hunk-merge.
|
---|
| 1062 | Prefer changed group formats to unchanged ones.
|
---|
| 1063 | Remove now-unnecessary casts.
|
---|
| 1064 | Set files_can_be_treated_as_binary.
|
---|
| 1065 |
|
---|
| 1066 | (specify_value): Renamed from specify_format. All uses changed.
|
---|
| 1067 |
|
---|
| 1068 | (specify_style): Default is now unspecified, not normal. All
|
---|
| 1069 | uses changed.
|
---|
| 1070 |
|
---|
| 1071 | (set_mtime_to_now): New function.
|
---|
| 1072 | (compare_files): Use it. Use memset, not bzero.
|
---|
| 1073 | Set stdin mtime to current time even when stdin is not a regular file.
|
---|
| 1074 | Check for same file attributes, as well as for same file.
|
---|
| 1075 | Use files_can_be_treated_as_binary.
|
---|
| 1076 | "write failed" -> "standard output on output failure.
|
---|
| 1077 |
|
---|
| 1078 | * src/context.c: Assume C89 or better.
|
---|
| 1079 | int -> lin for line numbers.
|
---|
| 1080 | Include inttostr.h, regex.h.
|
---|
| 1081 | (TIMESPEC_NS): New macro.
|
---|
| 1082 | (nstrftime): New decl.
|
---|
| 1083 | (print_context_label): Use nstrftime and time_format to format times.
|
---|
| 1084 | Print numeric time stamp value if localtime fails.
|
---|
| 1085 | (print_context_function): New function.
|
---|
| 1086 | (pr_context_hunk, pr_unidiff_hunk): Use it.
|
---|
| 1087 | (find_function): Use size_t for sizes, not int.
|
---|
| 1088 |
|
---|
| 1089 | * src/cmp.c: Assume C89 or better.
|
---|
| 1090 | int -> bool for booleans.
|
---|
| 1091 | long -> off_t for line numbers.
|
---|
| 1092 | Use angle-brackets when including cmpbuf.h, getopt.h.
|
---|
| 1093 | Include error.h, freesoft.h, inttostr.h, xalloc.h.
|
---|
| 1094 | (copyright_string): Use only most recent year.
|
---|
| 1095 | (authorship_msgid): Wrap in N_().
|
---|
| 1096 | (buffer): Now word*, not char*. All uses changed.
|
---|
| 1097 | (word): Remove macro; now in system.h.
|
---|
| 1098 | (long_options, option_help_msgid, main): -c --print-chars ->
|
---|
| 1099 | -b --print-bytes
|
---|
| 1100 | (check_stdout): "write failed" -> "standard output"
|
---|
| 1101 | (option_help_msgid): Wrap in N_().
|
---|
| 1102 | (main): Invoke bindtextdomain and textdomain after setlocale.
|
---|
| 1103 | Use strtoumax instead of doing the work ourselves.
|
---|
| 1104 | Check for same_file_attributes as well as same_file.
|
---|
| 1105 | (cmp): Use ssize_t for read returns, not size_t.
|
---|
| 1106 | Do not assume that size_t is not narrower than int.
|
---|
| 1107 | Do not assume that line numbers fit in 'long'.
|
---|
| 1108 | (block_compare_and_count, block_compare):
|
---|
| 1109 | Compiler now checks that buffers are word-aligned.
|
---|
| 1110 | (block_compare_and_count): Count sizes with size_t, not long.
|
---|
| 1111 | (sprintc): byte arg is unsigned char, not unsigned.
|
---|
| 1112 |
|
---|
| 1113 | * src/analyze.c: Assume C89 or better.
|
---|
| 1114 | int -> lin for line numbers.
|
---|
| 1115 | int -> bool for booleans.
|
---|
| 1116 | unsigned int -> size_t for sizes.
|
---|
| 1117 | Use angle-brackets when including cmpbuf.h.
|
---|
| 1118 | Include error.h, regex.h, xalloc.h.
|
---|
| 1119 | (discard_confusing_lines, diff_2_files): Use zalloc rather
|
---|
| 1120 | than xalloc+bzero.
|
---|
| 1121 | (discard_confusing_lines): unsigned int -> lin for values that
|
---|
| 1122 | are really line numbers.
|
---|
| 1123 | (shift_boundaries): Do not inhibit hunk merges.
|
---|
| 1124 | (build_reverse_script, build_script, diff_2_files): Use |, not ||.
|
---|
| 1125 | (diff_2_files): no_details_flag & ~ignore_some_changes ->
|
---|
| 1126 | files_can_be_treated_as_binary. Esure that buffer size is a multiple
|
---|
| 1127 | of sizeof (word). Use file_block_read to read buffers.
|
---|
| 1128 | (diff_2_files): Abort if output style is not one of the
|
---|
| 1129 | expected styles.
|
---|
| 1130 |
|
---|
| 1131 | 2001-11-23 Paul Eggert <eggert@twinsun.com>
|
---|
| 1132 |
|
---|
| 1133 | * src/Makefile.am, m4/vararrays.m4: New file.
|
---|
| 1134 |
|
---|
| 1135 | * m4/prereq.m4 (jm_PREREQ_READUTMP):
|
---|
| 1136 | Remove, as it gives autoheader the willies.
|
---|
| 1137 |
|
---|
| 1138 | * m4/README, lib/prepargs.h, lib/prepargs.c, lib/offtostr.c,
|
---|
| 1139 | lib/umaxtostr.c, lib/inttostr.c, lib/inttostr.h,
|
---|
| 1140 | lib/imaxtostr.c, lib/freesoft.h: New files.
|
---|
| 1141 |
|
---|
| 1142 | * lib/freesoft.c: Include config.h, freesoft.h rather than diff.h.
|
---|
| 1143 | (free_software_msgid): Wrap contents in N_.
|
---|
| 1144 |
|
---|
| 1145 | * lib/cmpbuf.h: Use prototypes instead of old-style functions.
|
---|
| 1146 |
|
---|
| 1147 | * lib/cmpbuf.c:
|
---|
| 1148 | Don't include system.h; instead, include config.h, unistd.h.
|
---|
| 1149 | Use prototypes instead of old-style functions.
|
---|
| 1150 | (block_read): Don't assume that int is no wider than size_t.
|
---|
| 1151 |
|
---|
| 1152 | * lib/Makefile.am, po/POTFILES.in: New file.
|
---|
| 1153 |
|
---|
| 1154 | 2001-11-22 Paul Eggert <eggert@twinsun.com>
|
---|
| 1155 |
|
---|
| 1156 | * pc/config.h:
|
---|
| 1157 | Define filename_cmp as an object-like macro, not as a function-like
|
---|
| 1158 | macro.
|
---|
| 1159 |
|
---|
| 1160 | * exgettext: Always operate in the C locale.
|
---|
| 1161 | Set AWK using a method that works even with broken shells.
|
---|
| 1162 |
|
---|
| 1163 | * doc/Makefile.am: New file.
|
---|
| 1164 |
|
---|
| 1165 | * configure.ac (AC_INIT):
|
---|
| 1166 | Use src/diff.c, not diff.h, as the source files got removed.
|
---|
| 1167 | (AM_CONFIG_HEADER): Switch from AC_CONFIG_HEADER.
|
---|
| 1168 | (AC_ARG_PROGRAM, AC_MINIX): Remove.
|
---|
| 1169 |
|
---|
| 1170 | (AC_PREREQ, AM_INIT_AUTOMAKE, ALL_LINGUAS, AC_PROG_AWK,
|
---|
| 1171 | AM_PROG_CC_STDC, AC_PROG_RANLIB, AC_C_INLINE, AC_C_VARARRAYS,
|
---|
| 1172 | DEFAULT_DIFF_PROGRAM, DEFAULT_EDITOR_PROGRAM,
|
---|
| 1173 | AC_STRUCT_ST_MTIM_NSEC): Add.
|
---|
| 1174 |
|
---|
| 1175 | (PR_PROGRAM): AC_DEFINE.
|
---|
| 1176 |
|
---|
| 1177 | (AC_SYS_LARGEFILE): Use instead of our homebrew version.
|
---|
| 1178 |
|
---|
| 1179 | (_GNU_SOURCE): Define if not defined.
|
---|
| 1180 |
|
---|
| 1181 | (AC_CHECK_HEADERS): Add stdbool.h, unistd.h.
|
---|
| 1182 | (AC_CHECK_TYPES): Add ptrdiff_t, uintmax_t.
|
---|
| 1183 | (AM_GNU_GETTEXT, XGETTEXT): Add.
|
---|
| 1184 |
|
---|
| 1185 | (WITH_MVFS_STAT_BUG, WITH_NFS_STAT_BUG): Remove.
|
---|
| 1186 | (HAVE_MEMCHR): Remove.
|
---|
| 1187 | (AC_CHECK_FUNCS): Add diraccess.
|
---|
| 1188 | (AC_REPLACE_FUNCS): Add memchr, waitpid.
|
---|
| 1189 | (jm_FUNC_GLIBC_UNLOCKED_IO, jm_FUNC_GNU_STRFTIME, jm_FUNC_MALLOC,
|
---|
| 1190 | jm_FUNC_REALLOC, jm_PREREQ_ERROR, jm_PREREQ_QUOTEARG, jm_PREREQ_REGEX,
|
---|
| 1191 | jm_PREREQ_TEMPNAME, jm_AC_PREREQ_XSTRTOUMAX, AC_FUNC_FNMATCH): Add.
|
---|
| 1192 | (fnmatch.h, regex.h): Do not create these files unless we're using
|
---|
| 1193 | our own fnmatch and regex.
|
---|
| 1194 |
|
---|
| 1195 | (AC_OUTPUT): Add doc/Makefile, intl/Makefile, lib/Makefile,
|
---|
| 1196 | lib/posix/Makefile, m4/Makefile, po/Makefile.in, src/Makefile.
|
---|
| 1197 |
|
---|
| 1198 | * Makefile.am: New file.
|
---|
| 1199 |
|
---|
| 1200 | * po/en_GB.po: Don't translate "program" to "programme".
|
---|
| 1201 |
|
---|
| 1202 | 2001-11-20 Paul Eggert <eggert@twinsun.com>
|
---|
| 1203 |
|
---|
| 1204 | * m4/prereq.m4: New file.
|
---|
| 1205 |
|
---|
| 1206 | 2001-03-16 Paul Eggert <eggert@twinsun.com>
|
---|
| 1207 |
|
---|
| 1208 | * lib/tempname.c (uint64_t):
|
---|
| 1209 | Define if not defined, and if UINT64_MAX is not defined.
|
---|
| 1210 |
|
---|
| 1211 | 2001-02-26 Paul Eggert <eggert@twinsun.com>
|
---|
| 1212 |
|
---|
| 1213 | * lib/tempname.c: glibc 1.32
|
---|
| 1214 |
|
---|
| 1215 | 2001-02-17 Paul Eggert <eggert@twinsun.com>
|
---|
| 1216 |
|
---|
| 1217 | * m4/Makefile.am.in: GNU fileutils 4.1
|
---|
| 1218 |
|
---|
| 1219 | 2001-01-09 Paul Eggert <eggert@twinsun.com>
|
---|
| 1220 |
|
---|
| 1221 | * lib/tempname.c (struct_stat64): New macro.
|
---|
| 1222 | (direxists, __gen_tempname): Use it. This avoids a portability problem
|
---|
| 1223 | with Solaris 8.
|
---|
| 1224 |
|
---|
| 1225 | * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
|
---|
| 1226 | (<stddef.h>, <stdint.h>, <string.h>):
|
---|
| 1227 | Include only if STDC_HEADERS || _LIBC.
|
---|
| 1228 | (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
|
---|
| 1229 | (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
|
---|
| 1230 | (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
|
---|
| 1231 | (__set_errno): Define this macro if <errno.h> doesn't.
|
---|
| 1232 | (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
|
---|
| 1233 | Define these macros if <stdio.h> doesn't.
|
---|
| 1234 | (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
|
---|
| 1235 | Define these macros if <sys/stat.h>
|
---|
| 1236 | doesn't. Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
|
---|
| 1237 | (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
|
---|
| 1238 | __xstat64): Define if not _LIBC.
|
---|
| 1239 | (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
|
---|
| 1240 | (__gen_tempname): Invoke gettimeofday only if HAVE_GETTIMEOFDAY
|
---|
| 1241 | || _LIBC; otherwise, fall back on plain "time".
|
---|
| 1242 | Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
|
---|
| 1243 |
|
---|
| 1244 | * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
|
---|
| 1245 |
|
---|
| 1246 | 2000-10-25 Paul Eggert <eggert@twinsun.com>
|
---|
| 1247 |
|
---|
| 1248 | * lib/hard-locale.c: New file.
|
---|
| 1249 |
|
---|
| 1250 | 2000-02-05 Paul Eggert <eggert@twinsun.com>
|
---|
| 1251 |
|
---|
| 1252 | * exgettext: From GCC repository
|
---|
| 1253 |
|
---|
| 1254 | 1999-07-06 Paul Eggert <eggert@twinsun.com>
|
---|
| 1255 |
|
---|
| 1256 | * lib/mkstemp.c: glibc 2.2
|
---|
| 1257 |
|
---|
| 1258 | 1998-12-11 Paul Eggert <eggert@twinsun.com>
|
---|
| 1259 |
|
---|
| 1260 | * src/sdiff.c (lf_snarf):
|
---|
| 1261 | Fix bug when help line wrapped around the input buffer.
|
---|
| 1262 |
|
---|
| 1263 | 1998-09-15 Paul Eggert <eggert@twinsun.com>
|
---|
| 1264 |
|
---|
| 1265 | * diff.texi: Add @dircategory and @direntry.
|
---|
| 1266 |
|
---|
| 1267 | 1998-09-14 Paul Eggert <eggert@twinsun.com>
|
---|
| 1268 |
|
---|
| 1269 | * Makefile.in (VERSION): Version 2.7.2.
|
---|
| 1270 | (DEFAULT_DIFF_PROGRAM): Renamed from DIFF_PROGRAM.
|
---|
| 1271 | (PR_PROGRAM): All `configure' to define it.
|
---|
| 1272 | (srcs): Add $(diffutils_srcs), freesoft.c, quotearg.c instead of
|
---|
| 1273 | quote.c, quotearg.h.
|
---|
| 1274 | (distfiles): Add acconfig.h, message/*.
|
---|
| 1275 | (all): Depend on $(destfiles), not info.
|
---|
| 1276 | (version.c): Parenthesize `GNU diffutils'.
|
---|
| 1277 | (common_o): Add freesoft.o
|
---|
| 1278 | (diff_o): quote.o -> quotearg.o
|
---|
| 1279 | (diff3_o, sdiff_o): Likewise.
|
---|
| 1280 | (diff.dvi): Depend on version.texi.
|
---|
| 1281 | (diff.o diff3.o quotearg.o sdiff.o util.o):
|
---|
| 1282 | New dependency on quotearg.h
|
---|
| 1283 | (diff3.o): DIFF_PROGRAM -> DEFAULT_DIFF_PROGRAM.
|
---|
| 1284 | (sdiff.o): Likewise.
|
---|
| 1285 | (messages.po): Remove.
|
---|
| 1286 | (message/msgid.po, message/template.po): New rules.
|
---|
| 1287 | (maintainer-clean): Renamed from realclean.
|
---|
| 1288 | (install): Install from source directory, if applicable.
|
---|
| 1289 | Invoke install-info if needed.
|
---|
| 1290 | (install-strip): New rule.
|
---|
| 1291 | (check): Set DIFF.
|
---|
| 1292 | (stamp-h.in): Don't put the date into the timestamp.
|
---|
| 1293 | (D_dirs): Add $D/message.
|
---|
| 1294 | ($D.tar.gz): Compress with gzip -9.
|
---|
| 1295 | Don't use ln to create distribution; it doesn't work with symlinks.
|
---|
| 1296 | (srcs, distfiles, diff_o, diff3_o, sdiff_o): Rename quotearg.c to
|
---|
| 1297 | quotesys.c and quotearg.h to quotesys.h.
|
---|
| 1298 |
|
---|
| 1299 | * configure.in (AC_PATH_PROG): Add PR_PROGRAM.
|
---|
| 1300 | If available, prefer support for large files unless the user specified
|
---|
| 1301 | one of the CPPFLAGS, LDFLAGS, or LIBS variables.
|
---|
| 1302 | (AC_STRUCT_ST_RDEV): Add.
|
---|
| 1303 | (HAVE_ST_FSTYPE_STRING): Add.
|
---|
| 1304 | (--with-mvfs-stat-bug, --with-nfs-stat-bug): New options.
|
---|
| 1305 | (HAVE_MEMCHR): New macro.
|
---|
| 1306 | (AC_CHECK_FUNCS): Add sicprocmask.
|
---|
| 1307 |
|
---|
| 1308 | * diff.h (XTERN): Renamed from EXTERN.
|
---|
| 1309 | (struct filedata): Remove dir_p arg.
|
---|
| 1310 | (struct comparison): New type.
|
---|
| 1311 | (diff_2_files, diff_dirs)" Ise ot/
|
---|
| 1312 | (error): Add printf attribute if applicable.
|
---|
| 1313 | (free_software_msgid): New decl.
|
---|
| 1314 | (pr_program): New decl.
|
---|
| 1315 | (fatal): Add noreturn attribute.
|
---|
| 1316 | (pfatal_with_name): Likewise.
|
---|
| 1317 |
|
---|
| 1318 | * system.h (__attribute__): New macro.
|
---|
| 1319 | (getenv): Don't declare if HAVE_STDLIB_H.
|
---|
| 1320 | (CHAR_MAX): New macro.
|
---|
| 1321 | (<locale.h>): New include.
|
---|
| 1322 | (<locale.h>): Include before <libintl.h>.
|
---|
| 1323 | (could_be_mvfs_stat_bug, could_be_nfs_stat_bug,
|
---|
| 1324 | dev_may_have_duplicate_ino, same_special_file): New macros.
|
---|
| 1325 | (same_file): Use them.
|
---|
| 1326 |
|
---|
| 1327 | * cmp.c (authorship_msgid): New var.
|
---|
| 1328 | (free_software_msgid): New decl.
|
---|
| 1329 | (error): Now has printf attribute.
|
---|
| 1330 | (try_help): Likewise.
|
---|
| 1331 | (long_options): Don't assume ASCII.
|
---|
| 1332 | (try_help): Now accepts operand arg.
|
---|
| 1333 | (main): Check for -1, not EOF, when calling getopt_long.
|
---|
| 1334 | Report --ignore-initial value when complaining about it.
|
---|
| 1335 | Output copyright and free software info with -v.
|
---|
| 1336 | Don't assume ASCII.
|
---|
| 1337 | Report last operand when one is missing.
|
---|
| 1338 | Report text of extra operand.
|
---|
| 1339 | Move block_read into cmpbuf.c.
|
---|
| 1340 |
|
---|
| 1341 | * diff.c (authorship_msgid): New var.
|
---|
| 1342 | (quotesys.h): Include.
|
---|
| 1343 | (ck_atoi): Remove.
|
---|
| 1344 | (function_regexp_list, ignore_regexp_list): Now static.
|
---|
| 1345 | (binary_flag): Renamed from binary_I_O.
|
---|
| 1346 | (entire_new_file_flag, unidirectional_new_file_flag,
|
---|
| 1347 | print_file_same_flag): Now static.
|
---|
| 1348 | (numeric_arg): Renamed from ck_atoi.
|
---|
| 1349 | New argument specifying the argument type.
|
---|
| 1350 | (longopts, main): Don't assume ASCII.
|
---|
| 1351 | (longopts): Remove old aliases --file-label, --entire-new-file,
|
---|
| 1352 | --ascii, --print.
|
---|
| 1353 | (main): Check for -1, not EOF, when calling getopt_long.
|
---|
| 1354 | Use numeric_arg to report errors.
|
---|
| 1355 | Report error if -l specified but pagination is not supported.
|
---|
| 1356 | Report error if -S is specified twice with conflicting values.
|
---|
| 1357 | Have --version conform to the new GNU standards.
|
---|
| 1358 | Add new --from-file, --to-file, --inhibit-hun,-merge options.
|
---|
| 1359 | Make the horizon at least as large as the context.
|
---|
| 1360 | Add casts to pacify gcc -Wall.
|
---|
| 1361 | (try_help): Add operand arg.
|
---|
| 1362 | (option_help_msgid): Doc fix to match above.
|
---|
| 1363 | (usage): Indent option_help_msgid.
|
---|
| 1364 | (compare_files): Now takes struct comparison
|
---|
| 1365 | instead of two directory names and a depth.
|
---|
| 1366 | (NONEXISTENT, UNOPENED, ERRNO_ENCODE, ERRNO_DECODE):
|
---|
| 1367 | New macros.
|
---|
| 1368 | (DIR_P): New macro.
|
---|
| 1369 | Report error if fflush does.
|
---|
| 1370 |
|
---|
| 1371 | * cmpbuf.c (block_read): Moved here from cmp.c.
|
---|
| 1372 |
|
---|
| 1373 | * cmpbuf.h (block_read): New decl.
|
---|
| 1374 |
|
---|
| 1375 | * io.c (cmpbuf.h): Include.
|
---|
| 1376 | (slurp): Check for arithmetic overflow when computing buffer size.
|
---|
| 1377 |
|
---|
| 1378 | * dir.c (diff_dirs): Check for recursive directory loop.
|
---|
| 1379 | Arg is now struct comparison const *.
|
---|
| 1380 | (dir_loop): New function
|
---|
| 1381 |
|
---|
| 1382 | * analyze.c (no_discards): Remove.
|
---|
| 1383 | (inhibit): Remove.
|
---|
| 1384 | (shift_boundaries): Don't inhibit. If inhibit_hunk_merge is nonzero,
|
---|
| 1385 | don't merge hunks.
|
---|
| 1386 | (briefly_report): Now returns 2 if trouble, CHANGES otherwise.
|
---|
| 1387 | (diff_2_files): Now takes struct comparison. If briefly_report reports
|
---|
| 1388 | trouble, pass it on to caller.
|
---|
| 1389 |
|
---|
| 1390 | * side.c (print_half_line): Add brackets to pacify GCC -Wall.
|
---|
| 1391 |
|
---|
| 1392 | * sdiff.c (quotesys.h): Include.
|
---|
| 1393 | (DIFF_PROGRAM, DEFAULT_EDITOR_PROGRAM): Remove.
|
---|
| 1394 | (free_software_msgid, editor_program, not_found): New vars.
|
---|
| 1395 | (diffbin, edbin): Remove.
|
---|
| 1396 | (editor_program): Renamed from edbin.
|
---|
| 1397 | (edit, interact): Now take extra string arg.
|
---|
| 1398 | (exiterr, fatal, perror_fatal, try_help): Add noreturn attribute.
|
---|
| 1399 | (sigset_t, sigemptyset, sigmask, sigaddset, SIG_BLOCK, SIG_SETMASK):
|
---|
| 1400 | (sigprocmask): New macros, if !HAVE_SIGPROCMASK.
|
---|
| 1401 | (error): Now has printf attribute.
|
---|
| 1402 | (longopts, main): Don't assume ASCII.
|
---|
| 1403 | (try_help): New operand arg.
|
---|
| 1404 | (usage): Conform to new GNU standards.
|
---|
| 1405 | (main): Set static vars for editor and diff program.
|
---|
| 1406 | Compare getopt_long result to -1, not EOF.
|
---|
| 1407 | -v conforms to new GNU standard.
|
---|
| 1408 | Complain better about extra and missing operands.
|
---|
| 1409 | If HAVE_VFORK, block SIGINT and SIGPIPE in the parent, since when
|
---|
| 1410 | the child munges its handlers it may somp on the parent.
|
---|
| 1411 | Pass rname to intract.
|
---|
| 1412 | Translate not-found message before forking.
|
---|
| 1413 | (give_help): Just output it all at once.
|
---|
| 1414 | (edit): New args lname, lline, rname, rline.
|
---|
| 1415 | (edit): New command 'd'.
|
---|
| 1416 | (interact): New args lname, rname.
|
---|
| 1417 |
|
---|
| 1418 | * util.c (quotesys.h): Include.
|
---|
| 1419 | (PR_PROGRAM): New macro.
|
---|
| 1420 | (pfatal_with_name): Abort if error returns.
|
---|
| 1421 | (fatal): Likewise.
|
---|
| 1422 | (print_message_queue): Free message chain after printing.
|
---|
| 1423 | (currently_recursive): Renamed from current_depth, and now a boolean.
|
---|
| 1424 | (begin_output): Report error if fflush does.
|
---|
| 1425 | Avoid stdio and gettext in child.
|
---|
| 1426 |
|
---|
| 1427 | * diff3.c (quotesys.h): Include.
|
---|
| 1428 | (free_software_msgid): New decl.
|
---|
| 1429 | (RANGE_START, RANGE_END): Renamed from START and END.
|
---|
| 1430 | (fatal, perror_with_exit, try_help): Add noreturn attribute.
|
---|
| 1431 | (error): Add printf attribute.
|
---|
| 1432 | (diff_program): Now a ptr, not an array.
|
---|
| 1433 | Initialize to DEFAULT_DIFF_PROGRAM instead of DIFF_PROGRAM.
|
---|
| 1434 | (longopts, main): Don't assume ASCII.
|
---|
| 1435 | (main): Use DIFF environment var to specify name of diff program.
|
---|
| 1436 | Compare getopt_long result to -1, not EOF.
|
---|
| 1437 | -v now reports version according to new GNU standard.
|
---|
| 1438 | Report spelling of extra operand, or last operand before missing one.
|
---|
| 1439 | (try_help): Now takes operand arg.
|
---|
| 1440 | (option_help_ms): Fix typo: missing comma.
|
---|
| 1441 | (usage): Update as per current GNU standards.
|
---|
| 1442 | (environ): Remove decl.
|
---|
| 1443 | (read_diff): Invoke diff with --inhibit-hunk-merge.
|
---|
| 1444 | Translate `not found' message before forking.
|
---|
| 1445 | Quote name of diff program.
|
---|
| 1446 | Pass horizon lines.
|
---|
| 1447 | `memory exhausted' -> `Memory exhausted'
|
---|
| 1448 |
|
---|
| 1449 | * pc/makefile (%.exe): Remove.
|
---|
| 1450 | (pc-clean): Remove *.exe
|
---|
| 1451 | * pc/makefile.sed (DEFAULT_DIFF_PROGRAM): Renamed from DIFF_PROGRAM.
|
---|
| 1452 | When editing mkinstalldirs rule, look for exec_prefix and prefix.
|
---|
| 1453 | Add .exe when installing files.
|
---|
| 1454 | * pc/emx/config.h (same_file): Add.
|
---|
| 1455 | * pc/config.h (same_file): Remove.
|
---|
| 1456 | * pc/djgpp/config.h: Adjust to latest patch from eliz.
|
---|
| 1457 | * pc/djgpp/makefile.sed: Don't alter PROGRAMS.
|
---|
| 1458 | * pc/pc.c: Update FSF address.
|
---|
| 1459 | (quote_system_arg): Renamed from system_quote_arg.
|
---|
| 1460 |
|
---|
| 1461 | * README: Add --with-mvfs-stat-bug, --with-nfs-stat-bug.
|
---|
| 1462 |
|
---|
| 1463 | * getmsgids: Add copyright date and update FSF address.
|
---|
| 1464 |
|
---|
| 1465 | * diff.texi: Document recent changes.
|
---|
| 1466 | The patch doc still corresponds to patch 2.2, unfortunately.
|
---|
| 1467 | Update GNU bug reporting address. Omit Larry Wall's address;
|
---|
| 1468 | it's obsolete and he's busy with perl.
|
---|
| 1469 |
|
---|
| 1470 | * context.c: Fix spacing.
|
---|
| 1471 |
|
---|
| 1472 | * NEWS: Mention --from-file=FILE, --to-file=FILE, ed.
|
---|
| 1473 |
|
---|
| 1474 | * acconfig.h, freesoft.c, message/de.po, message/en_UK.po,
|
---|
| 1475 | message/es.po, message/fr.po, message/pl.po, message/sv.po:
|
---|
| 1476 | New files.
|
---|
| 1477 |
|
---|
| 1478 | * ed.c: Remove `#if 0'ed code.
|
---|
| 1479 |
|
---|
| 1480 | * normal.c, waitpid.c: Update FSF address.
|
---|
| 1481 |
|
---|
| 1482 | 1998-03-15 Paul Eggert <eggert@twinsun.com>
|
---|
| 1483 |
|
---|
| 1484 | * quotesys.c: Renamed from quotearg.c.
|
---|
| 1485 |
|
---|
| 1486 | * quotesys.h: Renamed from quotearg.h
|
---|
| 1487 | (__QUOTESYS_P): Renamed from __QUOTEARG_P.
|
---|
| 1488 |
|
---|
| 1489 | 1997-05-05 Paul Eggert <eggert@twinsun.com>
|
---|
| 1490 |
|
---|
| 1491 | * quotesys.c, quotesys.h: New file.
|
---|
| 1492 |
|
---|
| 1493 | Mon Nov 14 05:10:56 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1494 |
|
---|
| 1495 | Add internationalization support.
|
---|
| 1496 | Several messages have been changed slightly,
|
---|
| 1497 | to make them more consistent and easier to translate.
|
---|
| 1498 | All strings that are messages are passed through gettext once before
|
---|
| 1499 | being used, so that they can be localized.
|
---|
| 1500 | Each function and macro whose first parameter is a gettext msgid
|
---|
| 1501 | has had its first parameter's name changed so it ends in `msgid'.
|
---|
| 1502 | All arrays of msgids have had their names changed to end in `msgid'.
|
---|
| 1503 | `getmsgids' uses this to determine which strings are msgids.
|
---|
| 1504 |
|
---|
| 1505 | * pc/COPYING, pc/INSTALL, pc/config.h,
|
---|
| 1506 | pc/djgpp/config.h, pc/djgpp/makefile.sed,
|
---|
| 1507 | pc/emx/config.h, pc/emx/diff.def, pc/emx/gnuregex.def,
|
---|
| 1508 | pc/emx/makefile.sed,
|
---|
| 1509 | pc/makefile, pc/makefile.sed, pc/pc.c: New files, for PC support.
|
---|
| 1510 |
|
---|
| 1511 | * getmsgids: New file.
|
---|
| 1512 |
|
---|
| 1513 | * Makefile.in (PACKAGE, VERSION, diffutils_srcs, D): New vars.
|
---|
| 1514 | (version.c, version.texi, messages.po): New files.
|
---|
| 1515 | messages.po is built automatically from source files and `getmsgids'.
|
---|
| 1516 | (distfiles): Add them, pc/*, and getmsgids.
|
---|
| 1517 | (diff.info): Now depends on version.texi.
|
---|
| 1518 | (realclean): Clean messages.po, version.*.
|
---|
| 1519 | (dist): Just build $D.tar.gz.
|
---|
| 1520 | ($D.tar.gz): New file, takes over old `dist' function.
|
---|
| 1521 | Don't assume $(distfiles) are all in same directory.
|
---|
| 1522 |
|
---|
| 1523 | * configure.in (AC_CHECK_HEADERS): Add libintl.h, locale.h.
|
---|
| 1524 | (AC_CHECK_LIB): Check for -lintl.
|
---|
| 1525 |
|
---|
| 1526 | * analyze.c (briefly_report): Rewrite `message (A?"B":"C")' as
|
---|
| 1527 | `if (A) message ("B") : message ("C")'; this is for getmsgids.
|
---|
| 1528 | (briefly_report, diff_2_files): For label, use file_label if set.
|
---|
| 1529 | * diff.c (compare_files): Likewise.
|
---|
| 1530 |
|
---|
| 1531 | * system.h (gettext): Declare; use a stub if ! HAVE_LIBINTL_H.
|
---|
| 1532 | (setlocale): Declare; use a stub if ! HAVE_LOCALE_H.
|
---|
| 1533 |
|
---|
| 1534 | * cmp.c, diff.c, diff3.c, sdiff.c (main):
|
---|
| 1535 | Invoke setlocale first thing, to tell library we're internationalized.
|
---|
| 1536 | (option_help_msgid): New constant.
|
---|
| 1537 | (usage): Use it, so message is translated one option at a time.
|
---|
| 1538 | * sdiff (help_msgid, give_help): Likewise.
|
---|
| 1539 |
|
---|
| 1540 | * cmp.c (sprintc): Renamed from `printc'.
|
---|
| 1541 | Now outputs to a buffer instead of stdout.
|
---|
| 1542 | (cmp): Use new sprintc; it's easier to internationalize.
|
---|
| 1543 |
|
---|
| 1544 | * diff.c (main): -D FOO now outputs `/* ! FOO */ instead of
|
---|
| 1545 | `/* not FOO */'.
|
---|
| 1546 |
|
---|
| 1547 | * sdiff.c (version_string): Fix decl typo: `const' was missing.
|
---|
| 1548 | (trapsigs): Ignore sigaction failure, to be compatible with `signal'.
|
---|
| 1549 |
|
---|
| 1550 | * util.c (struct msg, message5, print_message_queue):
|
---|
| 1551 | Allocate just one block of memory to save a message.
|
---|
| 1552 |
|
---|
| 1553 | Wed Nov 9 17:42:44 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1554 |
|
---|
| 1555 | * sdiff.c (trapsigs): Don't check signal return value, since it's
|
---|
| 1556 | bogus under djgpp.
|
---|
| 1557 |
|
---|
| 1558 | Mon Oct 31 07:27:27 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1559 |
|
---|
| 1560 | * Makefile.in (srcs, diff_o, diff3_o, sdiff_o):
|
---|
| 1561 | New files quote.c, quote.o.
|
---|
| 1562 |
|
---|
| 1563 | * diff.h (function_regexp, ignore_regexp): Replace lists of compiled
|
---|
| 1564 | regexps with these single compiled regexps. All users changed.
|
---|
| 1565 | (regexp_list,function_regexp_list,ignore_regexp_list): Move to diff.c.
|
---|
| 1566 | * diff.c (add_regexp): Build one big regexp instead of a regexp list.
|
---|
| 1567 | (summarize_regexp_list): New function.
|
---|
| 1568 | (regexp_list): Redesigned struct; moved here from diff.h.
|
---|
| 1569 | (function_regexp_list, ignore_regexp_list): Likewise, for vars.
|
---|
| 1570 |
|
---|
| 1571 | * context.c (find_function): Simplify interface:
|
---|
| 1572 | don't return size of function line. All callers changed.
|
---|
| 1573 | (print_context_script, find_function): INT_MAX now denotes no
|
---|
| 1574 | previous match; this is simpler than `- file->prefix_lines - 1'.
|
---|
| 1575 |
|
---|
| 1576 | * diff3.c (read_diff): Quote arguments with system_quote_arg.
|
---|
| 1577 | * sdiff.c (main): Use system_quote_arg to compute command.
|
---|
| 1578 | * diff.c (option_list): Quote options with system_quote_arg.
|
---|
| 1579 | * util.c (begin_output): Use system_quote_arg to compute command.
|
---|
| 1580 |
|
---|
| 1581 | * util.c (pr_program): New var.
|
---|
| 1582 | (analyze_hunk): Fix off-by-1 line length bug.
|
---|
| 1583 | Match with one big regexp instead of a list of regexps.
|
---|
| 1584 | Use new `trivial_length' local instead of comparing first byte to `\n'.
|
---|
| 1585 | Help the compiler with linbuf local vars.
|
---|
| 1586 |
|
---|
| 1587 | * system.h (system_quote_arg):
|
---|
| 1588 | New function; replaces SYSTEM_QUOTE_ARG macro.
|
---|
| 1589 |
|
---|
| 1590 | Sat Oct 15 20:09:12 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1591 |
|
---|
| 1592 | * system.h (_tolower): Define if not already defined.
|
---|
| 1593 | * io.c (find_and_hash_each_line): Change tolower to _tolower; this
|
---|
| 1594 | speeds up diff -i considerably on some hosts (e.g. Solaris 2.3).
|
---|
| 1595 | * util.c (line_cmp): Likewise.
|
---|
| 1596 | * ifdef.c (groups_letter_value): Likewise.
|
---|
| 1597 |
|
---|
| 1598 | * diff.h (ignore_some_line_changes): Remove. All users changed.
|
---|
| 1599 | * io.c (find_and_hash_each_line): Don't invoke line_cmp if the length
|
---|
| 1600 | differs and -i is in force. Don't assume ISSPACE ('\n') is nonzero.
|
---|
| 1601 |
|
---|
| 1602 | * diff.h (xmalloc_exit_failure): New variable.
|
---|
| 1603 | All `main' programs set this variable at the start.
|
---|
| 1604 | xmalloc and xrealloc are now taken from GNU library.
|
---|
| 1605 | * cmp.c (main): Align buffer size to word size; some mallocs care.
|
---|
| 1606 | * io.c (slurp): Likewise.
|
---|
| 1607 | * diff.c (add_exclude): Can now assume xrealloc (0, ...) works.
|
---|
| 1608 | (add_regexp): Free storage on failure. Allocate storage all at one go.
|
---|
| 1609 | * system.h (malloc, realloc): Remove unused declarations.
|
---|
| 1610 | * diff3.c, sdiff.c, util.c (xmalloc, xrealloc): Remove.
|
---|
| 1611 | * sdiff.c (diffarg): Take advantage of cleaner xrealloc semantics.
|
---|
| 1612 |
|
---|
| 1613 | * io.c (ROL): Use sizeof to make it more generic.
|
---|
| 1614 |
|
---|
| 1615 | * Makefile.in (common_o): New variable.
|
---|
| 1616 | Link error.o and xmalloc.o into all programs.
|
---|
| 1617 | (check): Depend on $(PROGRAMS).
|
---|
| 1618 |
|
---|
| 1619 | * diff.h (error): Change to GNU library standard. All callers changed.
|
---|
| 1620 | * diff3.c (main): Use strerror (EISDIR) instead of "Is a directory".
|
---|
| 1621 | (fatal, perror_with_exit): Use `error'.
|
---|
| 1622 | * util.c (perror_with_name, fatal): Use GNU `error'.
|
---|
| 1623 | (error): Remove.
|
---|
| 1624 |
|
---|
| 1625 | Wed Oct 12 17:04:40 1994 David J. MacKenzie (djm@duality.gnu.ai.mit.edu)
|
---|
| 1626 |
|
---|
| 1627 | * cmp.c (main): Set xmalloc_exit_failure.
|
---|
| 1628 |
|
---|
| 1629 | Sat Oct 1 05:24:19 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1630 |
|
---|
| 1631 | * Version 2.7 released.
|
---|
| 1632 |
|
---|
| 1633 | * configure.in (AC_HEADER_SYS_WAIT): Add.
|
---|
| 1634 | (AC_CHECK_HEADERS): Remove sys/wait.h.
|
---|
| 1635 | (AC_CHECK_FUNCS): Add tmpnam.
|
---|
| 1636 | * system.h (<sys/wait.h>, WEXITSTATUS): Use simpler scheme
|
---|
| 1637 | now that HAVE_SYS_WAIT_H is not set on hosts
|
---|
| 1638 | that are incompatible with Posix applications.
|
---|
| 1639 |
|
---|
| 1640 | * util.c (dir_file_pathname): Use filename_lastdirchar not strrchr.
|
---|
| 1641 | * sdiff.c (expand_name): Likewise.
|
---|
| 1642 | (private_tempnam): Use tmpnam if HAVE_TMPNAM; this simplifies porting.
|
---|
| 1643 | (exists, letters): Omit if HAVE_TMPNAM.
|
---|
| 1644 |
|
---|
| 1645 | * diff3.c (read_diff): If STAT_BLOCKSIZE yields zero,
|
---|
| 1646 | adjust it to a more reasonable value.
|
---|
| 1647 |
|
---|
| 1648 | Sat Sep 24 20:36:40 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1649 |
|
---|
| 1650 | * sdiff.c (exists, private_tempname): Adopt latest GNU libc algorithm.
|
---|
| 1651 | (private_tempnam): Specialize for sdiff to avoid portability problems.
|
---|
| 1652 |
|
---|
| 1653 | Thu Sep 22 16:47:00 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1654 |
|
---|
| 1655 | * configure.in (AC_ARG_PROGRAM): Added.
|
---|
| 1656 | (AC_OUTPUT): Add [date > stamp-h].
|
---|
| 1657 |
|
---|
| 1658 | * Makefile.in (DEFAULT_EDITOR_PROGRAM, DIFF_PROGRAM, LIBOBJS,
|
---|
| 1659 | NULL_DEVICE, PR_PROGRAM, PROGRAMS): New variables.
|
---|
| 1660 | (check, stamp-h.in, cmp.o, util.o): New targets.
|
---|
| 1661 | (edit_program_name): New variable; replaces old binprefix method.
|
---|
| 1662 | (install, uninstall): Use it.
|
---|
| 1663 | (binprefix): Removed.
|
---|
| 1664 | (distfiles): Add stamp-h.in.
|
---|
| 1665 | (clean): Clean stamp-h.
|
---|
| 1666 | (config.hin, config.h): Use time stamp files.
|
---|
| 1667 | (cmp_o): Add $(LIBOBJS).
|
---|
| 1668 | (install): Install info files from srcdir if they're not in `.'.
|
---|
| 1669 |
|
---|
| 1670 | * cmp.c, io.c (word): Don't define if already defined.
|
---|
| 1671 |
|
---|
| 1672 | * comp.c (main): Use setmode, not open(..., O_BINARY); this gets stdin.
|
---|
| 1673 | Use NULL_DEVICE instead of "/dev/null".
|
---|
| 1674 | (cmp): Use %lu instead of %ld when it is more likely to be right.
|
---|
| 1675 |
|
---|
| 1676 | * diff.h (PR_FILE_NAME): Rename to PR_PROGRAM and move to Makefile.in,
|
---|
| 1677 | util.c.
|
---|
| 1678 |
|
---|
| 1679 | * diff3.c (main): Give proper diagnostic if too many labels were given.
|
---|
| 1680 | (read_diff): Use SYSTEM_QUOTE_ARG.
|
---|
| 1681 |
|
---|
| 1682 | * system.h: <string.h>: Include if HAVE_STRING_H, too.
|
---|
| 1683 | <ctype.h>: Include here. All includers changed.
|
---|
| 1684 | (CTYPE_DOMAIN, ISDIGIT, ISPRINT, ISSPACE, ISUPPER): New macros that
|
---|
| 1685 | work around common <ctype.h> problems.
|
---|
| 1686 | (O_BINARY): Remove.
|
---|
| 1687 | (SYSTEM_QUOTE_ARG): New macros.
|
---|
| 1688 |
|
---|
| 1689 | * diff.c: Add comment.
|
---|
| 1690 |
|
---|
| 1691 | * util.c (PR_PROGRAM): Moved here from diff.h.
|
---|
| 1692 | (begin_output): Use SYSTEM_QUOTE_ARG.
|
---|
| 1693 |
|
---|
| 1694 | * io.c (read_files): Set mode to binary before returning 1.
|
---|
| 1695 |
|
---|
| 1696 | * sdiff.c (TMPDIR_ENV): New macro.
|
---|
| 1697 | (DEFAULT_EDITOR_PROGRAM): Renamed from DEFAULT_EDITOR for consistency.
|
---|
| 1698 | (expand_name): Change `isdir' to `is_dir' to avoid theoretical ctype
|
---|
| 1699 | namespace contamination.
|
---|
| 1700 | (main): Use SYSTEM_QUOTE_ARG.
|
---|
| 1701 | (private_tempnam): Don't access "/tmp" directly; use PVT_tmpdir.
|
---|
| 1702 |
|
---|
| 1703 | Tue Sep 13 18:46:43 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1704 |
|
---|
| 1705 | * configure.in (AC_FUNC_MEMCHR): Remove. Autoconf didn't adopt this,
|
---|
| 1706 | since we need not worry about an old experimental library
|
---|
| 1707 | where memchr didn't work.
|
---|
| 1708 | (AC_FUNC_MEMCMP): Not needed, since we only test for equality.
|
---|
| 1709 | (AC_REPLACE_FUNCS): Add test for memchr.
|
---|
| 1710 | (AC_CHECK_FUNCS): Check for memchr, not memcpy, since it'll be cached.
|
---|
| 1711 | (AC_CHECK_HEADERS): Add string.h; regex.c uses on some old hosts.
|
---|
| 1712 |
|
---|
| 1713 | * system.h (memcmp): Define in terms of bcmp.
|
---|
| 1714 | Use HAVE_MEMCHR to test for all mem* routines.
|
---|
| 1715 |
|
---|
| 1716 | * Makefile.in (srcs): Remove memcmp.c.
|
---|
| 1717 | We use bcmp if memcmp doesn't work, since we only test for equality.
|
---|
| 1718 |
|
---|
| 1719 | Mon Sep 12 15:52:22 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1720 |
|
---|
| 1721 | * configure.in (AC_CONFIG_HEADER): Rename config.h.in to config.hin.
|
---|
| 1722 | (AC_ISC_POSIX, AC_MINIX): Go back to these old names for Autoconf 2.
|
---|
| 1723 | (AC_CHECK_HEADERS): Remove now-redundant check for <string.h>.
|
---|
| 1724 | (AC_CHECK_FUNCS): Check for strchr.
|
---|
| 1725 | (AC_FUNC_MEMCHR, AC_FUNC_MEMCMP, AC_CHECK_FUNCS): Use special-purpose
|
---|
| 1726 | macros when suitable.
|
---|
| 1727 | * memcmp.c: New file.
|
---|
| 1728 | * Makefile.in (CPPFLAGS, DEFS, CFLAGS, LDFLAGS, prefix, exec_prefix):
|
---|
| 1729 | Default to autoconf-specified strings.
|
---|
| 1730 | (COMPILE): Use the defaults.
|
---|
| 1731 | (srcs): Add memcmp.c.
|
---|
| 1732 | (distfiles): Rename config.h.in->config.hin, install.sh->install-sh.
|
---|
| 1733 | (Makefile, config.h, config.hin, config.status): Rework for
|
---|
| 1734 | compatibility with Autoconf 2.
|
---|
| 1735 | * io.c (binary_file_p): Assume non-broken memchr.
|
---|
| 1736 | * memchr.c: Assume compiler understands void *; otherwise
|
---|
| 1737 | we don't match GCC's internal declaration of memchr.
|
---|
| 1738 | * system.h: Use more modern autoconf approach to standard C headers.
|
---|
| 1739 | * version.c: Include <config.h>, not "config.h".
|
---|
| 1740 |
|
---|
| 1741 | * diff.c, diff.h (ignore_some_line_changes):
|
---|
| 1742 | New variable; replaces `length_varies'.
|
---|
| 1743 | (line_end_char): Replace with '\n'; it wasn't being used consistently.
|
---|
| 1744 |
|
---|
| 1745 | * io.c (find_and_hash_each_line): Fix inconsistencies with -b -w -i and
|
---|
| 1746 | incomplete lines. Put incomplete lines into their own bucket.
|
---|
| 1747 | This means line_cmp no longer needs line length arguments,
|
---|
| 1748 | and equivalence classes' line lengths no longer need to include \n.
|
---|
| 1749 | Invoke line_cmp only if ignore_some_line_changes.
|
---|
| 1750 | (prepare_text_end): -B no longer ignores missing newlines.
|
---|
| 1751 | (read_files): Allocate another bucket for incomplete lines.
|
---|
| 1752 |
|
---|
| 1753 | * util.c (line_cmp): Now takes just two arguments. No longer
|
---|
| 1754 | optimizes for common case of exact equality; the caller does that
|
---|
| 1755 | optimization now. The caller is changed accordingly.
|
---|
| 1756 | Optimize for the common case of mostly equality.
|
---|
| 1757 | Use isupper+tolower instead of islower+toupper, for consistency.
|
---|
| 1758 |
|
---|
| 1759 | * waitpid.c (waitpid): Fix typo with internal scoping.
|
---|
| 1760 |
|
---|
| 1761 | Thu Sep 8 08:23:15 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1762 |
|
---|
| 1763 | * configure.in: Revamp for Autoconf 2.
|
---|
| 1764 | * memchr.c, waitpid.c: New source files for substitute functions.
|
---|
| 1765 | * Makefile.in (diff_o, diff3_o, sdiff_o): Add $(LIBOBJS).
|
---|
| 1766 | (srcs): Add memchr.c, waitpid.c.
|
---|
| 1767 | (distfiles): Add install.sh, memchr.c, waitpid.c, install.sh.
|
---|
| 1768 | * system.h: Use Autoconf 2 style HAVE_DIRENT_H etc. macros for dirs.
|
---|
| 1769 | * dir.c (dir_sort): Prefer NAMLEN (p) to strlen (p->d_name).
|
---|
| 1770 | Change VOID_CLOSEDIR to CLOSEDIR_VOID for Autoconf 2.
|
---|
| 1771 | * sdiff.c, util.c (memchr, waitpid): Remove; use new substitutes.
|
---|
| 1772 | * diff3.c (read_diff): Use new waitpid substitute.
|
---|
| 1773 |
|
---|
| 1774 | * cmp.c, diff.c, diff3.c, sdiff.c (check_stdout, try_help): New fns.
|
---|
| 1775 | (usage): Just print more detailed usage message; let caller exit.
|
---|
| 1776 | * diff.c (option_help): New variable.
|
---|
| 1777 | (filetype): Add Posix.1b file types.
|
---|
| 1778 |
|
---|
| 1779 | Fri Sep 2 16:01:49 1994 Paul Eggert <eggert@twinsun.com>
|
---|
| 1780 |
|
---|
| 1781 | * configure.in: Switch to new autoconf names. Add sys/file.h test.
|
---|
| 1782 | * Makefile.in (distclean): Clean config.cache, config.log
|
---|
| 1783 | (used by new autoconf).
|
---|
| 1784 |
|
---|
| 1785 | * diff.c, diff3.c, (main), sdiff.c (trapsigs): If we'll have children,
|
---|
| 1786 | make sure SIGCHLD isn't ignored.
|
---|
| 1787 |
|
---|
| 1788 | * diff3.c (DIFF_CHUNK_SIZE): Removed. Get size from STAT_BLOCKSIZE.
|
---|
| 1789 | (INT_STRLEN_BOUND): New macro.
|
---|
| 1790 |
|
---|
| 1791 | * ifdef.c (format_group, groups_letter_value):
|
---|
| 1792 | Use * instead of [] in prototypes.
|
---|
| 1793 |
|
---|
| 1794 | * system.h: Include <sys/file.h> only if HAVE_SYS_FILE_H.
|
---|
| 1795 | (S_IXGRP, S_IXOTH, S_IXUSR): Remove unused macros.
|
---|
| 1796 |
|
---|
| 1797 | * util.c (begin_output): Check fdopen result.
|
---|
| 1798 |
|
---|
| 1799 | The following changes simplify porting to non-Posix environments.
|
---|
| 1800 | * cmp.c, diff.c, diff3.c, sdiff.c, (main): Call initialize_main first.
|
---|
| 1801 | * diff.c (binary_I_O): New variable for --binary option.
|
---|
| 1802 | (main, usage, compare_files): Support --binary option.
|
---|
| 1803 | (compare_files): Use filename_lastdirchar to find last
|
---|
| 1804 | directory char in a file name.
|
---|
| 1805 | * cmp.c (main), diff.c (compare_files), dir.c (compare_names,
|
---|
| 1806 | diff_dirs): Use filename_cmp to compare file names.
|
---|
| 1807 | Use same_file to determine whether two files are the same.
|
---|
| 1808 | * context.c (print_context_label): Check whether ctime yields 0.
|
---|
| 1809 | * diff3.c (read_diff), sdiff.c (cleanup, main, waitpid),
|
---|
| 1810 | util.c (begin_output): Use popen+pclose if !HAVE_FORK.
|
---|
| 1811 | * io.c (sip): If HAVE_SETMODE, test for binary files in O_BINARY mode.
|
---|
| 1812 | * sdiff.c (ck_fdopen): Function removed.
|
---|
| 1813 | (edit): Use system if !HAVE_FORK.
|
---|
| 1814 | (execdiff): Now assumes caller has pushed all args, plus trailing 0.
|
---|
| 1815 | All callers changed.
|
---|
| 1816 | (private_tempnam): Try TMP if TMPDIR isn't defined.
|
---|
| 1817 | Fit temporary filenames into 8.3 limit.
|
---|
| 1818 | * system.h (STAT_BLOCKSIZE): Don't define if already defined.
|
---|
| 1819 | (min, max): Undef if already defined.
|
---|
| 1820 | (filename_cmp, filename_lastdirchar, HAVE_FORK, HAVE_SETMODE,
|
---|
| 1821 | initialize_main, O_BINARY, same_file): New macros.
|
---|
| 1822 |
|
---|
| 1823 | Fri Jun 17 11:23:53 1994 David J. MacKenzie (djm@geech.gnu.ai.mit.edu)
|
---|
| 1824 |
|
---|
| 1825 | * Makefile.in (info, dvi, diff.dvi): New targets.
|
---|
| 1826 | (clean): Remove TeX output files.
|
---|
| 1827 |
|
---|
| 1828 | Fri Jun 17 05:37:52 1994 Paul Eggert (eggert@twinsun.com)
|
---|
| 1829 |
|
---|
| 1830 | * cmp.c, io.c (word): Change from typedef to #define, to avoid
|
---|
| 1831 | collision with Unicos 8.0 <sys/types.h>, which also typedefs `word'.
|
---|
| 1832 |
|
---|
| 1833 | Thu Apr 15 00:53:01 1994 Paul Eggert (eggert@twinsun.com)
|
---|
| 1834 |
|
---|
| 1835 | * diff3.c (scan_diff_line), util.c (print_number_range): Don't
|
---|
| 1836 | rely on promotion to make the old-style parameter type agree
|
---|
| 1837 | with the prototype parameter type; this doesn't work on
|
---|
| 1838 | Apollos running bsd4.3.
|
---|
| 1839 |
|
---|
| 1840 | Mon Jan 3 02:05:51 1994 Paul Eggert (eggert@twinsun.com)
|
---|
| 1841 |
|
---|
| 1842 | * Makefile.in (LDFLAGS): Remove -g. Change all link commands
|
---|
| 1843 | to use both $(CFLAGS) and $(LDFLAGS).
|
---|
| 1844 |
|
---|
| 1845 | Mon Dec 13 12:23:27 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1846 |
|
---|
| 1847 | * system.h: Don't assume dirent.h exists just because
|
---|
| 1848 | _POSIX_VERSION is defined.
|
---|
| 1849 |
|
---|
| 1850 | Fri Dec 3 18:39:39 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1851 |
|
---|
| 1852 | * diff.c (main): allow -pu.
|
---|
| 1853 |
|
---|
| 1854 | Tue Nov 23 03:51:08 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1855 |
|
---|
| 1856 | * Makefile.in (distclean): Remove config.h.
|
---|
| 1857 |
|
---|
| 1858 | Wed Nov 10 00:28:27 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1859 |
|
---|
| 1860 | * Version 2.6 released.
|
---|
| 1861 |
|
---|
| 1862 | * analyze.c (too_expensive): New variable, for heuristic to
|
---|
| 1863 | limit the worst-case cost to O(N**1.5 log N) at the price of
|
---|
| 1864 | producing suboptimal output for large inputs with many differences.
|
---|
| 1865 | (diff_2_files): Initialize it.
|
---|
| 1866 | (struct partition): New type.
|
---|
| 1867 | (SNAKE_LIMIT): New macro; merely documents already-used number 20.
|
---|
| 1868 | (diag): New `minimal' arg; all callers changed. Put results into
|
---|
| 1869 | struct partition. Apply `too_expensive' heuristic. Tune.
|
---|
| 1870 | (compareseq): New `minimal' arg; all callers changed. Tune.
|
---|
| 1871 | (shift_boundaries): Improve heuristic to also coalesce adjacent runs
|
---|
| 1872 | of changes more often.
|
---|
| 1873 |
|
---|
| 1874 | * diff.c (long_options, main, usage): Add `--help'.
|
---|
| 1875 | (main): Send version number to stdout, not stderr.
|
---|
| 1876 | (usage): Send usage to stdout, not stderr.
|
---|
| 1877 | (compare_files): Initialize `inf' properly.
|
---|
| 1878 |
|
---|
| 1879 | * io.c (word): Change to `int'; it makes a big difference on x86.
|
---|
| 1880 | (sip, slurp): Put off allocating room to hold the whole file until we
|
---|
| 1881 | have to read the whole file. This wins if the file turns out
|
---|
| 1882 | to be binary.
|
---|
| 1883 |
|
---|
| 1884 | * util.c (xmalloc, xrealloc): "virtual memory" -> "memory"
|
---|
| 1885 | (primes): Omit large primes if INT_MAX is small.
|
---|
| 1886 |
|
---|
| 1887 | * sdiff.c (usage): Send usage to stdout, not stderr.
|
---|
| 1888 | (long_options, main, usage): Add `--help'.
|
---|
| 1889 | (main): Send version number to stdout, not stderr. Exit afterwards.
|
---|
| 1890 |
|
---|
| 1891 | * diff3.c (usage): Send usage to stdout, not stderr.
|
---|
| 1892 | (long_options, main, usage): Add `--help'.
|
---|
| 1893 | (read_diff): Detect integer overflow in buffer size calculations.
|
---|
| 1894 |
|
---|
| 1895 | * cmp.c (word): New type. All uses of `long' for
|
---|
| 1896 | word-at-a-time comparisons changed to `word'.
|
---|
| 1897 | (long_options, main, usage): Add `--help'.
|
---|
| 1898 | (usage): Send usage to stdout, not stderr.
|
---|
| 1899 | (main): Add `-v'. Send version number to stdout, not stderr.
|
---|
| 1900 |
|
---|
| 1901 | * configure.in (AC_HAVE_HEADERS): Add unistd.h; remove AC_UNISTD_H.
|
---|
| 1902 |
|
---|
| 1903 | Mon Sep 27 07:20:24 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1904 |
|
---|
| 1905 | * diff.c (add_exclude_file): Cast memchr to (char *)
|
---|
| 1906 | to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1907 |
|
---|
| 1908 | * Makefile.in (cmp): Add version.o.
|
---|
| 1909 |
|
---|
| 1910 | * analyze.c (diff_2_files): Work around memcmp bug with size=0.
|
---|
| 1911 |
|
---|
| 1912 | * cmp.c (main, usage, version_string): Add --version option.
|
---|
| 1913 |
|
---|
| 1914 | * system.h (malloc, realloc): Declare only if !HAVE_STDLIB_H.
|
---|
| 1915 | (memchr): Declare only if !HAVE_MEMCHR. These changes are
|
---|
| 1916 | needed to keep some nonstandard hosts happy.
|
---|
| 1917 |
|
---|
| 1918 | * util.c (memchr): Make first arg char const *
|
---|
| 1919 | to match standard.
|
---|
| 1920 | (xmalloc, xrealloc): Cast malloc, realloc
|
---|
| 1921 | to (VOID *) to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1922 |
|
---|
| 1923 | * diff3.c (xmalloc, xrealloc): Cast malloc, realloc
|
---|
| 1924 | to (VOID *) to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1925 |
|
---|
| 1926 | * sdiff.c (xmalloc, xrealloc): Cast malloc, realloc
|
---|
| 1927 | to (VOID *) to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1928 | (lf_copy, lf_skip, lf_snarf): Cast memchr to (char *)
|
---|
| 1929 | to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1930 | (memchr): Make first arg char const *
|
---|
| 1931 | to match standard.
|
---|
| 1932 |
|
---|
| 1933 | Mon Sep 27 00:23:37 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1934 |
|
---|
| 1935 | * Version 2.5 released.
|
---|
| 1936 |
|
---|
| 1937 | * analyze.c (diff_2_files): Work around memcmp bug with size=0.
|
---|
| 1938 |
|
---|
| 1939 | * cmp.c (main, usage, version_string): Add --version option.
|
---|
| 1940 | * Makefile.in (cmp): Add version.o.
|
---|
| 1941 |
|
---|
| 1942 | * diff.c (add_exclude_file): Cast memchr to (char *)
|
---|
| 1943 | to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1944 | * sdiff.c (lf_copy, lf_skip, lf_snarf): Likewise.
|
---|
| 1945 |
|
---|
| 1946 | * diff3.c, sdiff.c, util.c (xmalloc, xrealloc): Cast malloc, realloc
|
---|
| 1947 | to (VOID *) to suppress bogus warnings on some nonstandard hosts.
|
---|
| 1948 |
|
---|
| 1949 | * sdiff.c, util.c (memchr): Make first arg char const *
|
---|
| 1950 | to match standard.
|
---|
| 1951 |
|
---|
| 1952 | * system.h (malloc, realloc): Declare only if !HAVE_STDLIB_H.
|
---|
| 1953 | (memchr): Declare only if !HAVE_MEMCHR. These changes are
|
---|
| 1954 | needed to keep some nonstandard hosts happy.
|
---|
| 1955 |
|
---|
| 1956 | * xmalloc.c: Include <sys/types.h> always; some nonstandard hosts
|
---|
| 1957 | need it for size_t even if STDC_HEADERS.
|
---|
| 1958 |
|
---|
| 1959 | Sat Sep 18 01:33:07 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1960 |
|
---|
| 1961 | * configure.in (AC_STAT_MACROS_BROKEN): Add.
|
---|
| 1962 | * system.h (S_IS{BLK,CHR,DIR,FIFO,REG,SOCK}): Fix defns if
|
---|
| 1963 | STAT_MACROS_BROKEN.
|
---|
| 1964 |
|
---|
| 1965 | * Makefile.in (diff3, sdiff, cmp): Do not link $(ALLOCA).
|
---|
| 1966 |
|
---|
| 1967 | * analyze.c (discard_confusing_lines): Make defn static, like decl.
|
---|
| 1968 | * sdiff.c (xmalloc): Likewise.
|
---|
| 1969 |
|
---|
| 1970 | * ifdef.c (format_group): Ensure isdigit argument isn't < 0.
|
---|
| 1971 |
|
---|
| 1972 | * side.c (print_half_line): Use isprint, since some hosts lack isgraph.
|
---|
| 1973 | * util.c (output_1_line): Likewise. Ensure its argument isn't < 0.
|
---|
| 1974 | (xmalloc, xrealloc): Remove needless casts.
|
---|
| 1975 |
|
---|
| 1976 | * system.h (volatile, const):
|
---|
| 1977 | Define these before including any system headers,
|
---|
| 1978 | so that they're used consistently in all system includes.
|
---|
| 1979 | (getenv, malloc, realloc): Declare even if HAVE_STDLIB_H, since some
|
---|
| 1980 | <stdlib.h>s don't declare them.
|
---|
| 1981 | (memchr): Likewise for <string.h>.
|
---|
| 1982 |
|
---|
| 1983 | * cmp.c, diff3.c, diff.h, sdiff.c: Include "system.h" first.
|
---|
| 1984 | * diff.c: Remove redundant "system.h" inclusion.
|
---|
| 1985 |
|
---|
| 1986 | * diff3.c (xmalloc): Now static.
|
---|
| 1987 | (xmalloc, realloc): Remove needless casts.
|
---|
| 1988 | (READNUM): Ensure isdigit argument isn't negative.
|
---|
| 1989 |
|
---|
| 1990 | Wed Sep 14 07:14:15 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 1991 |
|
---|
| 1992 | * Version 2.4 released.
|
---|
| 1993 |
|
---|
| 1994 | * ifdef.c (scan_char_literal): New function, for new %c'x' and
|
---|
| 1995 | %c'\ooo' format specs.
|
---|
| 1996 | (format_group, print_ifdef_lines): Use it. Remove %0 format spec.
|
---|
| 1997 |
|
---|
| 1998 | * cmp.c (cmp): Don't try to read past end of file; this doesn't
|
---|
| 1999 | work on ttys.
|
---|
| 2000 |
|
---|
| 2001 | * system.h, version.c: #include <config.h>, not "config.h", to allow
|
---|
| 2002 | configuring in a separate directory when the source directory has
|
---|
| 2003 | already been configured.
|
---|
| 2004 | * Makefile.in (COMPILE): New defn, with proper -I options so that
|
---|
| 2005 | `#include <config.h>' works.
|
---|
| 2006 | (.c.o, diff3.o, sdiff.o): Use it.
|
---|
| 2007 |
|
---|
| 2008 | Mon Sep 13 06:45:43 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2009 |
|
---|
| 2010 | * diff.c (main, longopts): Add --line-format=FORMAT option.
|
---|
| 2011 | (specify_format): Args no longer const pointers. All callers changed.
|
---|
| 2012 |
|
---|
| 2013 | * ifdef.c: Add support for %?c, %(A=B?T:E), PRINTF_SPECn formats.
|
---|
| 2014 | (struct group): New struct.
|
---|
| 2015 | (print_ifdef_lines): Use it to simplify argument passing.
|
---|
| 2016 | Remove the convention that last arg -1 signifies that the lines
|
---|
| 2017 | from file 2 are the same as the lines from file 1; this
|
---|
| 2018 | convention no longer works, now that line numbers might be
|
---|
| 2019 | printed out, since the line numbers may differ.
|
---|
| 2020 | Add first FILE * argument to output to. All callers changed.
|
---|
| 2021 | Use a faster test for the single-fwrite optimization.
|
---|
| 2022 | (format_group, scan_printf_spec, groups_letter_value): New functions.
|
---|
| 2023 |
|
---|
| 2024 | * diff.h (group_format, line_format): No longer const pointers.
|
---|
| 2025 | (format_ifdef): 1st arg is no longer const pointer.
|
---|
| 2026 |
|
---|
| 2027 | * configure.in: Configure HAVE_LIMITS_H, HAVE_STDLIB_H.
|
---|
| 2028 | * system.h <limits.h>, <stdlib.h>, <string.h>:
|
---|
| 2029 | Include only if HAVE_LIMITS_H etc.
|
---|
| 2030 |
|
---|
| 2031 | * system.h (memcmp, memcpy, strchr, strrchr, struct dirent): Prefer
|
---|
| 2032 | these standard names to the traditional names (bcmp, bcpy, index,
|
---|
| 2033 | rindex, struct direct). All callers changed.
|
---|
| 2034 |
|
---|
| 2035 | * system.h (PARAMS, VOID):
|
---|
| 2036 | Define earlier so that malloc decl can use VOID.
|
---|
| 2037 | (STAT_BLOCKSIZE): Simplify ersatz defn; just use 8K.
|
---|
| 2038 |
|
---|
| 2039 | Fri Sep 3 00:21:02 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2040 |
|
---|
| 2041 | * diff.c (compare_files): Two files with the same name must be
|
---|
| 2042 | the same file; avoid a needless `stat' in that case.
|
---|
| 2043 |
|
---|
| 2044 | Fri Aug 27 06:59:03 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2045 |
|
---|
| 2046 | * Pervasive changes for portability to 64-bit hosts:
|
---|
| 2047 | Add prototypes to function declarations.
|
---|
| 2048 | Use size_t, not int, when needed.
|
---|
| 2049 |
|
---|
| 2050 | * Other pervasive changes:
|
---|
| 2051 | Use `const' more often.
|
---|
| 2052 | Use STD{IN,OUT,ERR}_FILENO instead of [012].
|
---|
| 2053 | Use 0, not NULL, for portability to broken hosts.
|
---|
| 2054 |
|
---|
| 2055 | * Makefile.in: (srcs, objs, distfiles, cmp): New files cmpbuf.[ch].
|
---|
| 2056 | (distfiles): New files config.h.in, mkinstalldirs.
|
---|
| 2057 | (.c.o): Add -DHAVE_CONFIG_H.
|
---|
| 2058 |
|
---|
| 2059 | * analyze.c: (diag): Pacify `gcc -Wall' with a useless assignment.
|
---|
| 2060 | (diff_2_files): Use l.c.m., not max, of files' buffer sizes.
|
---|
| 2061 |
|
---|
| 2062 | * cmp.c: Make globals static when possible.
|
---|
| 2063 |
|
---|
| 2064 | (file): Now a 2-element array; replaces `file1' and `file2'.
|
---|
| 2065 | (file_desc, buffer): Likewise, for file[12]_desc and buf[12].
|
---|
| 2066 | (main): Likewise, for stat_buf[12]. Index these variables with `i'.
|
---|
| 2067 |
|
---|
| 2068 | (ignore_initial): New var.
|
---|
| 2069 | (long_options): Now const. Add `--ignore-initial'.
|
---|
| 2070 | (usage): Sort options and add `--ignore-initial'.
|
---|
| 2071 | (main, cmp): Add `--ignore-initial' support.
|
---|
| 2072 |
|
---|
| 2073 | (main): `cmp - -' now succeeds.
|
---|
| 2074 | When comparing standard input to a file, and using a shortcut (e.g.
|
---|
| 2075 | looking at file sizes or inode numbers), take the lseek offset into
|
---|
| 2076 | account before deciding whether the files are identical.
|
---|
| 2077 | Avoid mentioning `dev_t', `ino_t' for portability to nonstandard hosts.
|
---|
| 2078 | Use l.c.m. of files' buffer sizes, not 8 * 1024.
|
---|
| 2079 | ferror (stdout) does not imply errno has a useful value.
|
---|
| 2080 | If 2nd file is "-", treat it first, in case stdin is closed.
|
---|
| 2081 |
|
---|
| 2082 | (cmp): Always compute `char_number', `smaller' for speed and simplicity.
|
---|
| 2083 | Say `cmp: EOF on input', not `/usr/gnu/bin/cmp: EOF on input',
|
---|
| 2084 | as per Posix.2.
|
---|
| 2085 |
|
---|
| 2086 | (block_compare_and_count): Increment line_number argument.
|
---|
| 2087 | Remove end_char argument; it's always '\n'. All callers changed.
|
---|
| 2088 | Do not assume sizeof(long) == 4; this isn't true on some 64-bit hosts.
|
---|
| 2089 | (block_compare): Minimize differences with block_compare_and_count.
|
---|
| 2090 |
|
---|
| 2091 | (block_read): Coalesce `bp += nread's.
|
---|
| 2092 |
|
---|
| 2093 | (printc): Remove `FILE *' arg; output to stdout. All callers changed.
|
---|
| 2094 |
|
---|
| 2095 | * configure.in: Configure HAVE_SIGACTION, RETSIGTYPE, HAVE_VPRINTF.
|
---|
| 2096 | Configure into config.h.
|
---|
| 2097 |
|
---|
| 2098 | * context.c (print_context_label):
|
---|
| 2099 | Standard input's st_mtime is no longer a special case
|
---|
| 2100 | here, since `compare_files' now sets it to the current time.
|
---|
| 2101 |
|
---|
| 2102 | * diff.c (usage): Sort options.
|
---|
| 2103 | (filetype): New function.
|
---|
| 2104 | (compare_files): Set stdin's st_mtime to be the current time.
|
---|
| 2105 | Leave its name "-" instead of changing it to "Standard Input";
|
---|
| 2106 | to test whether a file is stdin, we must compare its name to "-" instead
|
---|
| 2107 | of its desc to 0, since if it's closed other file descs may be 0.
|
---|
| 2108 | When comparing standard input to a file, and using a shortcut (e.g.
|
---|
| 2109 | looking at file sizes or inode numbers), take the lseek offset into
|
---|
| 2110 | account before deciding whether the files are identical.
|
---|
| 2111 | Pretend that nonexistent files have the same filetype as existing files.
|
---|
| 2112 | Rename `errorcount' to `failed', since it's boolean.
|
---|
| 2113 | In directory comparisons, if a file is neither a regular file nor a
|
---|
| 2114 | directory, just print its type and the other file's type.
|
---|
| 2115 |
|
---|
| 2116 | * diff.h (Is_space, textchar): Remove.
|
---|
| 2117 | (struct msg, msg_chain, msg_chain_end): Move to util.c.
|
---|
| 2118 | (VOID): Move to system.h.
|
---|
| 2119 | (line_cmp, version_string, change_letter, print_number_range,
|
---|
| 2120 | find_change): New decls.
|
---|
| 2121 |
|
---|
| 2122 | * diff.texi:
|
---|
| 2123 | whitespace -> white space. It now stands for whatever isspace yields.
|
---|
| 2124 | Add --ignore-initial.
|
---|
| 2125 |
|
---|
| 2126 | * diff3.c (VOID): Move to system.h.
|
---|
| 2127 | (version_string): Now char[].
|
---|
| 2128 | (usage): Sort options.
|
---|
| 2129 | (process_diff): Pacify `gcc -Wall' with a useless assignment.
|
---|
| 2130 | (read_diff): pid is of type pid_t, not int. Use waitpid if available.
|
---|
| 2131 | (output_diff3): Simplify test for `\ No newline at end of file' message.
|
---|
| 2132 |
|
---|
| 2133 | * dir.c (struct dirdata): Rename `files' to `names' to avoid confusion
|
---|
| 2134 | with external struct file_data `files'.
|
---|
| 2135 |
|
---|
| 2136 | * io.c (line_cmp): Move declaration to diff.h.
|
---|
| 2137 | (textchar): Remove.
|
---|
| 2138 | (find_and_hash_each_line): Use locale's definition of white space
|
---|
| 2139 | instead of using one hardwired defn for -b and another for -w.
|
---|
| 2140 |
|
---|
| 2141 | * normal.c (change_letter, print_number_range, find_change):
|
---|
| 2142 | Move decls to diff.h.
|
---|
| 2143 | (print_normal_hunk): Now static.
|
---|
| 2144 |
|
---|
| 2145 | * sdiff.c (SEEK_SET): Move to system.h.
|
---|
| 2146 | (version_string): Now char[], not char*.
|
---|
| 2147 | (private_tempnam): Remove hardcoded limit on temporary file names.
|
---|
| 2148 | (exiterr, perror_fatal, main): When exiting because of a signal,
|
---|
| 2149 | exit with that signal's status.
|
---|
| 2150 | (lf_refill, main, skip_white, edit, interact): Check for signal.
|
---|
| 2151 | (ignore_SIGINT): Renamed from `ignore_signals'.
|
---|
| 2152 | (NUM_SIGS, initial_handler): New macros.
|
---|
| 2153 | (initial_action, signal_received, sigs_trapped): New vars.
|
---|
| 2154 | (catchsig, trapsigs): Use sigaction if possible, since this closes the
|
---|
| 2155 | windows of vulnerability that `signal' has. Use RETSIGTYPE not void.
|
---|
| 2156 | When a signal comes in, just set a global variable; this is safer.
|
---|
| 2157 | (checksigs, untrapsig): New functions.
|
---|
| 2158 | (edit): Pacify `gcc -Wall' with a useless assignment.
|
---|
| 2159 | Respond to each empty line with help, not to every other empty line.
|
---|
| 2160 | (private_tempnam): Remove hardcoded limit on temporary file name length.
|
---|
| 2161 | Don't assume sizeof (pid_t) <= sizeof (int).
|
---|
| 2162 |
|
---|
| 2163 | * system.h: (S_IXOTH, S_IXGRP, S_IXUSR,
|
---|
| 2164 | SEEK_SET, SEEK_CUR,
|
---|
| 2165 | STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
|
---|
| 2166 | New macros, if system doesn't define them.
|
---|
| 2167 | (volatile): Don't define if already defined.
|
---|
| 2168 | (PARAMS): New macro.
|
---|
| 2169 | (VOID): Move here from diff.h.
|
---|
| 2170 |
|
---|
| 2171 | * util.c (struct msg, msg_chain, msg_chain_end): Moved here from diff.h.
|
---|
| 2172 | (message5): New function.
|
---|
| 2173 | (pr_pid): New var.
|
---|
| 2174 | (begin_output): Allocate `name' more precisely.
|
---|
| 2175 | Put child pid into pr_pid, so that we can wait for it later.
|
---|
| 2176 | Don't check execl's return value, since any return must be an error.
|
---|
| 2177 | (finish_output): Detect and report output errors.
|
---|
| 2178 | Use waitpid if available. Check pr exit status.
|
---|
| 2179 | (line_cmp): Use locale's definition of white space
|
---|
| 2180 | instead of using one hardwired defn for -b and another for -w.
|
---|
| 2181 | (analyze_cmp): Avoid double negation with `! nontrivial'.
|
---|
| 2182 | Pacify `gcc -Wall' be rewriting for-loop into do-while-loop.
|
---|
| 2183 | (dir_file_pathname): New function.
|
---|
| 2184 |
|
---|
| 2185 | * version.c (version_string): Now char[], not char*.
|
---|
| 2186 |
|
---|
| 2187 | Thu Jul 29 20:44:30 1993 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
|
---|
| 2188 |
|
---|
| 2189 | * Makefile.in (config.status): Run config.status --recheck, not
|
---|
| 2190 | configure, to get the right args passed.
|
---|
| 2191 |
|
---|
| 2192 | Thu Jul 22 10:46:30 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2193 |
|
---|
| 2194 | * Makefile.in (dist): Replace `if [ ! TEST ]; then ACTION; fi'
|
---|
| 2195 | with `[ TEST ] || ACTION || exit' so that the containing for-loop exits
|
---|
| 2196 | with proper status for `make'.
|
---|
| 2197 |
|
---|
| 2198 | Thu Jul 8 19:47:22 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
|
---|
| 2199 |
|
---|
| 2200 | * Makefile.in (installdirs): New target.
|
---|
| 2201 | (install): Use it.
|
---|
| 2202 | (Makefile, config.status, configure): New targets.
|
---|
| 2203 |
|
---|
| 2204 | Sat Jun 5 23:10:40 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2205 |
|
---|
| 2206 | * Makefile.in (dist): Switch from .z to .gz.
|
---|
| 2207 |
|
---|
| 2208 | Wed May 26 17:16:02 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2209 |
|
---|
| 2210 | * diff.c (main): Cast args to compare_files, for traditional C.
|
---|
| 2211 | * side.c (print_sdiff_common_lines_print_sdiff_hunk): Likewise.
|
---|
| 2212 | * analyze.c, diff3.c, sdiff.c, util.c: Don't assume NULL is defined
|
---|
| 2213 | properly.
|
---|
| 2214 |
|
---|
| 2215 | Tue May 25 14:54:05 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2216 |
|
---|
| 2217 | * analyze.c (diff_2_files): With -q, do not report that files differ
|
---|
| 2218 | if all their differences are ignored.
|
---|
| 2219 | (briefly_report): New function.
|
---|
| 2220 | * diff.h (ignore_some_changes): New variable.
|
---|
| 2221 | * diff.c (compare_files): Don't use the file size shortcut if
|
---|
| 2222 | ignore_some_changes is nonzero, since the file size may differ
|
---|
| 2223 | merely due to ignored changes.
|
---|
| 2224 | (main): Set ignore_some_changes if we might ignore some changes.
|
---|
| 2225 | Remove unsystematic assignment of 0 to static vars.
|
---|
| 2226 | * io.c (read_files): New argument PRETEND_BINARY says whether to
|
---|
| 2227 | pretend the files are binary.
|
---|
| 2228 |
|
---|
| 2229 | * diff3.c (tab_align_flag): New variable, for new -T option.
|
---|
| 2230 | (main, usage, output_diff3): Add support for -T.
|
---|
| 2231 |
|
---|
| 2232 | Sun May 23 15:25:29 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2233 |
|
---|
| 2234 | * dir.c (dir_sort): Always init `data' to avoid GCC warning.
|
---|
| 2235 |
|
---|
| 2236 | Sat May 22 15:35:02 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2237 |
|
---|
| 2238 | * Makefile.in (dist): Change name of package from diff to diffutils.
|
---|
| 2239 | Don't bother to build .Z dist; .z suffices.
|
---|
| 2240 |
|
---|
| 2241 | Fri May 21 16:35:22 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2242 |
|
---|
| 2243 | * diff.c: Include "system.h" to get memchr declaration.
|
---|
| 2244 | * system.h (memchr): Declare if !HAVE_MEMCHR, not if
|
---|
| 2245 | !HAVE_MEMCHR && !STDC_HEADERS.
|
---|
| 2246 |
|
---|
| 2247 | Wed May 19 17:43:55 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2248 |
|
---|
| 2249 | * Version 2.3 released.
|
---|
| 2250 |
|
---|
| 2251 | Fri Apr 23 17:18:44 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2252 |
|
---|
| 2253 | * io.c (find_identical_ends): Do not discard the last HORIZON_LINES
|
---|
| 2254 | lines of the prefix, or the first HORIZON_LINES lines of the suffix.
|
---|
| 2255 | * diff.c (main, longopts, usage): Add --horizon-lines option.
|
---|
| 2256 | * diff3.c (main, process_diff, read_diff): Invoke second diff
|
---|
| 2257 | with --horizon-lines determined by the first diff.
|
---|
| 2258 | * diff.h, diff3.c (horizon_lines): New variable.
|
---|
| 2259 |
|
---|
| 2260 | Mon Mar 22 16:16:00 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
---|
| 2261 |
|
---|
| 2262 | * system.h [HAVE_STRING_H || STDC_HEADERS] (bcopy, bcmp, bzero):
|
---|
| 2263 | Don't define if already defined.
|
---|
| 2264 |
|
---|
| 2265 | Fri Mar 5 00:20:16 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2266 |
|
---|
| 2267 | * diff.c (main): Use NULL in arg to compare_files.
|
---|
| 2268 |
|
---|
| 2269 | Thu Feb 25 15:26:01 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
---|
| 2270 |
|
---|
| 2271 | * system.h: Declare memchr #if !HAVE_MEMCHR && !STDC_HEADERS,
|
---|
| 2272 | not #if !HAVE_MEMCHR || !STDC_HEADERS.
|
---|
| 2273 |
|
---|
| 2274 | Mon Feb 22 15:04:46 1993 Richard Stallman (rms@geech.gnu.ai.mit.edu)
|
---|
| 2275 |
|
---|
| 2276 | * io.c (find_identical_ends): Move complicated arg outside GUESS_LINES.
|
---|
| 2277 |
|
---|
| 2278 | Mon Feb 22 12:56:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
---|
| 2279 |
|
---|
| 2280 | * Makefile.in (.c.o): Add -I$(srcdir); put $(CFLAGS) last before $<.
|
---|
| 2281 |
|
---|
| 2282 | Sat Feb 20 19:18:56 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2283 |
|
---|
| 2284 | * io.c (binary_file_p): Return zero if file size is zero.
|
---|
| 2285 |
|
---|
| 2286 | Fri Feb 19 17:31:32 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu)
|
---|
| 2287 |
|
---|
| 2288 | * Version 2.2 released.
|
---|
| 2289 |
|
---|
| 2290 | * system.h [HAVE_STRING_H || STDC_HEADERS] (index, rindex): Don't
|
---|
| 2291 | define if already defined.
|
---|
| 2292 |
|
---|
| 2293 | Wed Feb 17 17:08:00 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
---|
| 2294 |
|
---|
| 2295 | * Makefile.in (srcs): Remove limits.h.
|
---|
| 2296 |
|
---|
| 2297 | Thu Feb 11 03:36:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2298 |
|
---|
| 2299 | * diff3.c (xmalloc): No longer static.
|
---|
| 2300 |
|
---|
| 2301 | * sdiff.c (edit): Allocate buf dynamically.
|
---|
| 2302 |
|
---|
| 2303 | * dir.c (dir_sort): Handle VOID_CLOSEDIR.
|
---|
| 2304 |
|
---|
| 2305 | Wed Feb 10 00:15:54 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2306 |
|
---|
| 2307 | * limits.h: File deleted (should never have been there).
|
---|
| 2308 |
|
---|
| 2309 | Tue Feb 9 03:53:22 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2310 |
|
---|
| 2311 | * Makefile.in (.c.o, diff3.o, sdiff.o): Put $(CFLAGS) last.
|
---|
| 2312 |
|
---|
| 2313 | Wed Feb 3 15:42:10 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
|
---|
| 2314 |
|
---|
| 2315 | * system.h: Don't #define const; let configure do it.
|
---|
| 2316 |
|
---|
| 2317 | Mon Feb 1 02:13:23 1993 Paul Eggert (eggert@hal.gnu.ai.mit.edu)
|
---|
| 2318 |
|
---|
| 2319 | * Version 2.1 released.
|
---|
| 2320 |
|
---|
| 2321 | * Makefile.in (dist): Survive ln failures. Create .tar.z
|
---|
| 2322 | (gzipped tar) file as well as .tar.Z (compressed tar) file.
|
---|
| 2323 |
|
---|
| 2324 | Fri Jan 8 22:31:41 1993 Paul Eggert (eggert@twinsun.com)
|
---|
| 2325 |
|
---|
| 2326 | * side.c (print_half_line): When the input position falls
|
---|
| 2327 | outside the column, do not output a tab even if the output
|
---|
| 2328 | position still falls within the column.
|
---|
| 2329 |
|
---|
| 2330 | Mon Dec 21 13:54:36 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
|
---|
| 2331 |
|
---|
| 2332 | * Makefile.in (.c.o): Add -I.
|
---|
| 2333 |
|
---|
| 2334 | Fri Dec 18 14:08:20 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2335 |
|
---|
| 2336 | * configure.in: Add HAVE_FCNTL_H, since system.h uses it.
|
---|
| 2337 |
|
---|
| 2338 | Tue Nov 24 10:06:48 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
|
---|
| 2339 |
|
---|
| 2340 | * Makefile.in: Note change from USG to HAVE_STRING_H.
|
---|
| 2341 |
|
---|
| 2342 | Mon Nov 23 18:44:00 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2343 |
|
---|
| 2344 | * io.c (find_and_hash_each_line): When running out of lines,
|
---|
| 2345 | double the number of allocated lines, instead of just doubling
|
---|
| 2346 | that number minus the prefix lines. This is more likely to
|
---|
| 2347 | avoid the need for further memory allocation.
|
---|
| 2348 |
|
---|
| 2349 | Wed Nov 18 20:40:28 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2350 |
|
---|
| 2351 | * dir.c (dir_sort): Plug memory leak: space holding directory
|
---|
| 2352 | contents was not being reclaimed. Get directory size from
|
---|
| 2353 | struct file_data for initial guess at memory needed.
|
---|
| 2354 | Detect errors when reading and closing directory.
|
---|
| 2355 | (diff_dirs): Pass struct file_data to dir_sort. Finish plugging leak.
|
---|
| 2356 | * diff.c (compare_files): Pass struct file_data to diff_dirs.
|
---|
| 2357 |
|
---|
| 2358 | * io.c (find_and_hash_each_line): Don't assume alloc_lines is
|
---|
| 2359 | nonzero when allocating more lines.
|
---|
| 2360 |
|
---|
| 2361 | Thu Nov 12 16:02:18 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2362 |
|
---|
| 2363 | * diff.c (main): Add `-U lines' as an alias for `--unified=lines'.
|
---|
| 2364 |
|
---|
| 2365 | * diff3.c (usage): Add third --label option in example.
|
---|
| 2366 |
|
---|
| 2367 | * util.c (analyze_hunk): Fix test for ignoring blank lines.
|
---|
| 2368 |
|
---|
| 2369 | * configure.in, system.h: Avoid USG; use HAVE_TIME_H etc. instead.
|
---|
| 2370 |
|
---|
| 2371 | Mon Nov 9 05:13:25 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2372 |
|
---|
| 2373 | * diff3.c (main, usage): Add -A or --show-all.
|
---|
| 2374 | -m now defaults to -A, not -E. Allow up to three -L options.
|
---|
| 2375 | (output_diff3_edscript, output_diff3_merge):
|
---|
| 2376 | Remove spurious differences between these two functions.
|
---|
| 2377 | Output ||||||| for -A. Distinguish between conflicts and overlaps.
|
---|
| 2378 | (dotlines, undotlines): New functions that output `Ns', not `N,Ns'.
|
---|
| 2379 | (output_diff3_edscript, output_diff3_merge): Use them.
|
---|
| 2380 |
|
---|
| 2381 | * io.c (find_identical_ends): shift_boundaries needs an extra
|
---|
| 2382 | identical line at the end, not at the beginning.
|
---|
| 2383 |
|
---|
| 2384 | * sdiff.c (edit): execvp wants char **, not const char **.
|
---|
| 2385 |
|
---|
| 2386 | Mon Oct 19 04:39:32 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2387 |
|
---|
| 2388 | * context.c (print_context_script, find_function): Context
|
---|
| 2389 | line numbers start with - file->prefix_lines, not 0.
|
---|
| 2390 |
|
---|
| 2391 | * io.c (binary_file_p): Undo last change; it was a library bug.
|
---|
| 2392 |
|
---|
| 2393 | Sun Oct 18 00:17:29 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2394 |
|
---|
| 2395 | * io.c (binary_file_p): Consider empty file as non-binary.
|
---|
| 2396 |
|
---|
| 2397 | Mon Oct 5 05:18:46 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2398 |
|
---|
| 2399 | * diff3.c (main, make_3way_diff, using_to_diff3_block): Don't
|
---|
| 2400 | report bogus differences (for one of -mexEX3) just because the
|
---|
| 2401 | file0-file1 diffs don't line up with the file0-file2 diffs.
|
---|
| 2402 | (This is entirely possible since we don't use diff's -n
|
---|
| 2403 | option.) Always compare file1 to file2, so that diff3 sees
|
---|
| 2404 | those changes directly. Typically, file2 is now the common
|
---|
| 2405 | file, not file0.
|
---|
| 2406 | (output_diff3_merge): The input file is file 0, not the common file.
|
---|
| 2407 |
|
---|
| 2408 | (FC, FO): New macros; they replace FILE1, FILE0 for two-way diffs,
|
---|
| 2409 | to distinguish them from three-way diffs.
|
---|
| 2410 |
|
---|
| 2411 | * diff3.c (using_to_diff3_block): Fold repeated code into loops.
|
---|
| 2412 |
|
---|
| 2413 | * diff3.c (make_3way_diff, process_diff): Have the *_end
|
---|
| 2414 | variable point to the next field to be changed, not to the last
|
---|
| 2415 | object allocated; this saves an if-then-else.
|
---|
| 2416 |
|
---|
| 2417 | * diff3.c (process_diff): Use D_NUMLINES instead of its definiens.
|
---|
| 2418 |
|
---|
| 2419 | * diff3.c: Make fns and vars static unless they must be external.
|
---|
| 2420 |
|
---|
| 2421 | Wed Sep 30 09:21:59 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2422 |
|
---|
| 2423 | * analyze.c (diff_2_files): OUTPUT_IFDEF is now robust.
|
---|
| 2424 | * diff.h (ROBUST_OUTPUT_STYLE): Likewise.
|
---|
| 2425 | (default_line_format): Remove. All refs removed.
|
---|
| 2426 |
|
---|
| 2427 | * ifdef.c (print_ifdef_lines): Add %L. Optimize %l\n even if user
|
---|
| 2428 | specified it, as opposed to its being the default.
|
---|
| 2429 |
|
---|
| 2430 | Tue Sep 29 19:01:28 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2431 |
|
---|
| 2432 | * diff.c (longopts, main): --{old,new,unchanged,changed}--group-format
|
---|
| 2433 | are new options, so that -D is no longer overloaded. Set
|
---|
| 2434 | no_diff_means_no_output if --unchanged-{line,group}-format allows it.
|
---|
| 2435 | * diff.h (enum line_class): New type.
|
---|
| 2436 | (group_format, line_format): Use it to regularize option flags.
|
---|
| 2437 | All refs changed.
|
---|
| 2438 |
|
---|
| 2439 | * ifdef.c (format_ifdef, print_ifdef_lines): %n is no longer a format.
|
---|
| 2440 |
|
---|
| 2441 | Mon Sep 28 04:51:42 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2442 |
|
---|
| 2443 | * diff.c (main, usage): Replace --line-prefix with the more general
|
---|
| 2444 | --{old,new,unchanged}-line-format options.
|
---|
| 2445 | * ifdef.c (format_ifdef, print_ifdef_lines): Likewise.
|
---|
| 2446 | * diff.h (line_format): Renamed from line_prefix. All refs changed.
|
---|
| 2447 | * diff.h, ifdef.c (default_line_format): New variable.
|
---|
| 2448 | * util.c (output_1_line): New function.
|
---|
| 2449 | (print_1_line): Use it.
|
---|
| 2450 |
|
---|
| 2451 | * ifdef.c: (format_ifdef, print_ifdef_lines): Add %0 format.
|
---|
| 2452 |
|
---|
| 2453 | Sun Sep 27 05:38:13 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2454 |
|
---|
| 2455 | * diff.c (main): Add -E or --line-prefix option. Add -D'=xxx'
|
---|
| 2456 | for common lines. Change default -D< format from copy of -D>
|
---|
| 2457 | format to to -D<%<; similarly for default -D> format.
|
---|
| 2458 | * diff.h (common_format, line_prefix): New variables.
|
---|
| 2459 | * ifdef.c (format_ifdef): New function.
|
---|
| 2460 | (print_ifdef_script, print_ifdef_hunk, print_ifdef_lines):
|
---|
| 2461 | Use it for -D'=xxx', -E.
|
---|
| 2462 |
|
---|
| 2463 | * context.c (find_hunk): Glue together two non-ignorable changes that
|
---|
| 2464 | are exactly CONTEXT * 2 lines apart. This shortens output, removes
|
---|
| 2465 | a behavioral discontinuity at CONTEXT = 0, and is more compatible
|
---|
| 2466 | with traditional diff.
|
---|
| 2467 |
|
---|
| 2468 | * io.c (find_identical_ends): Slurp stdin at most once.
|
---|
| 2469 |
|
---|
| 2470 | * util.c (print_line_line): line_flag is const char *.
|
---|
| 2471 |
|
---|
| 2472 | Thu Sep 24 15:18:07 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2473 |
|
---|
| 2474 | * ifdef.c (print_ifdef_lines): New function, which fwrites a sequence
|
---|
| 2475 | of lines all at once for speed.
|
---|
| 2476 | (print_ifdef_script, print_ifdef_hunk): Use it.
|
---|
| 2477 |
|
---|
| 2478 | Thu Sep 24 05:54:14 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2479 |
|
---|
| 2480 | * diff.c (main): Support new -D options for if-then-else formats.
|
---|
| 2481 | (specify_format): New function.
|
---|
| 2482 | * diff.h (ifndef_format, ifdef_format, ifnelse_format): New variables.
|
---|
| 2483 | * ifdef.c (print_ifdef_hunk): Use the new variables instead of
|
---|
| 2484 | a hardwired format.
|
---|
| 2485 |
|
---|
| 2486 | * side.c (print_1sdiff_line): Represent incomplete lines on output.
|
---|
| 2487 | (print_sdiff_script): Likewise. Don't print 'q' at end,
|
---|
| 2488 | since that doesn't work with incomplete lines.
|
---|
| 2489 | * sdiff.c (interact): Don't assume diff output ends with 'q' line.
|
---|
| 2490 | * diff.h (ROBUST_OUTPUT_STYLE): OUTPUT_SDIFF is now robust.
|
---|
| 2491 |
|
---|
| 2492 | * sdiff.c (lf_copy, lf_snarf): Use memchr instead of index,
|
---|
| 2493 | to avoid dumping core when files contain null characters.
|
---|
| 2494 | (memchr): New function (if memchr is missing).
|
---|
| 2495 |
|
---|
| 2496 | * io.c (sip): New arg SKIP_TEST to skip test for binary file.
|
---|
| 2497 | (read_files): Don't bother testing second file if first is binary.
|
---|
| 2498 |
|
---|
| 2499 | Thu Sep 17 21:17:49 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2500 |
|
---|
| 2501 | * system.h [!USG && !_POSIX_VERSION]: Protect from conflicting
|
---|
| 2502 | prototype for wait in sys/wait.h.
|
---|
| 2503 |
|
---|
| 2504 | Wed Sep 16 12:32:18 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2505 |
|
---|
| 2506 | * Makefile.in: Include binprefix in -DDIFF_PROGRAM.
|
---|
| 2507 |
|
---|
| 2508 | Tue Sep 15 14:27:25 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2509 |
|
---|
| 2510 | * Version 2.0.
|
---|
| 2511 |
|
---|
| 2512 | Sat Sep 12 01:31:19 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2513 |
|
---|
| 2514 | * util.c, diff.h, system.h [!HAVE_MEMCHR]: Don't use void *
|
---|
| 2515 | and const when declaring memchr replacement. Declare memchr
|
---|
| 2516 | if !STDC_HEADERS && !USG.
|
---|
| 2517 |
|
---|
| 2518 | Thu Sep 10 15:17:32 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2519 |
|
---|
| 2520 | * Makefile.in (uninstall): New target.
|
---|
| 2521 |
|
---|
| 2522 | * diff.c (excluded_filename): Use fnmatch, not wildmat.
|
---|
| 2523 | (usage): Document -x, -X, --exclude, --exclude-from.
|
---|
| 2524 | Makefile.in: Use fnmatch.c, not wildmat.c.
|
---|
| 2525 |
|
---|
| 2526 | Sun Sep 6 23:46:25 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2527 |
|
---|
| 2528 | * configure.in: Add HAVE_MEMCHR.
|
---|
| 2529 | * diff.h, util.c: Use it instead of MEMCHR_MISSING.
|
---|
| 2530 |
|
---|
| 2531 | Sun Sep 6 07:25:49 1992 Paul Eggert (eggert@twinsun.com)
|
---|
| 2532 |
|
---|
| 2533 | * diff.h: (struct line_def): Replace this 3-word struct with char *.
|
---|
| 2534 | This uses less memory, particularly for large files with short lines.
|
---|
| 2535 | (struct file_data): New member linbuf_base counts number of lines
|
---|
| 2536 | in common prefix that are not recorded in linbuf;
|
---|
| 2537 | this uses less memory if files are identical or differ only at end.
|
---|
| 2538 | New member buffered_lines counts possibly differing lines.
|
---|
| 2539 | New member valid_lines counts valid data.
|
---|
| 2540 | New member alloc_lines - linbuf_base replaces old linbufsize.
|
---|
| 2541 | linbuf[0] now always points at first differing line.
|
---|
| 2542 | Remove unused members ltran, suffix_lines.
|
---|
| 2543 | Add const where appropriate.
|
---|
| 2544 | (Is_space): New macro, for consistent definition of `white space'.
|
---|
| 2545 | (excluded_filename, memchr, sip, slurp): New declarations.
|
---|
| 2546 | * ed.c (print_ed_hunk): Adjust to diff.h's struct changes.
|
---|
| 2547 | * context.c (pr_context_hunk): Likewise.
|
---|
| 2548 | * ifdef.c (print_ifdef_script): Likewise.
|
---|
| 2549 | * side.c (print_sdiff_script, print_half_line): Likewise.
|
---|
| 2550 | * util.c (analyze_hunk, line_cmp, print_1_line): Likewise.
|
---|
| 2551 |
|
---|
| 2552 | * analyze.c (shift_boundaries): Remove unneeded variable `end' and
|
---|
| 2553 | unnecessary comparisons of `preceding' and `other_preceding' against 0.
|
---|
| 2554 | (diff_2_files): When comparing files byte-by-byte for equality,
|
---|
| 2555 | don't slurp them all in at once; just compare them a buffer at a time.
|
---|
| 2556 | This can win big if they differ early on.
|
---|
| 2557 | Move some code to compare_files to enable this change.
|
---|
| 2558 | Use only one buffer for stdin with `diff - -'.
|
---|
| 2559 | (discard_confusing_lines, diff_2_files): Coalesce malloc/free calls.
|
---|
| 2560 | (build_script): Remove obsolete OUTPUT_RCS code.
|
---|
| 2561 |
|
---|
| 2562 | * diff.c (add_exclude, add_exclude_file, excluded_filename): New fns.
|
---|
| 2563 | (main): Use them for the new --exclude and --exclude-from options.
|
---|
| 2564 | (compare_files): Don't open a file unless it must be read.
|
---|
| 2565 | Treat `diff file file' and `diff file dir' similarly.
|
---|
| 2566 | Move some code here from diff_2_files to enable this.
|
---|
| 2567 | Simplify file vs dir warning.
|
---|
| 2568 |
|
---|
| 2569 | * dir.c (dir_sort): Support new --exclude* options.
|
---|
| 2570 |
|
---|
| 2571 | * io.c (struct equivclass): Put hash code and line length here instead
|
---|
| 2572 | of struct line_def, so that they can be shared.
|
---|
| 2573 | (find_and_hash_each_line): Compute equivalence class as we go,
|
---|
| 2574 | instead of doing it in a separate pass; this thrashes memory less.
|
---|
| 2575 | Make buckets realloc-able, since we can't preallocate them.
|
---|
| 2576 | Record one more line start than there are lines, so that we can compute
|
---|
| 2577 | any line's length by subtracting its start from the next line's,
|
---|
| 2578 | instead of storing the length explicitly. This saves memory.
|
---|
| 2579 | Move prefix-handling code to find_identical_ends;
|
---|
| 2580 | this wins with large prefixes.
|
---|
| 2581 | Use Is_space, not is_space, for consistent treatment of white space.
|
---|
| 2582 | (prepare_text_end): New function.
|
---|
| 2583 | (find_identical_ends): Move slurping here, so it's only done when
|
---|
| 2584 | needed. Work even if the buffers are the same (because of `diff - -').
|
---|
| 2585 | Compare prefixes a word at a time for speed.
|
---|
| 2586 | (find_equiv_class): Delete; now done by find_and_hash_each_line.
|
---|
| 2587 | (read_files): Don't slurp unless needed.
|
---|
| 2588 | find_equiv_class's work is now folded into find_and_hash_each_line.
|
---|
| 2589 | Don't copy stdin buffer if `diff - -'.
|
---|
| 2590 | Check for running out of primes.
|
---|
| 2591 | (sip, slurp): Split first part of `slurp' into another function `sip'.
|
---|
| 2592 | `sip' sets things up and perhaps reads the first ST_BLKSIZE buffer to
|
---|
| 2593 | see whether the file is binary; `slurp' now just finishes the job.
|
---|
| 2594 | This lets diff_2_files compare binary files lazily.
|
---|
| 2595 | Allocate a one-word sentinel to allow word-at-a-time prefix comparison.
|
---|
| 2596 | Count prefix lines only if needed, only count the first file's prefix.
|
---|
| 2597 | Don't bother to count suffix lines; it's never needed.
|
---|
| 2598 | Set up linbuf[0] to point at first differing line.
|
---|
| 2599 | (binary_file_p): Change test for binary files:
|
---|
| 2600 | if it has a null byte in its first buffer, it's binary.
|
---|
| 2601 | (primes): Add more primes.
|
---|
| 2602 |
|
---|
| 2603 | * util.c (line_cmp): Use bcmp for speed.
|
---|
| 2604 | Use Is_space, not is_space, for consistent treatment of white space.
|
---|
| 2605 | (translate_line_number): Internal line numbers now count from 0
|
---|
| 2606 | starting after the prefix.
|
---|
| 2607 | (memchr): New function (if memchr is missing).
|
---|
| 2608 |
|
---|
| 2609 | * Makefile.in: Document HAVE_ST_BLKSIZE. Link with wildmat.o.
|
---|
| 2610 | * system.h (STAT_BLOCKSIZE): New macro based on HAVE_ST_BLKSIZE.
|
---|
| 2611 | * configure.in: Add AC_ST_BLKSIZE.
|
---|
| 2612 | * wildmat.c: New file.
|
---|
| 2613 |
|
---|
| 2614 | Fri Sep 4 01:28:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2615 |
|
---|
| 2616 | * sdiff.c (xmalloc): Renamed from ck_malloc. Callers changed.
|
---|
| 2617 |
|
---|
| 2618 | Thu Sep 3 15:28:59 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2619 |
|
---|
| 2620 | * diff.h: Don't declare free, index, rindex.
|
---|
| 2621 |
|
---|
| 2622 | Tue Aug 11 22:18:06 1992 John Gilmore (gnu at cygnus.com)
|
---|
| 2623 |
|
---|
| 2624 | * io.c (binary_file_p): Use heuristic to avoid declaring info
|
---|
| 2625 | files as binary files. Allow about 1.5% non-printing
|
---|
| 2626 | characters (in info's case, ^_).
|
---|
| 2627 |
|
---|
| 2628 | Tue Jul 7 01:09:26 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2629 |
|
---|
| 2630 | * diff.h: Replace function_regexp and ignore_regexp with lists
|
---|
| 2631 | of compiled regexps.
|
---|
| 2632 | * analyze.c, context.c, util.c: Test whether the lists, not
|
---|
| 2633 | the old variables, are empty.
|
---|
| 2634 | * util.c (analyze_hunk), context.c (find_function): Compare
|
---|
| 2635 | lines with the lists of regexps.
|
---|
| 2636 | * diff.c (add_regexp): New function.
|
---|
| 2637 | (main): Use it.
|
---|
| 2638 |
|
---|
| 2639 | * diff3: Add -v --version option.
|
---|
| 2640 | * Makefile.in: Link with version.o.
|
---|
| 2641 |
|
---|
| 2642 | * system.h: New file.
|
---|
| 2643 | * diff.h, cmp.c, diff3.c, sdiff.c: Use it.
|
---|
| 2644 |
|
---|
| 2645 | * diff.h, diff3.c: Include string.h or strings.h, as appropriate.
|
---|
| 2646 | Declare malloc and realloc.
|
---|
| 2647 |
|
---|
| 2648 | * diff3.c (perror_with_exit): Include program name in message.
|
---|
| 2649 |
|
---|
| 2650 | * diff3.c: Lowercase error messages for GNU standards.
|
---|
| 2651 |
|
---|
| 2652 | * sdiff.c [USG || STDC_HEADERS]: Define bcopy in terms of memcpy.
|
---|
| 2653 |
|
---|
| 2654 | * sdiff.c: Use the version number from version.c.
|
---|
| 2655 | * Makefile.in: Link with version.o.
|
---|
| 2656 |
|
---|
| 2657 | * cmp.c error.c xmalloc.c: New files from textutils.
|
---|
| 2658 | * Makefile.in: Add rules for them.
|
---|
| 2659 |
|
---|
| 2660 | * diff.c (longopts): --unidirectional-new-file is like -P, not -N.
|
---|
| 2661 | Rename --file-label to --label (leave old name, but undocumented).
|
---|
| 2662 |
|
---|
| 2663 | * sdiff.c, diff.c (usage): Condense messages and fix some errors.
|
---|
| 2664 |
|
---|
| 2665 | * diff3.c (main, usage): Add long-named options.
|
---|
| 2666 |
|
---|
| 2667 | Fri Jul 3 14:31:18 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
|
---|
| 2668 |
|
---|
| 2669 | * diff.h, diff3.c, sdiff.c: Change FOO_MISSING macros to HAVE_FOO.
|
---|
| 2670 |
|
---|
| 2671 | Thu Jun 25 16:59:47 1992 David J. MacKenzie (djm@apple-gunkies.gnu.ai.mit.edu)
|
---|
| 2672 |
|
---|
| 2673 | * diff.c: --reversed-ed -> --forward-ed.
|
---|
| 2674 |
|
---|
| 2675 | Wed Feb 26 12:17:32 1992 Paul Eggert (eggert@yata.uucp)
|
---|
| 2676 |
|
---|
| 2677 | * analyze.c, diff.c, diff.h, io.c: For -y, compare even if same file.
|
---|
| 2678 |
|
---|
| 2679 | Fri Feb 14 22:46:38 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2680 |
|
---|
| 2681 | * io.c, diff3.c, analyze.c: Add extra parentheses.
|
---|
| 2682 |
|
---|
| 2683 | Sun Feb 9 00:22:42 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
---|
| 2684 |
|
---|
| 2685 | * diff.h (unidirectional_new_file_flag): New variable.
|
---|
| 2686 | * diff.c (main): Set that for -P.
|
---|
| 2687 | (compare_files): Support -P, somewhat like -N.
|
---|
| 2688 | (longopts): Support long name for -P.
|
---|
| 2689 |
|
---|
| 2690 | Sat Jan 4 20:10:34 1992 Paul Eggert (eggert at yata.uucp)
|
---|
| 2691 |
|
---|
| 2692 | * Makefile.in: Distribute diff.info-* too.
|
---|
| 2693 |
|
---|
| 2694 | * README, sdiff.c: version number now matches version.c.
|
---|
| 2695 |
|
---|
| 2696 | * configure: Fix and document vfork test.
|
---|
| 2697 |
|
---|
| 2698 | * ifdef.c: Don't dump core if `diff -Dx f f'.
|
---|
| 2699 |
|
---|
| 2700 | Mon Dec 23 23:36:08 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2701 |
|
---|
| 2702 | * diff.h, diff3.c, sdiff.c: Change POSIX ifdefs to
|
---|
| 2703 | HAVE_UNISTD_H and _POSIX_VERSION.
|
---|
| 2704 |
|
---|
| 2705 | Wed Dec 18 17:00:31 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2706 |
|
---|
| 2707 | * Makefile.in (srcs): Add sdiff.c.
|
---|
| 2708 | (tapefiles): Add diff.texi and diff.info.
|
---|
| 2709 |
|
---|
| 2710 | * diff.h, diff3.c, sdiff.c: Use HAVE_VFORK_H instead of
|
---|
| 2711 | VFORK_HEADER and VFORK_WORKS.
|
---|
| 2712 |
|
---|
| 2713 | Tue Dec 17 00:02:59 1991 Paul Eggert (eggert at yata.uucp)
|
---|
| 2714 |
|
---|
| 2715 | * Makefile.in (all): Add diff.info, sdiff.
|
---|
| 2716 |
|
---|
| 2717 | * configure, diff.c, sdiff.c:
|
---|
| 2718 | Prefix long options with `--', not `+'.
|
---|
| 2719 | * diff.c: Regularize option names.
|
---|
| 2720 |
|
---|
| 2721 | * configure: Fix check for vfork.
|
---|
| 2722 | * configure, diff.c, diff.h, diff3.c, sdiff.c:
|
---|
| 2723 | Use Posix definitions when possible.
|
---|
| 2724 |
|
---|
| 2725 | * context.c: Align context with tab if -T is given. Tune.
|
---|
| 2726 | * diff.c, diff.h, side.c: Calculate column widths so that tabs line up.
|
---|
| 2727 | * io.c: Add distinction between white space and printing chars.
|
---|
| 2728 | * side.c: Don't expand tabs unless -t is given.
|
---|
| 2729 | * side.c, util.c: Tab expansion now knows about '\b', '\f', '\r', '\v'.
|
---|
| 2730 | * util.c: -w skips all white space. Remove lint. Tune.
|
---|
| 2731 |
|
---|
| 2732 | * sdiff.c: Support many more diff options, e.g. `-', `sdiff file dir'.
|
---|
| 2733 | Ignore interrupts while the subsidiary editor is in control.
|
---|
| 2734 | Clean up temporary file and kill subsidiary diff if interrupted.
|
---|
| 2735 | Ensure subsidiary diff doesn't ignore SIGPIPE.
|
---|
| 2736 | Don't get confused while waiting for two subprocesses.
|
---|
| 2737 | Don't let buffers overflow. Check for I/O errors.
|
---|
| 2738 | Convert to GNU style. Tune.
|
---|
| 2739 |
|
---|
| 2740 | * sdiff.c, util.c: Don't lose errno.
|
---|
| 2741 | Don't confuse sdiff with messages like `Binary files differ'.
|
---|
| 2742 | * sdiff.c, side.c: Don't assume that common lines are identical.
|
---|
| 2743 | Simplify --sdiff-merge-assist format.
|
---|
| 2744 |
|
---|
| 2745 | Mon Sep 16 16:42:01 1991 Tom Lord (lord at churchy.gnu.ai.mit.edu)
|
---|
| 2746 |
|
---|
| 2747 | * Makefile.in, sdiff.c: introduced sdiff front end to diff.
|
---|
| 2748 |
|
---|
| 2749 | * Makefile.in, analyze.c, diff.c, diff.h, io.c, side.c: Added
|
---|
| 2750 | sdiff-style output format to diff.
|
---|
| 2751 |
|
---|
| 2752 | Mon Aug 26 16:44:55 1991 David J. MacKenzie (djm at pogo.gnu.ai.mit.edu)
|
---|
| 2753 |
|
---|
| 2754 | * Makefile.in, configure: Only put $< in Makefile if using VPATH,
|
---|
| 2755 | because older makes don't understand it.
|
---|
| 2756 |
|
---|
| 2757 | Fri Aug 2 12:22:30 1991 David J. MacKenzie (djm at apple-gunkies)
|
---|
| 2758 |
|
---|
| 2759 | * configure: Create config.status. Remove it and Makefile if
|
---|
| 2760 | interrupted while creating them.
|
---|
| 2761 |
|
---|
| 2762 | Thu Aug 1 22:24:31 1991 David J. MacKenzie (djm at apple-gunkies)
|
---|
| 2763 |
|
---|
| 2764 | * configure: Check for +srcdir etc. arg and look for
|
---|
| 2765 | Makefile.in in that directory. Set VPATH if srcdir is not `.'.
|
---|
| 2766 | * Makefile.in: Get rid of $(archpfx).
|
---|
| 2767 |
|
---|
| 2768 | Tue Jul 30 21:28:44 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu)
|
---|
| 2769 |
|
---|
| 2770 | * Makefile.in (prefix): Renamed from DESTDIR.
|
---|
| 2771 |
|
---|
| 2772 | Wed Jul 24 23:08:56 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2773 |
|
---|
| 2774 | * diff.h, diff3.c: Rearrange ifdefs to use POSIX,
|
---|
| 2775 | STDC_HEADERS, VFORK_MISSING, DIRENT. This way it works on
|
---|
| 2776 | more systems that aren't pure USG or BSD.
|
---|
| 2777 | Don't not define const if __GNUC__ is defined -- that would
|
---|
| 2778 | break with -traditional.
|
---|
| 2779 | * configure: Check for those features.
|
---|
| 2780 |
|
---|
| 2781 | Wed Jul 10 01:39:23 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2782 |
|
---|
| 2783 | * configure, Makefile.in: $(INSTALLPROG) -> $(INSTALL).
|
---|
| 2784 |
|
---|
| 2785 | Sat Jul 6 16:39:04 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
|
---|
| 2786 |
|
---|
| 2787 | * Replace Makefile with configure and Makefile.in.
|
---|
| 2788 | Update README with current compilation instructions.
|
---|
| 2789 |
|
---|
| 2790 | Sat Jul 6 14:03:29 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu)
|
---|
| 2791 |
|
---|
| 2792 | * util.c (setup_output): Just save the args for later use.
|
---|
| 2793 | (begin_output): Do the real work, with the values that were saved.
|
---|
| 2794 | It's safe to call begin_output more than once.
|
---|
| 2795 | Print the special headers for context format here.
|
---|
| 2796 | * analyze.c (diff_2_files): Don't print special headers here.
|
---|
| 2797 | * context.c (pr_context_hunk, pr_unidiff_hunk): Call begin_output.
|
---|
| 2798 | * ed.c (print_ed_hunk, print_forward_ed_hunk, print_rcs_hunk):
|
---|
| 2799 | * normal.c (print_normal_hunk): Likewise.
|
---|
| 2800 | * ifdef.c (print_ifdef_hunk): Likewise.
|
---|
| 2801 | * util.c (finish_output): Don't die if begin_output was not called.
|
---|
| 2802 |
|
---|
| 2803 | Thu Jun 20 23:10:01 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
|
---|
| 2804 |
|
---|
| 2805 | * Makefile: Add TAGS, distclean, and realclean targets.
|
---|
| 2806 | Set SHELL.
|
---|
| 2807 |
|
---|
| 2808 | Tue Apr 30 13:54:36 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu)
|
---|
| 2809 |
|
---|
| 2810 | * diff.h (TRUE, FALSE): Undefine these before defining.
|
---|
| 2811 |
|
---|
| 2812 | Thu Mar 14 18:27:27 1991 Richard Stallman (rms@mole.ai.mit.edu)
|
---|
| 2813 |
|
---|
| 2814 | * Makefile (objs): Include $(ALLOCA).
|
---|
| 2815 |
|
---|
| 2816 | Sat Mar 9 22:34:03 1991 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2817 |
|
---|
| 2818 | * diff.h: Include regex.h.
|
---|
| 2819 |
|
---|
| 2820 | Thu Feb 28 18:59:53 1991 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2821 |
|
---|
| 2822 | * Makefile (diff3): Link with GNU getopt.
|
---|
| 2823 |
|
---|
| 2824 | Sat Feb 23 12:49:43 1991 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2825 |
|
---|
| 2826 | * io.c (find_equiv_class): Make hash code unsigned before mod.
|
---|
| 2827 |
|
---|
| 2828 | * diff.h (files): Add EXTERN.
|
---|
| 2829 |
|
---|
| 2830 | Sun Jan 13 21:33:01 1991 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2831 |
|
---|
| 2832 | * diff.c: +print option renamed +paginate. Remove +all-text.
|
---|
| 2833 |
|
---|
| 2834 | Mon Jan 7 06:18:01 1991 David J. MacKenzie (djm at geech.ai.mit.edu)
|
---|
| 2835 |
|
---|
| 2836 | * Makefile (dist): New target, replacing diff.tar and
|
---|
| 2837 | diff.tar.Z, to encode version number in distribution directory
|
---|
| 2838 | and tar file names.
|
---|
| 2839 |
|
---|
| 2840 | Sun Jan 6 18:42:23 1991 Michael I Bushnell (mib at geech.ai.mit.edu)
|
---|
| 2841 |
|
---|
| 2842 | * Version 1.15 released.
|
---|
| 2843 |
|
---|
| 2844 | * version.c: Updated from 1.15 alpha to 1.15
|
---|
| 2845 |
|
---|
| 2846 | * context.c (print_context_number_range,
|
---|
| 2847 | print_unidiff_number_range): Don't print N,M when N=M, print
|
---|
| 2848 | just N instead.
|
---|
| 2849 |
|
---|
| 2850 | * README: Updated for version 1.15.
|
---|
| 2851 | Makefile: Updated for version 1.15.
|
---|
| 2852 |
|
---|
| 2853 | * diff3.c (main): Don't get confused if one of the arguments
|
---|
| 2854 | is a directory.
|
---|
| 2855 |
|
---|
| 2856 | * diff.c (compare_files): Don't get confused if comparing
|
---|
| 2857 | standard input to a directory; print error instead.
|
---|
| 2858 |
|
---|
| 2859 | * analyze.c (diff_2_files), context.c (print_context_header,
|
---|
| 2860 | print_context_script), diff.c (main), diff.h (enum
|
---|
| 2861 | output_style): Tread unidiff as an output style in its own
|
---|
| 2862 | right. This also generates an error when both -u and -c are
|
---|
| 2863 | given.
|
---|
| 2864 |
|
---|
| 2865 | * diff.c (main): Better error messages when regexps are bad.
|
---|
| 2866 |
|
---|
| 2867 | * diff.c (compare_files): Don't assume stdin is opened.
|
---|
| 2868 |
|
---|
| 2869 | * diff3.c (read_diff): Don't assume things about the order of
|
---|
| 2870 | descriptor assignment and closes.
|
---|
| 2871 |
|
---|
| 2872 | * util.c (setup_output): Don't assume things about the order
|
---|
| 2873 | of descriptor assignment and closes.
|
---|
| 2874 |
|
---|
| 2875 | * diff.c (compare_files): Set a flag so that closes don't
|
---|
| 2876 | happen more than once.
|
---|
| 2877 |
|
---|
| 2878 | * diff.c (main): Don't just flush stdout, do a close. That
|
---|
| 2879 | way on broken systems we can still get errors.
|
---|
| 2880 |
|
---|
| 2881 | Mon Dec 24 16:24:17 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2882 |
|
---|
| 2883 | * diff.c (usage): Use = for args of long options.
|
---|
| 2884 |
|
---|
| 2885 | Mon Dec 17 18:19:20 1990 Michael I Bushnell (mib at geech.ai.mit.edu)
|
---|
| 2886 |
|
---|
| 2887 | * context.c (print_context_label): Labels were interchanged badly.
|
---|
| 2888 |
|
---|
| 2889 | * context.c (pr_unidiff_hunk): Changes to deal with files
|
---|
| 2890 | ending in incomplete lines.
|
---|
| 2891 | * util.c (print_1_line): Other half of the changes.
|
---|
| 2892 |
|
---|
| 2893 | Mon Dec 3 14:23:55 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2894 |
|
---|
| 2895 | * diff.c (longopts, usage): unidiff => unified.
|
---|
| 2896 |
|
---|
| 2897 | Wed Nov 7 17:13:08 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2898 |
|
---|
| 2899 | * analyze.c (diff_2_files): No warnings about newlines for -D.
|
---|
| 2900 |
|
---|
| 2901 | * diff.c (pr_unidiff_hunk): Remove ref to output_patch_flag.
|
---|
| 2902 |
|
---|
| 2903 | Tue Oct 23 23:19:18 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2904 |
|
---|
| 2905 | * diff.c (compare_files): For -D, compare even args are same file.
|
---|
| 2906 | * analyze.c (diff_2_files): Likewise.
|
---|
| 2907 | Also, output even if files have no differences.
|
---|
| 2908 |
|
---|
| 2909 | * analyze.c (diff_2_files): Print missing newline messages last.
|
---|
| 2910 | Return 2 if a newline is missing.
|
---|
| 2911 | Print them even if files end with identical text.
|
---|
| 2912 |
|
---|
| 2913 | Mon Oct 22 19:40:09 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2914 |
|
---|
| 2915 | * diff.c (usage): Return 2.
|
---|
| 2916 |
|
---|
| 2917 | Wed Oct 10 20:54:04 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2918 |
|
---|
| 2919 | * diff.c (longopts): Add +new-files.
|
---|
| 2920 |
|
---|
| 2921 | Sun Sep 23 22:49:29 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2922 |
|
---|
| 2923 | * context.c (print_context_script): Handle unidiff_flag.
|
---|
| 2924 | (print_context_header): Likewise.
|
---|
| 2925 | (print_unidiff_number_range, pr_unidiff_hunk): New functions.
|
---|
| 2926 | * diff.c (longopts): Add element for +unidiff.
|
---|
| 2927 | (main): Handle +unidiff and -u.
|
---|
| 2928 | (usage): Mention them.
|
---|
| 2929 |
|
---|
| 2930 | Wed Sep 5 16:33:22 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2931 |
|
---|
| 2932 | * io.c (find_and_hash_each_line): Deal with missing final newline
|
---|
| 2933 | after buffering necessary context lines.
|
---|
| 2934 |
|
---|
| 2935 | Sat Sep 1 16:32:32 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2936 |
|
---|
| 2937 | * io.c (find_identical_ends): ROBUST_OUTPUT_FORMAT test was backward.
|
---|
| 2938 |
|
---|
| 2939 | Thu Aug 23 17:17:20 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2940 |
|
---|
| 2941 | * diff3.c (WIFEXITED): Undef it if WEXITSTATUS is not defined.
|
---|
| 2942 | * context.c (find_function): Don't try to return values.
|
---|
| 2943 |
|
---|
| 2944 | Wed Aug 22 11:54:39 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2945 |
|
---|
| 2946 | * diff.h (O_RDONLY): Define if not defined.
|
---|
| 2947 |
|
---|
| 2948 | Tue Aug 21 13:49:26 1990 Richard Stallman (rms at mole.ai.mit.edu)
|
---|
| 2949 |
|
---|
| 2950 | * Handle -L option.
|
---|
| 2951 | * context.c (print_context_label): New function.
|
---|
| 2952 | (print_context_header): Use that.
|
---|
| 2953 | * diff.c (main): Recognize the option.
|
---|
| 2954 | (usage): Updated.
|
---|
| 2955 | * diff.h (file_label): New variable.
|
---|
| 2956 | * diff3.c (main): Recognize -L instead of -t.
|
---|
| 2957 |
|
---|
| 2958 | * diff3.c (main): Support -m without other option.
|
---|
| 2959 |
|
---|
| 2960 | * diff3.c (WEXITSTATUS, WIFEXITED): Define whenever not defined.
|
---|
| 2961 |
|
---|
| 2962 | * diff3.c (bcopy, index, rindex): Delete definitions; not used.
|
---|
| 2963 | (D_LINENUM, D_LINELEN): Likewise.
|
---|
| 2964 | (struct diff_block): lengths includes newlines.
|
---|
| 2965 | (struct diff3_block): Likewise.
|
---|
| 2966 | (always_text, merge): New variables.
|
---|
| 2967 | (read_diff): Return address of end, not size read. Calls changed.
|
---|
| 2968 | Pass -a to diff if given to diff3.
|
---|
| 2969 | current_chunk_size now an int. Detect error in `pipe'.
|
---|
| 2970 | Check for incomplete line of output here.
|
---|
| 2971 | (scan_diff_line): Don't make scan_ptr + 2 before knowing it is valid.
|
---|
| 2972 | No need to check validity of diff output here.
|
---|
| 2973 | Include newline in length of line.
|
---|
| 2974 | (main): Compute rev_mapping here. Handle -a and -m.
|
---|
| 2975 | Error message if excess -t operands. Error for incompatible options.
|
---|
| 2976 | Error if `-' given more than once.
|
---|
| 2977 | Fix error storing in tag_strings.
|
---|
| 2978 | (output_diff3): REV_MAPPING is now an arg. Call changed.
|
---|
| 2979 | Change syntax of "missing newline" message.
|
---|
| 2980 | Expect length of line to include newline.
|
---|
| 2981 | (output_diff3_edscript): Return just 0 or 1.
|
---|
| 2982 | REV_MAPPING is now an arg. Call changed.
|
---|
| 2983 | (output_diff3_merge): New function.
|
---|
| 2984 | (process_diff): Better error message for bad diff format.
|
---|
| 2985 | (fatal, perror_with_exit): Return status 2.
|
---|
| 2986 |
|
---|
| 2987 | * analyze.c (diff_2_files): Report missing newline in either
|
---|
| 2988 | or both files, if not robust output style.
|
---|
| 2989 |
|
---|
| 2990 | * util.c (setup_output): Detect error from pipe.
|
---|
| 2991 | No need to close stdin.
|
---|
| 2992 |
|
---|
| 2993 | * util.c (print_1_line): Change format of missing-newline msg.
|
---|
| 2994 | Change if statements to switch.
|
---|
| 2995 |
|
---|
| 2996 | * io.c (slurp): Don't mention differences in final newline if -B.
|
---|
| 2997 |
|
---|
| 2998 | * io.c (binary_file_p): Use ISO char set as criterion, not ASCII.
|
---|
| 2999 |
|
---|
| 3000 | * io.c (find_identical_ends): Increase value of BEG0 by 1.
|
---|
| 3001 | Other changes in backwards scan to avoid decrementing pointers
|
---|
| 3002 | before start of array, and set LINES properly.
|
---|
| 3003 |
|
---|
| 3004 | * diff.h (ROBUST_OUTPUT_STYLE): New macro.
|
---|
| 3005 | * io.c (find_identical_ends, find_and_hash_each_line): Use that macro.
|
---|
| 3006 |
|
---|
| 3007 | * diff.h (dup2): Don't define if XENIX.
|
---|
| 3008 |
|
---|
| 3009 | * diff.c (main): Check for write error at end.
|
---|
| 3010 |
|
---|
| 3011 | * context.c (find_function): Don't return a value.
|
---|
| 3012 | Use argument FILE rather than global files.
|
---|
| 3013 |
|
---|
| 3014 | * analyze.c: Add external function declarations.
|
---|
| 3015 | * analyze.c (build_script): Turn off explicit check for final newline.
|
---|
| 3016 |
|
---|
| 3017 | * analyze.c (discard_confusing_lines): Make integers unsigned.
|
---|
| 3018 |
|
---|
| 3019 | Tue Jul 31 21:37:16 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3020 |
|
---|
| 3021 | * io.c (find_and_hash_each_line): Correct the criterion
|
---|
| 3022 | for leaving out the newline from the end of the line.
|
---|
| 3023 |
|
---|
| 3024 | Tue May 29 21:28:16 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3025 |
|
---|
| 3026 | * dir.c (diff_dirs): Free things only if nonzero.
|
---|
| 3027 |
|
---|
| 3028 | Mon Apr 16 18:31:05 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3029 |
|
---|
| 3030 | * diff.h (NDIR_IN_SYS): New macro controls location of ndir.h.
|
---|
| 3031 |
|
---|
| 3032 | * diff3.c (xmalloc, xrealloc): Don't die if size == 0 returns 0.
|
---|
| 3033 |
|
---|
| 3034 | Sun Mar 25 15:58:42 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3035 |
|
---|
| 3036 | * analyze.c (discard_confusing_lines):
|
---|
| 3037 | `many' wasn't being used; use it.
|
---|
| 3038 | Canceling provisionals near start of run must handle already
|
---|
| 3039 | canceled provisionals.
|
---|
| 3040 | Canceling subruns of provisionals was canceling last nonprovisional.
|
---|
| 3041 |
|
---|
| 3042 | Sat Mar 24 14:02:51 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3043 |
|
---|
| 3044 | * analyze.c (discard_confusing_lines):
|
---|
| 3045 | Threshold for line occurring many times scales by square root
|
---|
| 3046 | of total lines.
|
---|
| 3047 | Within each run, cancel any long subrun of provisionals.
|
---|
| 3048 | Don't update `provisional' while canceling provisionals.
|
---|
| 3049 | In big outer loop, handle provisional and nonprovisional separately.
|
---|
| 3050 |
|
---|
| 3051 | Thu Mar 22 16:35:33 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3052 |
|
---|
| 3053 | * analyze.c (discard_confusing_lines):
|
---|
| 3054 | The first loops to discard provisionals from ends failed to step.
|
---|
| 3055 | In second such loops, keep discarding all consecutive provisionals.
|
---|
| 3056 | Increase threshold for stopping discarding, and also check for
|
---|
| 3057 | consecutive nondiscardables as separate threshold.
|
---|
| 3058 |
|
---|
| 3059 | Fri Mar 16 00:33:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3060 |
|
---|
| 3061 | * diff3.c (read_diff): Pass -- as first arg to diff.
|
---|
| 3062 |
|
---|
| 3063 | * diff3.c: Include wait.h or define equivalent macros.
|
---|
| 3064 | (read_diff): Don't use stdio printing error in the inferior.
|
---|
| 3065 | Remember the pid and wait for it. Report failing status.
|
---|
| 3066 | Report failure of vfork.
|
---|
| 3067 |
|
---|
| 3068 | Sun Mar 11 17:10:32 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3069 |
|
---|
| 3070 | * diff3.c (main): Accept -t options and pass to output_diff3_edscript.
|
---|
| 3071 | (usage): Mention -t.
|
---|
| 3072 | (read_diff): Use vfork.
|
---|
| 3073 | (vfork): Don't use it on Sparc.
|
---|
| 3074 |
|
---|
| 3075 | * diff.h (vfork): Don't use it on Sparc.
|
---|
| 3076 |
|
---|
| 3077 | Tue Mar 6 22:37:20 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3078 |
|
---|
| 3079 | * diff3.c (dup2): Don't define on Xenix.
|
---|
| 3080 |
|
---|
| 3081 | * Makefile: Comments for Xenix.
|
---|
| 3082 |
|
---|
| 3083 | Thu Mar 1 17:19:23 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3084 |
|
---|
| 3085 | * analyze.c (diff_2_files): `message' requires three args.
|
---|
| 3086 |
|
---|
| 3087 | Fri Feb 23 10:56:50 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
|
---|
| 3088 |
|
---|
| 3089 | * diff.h, util.c, diff3.c: Change 'void *' to 'VOID *', with
|
---|
| 3090 | VOID defined as void if __STDC__, char if not.
|
---|
| 3091 |
|
---|
| 3092 | Sun Feb 18 20:31:58 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
|
---|
| 3093 |
|
---|
| 3094 | * Makefile: Add rules for getopt.c, getopt1.c, getopt.h.
|
---|
| 3095 |
|
---|
| 3096 | * getopt.c, getopt.h, getopt1.c: New files.
|
---|
| 3097 |
|
---|
| 3098 | * main.c (main, usage): Add long options.
|
---|
| 3099 |
|
---|
| 3100 | * analyze.c (shift_boundaries): Remove unused var 'j_end'.
|
---|
| 3101 |
|
---|
| 3102 | Thu Feb 8 02:43:16 1990 Jim Kingdon (kingdon at pogo.ai.mit.edu)
|
---|
| 3103 |
|
---|
| 3104 | * GNUmakefile: include ../Makerules before Makefile.
|
---|
| 3105 |
|
---|
| 3106 | Fri Feb 2 23:21:38 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3107 |
|
---|
| 3108 | * analyze.c (diff_2_files): If -B or -I, don't return 1
|
---|
| 3109 | if all changes were ignored.
|
---|
| 3110 |
|
---|
| 3111 | Wed Jan 24 20:43:57 1990 Richard Stallman (rms at albert.ai.mit.edu)
|
---|
| 3112 |
|
---|
| 3113 | * diff3.c (fatal): Output to stderr.
|
---|
| 3114 |
|
---|
| 3115 | Thu Jan 11 00:25:56 1990 David J. MacKenzie (djm at hobbes.ai.mit.edu)
|
---|
| 3116 |
|
---|
| 3117 | * diff.c (usage): Mention -v.
|
---|
| 3118 |
|
---|
| 3119 | Wed Jan 10 16:06:38 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3120 |
|
---|
| 3121 | * diff3.c (output_diff3_edscript): Return number of overlaps.
|
---|
| 3122 | (main): If have overlaps, exit with status 1.
|
---|
| 3123 |
|
---|
| 3124 | Sun Dec 24 10:29:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3125 |
|
---|
| 3126 | * io.c (find_equiv_class): Fix typo that came from changing init of B
|
---|
| 3127 | to an assignment.
|
---|
| 3128 |
|
---|
| 3129 | * version.c: New file.
|
---|
| 3130 | * diff.c (main): -v prints version number.
|
---|
| 3131 |
|
---|
| 3132 | * io.c (binary_file_p): Null char implies binary file.
|
---|
| 3133 |
|
---|
| 3134 | Fri Nov 17 23:44:55 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3135 |
|
---|
| 3136 | * util.c (print_1_line): Fix off by 1 error.
|
---|
| 3137 |
|
---|
| 3138 | Thu Nov 16 13:51:10 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3139 |
|
---|
| 3140 | * util.c (xcalloc): Function deleted.
|
---|
| 3141 |
|
---|
| 3142 | * io.c (slurp): Null-terminate the buffer.
|
---|
| 3143 |
|
---|
| 3144 | * io.c (read_files): Delete unused vars.
|
---|
| 3145 |
|
---|
| 3146 | * io.c (find_equiv_class): Don't index by N if too low.
|
---|
| 3147 |
|
---|
| 3148 | * dir.c (dir_sort): Delete the extra declaration of compare_names.
|
---|
| 3149 |
|
---|
| 3150 | * diff.h: Don't declare xcalloc. Declare some other functions.
|
---|
| 3151 |
|
---|
| 3152 | * analyze.c (shift_boundaries):
|
---|
| 3153 | Test for END at end of range before indexing by it.
|
---|
| 3154 | Fix misspelling of `preceding' in var names.
|
---|
| 3155 |
|
---|
| 3156 | Sat Nov 11 14:04:16 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3157 |
|
---|
| 3158 | * diff3.c (using_to_diff3_block): Delete unused vars.
|
---|
| 3159 | (make_3way_diff, process_diff_control, read_diff, output_diff3): Likewise.
|
---|
| 3160 |
|
---|
| 3161 | Mon Nov 6 18:15:50 EST 1989 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 3162 |
|
---|
| 3163 | * README Fix typo.
|
---|
| 3164 |
|
---|
| 3165 | Fri Nov 3 15:27:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3166 |
|
---|
| 3167 | * diff.c (usage): Mention -D.
|
---|
| 3168 |
|
---|
| 3169 | * ifdef.c (print_ifdef_hunk): Write comments on #else and #endif.
|
---|
| 3170 |
|
---|
| 3171 | Sun Oct 29 16:41:07 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3172 |
|
---|
| 3173 | * diff.c (compare_files): Don't fflush for identical files.
|
---|
| 3174 |
|
---|
| 3175 | Wed Oct 25 17:57:12 1989 Randy Smith (randy at apple-gunkies.ai.mit.edu)
|
---|
| 3176 |
|
---|
| 3177 | * diff3.c (using_to_diff3_block): When defaulting lines from
|
---|
| 3178 | FILE0, only copy up to just under the *lowest* line mentioned
|
---|
| 3179 | in the next diff.
|
---|
| 3180 |
|
---|
| 3181 | * diff3.c (fatal): Add \n to error messages.
|
---|
| 3182 |
|
---|
| 3183 | Wed Oct 25 15:05:49 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3184 |
|
---|
| 3185 | * Makefile (tapefiles): Add ChangeLog.
|
---|
| 3186 |
|
---|
| 3187 | Tue Oct 3 00:51:17 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3188 |
|
---|
| 3189 | * diff3.c (process_diff, create_diff3_block): Init ->next field.
|
---|
| 3190 |
|
---|
| 3191 | Fri Sep 29 08:16:45 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3192 |
|
---|
| 3193 | * util.c (line_cmp): Alter end char of line 2, not line 1.
|
---|
| 3194 |
|
---|
| 3195 | Wed Sep 20 00:12:37 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3196 |
|
---|
| 3197 | * Makefile (diff.tar): Expect ln to fail on some files;
|
---|
| 3198 | copy them with cp.
|
---|
| 3199 |
|
---|
| 3200 | Mon Sep 18 02:54:29 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3201 |
|
---|
| 3202 | * Handle -D option:
|
---|
| 3203 | * io.c (find_and_hash_each_line): Keep all lines of 1st file.
|
---|
| 3204 | * diff.c (main): Handle -D option.
|
---|
| 3205 | (compare_files): Reject -D if files spec'd are directories.
|
---|
| 3206 | * analyze.c (diff_2_files): Handle OUTPUT_IFDEF case.
|
---|
| 3207 |
|
---|
| 3208 | Fri Sep 1 20:15:50 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3209 |
|
---|
| 3210 | * diff.c (option_list): Rename arg VECTOR as OPTIONVEC.
|
---|
| 3211 |
|
---|
| 3212 | Mon Aug 28 17:58:27 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3213 |
|
---|
| 3214 | * diff.c (compare_files): Clear entire inf[i].stat.
|
---|
| 3215 |
|
---|
| 3216 | Wed Aug 23 17:48:47 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu)
|
---|
| 3217 |
|
---|
| 3218 | * io.c (find_identical_ends): Sign was backward
|
---|
| 3219 | determining where to bound the scan for the suffix.
|
---|
| 3220 |
|
---|
| 3221 | Wed Aug 16 12:49:16 1989 Richard Stallman (rms at hobbes.ai.mit.edu)
|
---|
| 3222 |
|
---|
| 3223 | * analyze.c (diff_2_files): If -q, treat all files as binary.
|
---|
| 3224 | * diff.c (main): Detect -q, record in no_details_flag.
|
---|
| 3225 |
|
---|
| 3226 | Sun Jul 30 23:12:00 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3227 |
|
---|
| 3228 | * diff.c (usage): New function.
|
---|
| 3229 | (main): Call it.
|
---|
| 3230 |
|
---|
| 3231 | Wed Jul 26 02:02:19 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3232 |
|
---|
| 3233 | * diff.c (main): Make -C imply -c.
|
---|
| 3234 |
|
---|
| 3235 | Thu Jul 20 17:57:51 1989 Chris Hanson (cph at kleph)
|
---|
| 3236 |
|
---|
| 3237 | * io.c (find_and_hash_each_line): Bug fix in context handling,
|
---|
| 3238 | introduced by last change.
|
---|
| 3239 |
|
---|
| 3240 | Fri Jul 14 17:39:20 1989 Chris Hanson (cph at kleph)
|
---|
| 3241 |
|
---|
| 3242 | * analyze.c: To make RCS work correctly on files that don't
|
---|
| 3243 | necessarily end in newline, introduce some changes that cause
|
---|
| 3244 | diffs to be sensitive to missing final newline. Because
|
---|
| 3245 | non-RCS modes don't want to be affected by these changes, they
|
---|
| 3246 | are conditional on `output_style == OUTPUT_RCS'.
|
---|
| 3247 | (diff_2_files) [OUTPUT_RCS]: Suppress the "File X missing
|
---|
| 3248 | newline" message.
|
---|
| 3249 | (build_script) [OUTPUT_RCS]: Cause the last line to compare as
|
---|
| 3250 | different if exactly one of the files is missing its final
|
---|
| 3251 | newline.
|
---|
| 3252 |
|
---|
| 3253 | * io.c (find_and_hash_each_line): Bug fix in
|
---|
| 3254 | ignore_space_change mode. Change line's length to include the
|
---|
| 3255 | newline. For OUTPUT_RCS, decrement last line's length if
|
---|
| 3256 | there is no final newline.
|
---|
| 3257 | (find_identical_ends) [OUTPUT_RCS]: If one of the files is
|
---|
| 3258 | missing a final newline, make sure it's not included in either
|
---|
| 3259 | the prefix or suffix.
|
---|
| 3260 |
|
---|
| 3261 | * util.c (print_1_line): Change line output routine to account
|
---|
| 3262 | for line length including the newline.
|
---|
| 3263 |
|
---|
| 3264 | Tue Jun 27 02:35:28 1989 Roland McGrath (roland at hobbes.ai.mit.edu)
|
---|
| 3265 |
|
---|
| 3266 | * Makefile: Inserted $(archpfx) where appropriate.
|
---|
| 3267 |
|
---|
| 3268 | Wed May 17 20:18:43 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3269 |
|
---|
| 3270 | * diff3.c [USG]: Include fcntl.h.
|
---|
| 3271 |
|
---|
| 3272 | * diff.h [USG]: New compilation flags HAVE_NDIR, HAVE_DIRECT.
|
---|
| 3273 |
|
---|
| 3274 | Wed Apr 26 15:35:57 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3275 |
|
---|
| 3276 | * dir.c (diff_dirs): Two new args, NONEX1 and NONEX2, say to pretend
|
---|
| 3277 | nonex dirs are empty.
|
---|
| 3278 | (dir_sort): New arg NONEX, likewise.
|
---|
| 3279 | * diff.c (compare_files): Pass those args.
|
---|
| 3280 | Sometimes call diff_dirs if subdir exists in just one place.
|
---|
| 3281 |
|
---|
| 3282 | Wed Apr 12 01:10:27 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3283 |
|
---|
| 3284 | * io.c (find_identical_ends): Set END0 *after* last char
|
---|
| 3285 | during backward scan for suffix.
|
---|
| 3286 |
|
---|
| 3287 | Sat Apr 8 15:49:49 1989 Randall Smith (randy at apple-gunkies.ai.mit.edu)
|
---|
| 3288 |
|
---|
| 3289 | * diff3.c (using_to_diff3_block): Now find high marks in files 1
|
---|
| 3290 | and 2 through mapping off of the last difference instead of the
|
---|
| 3291 | first.
|
---|
| 3292 |
|
---|
| 3293 | * diff3.c: Many trivial changes to spelling inside comments.
|
---|
| 3294 |
|
---|
| 3295 | Fri Feb 24 12:38:03 1989 Randall Smith (randy at gluteus.ai.mit.edu)
|
---|
| 3296 |
|
---|
| 3297 | * util.c, normal.c, io.c, ed.c, dir.c, diff.h, diff.c, context.c,
|
---|
| 3298 | analyze.c, Makefile: Changed copyright header to conform with new
|
---|
| 3299 | GNU General Public license.
|
---|
| 3300 | * diff3.c: Changed copyright header to conform with new GNU
|
---|
| 3301 | General Public license.
|
---|
| 3302 | * COPYING: Made a hard link to /gp/rms/COPYING.
|
---|
| 3303 |
|
---|
| 3304 | Fri Feb 24 10:01:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3305 |
|
---|
| 3306 | * io.c (slurp): Leave 2 chars space at end of buffer, not one.
|
---|
| 3307 | (find_identical_ends): Special case if either file is empty;
|
---|
| 3308 | don't try to make a sentinel since could crash.
|
---|
| 3309 |
|
---|
| 3310 | Wed Feb 15 14:24:48 1989 Jay Fenlason (hack at apple-gunkies.ai.mit.edu)
|
---|
| 3311 |
|
---|
| 3312 | * diff3.c (message) Re-wrote routine to avoid using alloca()
|
---|
| 3313 |
|
---|
| 3314 | Wed Feb 15 06:19:14 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3315 |
|
---|
| 3316 | * io.c (find_identical_ends): Delete the variable `bytes'.
|
---|
| 3317 |
|
---|
| 3318 | Sun Feb 12 11:50:36 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3319 |
|
---|
| 3320 | * io.c (slurp): ->bufsize is nominal amount we have room for;
|
---|
| 3321 | add room for sentinel when calling xmalloc or xrealloc.
|
---|
| 3322 |
|
---|
| 3323 | * io.c (find_identical_ends): Do need overrun check in finding suffix.
|
---|
| 3324 |
|
---|
| 3325 | Fri Feb 10 01:28:15 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3326 |
|
---|
| 3327 | * diff.c (main): -C now takes arg to specify context length.
|
---|
| 3328 | Now -p to show C function name--Damned IEEE!
|
---|
| 3329 | Fatal error if context length spec'd twice.
|
---|
| 3330 |
|
---|
| 3331 | * ed.c (print_ed_hunk): Now special treatment only for lines containing
|
---|
| 3332 | precisely a dot and nothing else. Output `..', end the insert,
|
---|
| 3333 | substitute that one line, then resume the insert if nec.
|
---|
| 3334 |
|
---|
| 3335 | * io.c (find_and_hash_lines): When backing up over starting context,
|
---|
| 3336 | don't move past buffer-beg.
|
---|
| 3337 |
|
---|
| 3338 | * io.c (find_identical_ends): Use sentinels to make the loops faster.
|
---|
| 3339 | If files are identical, skip the 2nd loop and return quickly.
|
---|
| 3340 | (slurp): Leave 1 char extra space after each buffer.
|
---|
| 3341 |
|
---|
| 3342 | * analyze.c (diff_2_files): Mention difference in final newlines.
|
---|
| 3343 |
|
---|
| 3344 | Wed Jan 25 22:44:44 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3345 |
|
---|
| 3346 | * dir.c (diff_dirs): Use * when calling fcn ptr variable.
|
---|
| 3347 |
|
---|
| 3348 | Sat Dec 17 14:12:06 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3349 |
|
---|
| 3350 | * Makefile: New vars INSTALL and LIBS used in some rules;
|
---|
| 3351 | provide default defns plus commented-put defns for sysV.
|
---|
| 3352 |
|
---|
| 3353 | Thu Nov 17 16:42:53 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3354 |
|
---|
| 3355 | * dir.c (dir_sort): Open-trouble not fatal; just say # files is -1.
|
---|
| 3356 | (diff_dirs): If dir_sort does that, give up and return 2.
|
---|
| 3357 |
|
---|
| 3358 | * diff.c (compare_files): Don't open directories.
|
---|
| 3359 | Don't close them specially either.
|
---|
| 3360 | Cross-propagate inf[i].dir_p sooner.
|
---|
| 3361 |
|
---|
| 3362 | Sun Nov 13 11:19:36 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu)
|
---|
| 3363 |
|
---|
| 3364 | * diff.h: Declare index, rindex.
|
---|
| 3365 |
|
---|
| 3366 | * diff.c (compare_files): If comparing foodir with b/f,
|
---|
| 3367 | use foodir/f, not foodir/b/f.
|
---|
| 3368 |
|
---|
| 3369 | * diff.c (compare_files): Don't print "are identical" msg for 2 dirs.
|
---|
| 3370 | Status now 1 if one file is a dir and the other isn't, etc.
|
---|
| 3371 |
|
---|
| 3372 | Thu Nov 3 16:30:24 1988 Randall Smith (randy at gluteus.ai.mit.edu)
|
---|
| 3373 |
|
---|
| 3374 | * Makefile: Added a define for diff3 to define DIFF_PROGRAM.
|
---|
| 3375 |
|
---|
| 3376 | * util.c: Added hack to make sure that perror was not called with
|
---|
| 3377 | a null pointer.
|
---|
| 3378 |
|
---|
| 3379 | * diff.c: Changed S_IFDIR to S_IFMT in masking type of file bits
|
---|
| 3380 | out.
|
---|
| 3381 |
|
---|
| 3382 | * diff3.c: Included USG compatibility defines.
|
---|
| 3383 |
|
---|
| 3384 | * diff.h: Moved sys/file.h into #else USG section (not needed or
|
---|
| 3385 | wanted on System V).
|
---|
| 3386 |
|
---|
| 3387 | * ed.c, analyze.c, context.c: Shortened names to 12 characters for
|
---|
| 3388 | the sake of System V (too simple not to do).
|
---|
| 3389 |
|
---|
| 3390 |
|
---|
| 3391 | Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1997, 1998, 1999,
|
---|
| 3392 | 2000, 2001, 2002 Free Software Foundation, Inc.
|
---|
| 3393 |
|
---|
| 3394 | This file is part of GNU Diffutils.
|
---|
| 3395 |
|
---|
| 3396 | This program is free software; you can redistribute it and/or modify
|
---|
| 3397 | it under the terms of the GNU General Public License as published by
|
---|
| 3398 | the Free Software Foundation; either version 2, or (at your option)
|
---|
| 3399 | any later version.
|
---|
| 3400 |
|
---|
| 3401 | This program is distributed in the hope that they will be useful,
|
---|
| 3402 | but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 3403 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
| 3404 | GNU General Public License for more details.
|
---|
| 3405 |
|
---|
| 3406 | You should have received a copy of the GNU General Public License
|
---|
| 3407 | along with this program; see the file COPYING. If not, write to
|
---|
| 3408 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
---|
| 3409 | Boston, MA 02111-1307, USA.
|
---|