12000-03-08 Alain Magloire 2 3 * configure.in: version 2.4.2 4 52000-03-07 Paul Eggert 6 7 * Make intl subdirectory match fileutils, tar, etc.; 8 see intl/ChangeLog for details. 9 10 * src/getpagesize.h: Reformat to match latest fileutils. 11 12 * src/savedir.c (savedir): Work even if directory size is 13 negative; this can happen with some NFS screwups. 14 152000-03-03 Jim Meyering 16 17 * regex.m4: Make sure re_compile_pattern accepts patterns like `{1'. 18 192000-03-02 Alain Magloire 20 21 * 2.4.1 Release 22 232000-02-25 Paul Eggert 24 25 * configure.in (LIBOBJS): Work around automake 1.4 bug: 26 regex.c wasn't being passed through ansi2knr on pre-ANSI hosts. 27 (ac_use_included_regex): Fix typo in warning. 28 * src/Makefile.am (EXTRA_DIST): Remove regex.c, as the LIBOBJS 29 workaround means that automake now puts regex.c into DIST_COMMON. 30 312000-02-25 Alain Magloire 32 33 * po/*.po: update of the PO files. 34 352000-02-22 Eli Zaretskii 36 37 * doc/grep.1: Two small glitches(typos). 38 392000-02-18 Eli Zaretskii 40 41 * djgpp/config.site (prefix, INSTALL): Use /dev/env/DJDIR instead 42 of ${DJDIR}, so that the produced Makefile's work on any DJGPP 43 installation. 44 452000-01-30 Alain Magloire 46 47 * doc/grep.1: corrected typo. 48 Noted by Ruslan Ermilob. 49 502000-01-30 Alain Magloire 51 52 * vms/Makefile.am: added config_vms.h to EXTRA_DIST. 53 * vms/config_vms.h: New File, contains macros specific to VMS and 54 avoid namespace collision with operating system supplied C library. 55 * vms/make.com: Better compiler auto-detection; information for builds 56 on pre-OpenVMS 7.x systems; general overhaul. 57 * src/getpagesize.h: Reinstate support for different pagesizes on 58 VAX and Alpha. Work around problem with DEC C compiler. 59 * src/vms_fab.c: Cast to some assigments; fixed typo argcp vs. argp. 60 * src/vms_fab.h: Added new include files to avoid warnings about 61 undefined function prototypes. 62 Those patches were provided by Martin P.J. Zinser ([email protected]). 63 642000-01-30 Paul Eggert 65 66 * src/grep.c (main): Update copyright notice. 67 682000-01-28 Alain Magloire 69 70 * src/grep.c (usage): The example "%s -i 'hello.*world' could 71 lead to confusion when progname is 'fgrep. 72 Noted by Akim Demaille. 73 74 * configure.in: Reenable, jm_INCLUDE_REGEX() since we now 75 track GNU lib C. 76 * src/Makefile.am: EXTRA_DIST new macros with regex.c regex.h. 77 Requested By Ulrich Drepper. 78 792000-01-25 Paul Eggert 80 81 * src/grep.c (grep): If the final byte of an input file is not 82 a newline, grep now silently supplies one. 83 * doc/grep.texi, NEWS: Likewise. 84 852000-01-25 Paul Eggert 86 87 * NEWS, doc/grep.1, doc/grep.texi: Add -I option. 88 * src/grep.c (short_options, usage, main): Likewise. 89 90 * doc/grep.texi: Fix some incorrect references to ASCII. 91 922000-01-25 Paul Eggert 93 94 * doc/grep.1: Simplify synopsis; sort options; mention 95 environment variables; clean up some minor gaffes. 96 972000-01-25 Paul Eggert 98 99 * doc/grep.texi: 100 Fix some errors in description of [:print:] and the like. 101 1022000-01-23 Paul Eggert 103 104 * src/dfa.c (FETCH, lex): Put brackets around if-body to avoid 105 GCC warning about ambiguous if-then-else. 106 1072000-01-23 Paul Eggert 108 109 * src/regex.c (GET_UNSIGNED_NUMBER): Allow only ASCII digits. 110 * src/dfa.c (ISASCIIDIGIT): New macro. 111 (lex): Use it instead of ISDIGIT. 112 1132000-01-23 Paul Eggert 114 115 The bug is that regular expression ranges like [a-z] compare raw 116 byte codes to the range boundaries, whereas POSIX says that they 117 should use the current collating sequence instead. For example, 118 in Solaris 7 with LC_ALL=en_US, the command 119 echo x | grep '[ -~]' 120 outputs 'x', but it shouldn't output anything since ' ' and '~' 121 sort before all letters in that locale. 122 123 * src/regex.c (compile_range): When matching a character 124 range, use the current collating sequence, as POSIX requires. 125 * src/dfa.c (lex): Likewise. 126 1272000-01-20 Alain Magloire 128 129 * tests/Makefile.am (dist-hook): Added new rule to make sure 130 that the shell scripts have the right permissions. 131 * src/posix/Makefile.am (EXTRA_DIST): added regex.h in the 132 distribution. 133 * THANKS: updated. 134 1352000-01-18 Alain Magloire 136 137 * Rectification the initial patch to add --binary-file option 138 was done by Ruslan Ermilov. 139 1402000-01-17 Paul Eggert 141 142 Sync with sources of fileutils 4.0n, tar 1.13.17, glibc 2.1.3a1. 143 Convert to ANSI C prototypes (using ansi2knr for backwards 144 compatibility), as this makes it easier to sync. 145 146 * configure.in (AC_OBJEXT): Spell in a funny way, to work around 147 a bug in automake 1.4 with ansi2knr. 148 (LIBOBJS): Add assignment so that .o files in LIBOBJS are also built 149 via the ANSI2KNR-filtering rules. 150 (AC_OUTPUT): Add src/posix/Makefile. 151 * src/Makefile.am (AUTOMAKE_OPTIONS): Add ansi2knr. 152 (SUBDIRS): New macro. 153 * src/ansi2knr.1, src/ansi2knr.c, src/posix/Makefile.am: New files. 154 * src/dfa.c, src/dosbuf.c, src/grep.c, src/kwset.c, src/search.c, 155 src/vms_fab.c: 156 Use prototypes for function definitions. 157 * src/grep.c (main): Use int counter for default context, 158 fixing an ANSI portability bug uncovered by the above changes. 159 160 * config.guess, config.sub, install-sh, missing, src/alloca.c, 161 src/getpagesize.h, src/memchr.c, src/savedir.c, src/savedir.h, 162 src/stpcpy.c: 163 Upgrade to latest version from fileutils 4.0n. 164 165 * src/getopt.c, src/getopt.h, src/getopt1.c: Upgrade to latest 166 version from tar 1.13.17. 167 168 * src/obstack.c, src/obstack.h, src/regex.c, src/regex.h: 169 Upgrade to glibc 2.1.3 alpha 1, with K&R C portability fix. 170 * src/posix/regex.h: New file, from glibc 2.1.3 alpha 1. 171 1722000-01-04 Paul Eggert 173 174 Inititial patch from David O'Brien. 175 176 Add --binary-files option. 177 * NEWS, doc/grep.1, doc/grep.texi: Document it. 178 * src/grep.c (BINARY_FILES_OPTION): New constant. 179 (long_options, grep, usage, main): New --binary-files option. 180 (binary_files): New var. 181 * src/system.h (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, CHAR_MAX): 182 New macros. 183 (INT_MAX, UCHAR_MAX): Define in terms of TYPE_MAXIMUM. 184 1852000-01-04 Paul Eggert 186 187 * savedir.c (savedir): Don't store past the end of an array if 188 name_size is zero and the directory is empty. 189 Reported by Dima Barsky <[email protected]>. 190 1911999-12-03 Alain Magloire 192 193 * 2.4 Release. 194 1951999-11-18 Paul Eggert 196 197 * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a 198 problem with the QNX 4.25 shell, which doesn't propagate exit 199 status of failed commands inside shell assignments. 200 2011999-11-13 Eli Zaretskii 202 203 * doc/grep.texi: Minor markup and spelling corrections. Use 204 @noindent where appropriate. 205 206 * PATCHES-{AM,AC}: rename to PATCHES.{AM,AC} 207 2081999-11-12 Eli Zaretskii 209 210 doc/grep.texi: Minor fixes and typos corrected. 211 djgpp/README: Updated version. 212 2131999-11-07 Paul Eggert 214 215 * src/grep.c (usage): Fix misspelling. 216 2171999-11-07 Paul Eggert 218 219 Don't assume that the C library has re_set_syntax and friends. 220 * src/Makefile.am (base_sources): Add regex.c, regex.h. 221 (EXTRA_DIST): Remove regex.c, regex.h. 222 223 * src/grep.c (prtext): Use out_quiet, not not_text, to decide 224 whether to set pending to zero at the end. 225 (not_text): Remove static variable, undoing latest change. 226 (grep): Likewise. 227 228 * doc/grep.texi: Tighten up the text, and fix some minor 229 spelling and usage errors. Use @enumerate rather than @table 230 @samp, since it's better for Q&A format. Add cross 231 references. 232 2331999-11-01 Alain Magloire 234 235 * src/search.c: Use the more portable [[:alnum:]] 236 to define a word instead of Ascii dependent [0-9A-Za-z] 237 * src/grep.c: make not_text global to not display text when 238 the context switches -A/-B/-C are use on binary files. 239 * make grep-2.3g available for testing. 240 * configure.in: drop support for --without-included-regex. 241 This was generating bogus bug reports, since many GNU/Linux 242 users have different version of glibc. And glibc maintainers 243 decided to drop k&r support. 244 2451999-11-01 Arnold D. Robbins 246 247 * regex.c (init_syntax_once): move below definition of 248 ISALNUM etc., then use ISALNUM to init the table, so that 249 the word ops will work if i18n'ed. 250 (SYNTAX): And subscript with 0xFF for Latin-1 characters. 251 2521999-10-26 Alain Magloire 253 254 * src/regex.c: Merge changes from GNU lib C. 255 * Updated the *.po files 256 2571999-10-26 Paul Eggert 258 259 * src/grep.c (fillbuf): Don't report buffer size overflow if 260 newalloc == save and maxalloc == save. This can happen 261 e.g. when reading a large page-aligned file that contains 262 no newlines. 263 2641999-10-21 Paul Eggert 265 266 * src/grep.c (usage): Give example. Clarify -F. 267 Explain exit status more clearly. 268 2691999-10-12 Paul Eggert 270 271 * doc/grep.texi: Shorten the commentary about egrep and {. 272 "BSD grep" -> "traditional grep". 273 * doc/grep.1: Match recent changes to grep.texi. 274 2751999-10-11 Paul Eggert 276 277 * NEWS, doc/grep.1, doc/grep.texi: New option --mmap. 278 * src/grep.c (mmap_option): New variable. 279 (long_options, reset, usage): Add --mmap. 280 Default is now read, not mmap. 281 282 * doc/grep.1: Document -Z or --null. 283 2841999-10-11 Paul Eggert 285 286 * doc/grep.texi: Fix texinfo glitches. POSIX -> POSIX.2 where 287 appropriate. 288 2891999-10-11 Paul Eggert 290 291 * acconfig.h (ssize_t): New #undef. 292 293 * configure.in (AC_CHECK_TYPE): Add ssize_t. 294 295 * src/grep.c (PREFERRED_SAVE_FACTOR): New macro. 296 (reset): If the buffer has already been allocated, set bufsalloc to 297 be bufalloc / PREFERRED_SAVE_FACTOR. This avoids problems when 298 bufsalloc == bufalloc (possible after reading a large binary file). 299 (reset): Use PREFERRED_SAVE_FACTOR instead of magic constant. 300 Do not set bufbeg; nobody uses it. 301 Always set buflim. 302 Check for lseek error. 303 Use SEEK_CUR, not a magic constant. 304 (fillbuf): Return an error indication, not a count. 305 All callers changed. 306 Do not assume ssize_t fits in int. 307 Use PREFERRED_SAVE_FACTOR instead of magic constant. 308 Clean up mmap code. 309 Do not attempt to mmap zero bytes. 310 Check for lseek error. 311 Use SEEK_SET, not a magic constant. 312 Work correctly if read is interrupted. 313 (grepfile): Work correctly if open or close is interrupted. 314 315 * src/system.h (SEEK_SET, SEEK_CUR): New macros. 316 3171999-10-02 Alain Magloire 318 319 * src/regex.[ch]: upgrade from GNU lib C source tree. 320 321 * make beta 2.3f available. 322 3231999-10-02 Paul Eggert 324 325 * NEWS: egrep is now equivalent to `grep -E'. 326 The lower bound of an interval is not optional. 327 You can specify a matcher multiple types without error. 328 -u and -U are now allowed on non-DOS hosts, and have no effect. 329 * doc/grep.texi: Likewise. 330 * doc/grep.1: Likewise. 331 Fix some troff bugs that prevented `groff' from rendering the page. 332 333 * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c (default_matcher): 334 Remove. 335 (matcher): Add. 336 * src/grep.h (default_matcher): Remove. 337 (matcher): Now exported from ?grepmat.c, not grep.c. 338 339 * src/dfa.c (lex): If { would start an invalid interval specification, 340 treat it as a normal character. 341 Remove (broken) support for {,M} meaning {0,M}. 342 Diagnose bogus intervals like {1,0}. 343 (closure): maxrep is now -1 to indicate no limit, not zero; 344 zero is a valid value for maxrep, meaning an upper bound of zero. 345 346 * src/grep.c (short_options): New constant. 347 (long_options, main): -u and -U are now supported on Unix, 348 with no effect. 349 (matcher): Removed; now defined by ?grepmat.c. 350 (install_matcher): Renamed from setmatcher. 351 (setmatcher): New function. 352 (usage): Report new, more uniform option scheme. 353 (main): Do not initialize matcher; ?grepmat.c now does this. 354 Rely on setmatcher to catch matcher conflicts. 355 Default matcher is "grep". 356 357 * src/search.c (matchers): 358 Remove "posix-egrep" matcher; no longer needed. 359 (Ecompile): Likewise. 360 The egrep matcher now has POSIX behavior. 361 362 * tests/bre.tests: grep '\{' is no longer an error. 363 Fix test for interval too large, and enable it. 364 * tests/ere.tests: grep -E {1 is no longer an error 365 Likewise for a{1, a{1a, a{1a}, a{1,x}. 366 3671999-09-22 Paul Eggert 368 369 * largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC 370 2.95.1 bug with HP-UX 10.20. 371 3721999-09-12 Paul Eggert 373 374 * src/grep.c (fillbuf): Fix typo: we sometimes reported 375 arithmetic overflow even when there wasn't any. 376 3771999-09-12 Paul Eggert 378 379 * configure.in (AC_CHECK_FUNCS): Add memmove. 380 381 * src/system.h (S_ISREG): New macro. 382 (memmove): Define if ! defined HAVE_MEMMOVE && ! defined memmove, 383 not if !defined STDC_HEADERS. This is needed for SunOS 4.1.4, 384 which defines STDC_HEADERS but lacks memmove. 385 386 * src/grep.c (bufoffset): Needed even if !defined HAVE_MMAP. 387 (reset): Always fstat the file, since we always need its size if it is 388 regular. 389 Similarly, get the buffer offset of every regular file. 390 Set bufmapped to 0 if the file's initial offset is not a multiple 391 of the page size. 392 (fillbuf): Calculate an upper bound on how much memory we should 393 allocate only for regular files, since we don't know the sizes of 394 other files. 395 Don't bother to check whether the file offset is a multiple of the page 396 size, since we now do that just once in `reset'. 397 When an mmapped area would fall past the end of the file, trim it to 398 just before instead of giving up immediately and doing a `read'; 399 that avoids a worst-case behavior that could read half an mmapped file. 400 Fix bug when computing offsets on hosts that don't have mmap. 401 4021999-08-27 Paul Eggert 403 404 * src/system.h (memmove): New macro. 405 406 * src/grep.c (page_alloc): Reallocate the old buffer instead 407 of having both old and new buffers active simultaneously. 408 Remove valloc debugging variant, which no longer applies. 409 410 (fillbuf): Rejigger the buffer allocation mechanism. The old 411 mechanism could allocate more than 10*N bytes for an N-byte 412 file, which was excessive. Check for arithmetic overflow a 413 bit more carefully. 414 4151999-08-25 Paul Eggert 416 417 * src/grep.c (grepdir): 418 Don't assume that st_ino and st_dev must be integers; 419 POSIX.1 allows them to be floating-point (!). 420 421 * src/vms_fab.h (arr_ptr): `:' -> `;' to fix typo. 422 4231999-08-18 Alain Magloire 424 425 * 2.3e snapshot. 426 4271999-08-18 Alain Magloire 428 429 * src/search.c: On a CRAY J90 system running UNICOS 8.0. 430 Compilation of ./src/search.c failed because the declaration of 431 the variable "regex": 432 static struct re_pattern_buffer regex; 433 conflicted with a previous declaration search.c #includes "system.h", 434 which #includes <stdlib.h>, which declares : 435 extern char *regex __((char *_Re, char *_Subject, ...)); 436 The declaration in search.c is local to that one source file. 437 I just changed its name to something less likely to conflict. 438 (I called it "regexbuf", but you could pick any name you want.) 439 Excerpt email from Dean Kopesky. 440 4411999-08-16 Paul Eggert 442 443 Upgrade large-file support to the version used in tar and 444 textutils. 445 446 * Makefile.am (ACLOCAL_AMFLAGS): Define to be empty. 447 (M4DIR, ACINCLUDE_INPUTS): New macros. 448 ($(srcdir)/acinclude.m4): New rule. 449 450 * configure.in (AC_CANONICAL_HOST, AM_C_PROTOTYPES): Add. 451 (AC_SYS_LARGEFILE): Renamed from AC_LFS, for compatibility 452 with what should appear in the next autoconf release. 453 454 * m4/largefile.m4: Renamed from m4/lfs.m4. 455 456 * src/ansi2knr.1, src/ansi2knr.c, config.guess, config.sub: 457 New files. config.guess and config.sub ar needed by the new 458 AC_SYS_LARGEFILE. ansi2knr is needed by AM_C_PROTOTYPES, 459 which in turn is needed by the new AC_SYS_LARGEFILE. 460 4611999-08-16 Alain Magloire 462 463 * 2.3d snapshot on ftp server. 464 4651999-07-26 Paul Eggert 466 467Several GNU tools have options to process arbitrary file names, even 468file names that contain newline characters. These include `find 469-print0', `perl -0', `sort -z', and `xargs -0'. It'd be handy if GNU 470grep also processed such file names. Here's a proposed patch to do 471this, relative to grep 2.3c. This patch introduces two options, one 472for the data, and one for the file names. (Sometimes one wants 473null-terminated file names in the output, and sometimes one wants to 474process lists of null-terminated strings, and these are orthogonal 475axes.) 476 477 * NEWS, doc/grep.texi: New -z or --null-data and -Z or --null options. 478 * src/grep.c (long_options, usage, main): Likewise. 479 480 * src/dfa.h (dfasyntax): New eol parameter. 481 * src/dfa.c (eolbyte): New var. 482 (dfasyntax): Set it from new parameter. 483 (lex, dfastat, build_state, dfaexec): Use it instead of '\n'. 484 485 * src/grep.h (eolbyte): New decl. 486 * src/grep.c (eolbyte): New var. 487 (nlscan, prpending, prtext, grepbuf, grep): Use it instead of '\n'. 488 (filename_mask): New var. 489 (prline, grepfile): Output NUL separator if filename_mask is zero. 490 (grep): Look for '\200' as the hallmark of a binary file, not '\0', 491 if -z or --null-data is specified, since it implies that '\0' is 492 expected as text. 493 494 * src/search.c (Gcompile, Ecompile): Pass eolbyte to dfasyntax. 495 (EGexecute, Fexecute): Use eolbyte instead of '\n'. 496 4971999-06-15 Alain Magloire 498 499 * src/grep.c, doc/grep{1,texi} : 500 --revert-match should be --invert-match. 501 Correction proposed by Karl Berry. 502 5031999-06-12 Alain Magloire 504 505 * doc/grep.{1,texi}: add description for --with-filename. 506 Noted missing by UEBAYASHI Masao. 507 5081999-03-17 Paul Eggert 509 510 * NEWS: Add GREP_OPTIONS. 511 512 * doc/grep.texi: Document GREP_OPTIONS, and the other 513 environment variables. Fix doc for [:blank:], [:cntrl:], [:punct:]. 514 515 * src/grep.c (prepend_args, prepend_default_options): New functions. 516 (main): Use them to implement GREP_OPTIONS. 517 * src/system.h (getenv): New decl. 518 5191999-03-16 Volker Borchert 520 521 * configure.in: Use case case ... esac for checking Visual C++. 522 When ${CC} contains options it was not recognize. 523 5241999-03-07 Paul Eggert 525 526 * src/grep.c (usage): Don't report -E, -F, and -G unless we're grep. 527 (main): Don't match options -E, -F, and -G unless we're grep. 528 Remove after-the-fact check for options -E, -F, and -G, since 529 they're no longer needed. 530 5311999-03-05 Eli Zaretskii 532 533 * src/grep.c (main): Print the name of the default matcher instead 534 of just "grep". 535 5361999-02-06 Alain Magloire 537 538 * tests/*.awk : Linux users are seeing "Broken Pipe" on make check. 539 The problem is that grep does not drain its stdin, thus the previous 540 process in the pipeline receives a SIGPIPE. Other shells are silent 541 about this. There is actually no failure, since the broken pipe is 542 expected. You can work around it by changing the pipeline, so that 543 the input is drained, like this: 544 status=`echo 'check' | { ${GREP} -E -e pattern >/dev/null 2>&1; 545 echo $?; cat >/dev/null; }`; if test $status -ne $errnu then ... fi 546 Excerpt email from Andreas Schwab. 547 5481999-02-23 Alain Magloire 549 550 * src/grep.c : Restrict the use of -E, -F, -G 551 to only grep driver, Posix behaviour. {f,e}grep 552 the matcher is already set. This change may brake 553 scripts, warn in NEWS. 554 555 * doc/grep.{1,texi} : -C takes arguments, upgrade manual. 556 557 * beta 2.3a 558 5591999-02-23 Alain Magloire 560 561 * configure.in : Change the configure VC test from 562 'test x$ac_cv_prog_CC = xcl;' to 'test x"$ac_cv_prog_CC" = xcl;' 563 Email from Joshua R. Poulson. 564 5651999-02-23 Paul Eggert 566 567 Fix porting bug reported by Amakawa Shuhei for SunOS 4.1.4-JL. 568 The btowc.c shipped with grep 2.3 is incorrect for Solaris 569 2.5.1 and earlier, as it assumes UTF8, which these OSes do not 570 support. Solaris 7 supports btowc, so there's no need to ship 571 a substitute for it. The only questionable case is Solaris 572 2.6, which lacks btowc but does support UTF8. However, 2.6 573 supports UTF8 but only as a demonstration (for an English 574 locale!); Japanese Solaris 2.6 users typically use EUC, or 575 sometimes shift-JIS, but they cannot use UTF8 since Japanese 576 UTF8 is not supported. Hence there's no point to having grep 577 substitute a btowc that uses UTF8, as it is either redundant, 578 or it will almost invariably have incorrect behavior. 579 580 * configure.in (AC_CHECK_HEADERS): Don't set USE_WCHAR. 581 (AC_CHECK_FUNCS): Add btowc, wctype. 582 (AC_REPLACE_FUNCS): Don't replace btowc; our replacement is 583 invariably doing the wrong thing anyway, at least on SunOS/Solaris. 584 Don't bother to check for wctype in -lw, as we don't support 585 wide characters on Solaris 2.5.1 or earlier anyway. 586 587 * bootstrap/Makefile.try (OBJS): Remove btowc.$(OBJEXT). 588 589 * src/btowc.c: Removed; no longer needed. 590 5911999-02-19 Paul Eggert 592 593 * NEWS: Fix typo when talking about the old behavior of 594 silently skipping directories; it was grep 2.1, not grep 2.2. 595 5961999-02-15 Alain Magloire 597 598 * bootstrap/Makefile.try : add DJGPP DEFS. 599 Done by Elie Zaretsckii. 600 6011999-02-14 Alain Magloire 602 603 * m4/gettext.m4 : Guard [] with changequote. 604 From Elie Zaretskii. 605 606 * djgpp/config.bat : Makefile.in.in --> Makefile.in-in 607 From Elie Zaretskii. 608 609 * src/dosbuf: k&r function parameter. 610 611 * release of 2.3. 612 6131999-02-10 Alain Magloire 614 615 * bootstrap/{Makefile{try,am},REAMDE} : skeleton 616 provided for system lacking the tools to autoconfigure. 617 618 * src/{e,f,}grepmat.c: added guard [HAVE_CONFIG_H] 619 6201999-02-10 Alain Magloire 621 622 * PATCHES-AC, PATCHES-AM: updated. 623 624 * m4/regex.m4 : updated. 625 6261999-02-05 Eli Zaretskii 627 628 * m4/gettext.m4 : Support DOS-style D:/foo/bar absolute file 629 names. 630 631 * aclocal.m4 (DJGPP) : Use $DJ_GPP instead, since changing the 632 latter prevents GCC from finding headers and libraries. 633 634 * djgpp/config.bat: Make building from another directory work 635 636 * djgpp/config.sed: Remove redundant command wich edited path 637 separator: now done by configure. 638 639 * src/grep.c [O_BINARY]: Add prototype for undossify_input. 640 641 * doc/grep.texi (Introduction): Typo fixed. 642 6431999-02-03 Alain Magloire 644 645 * grep-2.2f beta release. 646 6471999-02-02 Alain Magloire 648 649 * m4/{djgpp,envsep,glibc,regex,dosfile,isc-posix}.m4 : 650 New files to aid configuration and unload configure.in. 651 * m4/Makefile.am : updated. 652 * src/btowc.c : protect for wchar.h 653 6541999-01-28 Alain Magloire 655 656 * intl/Makefile.in: Replace .o with .${ac_objext} where necessary. 657 Work around a limitation of Visual C++ on Cygwin32. 658 * acconfig.h configure.in: Define `alloca' as `_alloca' when CC=cl. 659 This little hack was suggested by Ian Roxborough <[email protected]>. 660 Patch forwarded by Ben Elliston. 661 6621999-01-28 Alain Magloire 663 664 * PATCHES-AM: New file. A small patch for automake-1.4, use $(sep) 665 as the path separator base on @SEP@. 666 * PATCHES-AC configure.in : updated for autoconf-13. 667 6681999-01-27 Volker Borchert 669 670 * grep.c: fgrep -NUM not working correctly. 671 add the argument number to digit_args_val. 672 6731999-01-22 Paul Eggert 674 675 Prevent grep -r from recursing infinitely through directory loops via 676 symbolic links. 677 678 * grep.c (struct stats): New type. 679 (stats_base): New var. 680 (bufstat): Remove; subsumed by stats->stat. 681 (reset, fillbuf, grep, grepdir, grepfile): Pass struct stats * arg, 682 for directory loop checking; use this instead of the bufstat global. 683 All callers changed. 684 (grepfile): Stat the file before invoking grepdir. 685 (grepdir): Assume that the argument has already been statted. 686 No longer a need for a directory size argument, since it 687 can be gotten from the struct stats * argument. 688 Check for directory loops. 689 Create linked list of directories currently being visited, 690 to detect loops. 691 6921998-12-29 Kaveh R. Ghazi 693 694 intl/localealias.c: When building grep-2.2e using cc on Irix4, 695 I needed the following patch to intl/localealias.c. 696 (Its the same patch used by fileutils-4.0.) The patch resolves 697 conflicts between char* and unsigned char* in the i18n code. 698 6991998-12-10 Alain Magloire 700 701 * src/grep.c : Typo in contex -->context 702 Noted by Vladimir Michl. 703 7041998-12-01 Alain Magloire 705 706 * doc/Makefile.am djgpp/Makefile.am m4/Makefile.am vms/Makefile.am: 707 New files. 708 709 * m4/progtest.m4: proctect '[]' from m4. 710 Noted by Eli Z. 711 712 * PATCHES-AC: New file, add the patch for autoconf in the dist. 713 714 * acconfig.h: (HAVE_DOS_FILENAME) 715 716 * TODO: updated. 717 718 * src/search.c: remove obsolete 'gegrep,ggrep,gnugrep' 719 matchers. grep no longer depend on argv[0]. 720 721 * grep-2.2e beta to test DJGPP port. 722 7231998-11-28 Paul Eggert 724 725 Various portability enhancements: 726 - Don't assume that O_BINARY implies DOS. Use separate 727 macros D_OK (for DOS-like directory access) and 728 HAVE_DOS_FILE_NAMES (for DOS-like file names). 729 - Don't assume that off_t fits into long; it doesn't on Solaris 2.6. 730 - Have is_EISDIR set errno properly on hosts with screwed-up EISDIR. 731 - Treat ':' specially in DOS file names only if it's the end of a 732 drive specifier. 733 - Protect against errno < 0. 734 735 * src/grep.c (is_EISDIR): Move defn to system.h. 736 (print_offset_sep): New function. 737 (fillbuf): Remove redundant test of O_BINARY. 738 (totalcc, totalnl): Now of type off_t. 739 (prline): Use print_offset_sep to print file offsets. 740 (grepfile): Don't set e to EISDIR; that's is_EISDIR's responsibility 741 on machines that don't work properly with EISDIR. 742 (grepdir): Don't assume ':' means slash on all DOS filenames; 743 it means it only in the file prefix. 744 745 * src/system.h (strerror): Check for negative error numbers. 746 (is_EISDIR): Depend on D_OK, not O_BINARY. 747 (SET_BINARY): Depend on HAVE_SETMODE, not __DJGPP__. 748 (IS_SLASH, FILESYSTEM_PREFIX_LEN): Depend on HAVE_DOS_FILE_NAMES, 749 not O_BINARY. 750 (CHAR_BIT): New macro. 751 752 * src/dosbuf.c (struct dos_map): 753 pos and add members are now of type off_t. 754 (dos_stripped_crs): Now of type off_t. 755 (dossified_pos): Now accepts arg and returns value of type off_t. 756 757 * configure.in (AC_CHECK_FUNCS): Add setmode. 758 (HAVE_DOS_FILENAMES): New macro 759 7601998-11-27 Eli Zaretskii 761 762 * djgpp/config.sed: New file, a Sed script to edit configure 763 script before running it on DOS/Windows. 764 * djgpp/config.bat: Updated to handle po2tbl.sed.in and 765 po/Makefile.in.in on DOS filesystems, and to run config.sed. 766 7671998-11-24 Jim Meyering 768 769 * src/grep.c : Typo s/infalid/invalid/ 770 Also noted by Stanislav Brabec. 771 7721998-11-24 Eli Zaretskii 773 774 * doc/grep.texi: I found and corrected several typos. 775 I believe the GNU standards require the section that describes the 776 options to the programs to be called ``Invoking'' or ``Invoking 777 <program-name>''. This is so users and programs can easily find 778 that node in any Info file. So I changed the name of the 779 `Options' chapter to `Invoking', and corrected the 780 cross-references accordingly. 781 I added some markup to things like file names and options. 782 I added some additional index entries where that seemed useful. 783 I also corrected some index entries, such as "@cindex [:alnum:]", 784 which used a colon in them (the colons confuse Info readers). 785 7861998-11-24 Alain Magloire 787 788 * grep/doc/grep.texi : -h is not use for help. 789 Nit spotted by Jim Meyering. 790 7911998-11-23 Alain Magloire 792 793 * doc: New directory, grep.1, {e,f}grep.man move here 794 * doc/grep.texi: New info manual 795 * doc/version.texi: New 796 * doc/Makefile.am: New 797 * tests/{ere,bre}.*: New files. The spencer2 test is split 798 in two ere/bre. 799 * config.hin: New, config.h.in rename to config.hin for OS 800 with limited file system aka DOS. 801 802 * grep-2.2d release for beta. 803 8041998-11-18 Alain Magloire 805 806 * src/regex.[ch] : Updated from GLibc, previous patches were 807 integrate by Ulrich Drepper and some added ones. 808 8091998-11-16 Paul Eggert 810 811 * grep.h (__attribute__): New macro, if not GCC. 812 (fatal): Add __attribute__((noreturn)). 813 * grep.c (usage): Add __attribute__((noreturn)). 814 8151998-11-16 Paul Eggert 816 817 Remove memory leak with valloced buffers, by invoking malloc instead. 818 819 * configure.in (AC_CHECK_FUNCS), src/system.h (valloc): Remove. 820 * src/grep.c (page_alloc): New function. 821 (ubuffer, pagesize): New vars. 822 (ALIGN_TO): New macro. 823 (reset): Initialize new vars. Check for overflow in buffer size calc. 824 Use page_alloc instead of valloc. 825 (fillbuf): Likewise. Use memcpy to copy saved area. 826 8271998-11-15 Paul Eggert 828 829 * dfa.c (dfacomp), search.c (EGexecute): Don't assume char is unsigned. 830 8311998-11-14 Paul Eggert 832 833 * src/grep.c (grepdir): Fix bug: memory freed twice. 834 835 * src/search.c (Gcompile, Ecompile): Don't invoke dfainit, 836 since dfacomp does it for us, and if we also do it then we 837 leak memory. 838 8391998-11-13 Eli Zaretskii 840 841 * djgpp/config.bat: Rewrite to run the configure script via Bash. 842 * djgpp/config.site, djgpp/getconf: New files. 843 * djgpp/config.h, djgpp/*.mak, djgpp/po2tbl.sed: Remove. 844 * djgpp/README: Update instructions. 845 846 * Makefile.am (EXTRA_DIST): Update the list of DJGPP files. 847 848 * src/system.h (IS_SLASH): New macro. 849 (is_EISDIR): Define it here for DOS and Windows. 850 851 * src/grep.c (main) [O_BINARY]: Set stdout to binary mode, so the 852 EOL formats of the input and output files match, unless stdout is 853 the console device. 854 (is_EISDIR): Don't define if already defined. Accept a second 855 argument, the file name; all callers changed. 856 (grepdir): Don't free `file', inside the loop. Use IS_SLASH to 857 check whether `dir' needs a slash. 858 (grepfile): If file is a directory, set e to EISDIR. 859 8601998-11-10 Alain Magloire 861 862 * src/vms_fab.{c,h}: New file for VMS wildcard expansion 863 Written by Phillip C. Brisco. 864 865 * vms/make.com : add line to compile vms_fab.c and 866 {e,f,}grepmat.c with link for each grep/fgrep/egrep. 867 Base on patch send by Phillib C. Brisco. 868 8691998-11-09 Alain Magloire 870 871 * grep-2.2c on alpha for testing. 872 8731998-11-09 Paul Eggert 874 875 * src/grep.1: Fix `Last Change' of output by generating the date 876 from the RCS Id. 877 878 * src/grep.c (is_EISDIR): New macro. 879 (grep): If -s, suppress errors from trying to read directories. 880 (grepfile): Use is_EISDIR to simplify code. 881 (grepdir): If -s, suppress errors from trying to read directories. 882 883 * src/grep.1: Fix -q -r -s problems; describe BSD grep better. 884 885 * src/grep.c (main): Update copyright. 886 887 Specify default matcher with default_matcher extern var, not 888 DEFAULT_MATCHER macro. This is more straightforward and means 889 we need to compile grep.c just once. 890 891 * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c: New files. 892 893 * src/Makefile.am (base_sources): New macro. 894 (egrep_SOURCES, fgrep_SOURCES, grep_SOURCES): Now consist of 895 $(base_sources) plus the single tailoring file. 896 (grep_LDADD, egrep_LDADD, fgrep_LDADD): Remove. 897 (EXTRA_DIST): Remove grep.c, regex.c. 898 (fgrep.o, egrep.o): Remove. 899 900 * src/grep.h (matcher): Now char const *. 901 (default_matcher): New decl. 902 903 * src/grep.c (matcher): Now char const *. 904 (setmatcher): Now accepts char const *. 905 (main): Default the matcher from default_matcher (linked externally) 906 rather than DEFAULT_MATCHER (a macro). 907 9081998-11-08 Alain Magloire 909 910 * src/grep.1: `prep.ai.mit.edu' should be replaced with `gnu.org'. 911 Nit from Paul Eggert. 912 9131998-11-06 Alain Magloire 914 915 * src/grep.c: The Matcher is not set to argv[0] but 916 explicitly by a #define MATCHER at compile time default is "grep". 917 918 * aclocal/: NEW dir. provides our own *.m4 919 920 * configure.in: Move Paul's Large Files to AC_LFS.(aclocal/lfs.m4) 921 Taken from Jim Meyering fileutils. 922 9231998-11-05 Alain Magloire 924 925 * src/grep.1: update the man pages according to the 926 changes make by Miles. 927 928 * po/*.po: updated. 929 930 * first beta release for 2.3 (2.2a). 931 9321998-11-04 Miles Bader 933 934 * src/grep.c (main): Rationalize interaction of -C/-NUM/-A/-B 935 options, and allow -C to have an optional argument. -NUM can 936 now be mixed with -C, and -A, -B always take precedence over 937 -C/-NUM, regardless of order. 938 (long_options): Let -C/--context take an optional argument. 939 9401998-11-03 Alain Magloire 941 942 * src/dfa.c: HP-UX define clrbit/setbit as macros in <sys/param.h> 943 #undef if defined. 944 Fixed by Andreas Ley and Philippe Defert. 945 946 * src/grep.1 : mention that -s follows POSIX.2 behavior. 947 Noted by Paul Eggert and others. 948 949 * tests/khadafy.sh: a typo in failure(s). 950 Spotted By Sotiris Vassilopoulos. 951 9521998-11-01 Paul Eggert 953 954 * src/system.h (IN_CTYPE_DOMAIN): New macro. 955 (ISALPHA, ISUPPER, ISLOWER, ISDIGIT, ISXDIGIT, ISSPACE, 956 ISPUNCT, ISALNUM, ISPRINT, ISGRAPH, ISCNTRL): Use 957 IN_CTYPE_DOMAIN instead of isascii. 958 9591998-08-18 Paul Eggert 960 961 Add support for new -r or --recursive (or -d recurse or 962 --directories=recurse) option. 963 964 * src/Makefile.am (grep_SOURCES): Add savedir.c, savedir.h, stpcpy.c. 965 966 * src/grep.1: Describe new options. 967 968 * src/grep.c: Include "savedir.h". 969 (long_options): Add -r or --recursive. 970 (RECURSE_DIRECTORIES): New enum value. 971 (IS_DIRECTORY_ERRNO): Remove. 972 (reset, grep): Add file name arg. 973 (grepdir, grepfile): New functions. 974 (initial_bufoffset): New var. 975 (reset): Initialize it. 976 (fillbuf): Use it. 977 (count_matches, list_files, no_filenames, suppress_errors): New static 978 vars; formerly were local to `main'. 979 (grep): Recurse through directories if the user asks for this. 980 (usage, main): Add new options. 981 (main): Change some local vars to be static, as described above. 982 Move most of the guts into grepfile function. 983 so that it can be recursed through. 984 985 * configure.in (AC_HEADER_DIRENT, AC_FUNC_CLOSEDIR_VOID): Add. 986 (AC_REPLACE_FUNCS): Add stpcpy. 987 988 * src/savedir.c, src/savedir.h, src/stpcpy.c: New files; 989 taken from fileutils 3.16u. 990 9911998-08-11 Paul Eggert 992 993 * src/system.h (initialize_main): New macro. 994 * src/grep.c (main): Invoke initialize_main first thing. 995 9961998-04-29 Paul Eggert 997 998 * NEWS, src/grep.1: Describe new -a and -d options. 999 1000 * src/grep.c (long_options, usage, main): 1001 New options -d or --directories and -a or --text. 1002 (directories, always_text): New variables. 1003 (IS_DIRECTORY_ERRNO): New macro. 1004 (reset): Now returns value specifying whether to skip this file. 1005 Stat the file if either mmap or directory-skipping is possible. 1006 Skip the file if it's a directory and we're skipping directories. 1007 (grep): Skip the file if `reset' tells us to. 1008 (main): If open fails because the file is a directory, and if we're 1009 skipping directories, don't report an error. 1010 Remove special case for DOS and Windows. 1011 1012 * src/dosbuf.c (guess_type): Use the same method for guessing whether a 1013 file is binary as grep.c's grep does. 1014 There's no longer any need to declare `bp' to be unsigned. 1015 10161998-04-26 Alain Magloire 1017 1018 * grep-2.2 release. 1019 1020 * src/dfa.c: Wrong revision was pulled out 1021 for beta 2.1.1d. 1022 * src/search.c: Wrong revision was pulled out 1023 for beta 2.1.1d. 1024 1025 * src/grep.c: ck_atoi () added instead of atoi (). 1026 Suggestion from Jim Meyering. 1027 ck_atoi () pulled from diffutils-2.7, maintained by Paul Eggert. 1028 1029 * AUTHORS: Rephrase of some sentences. 1030 * README: Rewording. 1031 Noted and patched by Joel N. Weber II. 1032 10331998-04-17 Kaveh R. Ghazi 1034 1035 * src/dfa.h: Don't define `const', trust autoconf to handle it. 1036 10371998-04-16 Alain Magloire 1038 1039 * tests/{status,empty}.sh: wrong return status. 1040 1041 * src/grep.c: Remove the REGEX part in usage (), it was 1042 consider overkill by most. 1043 10441998-04-14 Eli Zaretskii 1045 1046 * djgpp/config.bat: Support file names with multiple dots on all 1047 platforms. 1048 1049 * djgpp/README: Add instructions about file names illegal on 1050 MS-DOS. 1051 10521998-04-13 Alain Magloire 1053 1054 * src/dfa.c: by "popular" demand reverse 1055 back to '_' not word-constituent. 1056 1057 * grep-2.1.1c available for testing. 1058 10591998-04-13 Karl Heuer 1060 1061 * src/grep.c: (a) The directory check is done too early: 1062 logically, if the argument is "-", then it refers to standard 1063 input, regardless of whether there's something in the file 1064 system answering to "-". 1065 (b) The sh command "grep -l root /etc/passwd /etc/group 0<&-" 1066 prints "(standard input)" instead of "/etc/passwd", because it 1067 mistakenly believes that a named file will never be opened on fd 1068 0. The string "(standard input)" should be based on the file 1069 having been originally specified as "-", rather than making 1070 assumptions about the fd. 1071 (c) the code that calls close(fd) is being done outside of the 1072 test for a bad fd. Thus, if the open failed, this code will 1073 attempt to close(-1). It should be done inside the "fd != -1" 1074 branch. 1075 This patch addresses all three of these problems. 1076 10771998-04-13 Alain Magloire 1078 1079 * configure.in: remove the deprecated AC_ISC_POSIX macro. 1080 Spotted by Karl Heuer. 1081 10821998-04-03 Eli Zaretskii 1083 1084 * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated from the 1085 relevant Makefile.in files. 1086 1087 * djgpp/config.bat: Create files in intl directory like the 1088 configure script does. 1089 10901998-03-28 Eli Zaretskii 1091 1092 * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated to track 1093 changes in respective Makefile.in files. 1094 1095 * src/dosbuf.c (guess_type): Avoid running off the end of the 1096 buffer. Spotted by Paul Eggert. 1097 10981998-03-27 Alain Magloire 1099 1100 * grep-2.1.1b.tar.gz available. 1101 1102 * src/regex.c: CLASS_CHAR_MAX set to 256 instead of 6 1103 when WCTYPE and WCHAR are not defined. When class names 1104 where bigger then 6, it will not detect an error. 1105 example '[[:alphabet:]]'. 1106 1107 * Updated the copyright of the files with emacs. 1108 With emacs Jim :). 1109 11101998-03-26 Jim Meyering 1111 1112 * src/dfa.c (IS_WORD_CONSTITUENT): Define. 1113 (lex): Use IS_WORD_CONSTITUENT, not ISALNUM. 1114 Don't special-case '_'. 1115 (dfastate): Use IS_WORD_CONSTITUENT, not ISALNUM. 1116 (dfaexec): Likewise. 1117 11181998-03-25 Alain Magloire 1119 1120 * tests/warning.sh: typos and replace the echos with 1121 a simple cat. 1122 Noted By Jim Meyering. 1123 1124 * src/regex.c: #undef ISASCII and ISPRINT before defining 1125 them(On Solaris it was define). 1126 Pattern 'a[[:]:]]b' is an invalid char class and the error 1127 from regex was 1(REG_NOMATCH) instead of 2 (REG_ECTYPE). 1128 Fix with help from Ulrich Drepper. 1129 1130 * src/grep.c (usage): Ulrich wrote: "A single printf should 1131 not have more than 900 bytes. For translation reasons the 1132 text shouldn't be split in too many pieces since this is 1133 tiresome and also does not help to generate a consistent picture." 1134 Noted by Ulrich Drepper. 1135 * src/grep.c (usage): Dig out and old patch from 1136 Franc,ois to explain the regex in usage(). 1137 Ideas from Franc,ois Pinard. 1138 11391998-03-23 Alain Magloire 1140 1141 * testing: grep-2.1.1a for testing. 1142 1143 * configure.in: Solaris needs '-lw' if we use wchar/wctype 1144 functions. 1145 * src/btowc.c: New file from GNU libc. Solaris 2.5 don't 1146 have it define. 1147 * configure.in : check for btowc (). 1148 1149 * regex.c: Include <wchar.h> before <wctype.h>, to work around 1150 a Solaris 2.5 bug. 1151 Patch provided by Paul Eggert. 1152 1153 * tests/status.sh: new file to check return status code. 1154 * tests/empty.sh: new file to check for empty pattern. 1155 * tests/warning.sh: new file to tell where to report errors. 1156 1157 * configure.in: If available, prefer support for large files 1158 unless the user specified one of the CPPFLAGS, LDFLAGS, or LIBS 1159 variables. 1160 Done by Paul Eggert. 1161 1162 * src/grep.c (usage): change prep.ai.mit.edu for gnu.org. 1163 11641998-03-18 Alain Magloire 1165 1166 * src/grep.c (usage): Formating the --help message a bit off. 1167 Noted by William Bader. 1168 1169 * src/grep.c (main): When checking conflicting matcher for option -E the 1170 matcher was to "egrep" instead of "posix-egrep". 1171 Reported by [email protected]. 1172 1173 * src/grep.c: Typos and rewording the --help message. 1174 Reported by Karl Heuer. 1175 1176 * src/grep.1: The man page wording : 1177 A regular expression matching a single character may be 1178 followed by one of several repetition operators: 1179 is unclear since 'x(yz)*z' is a valid regex. 1180 Remove the "matching a single character". 1181 Suggested by Harald Hanche-Olsen. 1182 1183 * src/grep.c (main): `-f /dev/null' now specifies no patterns 1184 and therfore matches nothing. 1185 Reported by Jorge Stolfi. 1186 Patched by Paul Eggert. 1187 11881998-03-10 Alain Magloire 1189 1190 * Ice storm 98(el nino). Lost grep repository disk, 1191 and my $HOME directory, etc .. 1192 Trying to get the emails/patch from dejanews.com 1193 and start from grep-2.1. 1194 sigh .... 1195 11961997-11-01 Alain Magloire 1197 1198 * src/grep.c: For the long options, the problems are: 1199 --file appears in the option table as 'no_argument' 1200 instead of 'required_argument'. 1201 --files-with-matches is missing from the option table. 1202 The help lists '--fixed-strings' as the long option for -F, 1203 the table has '--fixed-regexp'. 1204 --regexp appears in the option table as 'no_argument' 1205 instead of 'required_argument'. 1206 --with-filename is missing from the option table. 1207 Reported by Grant McDorman and Krishna Sethuraman. 1208 12091997-10-19 Alain Magloire 1210 1211 * src/grep.c: the option "with-filename was not in the arg table. 1212 Corrected by Jim Hand. 1213 1214 * GNU gettext library from gettext-0.10.32. 1215 1216 * src/grep.c: reverse back to greping directories, 1217 One could skip the error message by defining 1218 SKIP_DIR_ERROR. There is no clear way of doing 1219 things, I hope to setle this on the next majore release 1220 Thanks Paul Eggert, Eli Zaretskii and gnits for the 1221 exchange. 1222 1223 * tests/status.sh: add this check to make sure 1224 That the return status code is ok. 1225 12261997-10-10 Andreas Schwab 1227 1228 * src/grep.1: Fix formatting. 1229 1230 * configure.in: Check for wctype.h, wchar.h, libintl.h and 1231 isascii, which are needed for regex.c. 1232 12331997-10-01 Paul Eggert 1234 1235 * src/grep.c (fillbuf): Don't warn about mmap failures. 1236 12371997-09-7 Alain Magloire 1238 1239 * src/grep.c: added code for -H --with-filename. 1240 1241 * djgpp/*: patch wrongly apply 1242 duplication of text in djgpp/{README,config.h}. 1243 Filter djgpp/config.bat with unix2dos. 1244 1245 * djgpp/make.mak: beautify 1246 From Eli Zaretskii. 1247 1248 * grep-2.1 release. 1249 12501997-09-01 Alain Magloire 1251 1252 * grep-2.0f out for testing. 1253 1254 * update to GNU gettext library from gettext-0.10.31 1255 1256 * grep.c : have a nicer format for --version. 1257 Noted by Ulrich Drepper. 1258 1259 * obstack.[ch]: updated from GNU C library 1260 * configure.in: look for stdlib.h [HAVE_STDLIB_H] 1261 Comments from Ulrich Drepper. 1262 12631997-08-25 Philippe De Muyter <[email protected]> 1264 1265 * src/dfa.c (sys/types.h): File included unconditionnaly. 1266 12671997-08-16 Eli Zaretskii <[email protected]> 1268 1269 * grep.c (long_options) [O_BINARY]: Add DOS-specific options. 1270 (fillbuf) [O_BINARY]: For DOS-style text files, strip CR 1271 characters at end of line. 1272 (prline) [O_BINARY]: Report correct byte offsets, even though CR 1273 characters were stripped when reading the file. 1274 (usage) [O_BINARY]: Add DOS-specific options. 1275 (setmatcher) [HAVE_SETRLIMIT]: Set re_max_failures so that the 1276 matcher won't ever overflow the stack. 1277 (main) [__MSDOS__, _WIN32]: Handle backslashes and drive letters 1278 in argv[0], remove the .exe suffix, and downcase the prgram name. 1279 [O_BINARY]: Pass additional DOS-specific options to getopt_long 1280 and handle them. Call stat before attempting to open the file, in 1281 case it is a directory (DOS will fail the open call for 1282 directories). Switch the input descriptor to binary mode, unless 1283 it is a terminal device. 1284 1285 * system.h [O_BINARY]: Define macros to switch a handle to binary 1286 mode, so binary files could be grep'ed on MS-DOS and MS-Windows. 1287 [HAVE_SETLOCALE]: Test for HAVE_SETLOCALE instead of 1288 HAVE_LC_MESSAGES, to prevent compilation error in grep.c on 1289 systems which don't define HAVE_LC_MESSAGES, but have setlocale. 1290 1291 * dosbuf.c: New file, functions specific for MS-DOS/MS-Windows. 1292 (guess_type, undossify_input, dossified_pos): New functions. 1293 1294 * djgpp/config.h, djgpp/config.bat, djgpp/main.mak, djgpp/src.mak, 1295 djgpp/po.mak, djgpp/intl.mak, djgpp/tests.mak, djgpp/po2tbl.sed: 1296 New files, for building Grep with DJGPP tools for MS-DOS and 1297 MS-Windows. 1298 1299 * grep.1: Document DOS-specific switches. 1300 13011997-08-08 Alain Magloire 1302 1303 * grep-2.0e: available for testing 1304 1305 * grep.c: change LC_MESSAGE to LC_ALL for (LC_CTYPE). 1306 Suggested by Jochen Hein. 1307 1308 * ABOUT-NLS: updated. 1309 * grep.c: --version: more verbosity (COPYRIGHT). 1310 * grep.c: --help: PATTERN, FILE instead of <pattern>, <file>. 1311 * INSTALL.grep: not necessary removed. 1312 * configure.in: --disable-regex rename --without-include-regex. 1313 * THANKS: format: first row name, second email. 1314 * ChangeLog: format ISO 8601. 1315 Reported by Franc,ois Pinard. 1316 1317 * grep.c: move dcl of struct stat st into "else" where it's used. 1318 Reported by Jim Meyering. 1319 1320 * grep.c: totalnl should be %u in printf. 1321 Reported by Michael Aichlmay 1322 Corrected with guidance from Ulrich Drepper 1323 13241997-07-24 Alain Magloire <[email protected]> 1325 1326 * Makefile.am: corrected an error when installing {f,e}grep.1. 1327 From Kaveh R. Ghazi <[email protected]>. 1328 From Ulrich Drepper <[email protected]>. 1329 1330 * Many files: use PARAMS instead of __STDC__ for prototypes. 1331 From Jim Meyering <[email protected]>. 1332 Patch provided by Kaveh R. Ghazi <[email protected]>. 1333 1334 * dfa.[ch]: uses the one in gawk-3.0.3 with the patch from 1335 Arnold (see Changelog: July 12 1997) 1336 1337 * grep.1: a note to say -l, -L, -q stop on first match. 1338 Noted by Andrew Beattie <[email protected]>. 1339 1340 * grep.c: refuse to scan if the file is a directory. 1341 This was causing problems on SUNs. If the directory contains 1342 a file that could match the pattern, garbage was display. 1343 1344 * tests directory: added new set of tests from Henry Spencer 1345 regex package. Change the way the tests were done to be more 1346 conformant to automake. 1347 1348 * configure.in: added --disable-regex for folks with their own fuctions. 1349 1350 * grep-20d : available for testing 1351 13521997-07-18 Alain Magloire <[email protected]> 1353 1354 * grep-2.0c: available for testing 1355 13561997-07-17 Alain Magloire <[email protected]> 1357 1358 * src/grep.c: Cause grep to fail if `fclose (stdout)' fails. 1359 From Jim Meyering <[email protected]>. 1360 1361 * grep.c:usage() more consistency in the --help. 1362 1363 * egrep, fgrep were links This is in violation of GNU standards: 1364 "Please don't make the behavior of a utility depend on the name used 1365 to invoke it. It is useful sometimes to make a link to a utility with 1366 a different name, and that should not change what it does." 1367 For now egrep and fgrep will be copies of grep. A better scheme 1368 should be found later. 1369 After discussion with Tom Tromey <[email protected]>. 1370 1371 * fgrep.man and egrep.man included: They are stubs that call grep.1. 1372 * Makefile.am: modified to install {f,e,}grep[,.1]. 1373 1374 * speed hack for -l, -L: bail out on first match. 1375 From Scott Weikart <[email protected]>. 1376 1377 * *.[ch]: provided prototypes for strict argument checking 1378 With the help of Stewart Levin <[email protected]>. 1379 13801997-07-16 Alain Magloire <[email protected]> 1381 1382 * configure.in: typo in the creation of po/Makefile 1383 Noted by Volker Borchert [email protected]. 1384 1385 * grep-2.0b: make it available for testing. 1386 13871997-07-15 Alain Magloire <[email protected]> 1388 1389 * src/grep.c usage(): cut the --help in smaller printf()'s 1390 Noted by Ulrich Drepper <[email protected]>. 1391 13921997-07-14 Alain Magloire <[email protected]> 1393 1394 * grep-2.0a: make an alpha available for testing. 1395 13961997-07-12 Alain Magloire <[email protected]> 1397 1398 * run gettextize: added the po directory filled with *.po files. 1399 1400 * check.sh, scriptgen.awk: fix grep paths. 1401 1402 * change the directory strucure: grep is now in src to comply with 1403 gettext.m4. 1404 1405 * grep.c version.c [VERSION]: got rid of version.c, 1406 it is now define via config.h. 1407 1408 * dfa.c: patch to speed up initialization. 1409 Arnold Robbins ([email protected]). 1410 14111997-07-09 Alain Magloire <[email protected]> 1412 1413 * *.c [HAVE_CONFIG_H]: Macro defined. 1414 1415 * support for I18N in Makefile.am and configure.in. 1416 1417 * update all the string to use gettext(I18N). 1418 Help from Franc,ois Pinard previous patch <[email protected]>. 1419 14201997-07-04 Alain Magloire <[email protected]> 1421 1422 * obstack.[ch]: updated from glibc. 1423 Work of Ulrich Drepper <[email protected]>. 1424 1425 * regex.[ch]: updated from glibc. 1426 Work of Ulrich Drepper <[email protected]>. 1427 1428 * grep.c: for option -e not counting '\n' for new keys. 1429 From Mark Waite <[email protected]>. 1430 1431 * grep.c: for option -f allocating the right count. 1432 From Andreas Schwab <[email protected]>. 1433 Mike Heartel ([email protected]). 1434 1435 * kwset.c (bmexec): Cast tp[-2] to unsigned char before comparing. 1436 From Jim Meyering <[email protected]>. 1437 1438 * grep.1: various typos. 1439 From Keith Bostic <[email protected]>. 1440 Mike Heartel ([email protected]). 1441 14421997-06-17 Alain Magloire <[email protected]> 1443 1444 * grep.c: support for long options. 1445 patch done by Franc,ois Pinard <[email protected]>. 1446 1447 * add getopt1.c in Makefile.am. 1448 Noted by Franc,ois Pinard <[email protected]> 1449 1450 * replace getopt.[ch] and add getopt1.c. 1451 1452 * kwset.c: undef malloc before define it. 1453 Franc,ois Pinard <[email protected]>. 1454 14551997-06-07 Alain Magloire <[email protected]> 1456 1457 * grep.c: format incorrect in 1458 fprintf("%s: warning: %s: %s...", filename, strerror(errno)). 1459 Mike Heartel ([email protected]). 1460 14611996-11-19 David J MacKenzie <[email protected]> 1462 1463 * make.com: Set the logical SYS. From [email protected] (Rodney Brown). 1464 1465 * grep.c (S_ISREG): Define if not defined already, for e.g. 1466 SunOS 4.0.3. 1467 1468 * dfa.c (test_bit, set_bit, clear_bit): Renamed from tstbit, 1469 setbit, clrbit to avoid conflict with HP-UX sys/param.h macros. 1470 1471 * memchr.c: New file, from GNU libc. 1472 * grep.c (memchr): Remove definition. 1473 * configure.in: Use AC_REPLACE_FUNCS for memchr. 1474 1475 * configure.in: Remove unused checks for memalign and unsigned char. 1476 * grep.c: HAVE_WORKING_MMAP -> HAVE_MMAP. 1477 1478 * system.h: New file. 1479 * dfa.c, kwset.c, grep.c, search.c: Use it instead of duplicating 1480 portability boilerplate. 1481 1482 * grep.c: Include sys/types.h once, instead of three times 1483 conditionally. 1484 * dfa.c, kwset.c, search.c: Include sys/types.h unconditionally, 1485 to always try to get size_t (needed on some old SysV's). 1486 1487 * dfa.c: Define strchr in terms of index, not the other way around. 1488 * search.c: Use memcpy instead of bcopy. 1489 14901996-11-15 David J MacKenzie <[email protected]> 1491 1492 * Many files: Update FSF address. 1493 Update configuration to use autoconf v2 and automake. 1494 14951993-05-22 Mike Haertel <[email protected]> 1496 1497 * Version 2.0 released. 1498