| 11999-11-18 Paul Eggert 2 3 * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a 4 problem with the QNX 4.25 shell, which doesn't propagate exit 5 status of failed commands inside shell assignments. 6 71999-11-13 Eli Zaretskii 8 9 * doc/grep.texi: Minor markup and spelling corrections. Use 10 @noindent where appropriate. 11 12 * PATCHES-{AM,AC}: rename to PATCHES.{AM,AC} 13 141999-11-12 Eli Zaretskii 15 16 doc/grep.texi: Minor fixes and typos corrected. 17 djgpp/README: Updated version. 18 191999-11-07 Paul Eggert 20 21 * src/grep.c (usage): Fix misspelling. 22 231999-11-07 Paul Eggert 24 25 Don't assume that the C library has re_set_syntax and friends. 26 * src/Makefile.am (base_sources): Add regex.c, regex.h. 27 (EXTRA_DIST): Remove regex.c, regex.h. 28 29 * src/grep.c (prtext): Use out_quiet, not not_text, to decide 30 whether to set pending to zero at the end. 31 (not_text): Remove static variable, undoing latest change. 32 (grep): Likewise. 33 34 * doc/grep.texi: Tighten up the text, and fix some minor 35 spelling and usage errors. Use @enumerate rather than @table 36 @samp, since it's better for Q&A format. Add cross 37 references. 38 391999-11-01 Alain Magloire 40 41 * src/search.c: Use the more portable [[:alnum:]] 42 to define a word instead of Ascii dependent [0-9A-Za-z] 43 * src/grep.c: make not_text global to not display text when 44 the context switches -A/-B/-C are use on binary files. 45 * make grep-2.3g available for testing. 46 * configure.in: drop support for --without-included-regex. 47 This was generating bogus bug reports, since many GNU/Linux 48 users have different version of glibc. And glibc maintainers 49 decided to drop k&r support. 50 511999-11-01 Arnold D. Robbins 52 53 * regex.c (init_syntax_once): move below definition of 54 ISALNUM etc., then use ISALNUM to init the table, so that 55 the word ops will work if i18n'ed. 56 (SYNTAX): And subscript with 0xFF for Latin-1 characters. 57 581999-10-26 Alain Magloire 59 60 * src/regex.c: Merge changes from GNU lib C. 61 * Updated the *.po files 62 631999-10-26 Paul Eggert 64 65 * src/grep.c (fillbuf): Don't report buffer size overflow if 66 newalloc == save and maxalloc == save. This can happen 67 e.g. when reading a large page-aligned file that contains 68 no newlines. 69 701999-10-21 Paul Eggert 71 72 * src/grep.c (usage): Give example. Clarify -F. 73 Explain exit status more clearly. 74 751999-10-12 Paul Eggert 76 77 * doc/grep.texi: Shorten the commentary about egrep and {. 78 "BSD grep" -> "traditional grep". 79 * doc/grep.1: Match recent changes to grep.texi. 80 811999-10-11 Paul Eggert 82 83 * NEWS, doc/grep.1, doc/grep.texi: New option --mmap. 84 * src/grep.c (mmap_option): New variable. 85 (long_options, reset, usage): Add --mmap. 86 Default is now read, not mmap. 87 88 * doc/grep.1: Document -Z or --null. 89 901999-10-11 Paul Eggert 91 92 * doc/grep.texi: Fix texinfo glitches. POSIX -> POSIX.2 where 93 appropriate. 94 951999-10-11 Paul Eggert 96 97 * acconfig.h (ssize_t): New #undef. 98 99 * configure.in (AC_CHECK_TYPE): Add ssize_t. 100 101 * src/grep.c (PREFERRED_SAVE_FACTOR): New macro. 102 (reset): If the buffer has already been allocated, set bufsalloc to 103 be bufalloc / PREFERRED_SAVE_FACTOR. This avoids problems when 104 bufsalloc == bufalloc (possible after reading a large binary file). 105 (reset): Use PREFERRED_SAVE_FACTOR instead of magic constant. 106 Do not set bufbeg; nobody uses it. 107 Always set buflim. 108 Check for lseek error. 109 Use SEEK_CUR, not a magic constant. 110 (fillbuf): Return an error indication, not a count. 111 All callers changed. 112 Do not assume ssize_t fits in int. 113 Use PREFERRED_SAVE_FACTOR instead of magic constant. 114 Clean up mmap code. 115 Do not attempt to mmap zero bytes. 116 Check for lseek error. 117 Use SEEK_SET, not a magic constant. 118 Work correctly if read is interrupted. 119 (grepfile): Work correctly if open or close is interrupted. 120 121 * src/system.h (SEEK_SET, SEEK_CUR): New macros. 122 1231999-10-02 Alain Magloire 124 125 * src/regex.[ch]: upgrade from GNU lib C source tree. 126 127 * make beta 2.3f available. 128 1291999-10-02 Paul Eggert 130 131 * NEWS: egrep is now equivalent to `grep -E'. 132 The lower bound of an interval is not optional. 133 You can specify a matcher multiple types without error. 134 -u and -U are now allowed on non-DOS hosts, and have no effect. 135 * doc/grep.texi: Likewise. 136 * doc/grep.1: Likewise. 137 Fix some troff bugs that prevented `groff' from rendering the page. 138 139 * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c (default_matcher): 140 Remove. 141 (matcher): Add. 142 * src/grep.h (default_matcher): Remove. 143 (matcher): Now exported from ?grepmat.c, not grep.c. 144 145 * src/dfa.c (lex): If { would start an invalid interval specification, 146 treat it as a normal character. 147 Remove (broken) support for {,M} meaning {0,M}. 148 Diagnose bogus intervals like {1,0}. 149 (closure): maxrep is now -1 to indicate no limit, not zero; 150 zero is a valid value for maxrep, meaning an upper bound of zero. 151 152 * src/grep.c (short_options): New constant. 153 (long_options, main): -u and -U are now supported on Unix, 154 with no effect. 155 (matcher): Removed; now defined by ?grepmat.c. 156 (install_matcher): Renamed from setmatcher. 157 (setmatcher): New function. 158 (usage): Report new, more uniform option scheme. 159 (main): Do not initialize matcher; ?grepmat.c now does this. 160 Rely on setmatcher to catch matcher conflicts. 161 Default matcher is "grep". 162 163 * src/search.c (matchers): 164 Remove "posix-egrep" matcher; no longer needed. 165 (Ecompile): Likewise. 166 The egrep matcher now has POSIX behavior. 167 168 * tests/bre.tests: grep '\{' is no longer an error. 169 Fix test for interval too large, and enable it. 170 * tests/ere.tests: grep -E {1 is no longer an error 171 Likewise for a{1, a{1a, a{1a}, a{1,x}. 172 1731999-09-22 Paul Eggert 174 175 * largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC 176 2.95.1 bug with HP-UX 10.20. 177 1781999-09-12 Paul Eggert 179 180 * src/grep.c (fillbuf): Fix typo: we sometimes reported 181 arithmetic overflow even when there wasn't any. 182 1831999-09-12 Paul Eggert 184 185 * configure.in (AC_CHECK_FUNCS): Add memmove. 186 187 * src/system.h (S_ISREG): New macro. 188 (memmove): Define if ! defined HAVE_MEMMOVE && ! defined memmove, 189 not if !defined STDC_HEADERS. This is needed for SunOS 4.1.4, 190 which defines STDC_HEADERS but lacks memmove. 191 192 * src/grep.c (bufoffset): Needed even if !defined HAVE_MMAP. 193 (reset): Always fstat the file, since we always need its size if it is 194 regular. 195 Similarly, get the buffer offset of every regular file. 196 Set bufmapped to 0 if the file's initial offset is not a multiple 197 of the page size. 198 (fillbuf): Calculate an upper bound on how much memory we should 199 allocate only for regular files, since we don't know the sizes of 200 other files. 201 Don't bother to check whether the file offset is a multiple of the page 202 size, since we now do that just once in `reset'. 203 When an mmapped area would fall past the end of the file, trim it to 204 just before instead of giving up immediately and doing a `read'; 205 that avoids a worst-case behavior that could read half an mmapped file. 206 Fix bug when computing offsets on hosts that don't have mmap. 207 2081999-08-27 Paul Eggert 209 210 * src/system.h (memmove): New macro. 211 212 * src/grep.c (page_alloc): Reallocate the old buffer instead 213 of having both old and new buffers active simultaneously. 214 Remove valloc debugging variant, which no longer applies. 215 216 (fillbuf): Rejigger the buffer allocation mechanism. The old 217 mechanism could allocate more than 10*N bytes for an N-byte 218 file, which was excessive. Check for arithmetic overflow a 219 bit more carefully. 220 2211999-08-25 Paul Eggert 222 223 * src/grep.c (grepdir): 224 Don't assume that st_ino and st_dev must be integers; 225 POSIX.1 allows them to be floating-point (!). 226 227 * src/vms_fab.h (arr_ptr): `:' -> `;' to fix typo. 228 2291999-08-18 Alain Magloire 230 231 * 2.3e snapshot. 232 2331999-08-18 Alain Magloire 234 235 * src/search.c: On a CRAY J90 system running UNICOS 8.0. 236 Compilation of ./src/search.c failed because the declaration of 237 the variable "regex": 238 static struct re_pattern_buffer regex; 239 conflicted with a previous declaration search.c #includes "system.h", 240 which #includes <stdlib.h>, which declares : 241 extern char *regex __((char *_Re, char *_Subject, ...)); 242 The declaration in search.c is local to that one source file. 243 I just changed its name to something less likely to conflict. 244 (I called it "regexbuf", but you could pick any name you want.) 245 Excerpt email from Dean Kopesky. 246 2471999-08-16 Paul Eggert 248 249 Upgrade large-file support to the version used in tar and 250 textutils. 251 252 * Makefile.am (ACLOCAL_AMFLAGS): Define to be empty. 253 (M4DIR, ACINCLUDE_INPUTS): New macros. 254 ($(srcdir)/acinclude.m4): New rule. 255 256 * configure.in (AC_CANONICAL_HOST, AM_C_PROTOTYPES): Add. 257 (AC_SYS_LARGEFILE): Renamed from AC_LFS, for compatibility 258 with what should appear in the next autoconf release. 259 260 * m4/largefile.m4: Renamed from m4/lfs.m4. 261 262 * src/ansi2knr.1, src/ansi2knr.c, config.guess, config.sub: 263 New files. config.guess and config.sub ar needed by the new 264 AC_SYS_LARGEFILE. ansi2knr is needed by AM_C_PROTOTYPES, 265 which in turn is needed by the new AC_SYS_LARGEFILE. 266 2671999-08-16 Alain Magloire 268 269 * 2.3d snapshot on ftp server. 270 2711999-07-26 Paul Eggert 272 273Several GNU tools have options to process arbitrary file names, even 274file names that contain newline characters. These include `find 275-print0', `perl -0', `sort -z', and `xargs -0'. It'd be handy if GNU 276grep also processed such file names. Here's a proposed patch to do 277this, relative to grep 2.3c. This patch introduces two options, one 278for the data, and one for the file names. (Sometimes one wants 279null-terminated file names in the output, and sometimes one wants to 280process lists of null-terminated strings, and these are orthogonal 281axes.) 282 283 * NEWS, doc/grep.texi: New -z or --null-data and -Z or --null options. 284 * src/grep.c (long_options, usage, main): Likewise. 285 286 * src/dfa.h (dfasyntax): New eol parameter. 287 * src/dfa.c (eolbyte): New var. 288 (dfasyntax): Set it from new parameter. 289 (lex, dfastat, build_state, dfaexec): Use it instead of '\n'. 290 291 * src/grep.h (eolbyte): New decl. 292 * src/grep.c (eolbyte): New var. 293 (nlscan, prpending, prtext, grepbuf, grep): Use it instead of '\n'. 294 (filename_mask): New var. 295 (prline, grepfile): Output NUL separator if filename_mask is zero. 296 (grep): Look for '\200' as the hallmark of a binary file, not '\0', 297 if -z or --null-data is specified, since it implies that '\0' is 298 expected as text. 299 300 * src/search.c (Gcompile, Ecompile): Pass eolbyte to dfasyntax. 301 (EGexecute, Fexecute): Use eolbyte instead of '\n'. 302 3031999-06-15 Alain Magloire 304 305 * src/grep.c, doc/grep{1,texi} : 306 --revert-match should be --invert-match. 307 Correction proposed by Karl Berry. 308 3091999-06-12 Alain Magloire 310 311 * doc/grep.{1,texi}: add description for --with-filename. 312 Noted missing by UEBAYASHI Masao. 313 3141999-03-17 Paul Eggert 315 316 * NEWS: Add GREP_OPTIONS. 317 318 * doc/grep.texi: Document GREP_OPTIONS, and the other 319 environment variables. Fix doc for [:blank:], [:cntrl:], [:punct:]. 320 321 * src/grep.c (prepend_args, prepend_default_options): New functions. 322 (main): Use them to implement GREP_OPTIONS. 323 * src/system.h (getenv): New decl. 324 3251999-03-16 Volker Borchert 326 327 * configure.in: Use case case ... esac for checking Visual C++. 328 When ${CC} contains options it was not recognize. 329 3301999-03-07 Paul Eggert 331 332 * src/grep.c (usage): Don't report -E, -F, and -G unless we're grep. 333 (main): Don't match options -E, -F, and -G unless we're grep. 334 Remove after-the-fact check for options -E, -F, and -G, since 335 they're no longer needed. 336 3371999-03-05 Eli Zaretskii 338 339 * src/grep.c (main): Print the name of the default matcher instead 340 of just "grep". 341 3421999-02-06 Alain Magloire 343 344 * tests/*.awk : Linux users are seeing "Broken Pipe" on make check. 345 The problem is that grep does not drain its stdin, thus the previous 346 process in the pipeline receives a SIGPIPE. Other shells are silent 347 about this. There is actually no failure, since the broken pipe is 348 expected. You can work around it by changing the pipeline, so that 349 the input is drained, like this: 350 status=`echo 'check' | { ${GREP} -E -e pattern >/dev/null 2>&1; 351 echo $?; cat >/dev/null; }`; if test $status -ne $errnu then ... fi 352 Excerpt email from Andreas Schwab. 353 3541999-02-23 Alain Magloire 355 356 * src/grep.c : Restrict the use of -E, -F, -G 357 to only grep driver, Posix behaviour. {f,e}grep 358 the matcher is already set. This change may brake 359 scripts, warn in NEWS. 360 361 * doc/grep.{1,texi} : -C takes arguments, upgrade manual. 362 363 * beta 2.3a 364 3651999-02-23 Alain Magloire 366 367 * configure.in : Change the configure VC test from 368 'test x$ac_cv_prog_CC = xcl;' to 'test x"$ac_cv_prog_CC" = xcl;' 369 Email from Joshua R. Poulson. 370 3711999-02-23 Paul Eggert 372 373 Fix porting bug reported by Amakawa Shuhei for SunOS 4.1.4-JL. 374 The btowc.c shipped with grep 2.3 is incorrect for Solaris 375 2.5.1 and earlier, as it assumes UTF8, which these OSes do not 376 support. Solaris 7 supports btowc, so there's no need to ship 377 a substitute for it. The only questionable case is Solaris 378 2.6, which lacks btowc but does support UTF8. However, 2.6 379 supports UTF8 but only as a demonstration (for an English 380 locale!); Japanese Solaris 2.6 users typically use EUC, or 381 sometimes shift-JIS, but they cannot use UTF8 since Japanese 382 UTF8 is not supported. Hence there's no point to having grep 383 substitute a btowc that uses UTF8, as it is either redundant, 384 or it will almost invariably have incorrect behavior. 385 386 * configure.in (AC_CHECK_HEADERS): Don't set USE_WCHAR. 387 (AC_CHECK_FUNCS): Add btowc, wctype. 388 (AC_REPLACE_FUNCS): Don't replace btowc; our replacement is 389 invariably doing the wrong thing anyway, at least on SunOS/Solaris. 390 Don't bother to check for wctype in -lw, as we don't support 391 wide characters on Solaris 2.5.1 or earlier anyway. 392 393 * bootstrap/Makefile.try (OBJS): Remove btowc.$(OBJEXT). 394 395 * src/btowc.c: Removed; no longer needed. 396 3971999-02-19 Paul Eggert 398 399 * NEWS: Fix typo when talking about the old behavior of 400 silently skipping directories; it was grep 2.1, not grep 2.2. 401 4021999-02-15 Alain Magloire 403 404 * bootstrap/Makefile.try : add DJGPP DEFS. 405 Done by Elie Zaretsckii. 406
|
11999-02-14 Alain Magloire 2 3 * m4/gettext.m4 : Guard [] with changequote. 4 From Elie Zaretskii. 5 6 * djgpp/config.bat : Makefile.in.in --> Makefile.in-in 7 From Elie Zaretskii. 8 9 * src/dosbuf: k&r function parameter. 10 11 * release of 2.3. 12 131999-02-10 Alain Magloire 14 15 * bootstrap/{Makefile{try,am},REAMDE} : skeleton 16 provided for system lacking the tools to autoconfigure. 17 18 * src/{e,f,}grepmat.c: added guard [HAVE_CONFIG_H] 19 201999-02-10 Alain Magloire 21 22 * PATCHES-AC, PATCHES-AM: updated. 23 24 * m4/regex.m4 : updated. 25 261999-02-05 Eli Zaretskii 27 28 * m4/gettext.m4 : Support DOS-style D:/foo/bar absolute file 29 names. 30 31 * aclocal.m4 (DJGPP) : Use $DJ_GPP instead, since changing the 32 latter prevents GCC from finding headers and libraries. 33 34 * djgpp/config.bat: Make building from another directory work 35 36 * djgpp/config.sed: Remove redundant command wich edited path 37 separator: now done by configure. 38 39 * src/grep.c [O_BINARY]: Add prototype for undossify_input. 40 41 * doc/grep.texi (Introduction): Typo fixed. 42 431999-02-03 Alain Magloire 44 45 * grep-2.2f beta release. 46 471999-02-02 Alain Magloire 48 49 * m4/{djgpp,envsep,glibc,regex,dosfile,isc-posix}.m4 : 50 New files to aid configuration and unload configure.in. 51 * m4/Makefile.am : updated. 52 * src/btowc.c : protect for wchar.h 53 541999-01-28 Alain Magloire 55 56 * intl/Makefile.in: Replace .o with .${ac_objext} where necessary. 57 Work around a limitation of Visual C++ on Cygwin32. 58 * acconfig.h configure.in: Define `alloca' as `_alloca' when CC=cl. 59 This little hack was suggested by Ian Roxborough <irox@cygnus.com>. 60 Patch forwarded by Ben Elliston. 61 621999-01-28 Alain Magloire 63 64 * PATCHES-AM: New file. A small patch for automake-1.4, use $(sep) 65 as the path separator base on @SEP@. 66 * PATCHES-AC configure.in : updated for autoconf-13. 67 681999-01-27 Volker Borchert 69 70 * grep.c: fgrep -NUM not working correctly. 71 add the argument number to digit_args_val. 72 731999-01-22 Paul Eggert 74 75 Prevent grep -r from recursing infinitely through directory loops via 76 symbolic links. 77 78 * grep.c (struct stats): New type. 79 (stats_base): New var. 80 (bufstat): Remove; subsumed by stats->stat. 81 (reset, fillbuf, grep, grepdir, grepfile): Pass struct stats * arg, 82 for directory loop checking; use this instead of the bufstat global. 83 All callers changed. 84 (grepfile): Stat the file before invoking grepdir. 85 (grepdir): Assume that the argument has already been statted. 86 No longer a need for a directory size argument, since it 87 can be gotten from the struct stats * argument. 88 Check for directory loops. 89 Create linked list of directories currently being visited, 90 to detect loops. 91 921998-12-29 Kaveh R. Ghazi 93 94 intl/localealias.c: When building grep-2.2e using cc on Irix4, 95 I needed the following patch to intl/localealias.c. 96 (Its the same patch used by fileutils-4.0.) The patch resolves 97 conflicts between char* and unsigned char* in the i18n code. 98 991998-12-10 Alain Magloire 100 101 * src/grep.c : Typo in contex -->context 102 Noted by Vladimir Michl. 103 1041998-12-01 Alain Magloire 105 106 * doc/Makefile.am djgpp/Makefile.am m4/Makefile.am vms/Makefile.am: 107 New files. 108 109 * m4/progtest.m4: proctect '[]' from m4. 110 Noted by Eli Z. 111 112 * PATCHES-AC: New file, add the patch for autoconf in the dist. 113 114 * acconfig.h: (HAVE_DOS_FILENAME) 115 116 * TODO: updated. 117 118 * src/search.c: remove obsolete 'gegrep,ggrep,gnugrep' 119 matchers. grep no longer depend on argv[0]. 120 121 * grep-2.2e beta to test DJGPP port. 122 1231998-11-28 Paul Eggert 124 125 Various portability enhancements: 126 - Don't assume that O_BINARY implies DOS. Use separate 127 macros D_OK (for DOS-like directory access) and 128 HAVE_DOS_FILE_NAMES (for DOS-like file names). 129 - Don't assume that off_t fits into long; it doesn't on Solaris 2.6. 130 - Have is_EISDIR set errno properly on hosts with screwed-up EISDIR. 131 - Treat ':' specially in DOS file names only if it's the end of a 132 drive specifier. 133 - Protect against errno < 0. 134 135 * src/grep.c (is_EISDIR): Move defn to system.h. 136 (print_offset_sep): New function. 137 (fillbuf): Remove redundant test of O_BINARY. 138 (totalcc, totalnl): Now of type off_t. 139 (prline): Use print_offset_sep to print file offsets. 140 (grepfile): Don't set e to EISDIR; that's is_EISDIR's responsibility 141 on machines that don't work properly with EISDIR. 142 (grepdir): Don't assume ':' means slash on all DOS filenames; 143 it means it only in the file prefix. 144 145 * src/system.h (strerror): Check for negative error numbers. 146 (is_EISDIR): Depend on D_OK, not O_BINARY. 147 (SET_BINARY): Depend on HAVE_SETMODE, not __DJGPP__. 148 (IS_SLASH, FILESYSTEM_PREFIX_LEN): Depend on HAVE_DOS_FILE_NAMES, 149 not O_BINARY. 150 (CHAR_BIT): New macro. 151 152 * src/dosbuf.c (struct dos_map): 153 pos and add members are now of type off_t. 154 (dos_stripped_crs): Now of type off_t. 155 (dossified_pos): Now accepts arg and returns value of type off_t. 156 157 * configure.in (AC_CHECK_FUNCS): Add setmode. 158 (HAVE_DOS_FILENAMES): New macro 159 1601998-11-27 Eli Zaretskii 161 162 * djgpp/config.sed: New file, a Sed script to edit configure 163 script before running it on DOS/Windows. 164 * djgpp/config.bat: Updated to handle po2tbl.sed.in and 165 po/Makefile.in.in on DOS filesystems, and to run config.sed. 166 1671998-11-24 Jim Meyering 168 169 * src/grep.c : Typo s/infalid/invalid/ 170 Also noted by Stanislav Brabec. 171 1721998-11-24 Eli Zaretskii 173 174 * doc/grep.texi: I found and corrected several typos. 175 I believe the GNU standards require the section that describes the 176 options to the programs to be called ``Invoking'' or ``Invoking 177 <program-name>''. This is so users and programs can easily find 178 that node in any Info file. So I changed the name of the 179 `Options' chapter to `Invoking', and corrected the 180 cross-references accordingly. 181 I added some markup to things like file names and options. 182 I added some additional index entries where that seemed useful. 183 I also corrected some index entries, such as "@cindex [:alnum:]", 184 which used a colon in them (the colons confuse Info readers). 185 1861998-11-24 Alain Magloire 187 188 * grep/doc/grep.texi : -h is not use for help. 189 Nit spotted by Jim Meyering. 190 1911998-11-23 Alain Magloire 192 193 * doc: New directory, grep.1, {e,f}grep.man move here 194 * doc/grep.texi: New info manual 195 * doc/version.texi: New 196 * doc/Makefile.am: New 197 * tests/{ere,bre}.*: New files. The spencer2 test is split 198 in two ere/bre. 199 * config.hin: New, config.h.in rename to config.hin for OS 200 with limited file system aka DOS. 201 202 * grep-2.2d release for beta. 203 2041998-11-18 Alain Magloire 205 206 * src/regex.[ch] : Updated from GLibc, previous patches were 207 integrate by Ulrich Drepper and some added ones. 208 2091998-11-16 Paul Eggert 210 211 * grep.h (__attribute__): New macro, if not GCC. 212 (fatal): Add __attribute__((noreturn)). 213 * grep.c (usage): Add __attribute__((noreturn)). 214 2151998-11-16 Paul Eggert 216 217 Remove memory leak with valloced buffers, by invoking malloc instead. 218 219 * configure.in (AC_CHECK_FUNCS), src/system.h (valloc): Remove. 220 * src/grep.c (page_alloc): New function. 221 (ubuffer, pagesize): New vars. 222 (ALIGN_TO): New macro. 223 (reset): Initialize new vars. Check for overflow in buffer size calc. 224 Use page_alloc instead of valloc. 225 (fillbuf): Likewise. Use memcpy to copy saved area. 226 2271998-11-15 Paul Eggert 228 229 * dfa.c (dfacomp), search.c (EGexecute): Don't assume char is unsigned. 230 2311998-11-14 Paul Eggert 232 233 * src/grep.c (grepdir): Fix bug: memory freed twice. 234 235 * src/search.c (Gcompile, Ecompile): Don't invoke dfainit, 236 since dfacomp does it for us, and if we also do it then we 237 leak memory. 238 2391998-11-13 Eli Zaretskii 240 241 * djgpp/config.bat: Rewrite to run the configure script via Bash. 242 * djgpp/config.site, djgpp/getconf: New files. 243 * djgpp/config.h, djgpp/*.mak, djgpp/po2tbl.sed: Remove. 244 * djgpp/README: Update instructions. 245 246 * Makefile.am (EXTRA_DIST): Update the list of DJGPP files. 247 248 * src/system.h (IS_SLASH): New macro. 249 (is_EISDIR): Define it here for DOS and Windows. 250 251 * src/grep.c (main) [O_BINARY]: Set stdout to binary mode, so the 252 EOL formats of the input and output files match, unless stdout is 253 the console device. 254 (is_EISDIR): Don't define if already defined. Accept a second 255 argument, the file name; all callers changed. 256 (grepdir): Don't free `file', inside the loop. Use IS_SLASH to 257 check whether `dir' needs a slash. 258 (grepfile): If file is a directory, set e to EISDIR. 259 2601998-11-10 Alain Magloire 261 262 * src/vms_fab.{c,h}: New file for VMS wildcard expansion 263 Written by Phillip C. Brisco. 264 265 * vms/make.com : add line to compile vms_fab.c and 266 {e,f,}grepmat.c with link for each grep/fgrep/egrep. 267 Base on patch send by Phillib C. Brisco. 268 2691998-11-09 Alain Magloire 270 271 * grep-2.2c on alpha for testing. 272 2731998-11-09 Paul Eggert 274 275 * src/grep.1: Fix `Last Change' of output by generating the date 276 from the RCS Id. 277 278 * src/grep.c (is_EISDIR): New macro. 279 (grep): If -s, suppress errors from trying to read directories. 280 (grepfile): Use is_EISDIR to simplify code. 281 (grepdir): If -s, suppress errors from trying to read directories. 282 283 * src/grep.1: Fix -q -r -s problems; describe BSD grep better. 284 285 * src/grep.c (main): Update copyright. 286 287 Specify default matcher with default_matcher extern var, not 288 DEFAULT_MATCHER macro. This is more straightforward and means 289 we need to compile grep.c just once. 290 291 * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c: New files. 292 293 * src/Makefile.am (base_sources): New macro. 294 (egrep_SOURCES, fgrep_SOURCES, grep_SOURCES): Now consist of 295 $(base_sources) plus the single tailoring file. 296 (grep_LDADD, egrep_LDADD, fgrep_LDADD): Remove. 297 (EXTRA_DIST): Remove grep.c, regex.c. 298 (fgrep.o, egrep.o): Remove. 299 300 * src/grep.h (matcher): Now char const *. 301 (default_matcher): New decl. 302 303 * src/grep.c (matcher): Now char const *. 304 (setmatcher): Now accepts char const *. 305 (main): Default the matcher from default_matcher (linked externally) 306 rather than DEFAULT_MATCHER (a macro). 307 3081998-11-08 Alain Magloire 309 310 * src/grep.1: `prep.ai.mit.edu' should be replaced with `gnu.org'. 311 Nit from Paul Eggert. 312 3131998-11-06 Alain Magloire 314 315 * src/grep.c: The Matcher is not set to argv[0] but 316 explicitly by a #define MATCHER at compile time default is "grep". 317 318 * aclocal/: NEW dir. provides our own *.m4 319 320 * configure.in: Move Paul's Large Files to AC_LFS.(aclocal/lfs.m4) 321 Taken from Jim Meyering fileutils. 322 3231998-11-05 Alain Magloire 324 325 * src/grep.1: update the man pages according to the 326 changes make by Miles. 327 328 * po/*.po: updated. 329 330 * first beta release for 2.3 (2.2a). 331 3321998-11-04 Miles Bader 333 334 * src/grep.c (main): Rationalize interaction of -C/-NUM/-A/-B 335 options, and allow -C to have an optional argument. -NUM can 336 now be mixed with -C, and -A, -B always take precedence over 337 -C/-NUM, regardless of order. 338 (long_options): Let -C/--context take an optional argument. 339 3401998-11-03 Alain Magloire 341 342 * src/dfa.c: HP-UX define clrbit/setbit as macros in <sys/param.h> 343 #undef if defined. 344 Fixed by Andreas Ley and Philippe Defert. 345 346 * src/grep.1 : mention that -s follows POSIX.2 behavior. 347 Noted by Paul Eggert and others. 348 349 * tests/khadafy.sh: a typo in failure(s). 350 Spotted By Sotiris Vassilopoulos. 351 3521998-11-01 Paul Eggert 353 354 * src/system.h (IN_CTYPE_DOMAIN): New macro. 355 (ISALPHA, ISUPPER, ISLOWER, ISDIGIT, ISXDIGIT, ISSPACE, 356 ISPUNCT, ISALNUM, ISPRINT, ISGRAPH, ISCNTRL): Use 357 IN_CTYPE_DOMAIN instead of isascii. 358 3591998-08-18 Paul Eggert 360 361 Add support for new -r or --recursive (or -d recurse or 362 --directories=recurse) option. 363 364 * src/Makefile.am (grep_SOURCES): Add savedir.c, savedir.h, stpcpy.c. 365 366 * src/grep.1: Describe new options. 367 368 * src/grep.c: Include "savedir.h". 369 (long_options): Add -r or --recursive. 370 (RECURSE_DIRECTORIES): New enum value. 371 (IS_DIRECTORY_ERRNO): Remove. 372 (reset, grep): Add file name arg. 373 (grepdir, grepfile): New functions. 374 (initial_bufoffset): New var. 375 (reset): Initialize it. 376 (fillbuf): Use it. 377 (count_matches, list_files, no_filenames, suppress_errors): New static 378 vars; formerly were local to `main'. 379 (grep): Recurse through directories if the user asks for this. 380 (usage, main): Add new options. 381 (main): Change some local vars to be static, as described above. 382 Move most of the guts into grepfile function. 383 so that it can be recursed through. 384 385 * configure.in (AC_HEADER_DIRENT, AC_FUNC_CLOSEDIR_VOID): Add. 386 (AC_REPLACE_FUNCS): Add stpcpy. 387 388 * src/savedir.c, src/savedir.h, src/stpcpy.c: New files; 389 taken from fileutils 3.16u. 390 3911998-08-11 Paul Eggert 392 393 * src/system.h (initialize_main): New macro. 394 * src/grep.c (main): Invoke initialize_main first thing. 395 3961998-04-29 Paul Eggert 397 398 * NEWS, src/grep.1: Describe new -a and -d options. 399 400 * src/grep.c (long_options, usage, main): 401 New options -d or --directories and -a or --text. 402 (directories, always_text): New variables. 403 (IS_DIRECTORY_ERRNO): New macro. 404 (reset): Now returns value specifying whether to skip this file. 405 Stat the file if either mmap or directory-skipping is possible. 406 Skip the file if it's a directory and we're skipping directories. 407 (grep): Skip the file if `reset' tells us to. 408 (main): If open fails because the file is a directory, and if we're 409 skipping directories, don't report an error. 410 Remove special case for DOS and Windows. 411 412 * src/dosbuf.c (guess_type): Use the same method for guessing whether a 413 file is binary as grep.c's grep does. 414 There's no longer any need to declare `bp' to be unsigned. 415 4161998-04-26 Alain Magloire 417 418 * grep-2.2 release. 419 420 * src/dfa.c: Wrong revision was pulled out 421 for beta 2.1.1d. 422 * src/search.c: Wrong revision was pulled out 423 for beta 2.1.1d. 424 425 * src/grep.c: ck_atoi () added instead of atoi (). 426 Suggestion from Jim Meyering. 427 ck_atoi () pulled from diffutils-2.7, maintained by Paul Eggert. 428 429 * AUTHORS: Rephrase of some sentences. 430 * README: Rewording. 431 Noted and patched by Joel N. Weber II. 432 4331998-04-17 Kaveh R. Ghazi 434 435 * src/dfa.h: Don't define `const', trust autoconf to handle it. 436 4371998-04-16 Alain Magloire 438 439 * tests/{status,empty}.sh: wrong return status. 440 441 * src/grep.c: Remove the REGEX part in usage (), it was 442 consider overkill by most. 443 4441998-04-14 Eli Zaretskii 445 446 * djgpp/config.bat: Support file names with multiple dots on all 447 platforms. 448 449 * djgpp/README: Add instructions about file names illegal on 450 MS-DOS. 451 4521998-04-13 Alain Magloire 453 454 * src/dfa.c: by "popular" demand reverse 455 back to '_' not word-constituent. 456 457 * grep-2.1.1c available for testing. 458 4591998-04-13 Karl Heuer 460 461 * src/grep.c: (a) The directory check is done too early: 462 logically, if the argument is "-", then it refers to standard 463 input, regardless of whether there's something in the file 464 system answering to "-". 465 (b) The sh command "grep -l root /etc/passwd /etc/group 0<&-" 466 prints "(standard input)" instead of "/etc/passwd", because it 467 mistakenly believes that a named file will never be opened on fd 468 0. The string "(standard input)" should be based on the file 469 having been originally specified as "-", rather than making 470 assumptions about the fd. 471 (c) the code that calls close(fd) is being done outside of the 472 test for a bad fd. Thus, if the open failed, this code will 473 attempt to close(-1). It should be done inside the "fd != -1" 474 branch. 475 This patch addresses all three of these problems. 476 4771998-04-13 Alain Magloire 478 479 * configure.in: remove the deprecated AC_ISC_POSIX macro. 480 Spotted by Karl Heuer. 481 4821998-04-03 Eli Zaretskii 483 484 * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated from the 485 relevant Makefile.in files. 486 487 * djgpp/config.bat: Create files in intl directory like the 488 configure script does. 489 4901998-03-28 Eli Zaretskii 491 492 * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated to track 493 changes in respective Makefile.in files. 494 495 * src/dosbuf.c (guess_type): Avoid running off the end of the 496 buffer. Spotted by Paul Eggert. 497 4981998-03-27 Alain Magloire 499 500 * grep-2.1.1b.tar.gz available. 501 502 * src/regex.c: CLASS_CHAR_MAX set to 256 instead of 6 503 when WCTYPE and WCHAR are not defined. When class names 504 where bigger then 6, it will not detect an error. 505 example '[[:alphabet:]]'. 506 507 * Updated the copyright of the files with emacs. 508 With emacs Jim :). 509 5101998-03-26 Jim Meyering 511 512 * src/dfa.c (IS_WORD_CONSTITUENT): Define. 513 (lex): Use IS_WORD_CONSTITUENT, not ISALNUM. 514 Don't special-case '_'. 515 (dfastate): Use IS_WORD_CONSTITUENT, not ISALNUM. 516 (dfaexec): Likewise. 517 5181998-03-25 Alain Magloire 519 520 * tests/warning.sh: typos and replace the echos with 521 a simple cat. 522 Noted By Jim Meyering. 523 524 * src/regex.c: #undef ISASCII and ISPRINT before defining 525 them(On Solaris it was define). 526 Pattern 'a[[:]:]]b' is an invalid char class and the error 527 from regex was 1(REG_NOMATCH) instead of 2 (REG_ECTYPE). 528 Fix with help from Ulrich Drepper. 529 530 * src/grep.c (usage): Ulrich wrote: "A single printf should 531 not have more than 900 bytes. For translation reasons the 532 text shouldn't be split in too many pieces since this is 533 tiresome and also does not help to generate a consistent picture." 534 Noted by Ulrich Drepper. 535 * src/grep.c (usage): Dig out and old patch from 536 Franc,ois to explain the regex in usage(). 537 Ideas from Franc,ois Pinard. 538 5391998-03-23 Alain Magloire 540 541 * testing: grep-2.1.1a for testing. 542 543 * configure.in: Solaris needs '-lw' if we use wchar/wctype 544 functions. 545 * src/btowc.c: New file from GNU libc. Solaris 2.5 don't 546 have it define. 547 * configure.in : check for btowc (). 548 549 * regex.c: Include <wchar.h> before <wctype.h>, to work around 550 a Solaris 2.5 bug. 551 Patch provided by Paul Eggert. 552 553 * tests/status.sh: new file to check return status code. 554 * tests/empty.sh: new file to check for empty pattern. 555 * tests/warning.sh: new file to tell where to report errors. 556 557 * configure.in: If available, prefer support for large files 558 unless the user specified one of the CPPFLAGS, LDFLAGS, or LIBS 559 variables. 560 Done by Paul Eggert. 561 562 * src/grep.c (usage): change prep.ai.mit.edu for gnu.org. 563 5641998-03-18 Alain Magloire 565 566 * src/grep.c (usage): Formating the --help message a bit off. 567 Noted by William Bader. 568 569 * src/grep.c (main): When checking conflicting matcher for option -E the 570 matcher was to "egrep" instead of "posix-egrep". 571 Reported by kwzh@gnu.org. 572 573 * src/grep.c: Typos and rewording the --help message. 574 Reported by Karl Heuer. 575 576 * src/grep.1: The man page wording : 577 A regular expression matching a single character may be 578 followed by one of several repetition operators: 579 is unclear since 'x(yz)*z' is a valid regex. 580 Remove the "matching a single character". 581 Suggested by Harald Hanche-Olsen. 582 583 * src/grep.c (main): `-f /dev/null' now specifies no patterns 584 and therfore matches nothing. 585 Reported by Jorge Stolfi. 586 Patched by Paul Eggert. 587 5881998-03-10 Alain Magloire 589 590 * Ice storm 98(el nino). Lost grep repository disk, 591 and my $HOME directory, etc .. 592 Trying to get the emails/patch from dejanews.com 593 and start from grep-2.1. 594 sigh .... 595 5961997-11-01 Alain Magloire 597 598 * src/grep.c: For the long options, the problems are: 599 --file appears in the option table as 'no_argument' 600 instead of 'required_argument'. 601 --files-with-matches is missing from the option table. 602 The help lists '--fixed-strings' as the long option for -F, 603 the table has '--fixed-regexp'. 604 --regexp appears in the option table as 'no_argument' 605 instead of 'required_argument'. 606 --with-filename is missing from the option table. 607 Reported by Grant McDorman and Krishna Sethuraman. 608 6091997-10-19 Alain Magloire 610 611 * src/grep.c: the option "with-filename was not in the arg table. 612 Corrected by Jim Hand. 613 614 * GNU gettext library from gettext-0.10.32. 615 616 * src/grep.c: reverse back to greping directories, 617 One could skip the error message by defining 618 SKIP_DIR_ERROR. There is no clear way of doing 619 things, I hope to setle this on the next majore release 620 Thanks Paul Eggert, Eli Zaretskii and gnits for the 621 exchange. 622 623 * tests/status.sh: add this check to make sure 624 That the return status code is ok. 625 6261997-10-10 Andreas Schwab 627 628 * src/grep.1: Fix formatting. 629 630 * configure.in: Check for wctype.h, wchar.h, libintl.h and 631 isascii, which are needed for regex.c. 632 6331997-10-01 Paul Eggert 634 635 * src/grep.c (fillbuf): Don't warn about mmap failures. 636 6371997-09-7 Alain Magloire 638 639 * src/grep.c: added code for -H --with-filename. 640 641 * djgpp/*: patch wrongly apply 642 duplication of text in djgpp/{README,config.h}. 643 Filter djgpp/config.bat with unix2dos. 644 645 * djgpp/make.mak: beautify 646 From Eli Zaretskii. 647 648 * grep-2.1 release. 649 6501997-09-01 Alain Magloire 651 652 * grep-2.0f out for testing. 653 654 * update to GNU gettext library from gettext-0.10.31 655 656 * grep.c : have a nicer format for --version. 657 Noted by Ulrich Drepper. 658 659 * obstack.[ch]: updated from GNU C library 660 * configure.in: look for stdlib.h [HAVE_STDLIB_H] 661 Comments from Ulrich Drepper. 662 6631997-08-25 Philippe De Muyter <phdm@info.ucl.ac.be> 664 665 * src/dfa.c (sys/types.h): File included unconditionnaly. 666 6671997-08-16 Eli Zaretskii <eliz@is.elta.co.il> 668 669 * grep.c (long_options) [O_BINARY]: Add DOS-specific options. 670 (fillbuf) [O_BINARY]: For DOS-style text files, strip CR 671 characters at end of line. 672 (prline) [O_BINARY]: Report correct byte offsets, even though CR 673 characters were stripped when reading the file. 674 (usage) [O_BINARY]: Add DOS-specific options. 675 (setmatcher) [HAVE_SETRLIMIT]: Set re_max_failures so that the 676 matcher won't ever overflow the stack. 677 (main) [__MSDOS__, _WIN32]: Handle backslashes and drive letters 678 in argv[0], remove the .exe suffix, and downcase the prgram name. 679 [O_BINARY]: Pass additional DOS-specific options to getopt_long 680 and handle them. Call stat before attempting to open the file, in 681 case it is a directory (DOS will fail the open call for 682 directories). Switch the input descriptor to binary mode, unless 683 it is a terminal device. 684 685 * system.h [O_BINARY]: Define macros to switch a handle to binary 686 mode, so binary files could be grep'ed on MS-DOS and MS-Windows. 687 [HAVE_SETLOCALE]: Test for HAVE_SETLOCALE instead of 688 HAVE_LC_MESSAGES, to prevent compilation error in grep.c on 689 systems which don't define HAVE_LC_MESSAGES, but have setlocale. 690 691 * dosbuf.c: New file, functions specific for MS-DOS/MS-Windows. 692 (guess_type, undossify_input, dossified_pos): New functions. 693 694 * djgpp/config.h, djgpp/config.bat, djgpp/main.mak, djgpp/src.mak, 695 djgpp/po.mak, djgpp/intl.mak, djgpp/tests.mak, djgpp/po2tbl.sed: 696 New files, for building Grep with DJGPP tools for MS-DOS and 697 MS-Windows. 698 699 * grep.1: Document DOS-specific switches. 700 7011997-08-08 Alain Magloire 702 703 * grep-2.0e: available for testing 704 705 * grep.c: change LC_MESSAGE to LC_ALL for (LC_CTYPE). 706 Suggested by Jochen Hein. 707 708 * ABOUT-NLS: updated. 709 * grep.c: --version: more verbosity (COPYRIGHT). 710 * grep.c: --help: PATTERN, FILE instead of <pattern>, <file>. 711 * INSTALL.grep: not necessary removed. 712 * configure.in: --disable-regex rename --without-include-regex. 713 * THANKS: format: first row name, second email. 714 * ChangeLog: format ISO 8601. 715 Reported by Franc,ois Pinard. 716 717 * grep.c: move dcl of struct stat st into "else" where it's used. 718 Reported by Jim Meyering. 719 720 * grep.c: totalnl should be %u in printf. 721 Reported by Michael Aichlmay 722 Corrected with guidance from Ulrich Drepper 723 7241997-07-24 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 725 726 * Makefile.am: corrected an error when installing {f,e}grep.1. 727 From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. 728 From Ulrich Drepper <drepper@cygnus.com>. 729 730 * Many files: use PARAMS instead of __STDC__ for prototypes. 731 From Jim Meyering <meyering@eng.ascend.com>. 732 Patch provided by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. 733 734 * dfa.[ch]: uses the one in gawk-3.0.3 with the patch from 735 Arnold (see Changelog: July 12 1997) 736 737 * grep.1: a note to say -l, -L, -q stop on first match. 738 Noted by Andrew Beattie <gaffer@tug.com>. 739 740 * grep.c: refuse to scan if the file is a directory. 741 This was causing problems on SUNs. If the directory contains 742 a file that could match the pattern, garbage was display. 743 744 * tests directory: added new set of tests from Henry Spencer 745 regex package. Change the way the tests were done to be more 746 conformant to automake. 747 748 * configure.in: added --disable-regex for folks with their own fuctions. 749 750 * grep-20d : available for testing 751 7521997-07-18 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 753 754 * grep-2.0c: available for testing 755 7561997-07-17 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 757 758 * src/grep.c: Cause grep to fail if `fclose (stdout)' fails. 759 From Jim Meyering <meyering@eng.ascend.com>. 760 761 * grep.c:usage() more consistency in the --help. 762 763 * egrep, fgrep were links This is in violation of GNU standards: 764 "Please don't make the behavior of a utility depend on the name used 765 to invoke it. It is useful sometimes to make a link to a utility with 766 a different name, and that should not change what it does." 767 For now egrep and fgrep will be copies of grep. A better scheme 768 should be found later. 769 After discussion with Tom Tromey <tromey@cygnus.com>. 770 771 * fgrep.man and egrep.man included: They are stubs that call grep.1. 772 * Makefile.am: modified to install {f,e,}grep[,.1]. 773 774 * speed hack for -l, -L: bail out on first match. 775 From Scott Weikart <scott@igc.apc.org>. 776 777 * *.[ch]: provided prototypes for strict argument checking 778 With the help of Stewart Levin <stew@sep.stanford.edu>. 779 7801997-07-16 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 781 782 * configure.in: typo in the creation of po/Makefile 783 Noted by Volker Borchert bt@teknon.de. 784 785 * grep-2.0b: make it available for testing. 786 7871997-07-15 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 788 789 * src/grep.c usage(): cut the --help in smaller printf()'s 790 Noted by Ulrich Drepper <drepper@cygnus.com>. 791 7921997-07-14 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 793 794 * grep-2.0a: make an alpha available for testing. 795 7961997-07-12 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 797 798 * run gettextize: added the po directory filled with *.po files. 799 800 * check.sh, scriptgen.awk: fix grep paths. 801 802 * change the directory strucure: grep is now in src to comply with 803 gettext.m4. 804 805 * grep.c version.c [VERSION]: got rid of version.c, 806 it is now define via config.h. 807 808 * dfa.c: patch to speed up initialization. 809 Arnold Robbins (arnold@gnu.ai.mit.edu). 810 8111997-07-09 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 812 813 * *.c [HAVE_CONFIG_H]: Macro defined. 814 815 * support for I18N in Makefile.am and configure.in. 816 817 * update all the string to use gettext(I18N). 818 Help from Franc,ois Pinard previous patch <pinard@IRO.UMontreal.CA>. 819 8201997-07-04 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 821 822 * obstack.[ch]: updated from glibc. 823 Work of Ulrich Drepper <drepper@cygnus.com>. 824 825 * regex.[ch]: updated from glibc. 826 Work of Ulrich Drepper <drepper@cygnus.com>. 827 828 * grep.c: for option -e not counting '\n' for new keys. 829 From Mark Waite <markw@mddmew.fc.hp.com>. 830 831 * grep.c: for option -f allocating the right count. 832 From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. 833 Mike Heartel (mike@cs.uoregon.edu). 834 835 * kwset.c (bmexec): Cast tp[-2] to unsigned char before comparing. 836 From Jim Meyering <meyering@asic.sc.ti.com>. 837 838 * grep.1: various typos. 839 From Keith Bostic <bostic@bsdi.com>. 840 Mike Heartel (mike@cs.uoregon.edu). 841 8421997-06-17 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 843 844 * grep.c: support for long options. 845 patch done by Franc,ois Pinard <pinard@IRO.UMontreal.CA>. 846 847 * add getopt1.c in Makefile.am. 848 Noted by Franc,ois Pinard <pinard@IRO.UMontreal.CA> 849 850 * replace getopt.[ch] and add getopt1.c. 851 852 * kwset.c: undef malloc before define it. 853 Franc,ois Pinard <pinard@IRO.UMontreal.CA>. 854 8551997-06-07 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 856 857 * grep.c: format incorrect in 858 fprintf("%s: warning: %s: %s...", filename, strerror(errno)). 859 Mike Heartel (mike@cs.uoregon.edu). 860 8611996-11-19 David J MacKenzie <djm@catapult.va.pubnix.com> 862 863 * make.com: Set the logical SYS. From rdb@cocamrd.oz.au (Rodney Brown). 864 865 * grep.c (S_ISREG): Define if not defined already, for e.g. 866 SunOS 4.0.3. 867 868 * dfa.c (test_bit, set_bit, clear_bit): Renamed from tstbit, 869 setbit, clrbit to avoid conflict with HP-UX sys/param.h macros. 870 871 * memchr.c: New file, from GNU libc. 872 * grep.c (memchr): Remove definition. 873 * configure.in: Use AC_REPLACE_FUNCS for memchr. 874 875 * configure.in: Remove unused checks for memalign and unsigned char. 876 * grep.c: HAVE_WORKING_MMAP -> HAVE_MMAP. 877 878 * system.h: New file. 879 * dfa.c, kwset.c, grep.c, search.c: Use it instead of duplicating 880 portability boilerplate. 881 882 * grep.c: Include sys/types.h once, instead of three times 883 conditionally. 884 * dfa.c, kwset.c, search.c: Include sys/types.h unconditionally, 885 to always try to get size_t (needed on some old SysV's). 886 887 * dfa.c: Define strchr in terms of index, not the other way around. 888 * search.c: Use memcpy instead of bcopy. 889 8901996-11-15 David J MacKenzie <djm@catapult.va.pubnix.com> 891 892 * Many files: Update FSF address. 893 Update configuration to use autoconf v2 and automake. 894 8951993-05-22 Mike Haertel <mike@cs.uoregon.edu> 896 897 * Version 2.0 released.
| 4071999-02-14 Alain Magloire 408 409 * m4/gettext.m4 : Guard [] with changequote. 410 From Elie Zaretskii. 411 412 * djgpp/config.bat : Makefile.in.in --> Makefile.in-in 413 From Elie Zaretskii. 414 415 * src/dosbuf: k&r function parameter. 416 417 * release of 2.3. 418 4191999-02-10 Alain Magloire 420 421 * bootstrap/{Makefile{try,am},REAMDE} : skeleton 422 provided for system lacking the tools to autoconfigure. 423 424 * src/{e,f,}grepmat.c: added guard [HAVE_CONFIG_H] 425 4261999-02-10 Alain Magloire 427 428 * PATCHES-AC, PATCHES-AM: updated. 429 430 * m4/regex.m4 : updated. 431 4321999-02-05 Eli Zaretskii 433 434 * m4/gettext.m4 : Support DOS-style D:/foo/bar absolute file 435 names. 436 437 * aclocal.m4 (DJGPP) : Use $DJ_GPP instead, since changing the 438 latter prevents GCC from finding headers and libraries. 439 440 * djgpp/config.bat: Make building from another directory work 441 442 * djgpp/config.sed: Remove redundant command wich edited path 443 separator: now done by configure. 444 445 * src/grep.c [O_BINARY]: Add prototype for undossify_input. 446 447 * doc/grep.texi (Introduction): Typo fixed. 448 4491999-02-03 Alain Magloire 450 451 * grep-2.2f beta release. 452 4531999-02-02 Alain Magloire 454 455 * m4/{djgpp,envsep,glibc,regex,dosfile,isc-posix}.m4 : 456 New files to aid configuration and unload configure.in. 457 * m4/Makefile.am : updated. 458 * src/btowc.c : protect for wchar.h 459 4601999-01-28 Alain Magloire 461 462 * intl/Makefile.in: Replace .o with .${ac_objext} where necessary. 463 Work around a limitation of Visual C++ on Cygwin32. 464 * acconfig.h configure.in: Define `alloca' as `_alloca' when CC=cl. 465 This little hack was suggested by Ian Roxborough <irox@cygnus.com>. 466 Patch forwarded by Ben Elliston. 467 4681999-01-28 Alain Magloire 469 470 * PATCHES-AM: New file. A small patch for automake-1.4, use $(sep) 471 as the path separator base on @SEP@. 472 * PATCHES-AC configure.in : updated for autoconf-13. 473 4741999-01-27 Volker Borchert 475 476 * grep.c: fgrep -NUM not working correctly. 477 add the argument number to digit_args_val. 478 4791999-01-22 Paul Eggert 480 481 Prevent grep -r from recursing infinitely through directory loops via 482 symbolic links. 483 484 * grep.c (struct stats): New type. 485 (stats_base): New var. 486 (bufstat): Remove; subsumed by stats->stat. 487 (reset, fillbuf, grep, grepdir, grepfile): Pass struct stats * arg, 488 for directory loop checking; use this instead of the bufstat global. 489 All callers changed. 490 (grepfile): Stat the file before invoking grepdir. 491 (grepdir): Assume that the argument has already been statted. 492 No longer a need for a directory size argument, since it 493 can be gotten from the struct stats * argument. 494 Check for directory loops. 495 Create linked list of directories currently being visited, 496 to detect loops. 497 4981998-12-29 Kaveh R. Ghazi 499 500 intl/localealias.c: When building grep-2.2e using cc on Irix4, 501 I needed the following patch to intl/localealias.c. 502 (Its the same patch used by fileutils-4.0.) The patch resolves 503 conflicts between char* and unsigned char* in the i18n code. 504 5051998-12-10 Alain Magloire 506 507 * src/grep.c : Typo in contex -->context 508 Noted by Vladimir Michl. 509 5101998-12-01 Alain Magloire 511 512 * doc/Makefile.am djgpp/Makefile.am m4/Makefile.am vms/Makefile.am: 513 New files. 514 515 * m4/progtest.m4: proctect '[]' from m4. 516 Noted by Eli Z. 517 518 * PATCHES-AC: New file, add the patch for autoconf in the dist. 519 520 * acconfig.h: (HAVE_DOS_FILENAME) 521 522 * TODO: updated. 523 524 * src/search.c: remove obsolete 'gegrep,ggrep,gnugrep' 525 matchers. grep no longer depend on argv[0]. 526 527 * grep-2.2e beta to test DJGPP port. 528 5291998-11-28 Paul Eggert 530 531 Various portability enhancements: 532 - Don't assume that O_BINARY implies DOS. Use separate 533 macros D_OK (for DOS-like directory access) and 534 HAVE_DOS_FILE_NAMES (for DOS-like file names). 535 - Don't assume that off_t fits into long; it doesn't on Solaris 2.6. 536 - Have is_EISDIR set errno properly on hosts with screwed-up EISDIR. 537 - Treat ':' specially in DOS file names only if it's the end of a 538 drive specifier. 539 - Protect against errno < 0. 540 541 * src/grep.c (is_EISDIR): Move defn to system.h. 542 (print_offset_sep): New function. 543 (fillbuf): Remove redundant test of O_BINARY. 544 (totalcc, totalnl): Now of type off_t. 545 (prline): Use print_offset_sep to print file offsets. 546 (grepfile): Don't set e to EISDIR; that's is_EISDIR's responsibility 547 on machines that don't work properly with EISDIR. 548 (grepdir): Don't assume ':' means slash on all DOS filenames; 549 it means it only in the file prefix. 550 551 * src/system.h (strerror): Check for negative error numbers. 552 (is_EISDIR): Depend on D_OK, not O_BINARY. 553 (SET_BINARY): Depend on HAVE_SETMODE, not __DJGPP__. 554 (IS_SLASH, FILESYSTEM_PREFIX_LEN): Depend on HAVE_DOS_FILE_NAMES, 555 not O_BINARY. 556 (CHAR_BIT): New macro. 557 558 * src/dosbuf.c (struct dos_map): 559 pos and add members are now of type off_t. 560 (dos_stripped_crs): Now of type off_t. 561 (dossified_pos): Now accepts arg and returns value of type off_t. 562 563 * configure.in (AC_CHECK_FUNCS): Add setmode. 564 (HAVE_DOS_FILENAMES): New macro 565 5661998-11-27 Eli Zaretskii 567 568 * djgpp/config.sed: New file, a Sed script to edit configure 569 script before running it on DOS/Windows. 570 * djgpp/config.bat: Updated to handle po2tbl.sed.in and 571 po/Makefile.in.in on DOS filesystems, and to run config.sed. 572 5731998-11-24 Jim Meyering 574 575 * src/grep.c : Typo s/infalid/invalid/ 576 Also noted by Stanislav Brabec. 577 5781998-11-24 Eli Zaretskii 579 580 * doc/grep.texi: I found and corrected several typos. 581 I believe the GNU standards require the section that describes the 582 options to the programs to be called ``Invoking'' or ``Invoking 583 <program-name>''. This is so users and programs can easily find 584 that node in any Info file. So I changed the name of the 585 `Options' chapter to `Invoking', and corrected the 586 cross-references accordingly. 587 I added some markup to things like file names and options. 588 I added some additional index entries where that seemed useful. 589 I also corrected some index entries, such as "@cindex [:alnum:]", 590 which used a colon in them (the colons confuse Info readers). 591 5921998-11-24 Alain Magloire 593 594 * grep/doc/grep.texi : -h is not use for help. 595 Nit spotted by Jim Meyering. 596 5971998-11-23 Alain Magloire 598 599 * doc: New directory, grep.1, {e,f}grep.man move here 600 * doc/grep.texi: New info manual 601 * doc/version.texi: New 602 * doc/Makefile.am: New 603 * tests/{ere,bre}.*: New files. The spencer2 test is split 604 in two ere/bre. 605 * config.hin: New, config.h.in rename to config.hin for OS 606 with limited file system aka DOS. 607 608 * grep-2.2d release for beta. 609 6101998-11-18 Alain Magloire 611 612 * src/regex.[ch] : Updated from GLibc, previous patches were 613 integrate by Ulrich Drepper and some added ones. 614 6151998-11-16 Paul Eggert 616 617 * grep.h (__attribute__): New macro, if not GCC. 618 (fatal): Add __attribute__((noreturn)). 619 * grep.c (usage): Add __attribute__((noreturn)). 620 6211998-11-16 Paul Eggert 622 623 Remove memory leak with valloced buffers, by invoking malloc instead. 624 625 * configure.in (AC_CHECK_FUNCS), src/system.h (valloc): Remove. 626 * src/grep.c (page_alloc): New function. 627 (ubuffer, pagesize): New vars. 628 (ALIGN_TO): New macro. 629 (reset): Initialize new vars. Check for overflow in buffer size calc. 630 Use page_alloc instead of valloc. 631 (fillbuf): Likewise. Use memcpy to copy saved area. 632 6331998-11-15 Paul Eggert 634 635 * dfa.c (dfacomp), search.c (EGexecute): Don't assume char is unsigned. 636 6371998-11-14 Paul Eggert 638 639 * src/grep.c (grepdir): Fix bug: memory freed twice. 640 641 * src/search.c (Gcompile, Ecompile): Don't invoke dfainit, 642 since dfacomp does it for us, and if we also do it then we 643 leak memory. 644 6451998-11-13 Eli Zaretskii 646 647 * djgpp/config.bat: Rewrite to run the configure script via Bash. 648 * djgpp/config.site, djgpp/getconf: New files. 649 * djgpp/config.h, djgpp/*.mak, djgpp/po2tbl.sed: Remove. 650 * djgpp/README: Update instructions. 651 652 * Makefile.am (EXTRA_DIST): Update the list of DJGPP files. 653 654 * src/system.h (IS_SLASH): New macro. 655 (is_EISDIR): Define it here for DOS and Windows. 656 657 * src/grep.c (main) [O_BINARY]: Set stdout to binary mode, so the 658 EOL formats of the input and output files match, unless stdout is 659 the console device. 660 (is_EISDIR): Don't define if already defined. Accept a second 661 argument, the file name; all callers changed. 662 (grepdir): Don't free `file', inside the loop. Use IS_SLASH to 663 check whether `dir' needs a slash. 664 (grepfile): If file is a directory, set e to EISDIR. 665 6661998-11-10 Alain Magloire 667 668 * src/vms_fab.{c,h}: New file for VMS wildcard expansion 669 Written by Phillip C. Brisco. 670 671 * vms/make.com : add line to compile vms_fab.c and 672 {e,f,}grepmat.c with link for each grep/fgrep/egrep. 673 Base on patch send by Phillib C. Brisco. 674 6751998-11-09 Alain Magloire 676 677 * grep-2.2c on alpha for testing. 678 6791998-11-09 Paul Eggert 680 681 * src/grep.1: Fix `Last Change' of output by generating the date 682 from the RCS Id. 683 684 * src/grep.c (is_EISDIR): New macro. 685 (grep): If -s, suppress errors from trying to read directories. 686 (grepfile): Use is_EISDIR to simplify code. 687 (grepdir): If -s, suppress errors from trying to read directories. 688 689 * src/grep.1: Fix -q -r -s problems; describe BSD grep better. 690 691 * src/grep.c (main): Update copyright. 692 693 Specify default matcher with default_matcher extern var, not 694 DEFAULT_MATCHER macro. This is more straightforward and means 695 we need to compile grep.c just once. 696 697 * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c: New files. 698 699 * src/Makefile.am (base_sources): New macro. 700 (egrep_SOURCES, fgrep_SOURCES, grep_SOURCES): Now consist of 701 $(base_sources) plus the single tailoring file. 702 (grep_LDADD, egrep_LDADD, fgrep_LDADD): Remove. 703 (EXTRA_DIST): Remove grep.c, regex.c. 704 (fgrep.o, egrep.o): Remove. 705 706 * src/grep.h (matcher): Now char const *. 707 (default_matcher): New decl. 708 709 * src/grep.c (matcher): Now char const *. 710 (setmatcher): Now accepts char const *. 711 (main): Default the matcher from default_matcher (linked externally) 712 rather than DEFAULT_MATCHER (a macro). 713 7141998-11-08 Alain Magloire 715 716 * src/grep.1: `prep.ai.mit.edu' should be replaced with `gnu.org'. 717 Nit from Paul Eggert. 718 7191998-11-06 Alain Magloire 720 721 * src/grep.c: The Matcher is not set to argv[0] but 722 explicitly by a #define MATCHER at compile time default is "grep". 723 724 * aclocal/: NEW dir. provides our own *.m4 725 726 * configure.in: Move Paul's Large Files to AC_LFS.(aclocal/lfs.m4) 727 Taken from Jim Meyering fileutils. 728 7291998-11-05 Alain Magloire 730 731 * src/grep.1: update the man pages according to the 732 changes make by Miles. 733 734 * po/*.po: updated. 735 736 * first beta release for 2.3 (2.2a). 737 7381998-11-04 Miles Bader 739 740 * src/grep.c (main): Rationalize interaction of -C/-NUM/-A/-B 741 options, and allow -C to have an optional argument. -NUM can 742 now be mixed with -C, and -A, -B always take precedence over 743 -C/-NUM, regardless of order. 744 (long_options): Let -C/--context take an optional argument. 745 7461998-11-03 Alain Magloire 747 748 * src/dfa.c: HP-UX define clrbit/setbit as macros in <sys/param.h> 749 #undef if defined. 750 Fixed by Andreas Ley and Philippe Defert. 751 752 * src/grep.1 : mention that -s follows POSIX.2 behavior. 753 Noted by Paul Eggert and others. 754 755 * tests/khadafy.sh: a typo in failure(s). 756 Spotted By Sotiris Vassilopoulos. 757 7581998-11-01 Paul Eggert 759 760 * src/system.h (IN_CTYPE_DOMAIN): New macro. 761 (ISALPHA, ISUPPER, ISLOWER, ISDIGIT, ISXDIGIT, ISSPACE, 762 ISPUNCT, ISALNUM, ISPRINT, ISGRAPH, ISCNTRL): Use 763 IN_CTYPE_DOMAIN instead of isascii. 764 7651998-08-18 Paul Eggert 766 767 Add support for new -r or --recursive (or -d recurse or 768 --directories=recurse) option. 769 770 * src/Makefile.am (grep_SOURCES): Add savedir.c, savedir.h, stpcpy.c. 771 772 * src/grep.1: Describe new options. 773 774 * src/grep.c: Include "savedir.h". 775 (long_options): Add -r or --recursive. 776 (RECURSE_DIRECTORIES): New enum value. 777 (IS_DIRECTORY_ERRNO): Remove. 778 (reset, grep): Add file name arg. 779 (grepdir, grepfile): New functions. 780 (initial_bufoffset): New var. 781 (reset): Initialize it. 782 (fillbuf): Use it. 783 (count_matches, list_files, no_filenames, suppress_errors): New static 784 vars; formerly were local to `main'. 785 (grep): Recurse through directories if the user asks for this. 786 (usage, main): Add new options. 787 (main): Change some local vars to be static, as described above. 788 Move most of the guts into grepfile function. 789 so that it can be recursed through. 790 791 * configure.in (AC_HEADER_DIRENT, AC_FUNC_CLOSEDIR_VOID): Add. 792 (AC_REPLACE_FUNCS): Add stpcpy. 793 794 * src/savedir.c, src/savedir.h, src/stpcpy.c: New files; 795 taken from fileutils 3.16u. 796 7971998-08-11 Paul Eggert 798 799 * src/system.h (initialize_main): New macro. 800 * src/grep.c (main): Invoke initialize_main first thing. 801 8021998-04-29 Paul Eggert 803 804 * NEWS, src/grep.1: Describe new -a and -d options. 805 806 * src/grep.c (long_options, usage, main): 807 New options -d or --directories and -a or --text. 808 (directories, always_text): New variables. 809 (IS_DIRECTORY_ERRNO): New macro. 810 (reset): Now returns value specifying whether to skip this file. 811 Stat the file if either mmap or directory-skipping is possible. 812 Skip the file if it's a directory and we're skipping directories. 813 (grep): Skip the file if `reset' tells us to. 814 (main): If open fails because the file is a directory, and if we're 815 skipping directories, don't report an error. 816 Remove special case for DOS and Windows. 817 818 * src/dosbuf.c (guess_type): Use the same method for guessing whether a 819 file is binary as grep.c's grep does. 820 There's no longer any need to declare `bp' to be unsigned. 821 8221998-04-26 Alain Magloire 823 824 * grep-2.2 release. 825 826 * src/dfa.c: Wrong revision was pulled out 827 for beta 2.1.1d. 828 * src/search.c: Wrong revision was pulled out 829 for beta 2.1.1d. 830 831 * src/grep.c: ck_atoi () added instead of atoi (). 832 Suggestion from Jim Meyering. 833 ck_atoi () pulled from diffutils-2.7, maintained by Paul Eggert. 834 835 * AUTHORS: Rephrase of some sentences. 836 * README: Rewording. 837 Noted and patched by Joel N. Weber II. 838 8391998-04-17 Kaveh R. Ghazi 840 841 * src/dfa.h: Don't define `const', trust autoconf to handle it. 842 8431998-04-16 Alain Magloire 844 845 * tests/{status,empty}.sh: wrong return status. 846 847 * src/grep.c: Remove the REGEX part in usage (), it was 848 consider overkill by most. 849 8501998-04-14 Eli Zaretskii 851 852 * djgpp/config.bat: Support file names with multiple dots on all 853 platforms. 854 855 * djgpp/README: Add instructions about file names illegal on 856 MS-DOS. 857 8581998-04-13 Alain Magloire 859 860 * src/dfa.c: by "popular" demand reverse 861 back to '_' not word-constituent. 862 863 * grep-2.1.1c available for testing. 864 8651998-04-13 Karl Heuer 866 867 * src/grep.c: (a) The directory check is done too early: 868 logically, if the argument is "-", then it refers to standard 869 input, regardless of whether there's something in the file 870 system answering to "-". 871 (b) The sh command "grep -l root /etc/passwd /etc/group 0<&-" 872 prints "(standard input)" instead of "/etc/passwd", because it 873 mistakenly believes that a named file will never be opened on fd 874 0. The string "(standard input)" should be based on the file 875 having been originally specified as "-", rather than making 876 assumptions about the fd. 877 (c) the code that calls close(fd) is being done outside of the 878 test for a bad fd. Thus, if the open failed, this code will 879 attempt to close(-1). It should be done inside the "fd != -1" 880 branch. 881 This patch addresses all three of these problems. 882 8831998-04-13 Alain Magloire 884 885 * configure.in: remove the deprecated AC_ISC_POSIX macro. 886 Spotted by Karl Heuer. 887 8881998-04-03 Eli Zaretskii 889 890 * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated from the 891 relevant Makefile.in files. 892 893 * djgpp/config.bat: Create files in intl directory like the 894 configure script does. 895 8961998-03-28 Eli Zaretskii 897 898 * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated to track 899 changes in respective Makefile.in files. 900 901 * src/dosbuf.c (guess_type): Avoid running off the end of the 902 buffer. Spotted by Paul Eggert. 903 9041998-03-27 Alain Magloire 905 906 * grep-2.1.1b.tar.gz available. 907 908 * src/regex.c: CLASS_CHAR_MAX set to 256 instead of 6 909 when WCTYPE and WCHAR are not defined. When class names 910 where bigger then 6, it will not detect an error. 911 example '[[:alphabet:]]'. 912 913 * Updated the copyright of the files with emacs. 914 With emacs Jim :). 915 9161998-03-26 Jim Meyering 917 918 * src/dfa.c (IS_WORD_CONSTITUENT): Define. 919 (lex): Use IS_WORD_CONSTITUENT, not ISALNUM. 920 Don't special-case '_'. 921 (dfastate): Use IS_WORD_CONSTITUENT, not ISALNUM. 922 (dfaexec): Likewise. 923 9241998-03-25 Alain Magloire 925 926 * tests/warning.sh: typos and replace the echos with 927 a simple cat. 928 Noted By Jim Meyering. 929 930 * src/regex.c: #undef ISASCII and ISPRINT before defining 931 them(On Solaris it was define). 932 Pattern 'a[[:]:]]b' is an invalid char class and the error 933 from regex was 1(REG_NOMATCH) instead of 2 (REG_ECTYPE). 934 Fix with help from Ulrich Drepper. 935 936 * src/grep.c (usage): Ulrich wrote: "A single printf should 937 not have more than 900 bytes. For translation reasons the 938 text shouldn't be split in too many pieces since this is 939 tiresome and also does not help to generate a consistent picture." 940 Noted by Ulrich Drepper. 941 * src/grep.c (usage): Dig out and old patch from 942 Franc,ois to explain the regex in usage(). 943 Ideas from Franc,ois Pinard. 944 9451998-03-23 Alain Magloire 946 947 * testing: grep-2.1.1a for testing. 948 949 * configure.in: Solaris needs '-lw' if we use wchar/wctype 950 functions. 951 * src/btowc.c: New file from GNU libc. Solaris 2.5 don't 952 have it define. 953 * configure.in : check for btowc (). 954 955 * regex.c: Include <wchar.h> before <wctype.h>, to work around 956 a Solaris 2.5 bug. 957 Patch provided by Paul Eggert. 958 959 * tests/status.sh: new file to check return status code. 960 * tests/empty.sh: new file to check for empty pattern. 961 * tests/warning.sh: new file to tell where to report errors. 962 963 * configure.in: If available, prefer support for large files 964 unless the user specified one of the CPPFLAGS, LDFLAGS, or LIBS 965 variables. 966 Done by Paul Eggert. 967 968 * src/grep.c (usage): change prep.ai.mit.edu for gnu.org. 969 9701998-03-18 Alain Magloire 971 972 * src/grep.c (usage): Formating the --help message a bit off. 973 Noted by William Bader. 974 975 * src/grep.c (main): When checking conflicting matcher for option -E the 976 matcher was to "egrep" instead of "posix-egrep". 977 Reported by kwzh@gnu.org. 978 979 * src/grep.c: Typos and rewording the --help message. 980 Reported by Karl Heuer. 981 982 * src/grep.1: The man page wording : 983 A regular expression matching a single character may be 984 followed by one of several repetition operators: 985 is unclear since 'x(yz)*z' is a valid regex. 986 Remove the "matching a single character". 987 Suggested by Harald Hanche-Olsen. 988 989 * src/grep.c (main): `-f /dev/null' now specifies no patterns 990 and therfore matches nothing. 991 Reported by Jorge Stolfi. 992 Patched by Paul Eggert. 993 9941998-03-10 Alain Magloire 995 996 * Ice storm 98(el nino). Lost grep repository disk, 997 and my $HOME directory, etc .. 998 Trying to get the emails/patch from dejanews.com 999 and start from grep-2.1. 1000 sigh .... 1001 10021997-11-01 Alain Magloire 1003 1004 * src/grep.c: For the long options, the problems are: 1005 --file appears in the option table as 'no_argument' 1006 instead of 'required_argument'. 1007 --files-with-matches is missing from the option table. 1008 The help lists '--fixed-strings' as the long option for -F, 1009 the table has '--fixed-regexp'. 1010 --regexp appears in the option table as 'no_argument' 1011 instead of 'required_argument'. 1012 --with-filename is missing from the option table. 1013 Reported by Grant McDorman and Krishna Sethuraman. 1014 10151997-10-19 Alain Magloire 1016 1017 * src/grep.c: the option "with-filename was not in the arg table. 1018 Corrected by Jim Hand. 1019 1020 * GNU gettext library from gettext-0.10.32. 1021 1022 * src/grep.c: reverse back to greping directories, 1023 One could skip the error message by defining 1024 SKIP_DIR_ERROR. There is no clear way of doing 1025 things, I hope to setle this on the next majore release 1026 Thanks Paul Eggert, Eli Zaretskii and gnits for the 1027 exchange. 1028 1029 * tests/status.sh: add this check to make sure 1030 That the return status code is ok. 1031 10321997-10-10 Andreas Schwab 1033 1034 * src/grep.1: Fix formatting. 1035 1036 * configure.in: Check for wctype.h, wchar.h, libintl.h and 1037 isascii, which are needed for regex.c. 1038 10391997-10-01 Paul Eggert 1040 1041 * src/grep.c (fillbuf): Don't warn about mmap failures. 1042 10431997-09-7 Alain Magloire 1044 1045 * src/grep.c: added code for -H --with-filename. 1046 1047 * djgpp/*: patch wrongly apply 1048 duplication of text in djgpp/{README,config.h}. 1049 Filter djgpp/config.bat with unix2dos. 1050 1051 * djgpp/make.mak: beautify 1052 From Eli Zaretskii. 1053 1054 * grep-2.1 release. 1055 10561997-09-01 Alain Magloire 1057 1058 * grep-2.0f out for testing. 1059 1060 * update to GNU gettext library from gettext-0.10.31 1061 1062 * grep.c : have a nicer format for --version. 1063 Noted by Ulrich Drepper. 1064 1065 * obstack.[ch]: updated from GNU C library 1066 * configure.in: look for stdlib.h [HAVE_STDLIB_H] 1067 Comments from Ulrich Drepper. 1068 10691997-08-25 Philippe De Muyter <phdm@info.ucl.ac.be> 1070 1071 * src/dfa.c (sys/types.h): File included unconditionnaly. 1072 10731997-08-16 Eli Zaretskii <eliz@is.elta.co.il> 1074 1075 * grep.c (long_options) [O_BINARY]: Add DOS-specific options. 1076 (fillbuf) [O_BINARY]: For DOS-style text files, strip CR 1077 characters at end of line. 1078 (prline) [O_BINARY]: Report correct byte offsets, even though CR 1079 characters were stripped when reading the file. 1080 (usage) [O_BINARY]: Add DOS-specific options. 1081 (setmatcher) [HAVE_SETRLIMIT]: Set re_max_failures so that the 1082 matcher won't ever overflow the stack. 1083 (main) [__MSDOS__, _WIN32]: Handle backslashes and drive letters 1084 in argv[0], remove the .exe suffix, and downcase the prgram name. 1085 [O_BINARY]: Pass additional DOS-specific options to getopt_long 1086 and handle them. Call stat before attempting to open the file, in 1087 case it is a directory (DOS will fail the open call for 1088 directories). Switch the input descriptor to binary mode, unless 1089 it is a terminal device. 1090 1091 * system.h [O_BINARY]: Define macros to switch a handle to binary 1092 mode, so binary files could be grep'ed on MS-DOS and MS-Windows. 1093 [HAVE_SETLOCALE]: Test for HAVE_SETLOCALE instead of 1094 HAVE_LC_MESSAGES, to prevent compilation error in grep.c on 1095 systems which don't define HAVE_LC_MESSAGES, but have setlocale. 1096 1097 * dosbuf.c: New file, functions specific for MS-DOS/MS-Windows. 1098 (guess_type, undossify_input, dossified_pos): New functions. 1099 1100 * djgpp/config.h, djgpp/config.bat, djgpp/main.mak, djgpp/src.mak, 1101 djgpp/po.mak, djgpp/intl.mak, djgpp/tests.mak, djgpp/po2tbl.sed: 1102 New files, for building Grep with DJGPP tools for MS-DOS and 1103 MS-Windows. 1104 1105 * grep.1: Document DOS-specific switches. 1106 11071997-08-08 Alain Magloire 1108 1109 * grep-2.0e: available for testing 1110 1111 * grep.c: change LC_MESSAGE to LC_ALL for (LC_CTYPE). 1112 Suggested by Jochen Hein. 1113 1114 * ABOUT-NLS: updated. 1115 * grep.c: --version: more verbosity (COPYRIGHT). 1116 * grep.c: --help: PATTERN, FILE instead of <pattern>, <file>. 1117 * INSTALL.grep: not necessary removed. 1118 * configure.in: --disable-regex rename --without-include-regex. 1119 * THANKS: format: first row name, second email. 1120 * ChangeLog: format ISO 8601. 1121 Reported by Franc,ois Pinard. 1122 1123 * grep.c: move dcl of struct stat st into "else" where it's used. 1124 Reported by Jim Meyering. 1125 1126 * grep.c: totalnl should be %u in printf. 1127 Reported by Michael Aichlmay 1128 Corrected with guidance from Ulrich Drepper 1129 11301997-07-24 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1131 1132 * Makefile.am: corrected an error when installing {f,e}grep.1. 1133 From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. 1134 From Ulrich Drepper <drepper@cygnus.com>. 1135 1136 * Many files: use PARAMS instead of __STDC__ for prototypes. 1137 From Jim Meyering <meyering@eng.ascend.com>. 1138 Patch provided by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. 1139 1140 * dfa.[ch]: uses the one in gawk-3.0.3 with the patch from 1141 Arnold (see Changelog: July 12 1997) 1142 1143 * grep.1: a note to say -l, -L, -q stop on first match. 1144 Noted by Andrew Beattie <gaffer@tug.com>. 1145 1146 * grep.c: refuse to scan if the file is a directory. 1147 This was causing problems on SUNs. If the directory contains 1148 a file that could match the pattern, garbage was display. 1149 1150 * tests directory: added new set of tests from Henry Spencer 1151 regex package. Change the way the tests were done to be more 1152 conformant to automake. 1153 1154 * configure.in: added --disable-regex for folks with their own fuctions. 1155 1156 * grep-20d : available for testing 1157 11581997-07-18 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1159 1160 * grep-2.0c: available for testing 1161 11621997-07-17 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1163 1164 * src/grep.c: Cause grep to fail if `fclose (stdout)' fails. 1165 From Jim Meyering <meyering@eng.ascend.com>. 1166 1167 * grep.c:usage() more consistency in the --help. 1168 1169 * egrep, fgrep were links This is in violation of GNU standards: 1170 "Please don't make the behavior of a utility depend on the name used 1171 to invoke it. It is useful sometimes to make a link to a utility with 1172 a different name, and that should not change what it does." 1173 For now egrep and fgrep will be copies of grep. A better scheme 1174 should be found later. 1175 After discussion with Tom Tromey <tromey@cygnus.com>. 1176 1177 * fgrep.man and egrep.man included: They are stubs that call grep.1. 1178 * Makefile.am: modified to install {f,e,}grep[,.1]. 1179 1180 * speed hack for -l, -L: bail out on first match. 1181 From Scott Weikart <scott@igc.apc.org>. 1182 1183 * *.[ch]: provided prototypes for strict argument checking 1184 With the help of Stewart Levin <stew@sep.stanford.edu>. 1185 11861997-07-16 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1187 1188 * configure.in: typo in the creation of po/Makefile 1189 Noted by Volker Borchert bt@teknon.de. 1190 1191 * grep-2.0b: make it available for testing. 1192 11931997-07-15 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1194 1195 * src/grep.c usage(): cut the --help in smaller printf()'s 1196 Noted by Ulrich Drepper <drepper@cygnus.com>. 1197 11981997-07-14 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1199 1200 * grep-2.0a: make an alpha available for testing. 1201 12021997-07-12 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1203 1204 * run gettextize: added the po directory filled with *.po files. 1205 1206 * check.sh, scriptgen.awk: fix grep paths. 1207 1208 * change the directory strucure: grep is now in src to comply with 1209 gettext.m4. 1210 1211 * grep.c version.c [VERSION]: got rid of version.c, 1212 it is now define via config.h. 1213 1214 * dfa.c: patch to speed up initialization. 1215 Arnold Robbins (arnold@gnu.ai.mit.edu). 1216 12171997-07-09 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1218 1219 * *.c [HAVE_CONFIG_H]: Macro defined. 1220 1221 * support for I18N in Makefile.am and configure.in. 1222 1223 * update all the string to use gettext(I18N). 1224 Help from Franc,ois Pinard previous patch <pinard@IRO.UMontreal.CA>. 1225 12261997-07-04 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1227 1228 * obstack.[ch]: updated from glibc. 1229 Work of Ulrich Drepper <drepper@cygnus.com>. 1230 1231 * regex.[ch]: updated from glibc. 1232 Work of Ulrich Drepper <drepper@cygnus.com>. 1233 1234 * grep.c: for option -e not counting '\n' for new keys. 1235 From Mark Waite <markw@mddmew.fc.hp.com>. 1236 1237 * grep.c: for option -f allocating the right count. 1238 From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. 1239 Mike Heartel (mike@cs.uoregon.edu). 1240 1241 * kwset.c (bmexec): Cast tp[-2] to unsigned char before comparing. 1242 From Jim Meyering <meyering@asic.sc.ti.com>. 1243 1244 * grep.1: various typos. 1245 From Keith Bostic <bostic@bsdi.com>. 1246 Mike Heartel (mike@cs.uoregon.edu). 1247 12481997-06-17 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1249 1250 * grep.c: support for long options. 1251 patch done by Franc,ois Pinard <pinard@IRO.UMontreal.CA>. 1252 1253 * add getopt1.c in Makefile.am. 1254 Noted by Franc,ois Pinard <pinard@IRO.UMontreal.CA> 1255 1256 * replace getopt.[ch] and add getopt1.c. 1257 1258 * kwset.c: undef malloc before define it. 1259 Franc,ois Pinard <pinard@IRO.UMontreal.CA>. 1260 12611997-06-07 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 1262 1263 * grep.c: format incorrect in 1264 fprintf("%s: warning: %s: %s...", filename, strerror(errno)). 1265 Mike Heartel (mike@cs.uoregon.edu). 1266 12671996-11-19 David J MacKenzie <djm@catapult.va.pubnix.com> 1268 1269 * make.com: Set the logical SYS. From rdb@cocamrd.oz.au (Rodney Brown). 1270 1271 * grep.c (S_ISREG): Define if not defined already, for e.g. 1272 SunOS 4.0.3. 1273 1274 * dfa.c (test_bit, set_bit, clear_bit): Renamed from tstbit, 1275 setbit, clrbit to avoid conflict with HP-UX sys/param.h macros. 1276 1277 * memchr.c: New file, from GNU libc. 1278 * grep.c (memchr): Remove definition. 1279 * configure.in: Use AC_REPLACE_FUNCS for memchr. 1280 1281 * configure.in: Remove unused checks for memalign and unsigned char. 1282 * grep.c: HAVE_WORKING_MMAP -> HAVE_MMAP. 1283 1284 * system.h: New file. 1285 * dfa.c, kwset.c, grep.c, search.c: Use it instead of duplicating 1286 portability boilerplate. 1287 1288 * grep.c: Include sys/types.h once, instead of three times 1289 conditionally. 1290 * dfa.c, kwset.c, search.c: Include sys/types.h unconditionally, 1291 to always try to get size_t (needed on some old SysV's). 1292 1293 * dfa.c: Define strchr in terms of index, not the other way around. 1294 * search.c: Use memcpy instead of bcopy. 1295 12961996-11-15 David J MacKenzie <djm@catapult.va.pubnix.com> 1297 1298 * Many files: Update FSF address. 1299 Update configuration to use autoconf v2 and automake. 1300 13011993-05-22 Mike Haertel <mike@cs.uoregon.edu> 1302 1303 * Version 2.0 released.
|