ChangeLog revision 126432
1126432Sache2000-03-08 Alain Magloire 2126432Sache 3126432Sache * configure.in: version 2.4.2 4126432Sache 5126432Sache2000-03-07 Paul Eggert 6126432Sache 7126432Sache * Make intl subdirectory match fileutils, tar, etc.; 8126432Sache see intl/ChangeLog for details. 9126432Sache 10126432Sache * src/getpagesize.h: Reformat to match latest fileutils. 11126432Sache 12126432Sache * src/savedir.c (savedir): Work even if directory size is 13126432Sache negative; this can happen with some NFS screwups. 14126432Sache 15126432Sache2000-03-03 Jim Meyering 16126432Sache 17126432Sache * regex.m4: Make sure re_compile_pattern accepts patterns like `{1'. 18126432Sache 19126432Sache2000-03-02 Alain Magloire 20126432Sache 21126432Sache * 2.4.1 Release 22126432Sache 23126432Sache2000-02-25 Paul Eggert 24126432Sache 25126432Sache * configure.in (LIBOBJS): Work around automake 1.4 bug: 26126432Sache regex.c wasn't being passed through ansi2knr on pre-ANSI hosts. 27126432Sache (ac_use_included_regex): Fix typo in warning. 28126432Sache * src/Makefile.am (EXTRA_DIST): Remove regex.c, as the LIBOBJS 29126432Sache workaround means that automake now puts regex.c into DIST_COMMON. 30126432Sache 31126432Sache2000-02-25 Alain Magloire 32126432Sache 33126432Sache * po/*.po: update of the PO files. 34126432Sache 35126432Sache2000-02-22 Eli Zaretskii 36126432Sache 37126432Sache * doc/grep.1: Two small glitches(typos). 38126432Sache 39126432Sache2000-02-18 Eli Zaretskii 40126432Sache 41126432Sache * djgpp/config.site (prefix, INSTALL): Use /dev/env/DJDIR instead 42126432Sache of ${DJDIR}, so that the produced Makefile's work on any DJGPP 43126432Sache installation. 44126432Sache 45126432Sache2000-01-30 Alain Magloire 46126432Sache 47126432Sache * doc/grep.1: corrected typo. 48126432Sache Noted by Ruslan Ermilob. 49126432Sache 50126432Sache2000-01-30 Alain Magloire 51126432Sache 52126432Sache * vms/Makefile.am: added config_vms.h to EXTRA_DIST. 53126432Sache * vms/config_vms.h: New File, contains macros specific to VMS and 54126432Sache avoid namespace collision with operating system supplied C library. 55126432Sache * vms/make.com: Better compiler auto-detection; information for builds 56126432Sache on pre-OpenVMS 7.x systems; general overhaul. 57126432Sache * src/getpagesize.h: Reinstate support for different pagesizes on 58126432Sache VAX and Alpha. Work around problem with DEC C compiler. 59126432Sache * src/vms_fab.c: Cast to some assigments; fixed typo argcp vs. argp. 60126432Sache * src/vms_fab.h: Added new include files to avoid warnings about 61126432Sache undefined function prototypes. 62126432Sache Those patches were provided by Martin P.J. Zinser (zinser@decus.de). 63126432Sache 64126432Sache2000-01-30 Paul Eggert 65126432Sache 66126432Sache * src/grep.c (main): Update copyright notice. 67126432Sache 6856915Sru2000-01-28 Alain Magloire 6956915Sru 7056915Sru * src/grep.c (usage): The example "%s -i 'hello.*world' could 7156915Sru lead to confusion when progname is 'fgrep. 7256915Sru Noted by Akim Demaille. 7356915Sru 7456915Sru * configure.in: Reenable, jm_INCLUDE_REGEX() since we now 7556915Sru track GNU lib C. 76126432Sache * src/Makefile.am: EXTRA_DIST new macros with regex.c regex.h. 7756915Sru Requested By Ulrich Drepper. 78126432Sache 7956915Sru2000-01-25 Paul Eggert 8056915Sru 8156915Sru * src/grep.c (grep): If the final byte of an input file is not 8256915Sru a newline, grep now silently supplies one. 83126432Sache * doc/grep.texi, NEWS: Likewise. 8456915Sru 8556915Sru2000-01-25 Paul Eggert 8656915Sru 8756915Sru * NEWS, doc/grep.1, doc/grep.texi: Add -I option. 8856915Sru * src/grep.c (short_options, usage, main): Likewise. 8956915Sru 9056915Sru * doc/grep.texi: Fix some incorrect references to ASCII. 9156915Sru 9256915Sru2000-01-25 Paul Eggert 9356915Sru 9456915Sru * doc/grep.1: Simplify synopsis; sort options; mention 9556915Sru environment variables; clean up some minor gaffes. 9656915Sru 9756915Sru2000-01-25 Paul Eggert 9856915Sru 9956915Sru * doc/grep.texi: 10056915Sru Fix some errors in description of [:print:] and the like. 10156915Sru 10256915Sru2000-01-23 Paul Eggert 10356915Sru 10456915Sru * src/dfa.c (FETCH, lex): Put brackets around if-body to avoid 10556915Sru GCC warning about ambiguous if-then-else. 10656915Sru 10756915Sru2000-01-23 Paul Eggert 10856915Sru 10956915Sru * src/regex.c (GET_UNSIGNED_NUMBER): Allow only ASCII digits. 11056915Sru * src/dfa.c (ISASCIIDIGIT): New macro. 11156915Sru (lex): Use it instead of ISDIGIT. 11256915Sru 11356915Sru2000-01-23 Paul Eggert 11456915Sru 11556915Sru The bug is that regular expression ranges like [a-z] compare raw 11656915Sru byte codes to the range boundaries, whereas POSIX says that they 11756915Sru should use the current collating sequence instead. For example, 11856915Sru in Solaris 7 with LC_ALL=en_US, the command 11956915Sru echo x | grep '[ -~]' 12056915Sru outputs 'x', but it shouldn't output anything since ' ' and '~' 12156915Sru sort before all letters in that locale. 12256915Sru 12356915Sru * src/regex.c (compile_range): When matching a character 12456915Sru range, use the current collating sequence, as POSIX requires. 12556915Sru * src/dfa.c (lex): Likewise. 12656915Sru 12756915Sru2000-01-20 Alain Magloire 12856915Sru 12956915Sru * tests/Makefile.am (dist-hook): Added new rule to make sure 13056915Sru that the shell scripts have the right permissions. 13156915Sru * src/posix/Makefile.am (EXTRA_DIST): added regex.h in the 13256915Sru distribution. 13356915Sru * THANKS: updated. 13456915Sru 13556915Sru2000-01-18 Alain Magloire 13656915Sru 13756915Sru * Rectification the initial patch to add --binary-file option 13856915Sru was done by Ruslan Ermilov. 13956915Sru 14056915Sru2000-01-17 Paul Eggert 14156915Sru 14256915Sru Sync with sources of fileutils 4.0n, tar 1.13.17, glibc 2.1.3a1. 14356915Sru Convert to ANSI C prototypes (using ansi2knr for backwards 14456915Sru compatibility), as this makes it easier to sync. 14556915Sru 14656915Sru * configure.in (AC_OBJEXT): Spell in a funny way, to work around 14756915Sru a bug in automake 1.4 with ansi2knr. 14856915Sru (LIBOBJS): Add assignment so that .o files in LIBOBJS are also built 14956915Sru via the ANSI2KNR-filtering rules. 15056915Sru (AC_OUTPUT): Add src/posix/Makefile. 15156915Sru * src/Makefile.am (AUTOMAKE_OPTIONS): Add ansi2knr. 15256915Sru (SUBDIRS): New macro. 15356915Sru * src/ansi2knr.1, src/ansi2knr.c, src/posix/Makefile.am: New files. 15456915Sru * src/dfa.c, src/dosbuf.c, src/grep.c, src/kwset.c, src/search.c, 15556915Sru src/vms_fab.c: 15656915Sru Use prototypes for function definitions. 15756915Sru * src/grep.c (main): Use int counter for default context, 15856915Sru fixing an ANSI portability bug uncovered by the above changes. 15956915Sru 16056915Sru * config.guess, config.sub, install-sh, missing, src/alloca.c, 16156915Sru src/getpagesize.h, src/memchr.c, src/savedir.c, src/savedir.h, 16256915Sru src/stpcpy.c: 16356915Sru Upgrade to latest version from fileutils 4.0n. 16456915Sru 16556915Sru * src/getopt.c, src/getopt.h, src/getopt1.c: Upgrade to latest 16656915Sru version from tar 1.13.17. 16756915Sru 16856915Sru * src/obstack.c, src/obstack.h, src/regex.c, src/regex.h: 16956915Sru Upgrade to glibc 2.1.3 alpha 1, with K&R C portability fix. 17056915Sru * src/posix/regex.h: New file, from glibc 2.1.3 alpha 1. 17156915Sru 17256230Sru2000-01-04 Paul Eggert 17356230Sru 17456230Sru Inititial patch from David O'Brien. 17556230Sru 17656230Sru Add --binary-files option. 17756230Sru * NEWS, doc/grep.1, doc/grep.texi: Document it. 17856230Sru * src/grep.c (BINARY_FILES_OPTION): New constant. 17956230Sru (long_options, grep, usage, main): New --binary-files option. 18056230Sru (binary_files): New var. 18156230Sru * src/system.h (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, CHAR_MAX): 18256230Sru New macros. 18356230Sru (INT_MAX, UCHAR_MAX): Define in terms of TYPE_MAXIMUM. 18456230Sru 18556230Sru2000-01-04 Paul Eggert 18656230Sru 18756230Sru * savedir.c (savedir): Don't store past the end of an array if 18856230Sru name_size is zero and the directory is empty. 18956230Sru Reported by Dima Barsky <dima@pwd.hp.com>. 19056230Sru 191126432Sache1999-12-03 Alain Magloire 192126432Sache 193126432Sache * 2.4 Release. 194126432Sache 19555360Sobrien1999-11-18 Paul Eggert 19655360Sobrien 19755360Sobrien * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a 19855360Sobrien problem with the QNX 4.25 shell, which doesn't propagate exit 19955360Sobrien status of failed commands inside shell assignments. 20055360Sobrien 20155360Sobrien1999-11-13 Eli Zaretskii 20255360Sobrien 20355360Sobrien * doc/grep.texi: Minor markup and spelling corrections. Use 20455360Sobrien @noindent where appropriate. 20555360Sobrien 20655360Sobrien * PATCHES-{AM,AC}: rename to PATCHES.{AM,AC} 20755360Sobrien 20855360Sobrien1999-11-12 Eli Zaretskii 20955360Sobrien 21055360Sobrien doc/grep.texi: Minor fixes and typos corrected. 21155360Sobrien djgpp/README: Updated version. 21255360Sobrien 21355360Sobrien1999-11-07 Paul Eggert 21455360Sobrien 21555360Sobrien * src/grep.c (usage): Fix misspelling. 21655360Sobrien 21755360Sobrien1999-11-07 Paul Eggert 21855360Sobrien 21955360Sobrien Don't assume that the C library has re_set_syntax and friends. 22055360Sobrien * src/Makefile.am (base_sources): Add regex.c, regex.h. 22155360Sobrien (EXTRA_DIST): Remove regex.c, regex.h. 22255360Sobrien 22355360Sobrien * src/grep.c (prtext): Use out_quiet, not not_text, to decide 22455360Sobrien whether to set pending to zero at the end. 22555360Sobrien (not_text): Remove static variable, undoing latest change. 22655360Sobrien (grep): Likewise. 22755360Sobrien 22855360Sobrien * doc/grep.texi: Tighten up the text, and fix some minor 22955360Sobrien spelling and usage errors. Use @enumerate rather than @table 23055360Sobrien @samp, since it's better for Q&A format. Add cross 23155360Sobrien references. 23255360Sobrien 23355360Sobrien1999-11-01 Alain Magloire 23455360Sobrien 23555360Sobrien * src/search.c: Use the more portable [[:alnum:]] 23655360Sobrien to define a word instead of Ascii dependent [0-9A-Za-z] 23755360Sobrien * src/grep.c: make not_text global to not display text when 23855360Sobrien the context switches -A/-B/-C are use on binary files. 23955360Sobrien * make grep-2.3g available for testing. 24055360Sobrien * configure.in: drop support for --without-included-regex. 24155360Sobrien This was generating bogus bug reports, since many GNU/Linux 24255360Sobrien users have different version of glibc. And glibc maintainers 24356230Sru decided to drop k&r support. 24456230Sru 24555360Sobrien1999-11-01 Arnold D. Robbins 24655360Sobrien 24755360Sobrien * regex.c (init_syntax_once): move below definition of 24855360Sobrien ISALNUM etc., then use ISALNUM to init the table, so that 24955360Sobrien the word ops will work if i18n'ed. 25055360Sobrien (SYNTAX): And subscript with 0xFF for Latin-1 characters. 25155360Sobrien 25255360Sobrien1999-10-26 Alain Magloire 25355360Sobrien 25455360Sobrien * src/regex.c: Merge changes from GNU lib C. 25555360Sobrien * Updated the *.po files 25655360Sobrien 25755360Sobrien1999-10-26 Paul Eggert 25855360Sobrien 25955360Sobrien * src/grep.c (fillbuf): Don't report buffer size overflow if 26055360Sobrien newalloc == save and maxalloc == save. This can happen 26155360Sobrien e.g. when reading a large page-aligned file that contains 26255360Sobrien no newlines. 26355360Sobrien 26455360Sobrien1999-10-21 Paul Eggert 26555360Sobrien 26655360Sobrien * src/grep.c (usage): Give example. Clarify -F. 26755360Sobrien Explain exit status more clearly. 26855360Sobrien 26955360Sobrien1999-10-12 Paul Eggert 27055360Sobrien 27155360Sobrien * doc/grep.texi: Shorten the commentary about egrep and {. 27255360Sobrien "BSD grep" -> "traditional grep". 27355360Sobrien * doc/grep.1: Match recent changes to grep.texi. 27455360Sobrien 27555360Sobrien1999-10-11 Paul Eggert 27655360Sobrien 27755360Sobrien * NEWS, doc/grep.1, doc/grep.texi: New option --mmap. 27855360Sobrien * src/grep.c (mmap_option): New variable. 27955360Sobrien (long_options, reset, usage): Add --mmap. 28055360Sobrien Default is now read, not mmap. 28155360Sobrien 28255360Sobrien * doc/grep.1: Document -Z or --null. 28355360Sobrien 28455360Sobrien1999-10-11 Paul Eggert 28555360Sobrien 28655360Sobrien * doc/grep.texi: Fix texinfo glitches. POSIX -> POSIX.2 where 28755360Sobrien appropriate. 28855360Sobrien 28955360Sobrien1999-10-11 Paul Eggert 29055360Sobrien 29155360Sobrien * acconfig.h (ssize_t): New #undef. 29255360Sobrien 29355360Sobrien * configure.in (AC_CHECK_TYPE): Add ssize_t. 29455360Sobrien 29555360Sobrien * src/grep.c (PREFERRED_SAVE_FACTOR): New macro. 29655360Sobrien (reset): If the buffer has already been allocated, set bufsalloc to 29755360Sobrien be bufalloc / PREFERRED_SAVE_FACTOR. This avoids problems when 29855360Sobrien bufsalloc == bufalloc (possible after reading a large binary file). 29955360Sobrien (reset): Use PREFERRED_SAVE_FACTOR instead of magic constant. 30055360Sobrien Do not set bufbeg; nobody uses it. 30155360Sobrien Always set buflim. 30255360Sobrien Check for lseek error. 30355360Sobrien Use SEEK_CUR, not a magic constant. 30455360Sobrien (fillbuf): Return an error indication, not a count. 30555360Sobrien All callers changed. 30655360Sobrien Do not assume ssize_t fits in int. 30755360Sobrien Use PREFERRED_SAVE_FACTOR instead of magic constant. 30855360Sobrien Clean up mmap code. 30955360Sobrien Do not attempt to mmap zero bytes. 31055360Sobrien Check for lseek error. 31155360Sobrien Use SEEK_SET, not a magic constant. 31255360Sobrien Work correctly if read is interrupted. 31355360Sobrien (grepfile): Work correctly if open or close is interrupted. 31455360Sobrien 31555360Sobrien * src/system.h (SEEK_SET, SEEK_CUR): New macros. 31655360Sobrien 31755360Sobrien1999-10-02 Alain Magloire 31855360Sobrien 31955360Sobrien * src/regex.[ch]: upgrade from GNU lib C source tree. 32055360Sobrien 32155360Sobrien * make beta 2.3f available. 32255360Sobrien 32355360Sobrien1999-10-02 Paul Eggert 32455360Sobrien 32555360Sobrien * NEWS: egrep is now equivalent to `grep -E'. 32655360Sobrien The lower bound of an interval is not optional. 32755360Sobrien You can specify a matcher multiple types without error. 32855360Sobrien -u and -U are now allowed on non-DOS hosts, and have no effect. 32955360Sobrien * doc/grep.texi: Likewise. 33055360Sobrien * doc/grep.1: Likewise. 33155360Sobrien Fix some troff bugs that prevented `groff' from rendering the page. 33255360Sobrien 33355360Sobrien * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c (default_matcher): 33455360Sobrien Remove. 33555360Sobrien (matcher): Add. 33655360Sobrien * src/grep.h (default_matcher): Remove. 33755360Sobrien (matcher): Now exported from ?grepmat.c, not grep.c. 33855360Sobrien 33955360Sobrien * src/dfa.c (lex): If { would start an invalid interval specification, 34055360Sobrien treat it as a normal character. 34155360Sobrien Remove (broken) support for {,M} meaning {0,M}. 34255360Sobrien Diagnose bogus intervals like {1,0}. 34355360Sobrien (closure): maxrep is now -1 to indicate no limit, not zero; 34455360Sobrien zero is a valid value for maxrep, meaning an upper bound of zero. 34555360Sobrien 34655360Sobrien * src/grep.c (short_options): New constant. 34755360Sobrien (long_options, main): -u and -U are now supported on Unix, 34855360Sobrien with no effect. 34955360Sobrien (matcher): Removed; now defined by ?grepmat.c. 35055360Sobrien (install_matcher): Renamed from setmatcher. 35155360Sobrien (setmatcher): New function. 35255360Sobrien (usage): Report new, more uniform option scheme. 35355360Sobrien (main): Do not initialize matcher; ?grepmat.c now does this. 35455360Sobrien Rely on setmatcher to catch matcher conflicts. 35555360Sobrien Default matcher is "grep". 35655360Sobrien 35755360Sobrien * src/search.c (matchers): 35855360Sobrien Remove "posix-egrep" matcher; no longer needed. 35955360Sobrien (Ecompile): Likewise. 36055360Sobrien The egrep matcher now has POSIX behavior. 36155360Sobrien 36255360Sobrien * tests/bre.tests: grep '\{' is no longer an error. 36355360Sobrien Fix test for interval too large, and enable it. 36455360Sobrien * tests/ere.tests: grep -E {1 is no longer an error 36555360Sobrien Likewise for a{1, a{1a, a{1a}, a{1,x}. 36655360Sobrien 36755360Sobrien1999-09-22 Paul Eggert 36855360Sobrien 36955360Sobrien * largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC 37055360Sobrien 2.95.1 bug with HP-UX 10.20. 37155360Sobrien 37255360Sobrien1999-09-12 Paul Eggert 37355360Sobrien 37455360Sobrien * src/grep.c (fillbuf): Fix typo: we sometimes reported 37555360Sobrien arithmetic overflow even when there wasn't any. 37655360Sobrien 37755360Sobrien1999-09-12 Paul Eggert 37855360Sobrien 37955360Sobrien * configure.in (AC_CHECK_FUNCS): Add memmove. 38055360Sobrien 38155360Sobrien * src/system.h (S_ISREG): New macro. 38255360Sobrien (memmove): Define if ! defined HAVE_MEMMOVE && ! defined memmove, 38355360Sobrien not if !defined STDC_HEADERS. This is needed for SunOS 4.1.4, 38455360Sobrien which defines STDC_HEADERS but lacks memmove. 38555360Sobrien 38655360Sobrien * src/grep.c (bufoffset): Needed even if !defined HAVE_MMAP. 38755360Sobrien (reset): Always fstat the file, since we always need its size if it is 38855360Sobrien regular. 38955360Sobrien Similarly, get the buffer offset of every regular file. 39055360Sobrien Set bufmapped to 0 if the file's initial offset is not a multiple 39155360Sobrien of the page size. 39255360Sobrien (fillbuf): Calculate an upper bound on how much memory we should 39355360Sobrien allocate only for regular files, since we don't know the sizes of 39455360Sobrien other files. 39555360Sobrien Don't bother to check whether the file offset is a multiple of the page 39655360Sobrien size, since we now do that just once in `reset'. 39755360Sobrien When an mmapped area would fall past the end of the file, trim it to 39855360Sobrien just before instead of giving up immediately and doing a `read'; 39955360Sobrien that avoids a worst-case behavior that could read half an mmapped file. 40055360Sobrien Fix bug when computing offsets on hosts that don't have mmap. 40155360Sobrien 40255360Sobrien1999-08-27 Paul Eggert 40355360Sobrien 40455360Sobrien * src/system.h (memmove): New macro. 40555360Sobrien 40655360Sobrien * src/grep.c (page_alloc): Reallocate the old buffer instead 40755360Sobrien of having both old and new buffers active simultaneously. 40855360Sobrien Remove valloc debugging variant, which no longer applies. 40955360Sobrien 41055360Sobrien (fillbuf): Rejigger the buffer allocation mechanism. The old 41155360Sobrien mechanism could allocate more than 10*N bytes for an N-byte 41255360Sobrien file, which was excessive. Check for arithmetic overflow a 41355360Sobrien bit more carefully. 41455360Sobrien 41555360Sobrien1999-08-25 Paul Eggert 41655360Sobrien 41755360Sobrien * src/grep.c (grepdir): 41855360Sobrien Don't assume that st_ino and st_dev must be integers; 41955360Sobrien POSIX.1 allows them to be floating-point (!). 42055360Sobrien 42155360Sobrien * src/vms_fab.h (arr_ptr): `:' -> `;' to fix typo. 42255360Sobrien 42355360Sobrien1999-08-18 Alain Magloire 42455360Sobrien 42555360Sobrien * 2.3e snapshot. 42655360Sobrien 42755360Sobrien1999-08-18 Alain Magloire 42855360Sobrien 42955360Sobrien * src/search.c: On a CRAY J90 system running UNICOS 8.0. 43055360Sobrien Compilation of ./src/search.c failed because the declaration of 43155360Sobrien the variable "regex": 43255360Sobrien static struct re_pattern_buffer regex; 43355360Sobrien conflicted with a previous declaration search.c #includes "system.h", 43455360Sobrien which #includes <stdlib.h>, which declares : 43555360Sobrien extern char *regex __((char *_Re, char *_Subject, ...)); 43655360Sobrien The declaration in search.c is local to that one source file. 43755360Sobrien I just changed its name to something less likely to conflict. 43855360Sobrien (I called it "regexbuf", but you could pick any name you want.) 43955360Sobrien Excerpt email from Dean Kopesky. 44055360Sobrien 44155360Sobrien1999-08-16 Paul Eggert 44255360Sobrien 44355360Sobrien Upgrade large-file support to the version used in tar and 44455360Sobrien textutils. 44555360Sobrien 44655360Sobrien * Makefile.am (ACLOCAL_AMFLAGS): Define to be empty. 44755360Sobrien (M4DIR, ACINCLUDE_INPUTS): New macros. 44855360Sobrien ($(srcdir)/acinclude.m4): New rule. 44955360Sobrien 45055360Sobrien * configure.in (AC_CANONICAL_HOST, AM_C_PROTOTYPES): Add. 45155360Sobrien (AC_SYS_LARGEFILE): Renamed from AC_LFS, for compatibility 45255360Sobrien with what should appear in the next autoconf release. 45355360Sobrien 45455360Sobrien * m4/largefile.m4: Renamed from m4/lfs.m4. 45555360Sobrien 45655360Sobrien * src/ansi2knr.1, src/ansi2knr.c, config.guess, config.sub: 45755360Sobrien New files. config.guess and config.sub ar needed by the new 45855360Sobrien AC_SYS_LARGEFILE. ansi2knr is needed by AM_C_PROTOTYPES, 45955360Sobrien which in turn is needed by the new AC_SYS_LARGEFILE. 46055360Sobrien 46155360Sobrien1999-08-16 Alain Magloire 46255360Sobrien 46355360Sobrien * 2.3d snapshot on ftp server. 46455360Sobrien 46555360Sobrien1999-07-26 Paul Eggert 46655360Sobrien 46755360SobrienSeveral GNU tools have options to process arbitrary file names, even 46855360Sobrienfile names that contain newline characters. These include `find 46955360Sobrien-print0', `perl -0', `sort -z', and `xargs -0'. It'd be handy if GNU 47055360Sobriengrep also processed such file names. Here's a proposed patch to do 47155360Sobrienthis, relative to grep 2.3c. This patch introduces two options, one 47255360Sobrienfor the data, and one for the file names. (Sometimes one wants 47355360Sobriennull-terminated file names in the output, and sometimes one wants to 47455360Sobrienprocess lists of null-terminated strings, and these are orthogonal 47555360Sobrienaxes.) 47655360Sobrien 47755360Sobrien * NEWS, doc/grep.texi: New -z or --null-data and -Z or --null options. 47855360Sobrien * src/grep.c (long_options, usage, main): Likewise. 47955360Sobrien 48055360Sobrien * src/dfa.h (dfasyntax): New eol parameter. 48155360Sobrien * src/dfa.c (eolbyte): New var. 48255360Sobrien (dfasyntax): Set it from new parameter. 48355360Sobrien (lex, dfastat, build_state, dfaexec): Use it instead of '\n'. 48455360Sobrien 48555360Sobrien * src/grep.h (eolbyte): New decl. 48655360Sobrien * src/grep.c (eolbyte): New var. 48755360Sobrien (nlscan, prpending, prtext, grepbuf, grep): Use it instead of '\n'. 48855360Sobrien (filename_mask): New var. 48955360Sobrien (prline, grepfile): Output NUL separator if filename_mask is zero. 49055360Sobrien (grep): Look for '\200' as the hallmark of a binary file, not '\0', 49155360Sobrien if -z or --null-data is specified, since it implies that '\0' is 49255360Sobrien expected as text. 49355360Sobrien 49455360Sobrien * src/search.c (Gcompile, Ecompile): Pass eolbyte to dfasyntax. 49555360Sobrien (EGexecute, Fexecute): Use eolbyte instead of '\n'. 49655360Sobrien 49755360Sobrien1999-06-15 Alain Magloire 49855360Sobrien 49956230Sru * src/grep.c, doc/grep{1,texi} : 50055360Sobrien --revert-match should be --invert-match. 50155360Sobrien Correction proposed by Karl Berry. 50255360Sobrien 50355360Sobrien1999-06-12 Alain Magloire 50455360Sobrien 50555360Sobrien * doc/grep.{1,texi}: add description for --with-filename. 50655360Sobrien Noted missing by UEBAYASHI Masao. 50755360Sobrien 50855360Sobrien1999-03-17 Paul Eggert 50955360Sobrien 51055360Sobrien * NEWS: Add GREP_OPTIONS. 51155360Sobrien 51255360Sobrien * doc/grep.texi: Document GREP_OPTIONS, and the other 51355360Sobrien environment variables. Fix doc for [:blank:], [:cntrl:], [:punct:]. 51455360Sobrien 51555360Sobrien * src/grep.c (prepend_args, prepend_default_options): New functions. 51655360Sobrien (main): Use them to implement GREP_OPTIONS. 51755360Sobrien * src/system.h (getenv): New decl. 51855360Sobrien 51955360Sobrien1999-03-16 Volker Borchert 52055360Sobrien 52155360Sobrien * configure.in: Use case case ... esac for checking Visual C++. 52255360Sobrien When ${CC} contains options it was not recognize. 52355360Sobrien 52455360Sobrien1999-03-07 Paul Eggert 52555360Sobrien 52655360Sobrien * src/grep.c (usage): Don't report -E, -F, and -G unless we're grep. 52755360Sobrien (main): Don't match options -E, -F, and -G unless we're grep. 52855360Sobrien Remove after-the-fact check for options -E, -F, and -G, since 52955360Sobrien they're no longer needed. 53055360Sobrien 53155360Sobrien1999-03-05 Eli Zaretskii 53255360Sobrien 53355360Sobrien * src/grep.c (main): Print the name of the default matcher instead 53456230Sru of just "grep". 53555360Sobrien 53655360Sobrien1999-02-06 Alain Magloire 53755360Sobrien 53855360Sobrien * tests/*.awk : Linux users are seeing "Broken Pipe" on make check. 53955360Sobrien The problem is that grep does not drain its stdin, thus the previous 54055360Sobrien process in the pipeline receives a SIGPIPE. Other shells are silent 54155360Sobrien about this. There is actually no failure, since the broken pipe is 54255360Sobrien expected. You can work around it by changing the pipeline, so that 54355360Sobrien the input is drained, like this: 54455360Sobrien status=`echo 'check' | { ${GREP} -E -e pattern >/dev/null 2>&1; 54555360Sobrien echo $?; cat >/dev/null; }`; if test $status -ne $errnu then ... fi 54656230Sru Excerpt email from Andreas Schwab. 54755360Sobrien 54855360Sobrien1999-02-23 Alain Magloire 54955360Sobrien 55055360Sobrien * src/grep.c : Restrict the use of -E, -F, -G 55155360Sobrien to only grep driver, Posix behaviour. {f,e}grep 55255360Sobrien the matcher is already set. This change may brake 55355360Sobrien scripts, warn in NEWS. 55455360Sobrien 55555360Sobrien * doc/grep.{1,texi} : -C takes arguments, upgrade manual. 55655360Sobrien 55755360Sobrien * beta 2.3a 55855360Sobrien 55955360Sobrien1999-02-23 Alain Magloire 56055360Sobrien 56155360Sobrien * configure.in : Change the configure VC test from 56255360Sobrien 'test x$ac_cv_prog_CC = xcl;' to 'test x"$ac_cv_prog_CC" = xcl;' 56355360Sobrien Email from Joshua R. Poulson. 56455360Sobrien 56555360Sobrien1999-02-23 Paul Eggert 56655360Sobrien 56755360Sobrien Fix porting bug reported by Amakawa Shuhei for SunOS 4.1.4-JL. 56855360Sobrien The btowc.c shipped with grep 2.3 is incorrect for Solaris 56955360Sobrien 2.5.1 and earlier, as it assumes UTF8, which these OSes do not 57055360Sobrien support. Solaris 7 supports btowc, so there's no need to ship 57155360Sobrien a substitute for it. The only questionable case is Solaris 57255360Sobrien 2.6, which lacks btowc but does support UTF8. However, 2.6 57355360Sobrien supports UTF8 but only as a demonstration (for an English 57455360Sobrien locale!); Japanese Solaris 2.6 users typically use EUC, or 57555360Sobrien sometimes shift-JIS, but they cannot use UTF8 since Japanese 57655360Sobrien UTF8 is not supported. Hence there's no point to having grep 57755360Sobrien substitute a btowc that uses UTF8, as it is either redundant, 57855360Sobrien or it will almost invariably have incorrect behavior. 57955360Sobrien 58055360Sobrien * configure.in (AC_CHECK_HEADERS): Don't set USE_WCHAR. 58155360Sobrien (AC_CHECK_FUNCS): Add btowc, wctype. 58255360Sobrien (AC_REPLACE_FUNCS): Don't replace btowc; our replacement is 58355360Sobrien invariably doing the wrong thing anyway, at least on SunOS/Solaris. 58455360Sobrien Don't bother to check for wctype in -lw, as we don't support 58555360Sobrien wide characters on Solaris 2.5.1 or earlier anyway. 58655360Sobrien 58755360Sobrien * bootstrap/Makefile.try (OBJS): Remove btowc.$(OBJEXT). 58855360Sobrien 58955360Sobrien * src/btowc.c: Removed; no longer needed. 59055360Sobrien 59155360Sobrien1999-02-19 Paul Eggert 59255360Sobrien 59355360Sobrien * NEWS: Fix typo when talking about the old behavior of 59455360Sobrien silently skipping directories; it was grep 2.1, not grep 2.2. 59555360Sobrien 59655360Sobrien1999-02-15 Alain Magloire 59755360Sobrien 59855360Sobrien * bootstrap/Makefile.try : add DJGPP DEFS. 59955360Sobrien Done by Elie Zaretsckii. 60055360Sobrien 60155357Sobrien1999-02-14 Alain Magloire 60255357Sobrien 60355357Sobrien * m4/gettext.m4 : Guard [] with changequote. 60455357Sobrien From Elie Zaretskii. 60555357Sobrien 60655357Sobrien * djgpp/config.bat : Makefile.in.in --> Makefile.in-in 60755357Sobrien From Elie Zaretskii. 60855357Sobrien 60955357Sobrien * src/dosbuf: k&r function parameter. 61055357Sobrien 61155357Sobrien * release of 2.3. 61255357Sobrien 61355357Sobrien1999-02-10 Alain Magloire 61455357Sobrien 61555357Sobrien * bootstrap/{Makefile{try,am},REAMDE} : skeleton 61655357Sobrien provided for system lacking the tools to autoconfigure. 61755357Sobrien 61855357Sobrien * src/{e,f,}grepmat.c: added guard [HAVE_CONFIG_H] 61955357Sobrien 62055357Sobrien1999-02-10 Alain Magloire 62155357Sobrien 62255357Sobrien * PATCHES-AC, PATCHES-AM: updated. 62355357Sobrien 62455357Sobrien * m4/regex.m4 : updated. 62555357Sobrien 62655357Sobrien1999-02-05 Eli Zaretskii 62755357Sobrien 62855357Sobrien * m4/gettext.m4 : Support DOS-style D:/foo/bar absolute file 62955357Sobrien names. 63055357Sobrien 63155357Sobrien * aclocal.m4 (DJGPP) : Use $DJ_GPP instead, since changing the 63255357Sobrien latter prevents GCC from finding headers and libraries. 63355357Sobrien 63455357Sobrien * djgpp/config.bat: Make building from another directory work 63555357Sobrien 63655357Sobrien * djgpp/config.sed: Remove redundant command wich edited path 63755357Sobrien separator: now done by configure. 63855357Sobrien 63955357Sobrien * src/grep.c [O_BINARY]: Add prototype for undossify_input. 64055357Sobrien 64155357Sobrien * doc/grep.texi (Introduction): Typo fixed. 64255357Sobrien 64355357Sobrien1999-02-03 Alain Magloire 64455357Sobrien 64555357Sobrien * grep-2.2f beta release. 64655357Sobrien 64755357Sobrien1999-02-02 Alain Magloire 64855357Sobrien 64955357Sobrien * m4/{djgpp,envsep,glibc,regex,dosfile,isc-posix}.m4 : 65055357Sobrien New files to aid configuration and unload configure.in. 65155357Sobrien * m4/Makefile.am : updated. 65255357Sobrien * src/btowc.c : protect for wchar.h 65355357Sobrien 65455357Sobrien1999-01-28 Alain Magloire 65555357Sobrien 65655357Sobrien * intl/Makefile.in: Replace .o with .${ac_objext} where necessary. 65755357Sobrien Work around a limitation of Visual C++ on Cygwin32. 65855357Sobrien * acconfig.h configure.in: Define `alloca' as `_alloca' when CC=cl. 65955357Sobrien This little hack was suggested by Ian Roxborough <irox@cygnus.com>. 66055357Sobrien Patch forwarded by Ben Elliston. 66155357Sobrien 66255357Sobrien1999-01-28 Alain Magloire 66355357Sobrien 66455357Sobrien * PATCHES-AM: New file. A small patch for automake-1.4, use $(sep) 66555357Sobrien as the path separator base on @SEP@. 66655357Sobrien * PATCHES-AC configure.in : updated for autoconf-13. 66756230Sru 66855357Sobrien1999-01-27 Volker Borchert 66955357Sobrien 67055357Sobrien * grep.c: fgrep -NUM not working correctly. 67155357Sobrien add the argument number to digit_args_val. 67255357Sobrien 67355357Sobrien1999-01-22 Paul Eggert 67455357Sobrien 67555357Sobrien Prevent grep -r from recursing infinitely through directory loops via 67655357Sobrien symbolic links. 67755357Sobrien 67855357Sobrien * grep.c (struct stats): New type. 67955357Sobrien (stats_base): New var. 68055357Sobrien (bufstat): Remove; subsumed by stats->stat. 68155357Sobrien (reset, fillbuf, grep, grepdir, grepfile): Pass struct stats * arg, 68255357Sobrien for directory loop checking; use this instead of the bufstat global. 68355357Sobrien All callers changed. 68455357Sobrien (grepfile): Stat the file before invoking grepdir. 68555357Sobrien (grepdir): Assume that the argument has already been statted. 68655357Sobrien No longer a need for a directory size argument, since it 68755357Sobrien can be gotten from the struct stats * argument. 68855357Sobrien Check for directory loops. 68955357Sobrien Create linked list of directories currently being visited, 69055357Sobrien to detect loops. 69155357Sobrien 69255357Sobrien1998-12-29 Kaveh R. Ghazi 69355357Sobrien 69455357Sobrien intl/localealias.c: When building grep-2.2e using cc on Irix4, 69555357Sobrien I needed the following patch to intl/localealias.c. 69655357Sobrien (Its the same patch used by fileutils-4.0.) The patch resolves 69755357Sobrien conflicts between char* and unsigned char* in the i18n code. 69855357Sobrien 69955357Sobrien1998-12-10 Alain Magloire 70055357Sobrien 70155357Sobrien * src/grep.c : Typo in contex -->context 70255357Sobrien Noted by Vladimir Michl. 70355357Sobrien 70455357Sobrien1998-12-01 Alain Magloire 70555357Sobrien 70655357Sobrien * doc/Makefile.am djgpp/Makefile.am m4/Makefile.am vms/Makefile.am: 70755357Sobrien New files. 70855357Sobrien 70955357Sobrien * m4/progtest.m4: proctect '[]' from m4. 71055357Sobrien Noted by Eli Z. 71155357Sobrien 71255357Sobrien * PATCHES-AC: New file, add the patch for autoconf in the dist. 71355357Sobrien 71455357Sobrien * acconfig.h: (HAVE_DOS_FILENAME) 71555357Sobrien 71655357Sobrien * TODO: updated. 71755357Sobrien 71855357Sobrien * src/search.c: remove obsolete 'gegrep,ggrep,gnugrep' 71955357Sobrien matchers. grep no longer depend on argv[0]. 72055357Sobrien 72155357Sobrien * grep-2.2e beta to test DJGPP port. 72255357Sobrien 72355357Sobrien1998-11-28 Paul Eggert 72455357Sobrien 72555357Sobrien Various portability enhancements: 72655357Sobrien - Don't assume that O_BINARY implies DOS. Use separate 72755357Sobrien macros D_OK (for DOS-like directory access) and 72855357Sobrien HAVE_DOS_FILE_NAMES (for DOS-like file names). 72955357Sobrien - Don't assume that off_t fits into long; it doesn't on Solaris 2.6. 73055357Sobrien - Have is_EISDIR set errno properly on hosts with screwed-up EISDIR. 73155357Sobrien - Treat ':' specially in DOS file names only if it's the end of a 73255357Sobrien drive specifier. 73355357Sobrien - Protect against errno < 0. 73455357Sobrien 73555357Sobrien * src/grep.c (is_EISDIR): Move defn to system.h. 73655357Sobrien (print_offset_sep): New function. 73755357Sobrien (fillbuf): Remove redundant test of O_BINARY. 73855357Sobrien (totalcc, totalnl): Now of type off_t. 73955357Sobrien (prline): Use print_offset_sep to print file offsets. 74055357Sobrien (grepfile): Don't set e to EISDIR; that's is_EISDIR's responsibility 74155357Sobrien on machines that don't work properly with EISDIR. 74255357Sobrien (grepdir): Don't assume ':' means slash on all DOS filenames; 74355357Sobrien it means it only in the file prefix. 74455357Sobrien 74555357Sobrien * src/system.h (strerror): Check for negative error numbers. 74655357Sobrien (is_EISDIR): Depend on D_OK, not O_BINARY. 74755357Sobrien (SET_BINARY): Depend on HAVE_SETMODE, not __DJGPP__. 74855357Sobrien (IS_SLASH, FILESYSTEM_PREFIX_LEN): Depend on HAVE_DOS_FILE_NAMES, 74955357Sobrien not O_BINARY. 75055357Sobrien (CHAR_BIT): New macro. 75155357Sobrien 75255357Sobrien * src/dosbuf.c (struct dos_map): 75355357Sobrien pos and add members are now of type off_t. 75455357Sobrien (dos_stripped_crs): Now of type off_t. 75555357Sobrien (dossified_pos): Now accepts arg and returns value of type off_t. 75655357Sobrien 75755357Sobrien * configure.in (AC_CHECK_FUNCS): Add setmode. 75855357Sobrien (HAVE_DOS_FILENAMES): New macro 75955357Sobrien 76055357Sobrien1998-11-27 Eli Zaretskii 76155357Sobrien 76255357Sobrien * djgpp/config.sed: New file, a Sed script to edit configure 76355357Sobrien script before running it on DOS/Windows. 76455357Sobrien * djgpp/config.bat: Updated to handle po2tbl.sed.in and 76555357Sobrien po/Makefile.in.in on DOS filesystems, and to run config.sed. 76655357Sobrien 76755357Sobrien1998-11-24 Jim Meyering 76855357Sobrien 76955357Sobrien * src/grep.c : Typo s/infalid/invalid/ 77055357Sobrien Also noted by Stanislav Brabec. 77155357Sobrien 77255357Sobrien1998-11-24 Eli Zaretskii 77355357Sobrien 77455357Sobrien * doc/grep.texi: I found and corrected several typos. 77555357Sobrien I believe the GNU standards require the section that describes the 77655357Sobrien options to the programs to be called ``Invoking'' or ``Invoking 77755357Sobrien <program-name>''. This is so users and programs can easily find 77855357Sobrien that node in any Info file. So I changed the name of the 77955357Sobrien `Options' chapter to `Invoking', and corrected the 78055357Sobrien cross-references accordingly. 78155357Sobrien I added some markup to things like file names and options. 78255357Sobrien I added some additional index entries where that seemed useful. 78355357Sobrien I also corrected some index entries, such as "@cindex [:alnum:]", 78455357Sobrien which used a colon in them (the colons confuse Info readers). 78555357Sobrien 78655357Sobrien1998-11-24 Alain Magloire 78755357Sobrien 78855357Sobrien * grep/doc/grep.texi : -h is not use for help. 78955357Sobrien Nit spotted by Jim Meyering. 79055357Sobrien 79155357Sobrien1998-11-23 Alain Magloire 79255357Sobrien 79355357Sobrien * doc: New directory, grep.1, {e,f}grep.man move here 79455357Sobrien * doc/grep.texi: New info manual 79555357Sobrien * doc/version.texi: New 79655357Sobrien * doc/Makefile.am: New 79755357Sobrien * tests/{ere,bre}.*: New files. The spencer2 test is split 79855357Sobrien in two ere/bre. 79955357Sobrien * config.hin: New, config.h.in rename to config.hin for OS 80055357Sobrien with limited file system aka DOS. 80155357Sobrien 80255357Sobrien * grep-2.2d release for beta. 80355357Sobrien 80455357Sobrien1998-11-18 Alain Magloire 80555357Sobrien 80655357Sobrien * src/regex.[ch] : Updated from GLibc, previous patches were 80755357Sobrien integrate by Ulrich Drepper and some added ones. 80855357Sobrien 80955357Sobrien1998-11-16 Paul Eggert 81055357Sobrien 81155357Sobrien * grep.h (__attribute__): New macro, if not GCC. 81255357Sobrien (fatal): Add __attribute__((noreturn)). 81355357Sobrien * grep.c (usage): Add __attribute__((noreturn)). 81455357Sobrien 81555357Sobrien1998-11-16 Paul Eggert 81655357Sobrien 81755357Sobrien Remove memory leak with valloced buffers, by invoking malloc instead. 81855357Sobrien 81955357Sobrien * configure.in (AC_CHECK_FUNCS), src/system.h (valloc): Remove. 82055357Sobrien * src/grep.c (page_alloc): New function. 82155357Sobrien (ubuffer, pagesize): New vars. 82255357Sobrien (ALIGN_TO): New macro. 82355357Sobrien (reset): Initialize new vars. Check for overflow in buffer size calc. 82455357Sobrien Use page_alloc instead of valloc. 82555357Sobrien (fillbuf): Likewise. Use memcpy to copy saved area. 82655357Sobrien 82755357Sobrien1998-11-15 Paul Eggert 82855357Sobrien 82955357Sobrien * dfa.c (dfacomp), search.c (EGexecute): Don't assume char is unsigned. 83055357Sobrien 83155357Sobrien1998-11-14 Paul Eggert 83255357Sobrien 83355357Sobrien * src/grep.c (grepdir): Fix bug: memory freed twice. 83455357Sobrien 83555357Sobrien * src/search.c (Gcompile, Ecompile): Don't invoke dfainit, 83655357Sobrien since dfacomp does it for us, and if we also do it then we 83755357Sobrien leak memory. 83855357Sobrien 83955357Sobrien1998-11-13 Eli Zaretskii 84055357Sobrien 84155357Sobrien * djgpp/config.bat: Rewrite to run the configure script via Bash. 84255357Sobrien * djgpp/config.site, djgpp/getconf: New files. 84355357Sobrien * djgpp/config.h, djgpp/*.mak, djgpp/po2tbl.sed: Remove. 84455357Sobrien * djgpp/README: Update instructions. 84555357Sobrien 84655357Sobrien * Makefile.am (EXTRA_DIST): Update the list of DJGPP files. 84755357Sobrien 84855357Sobrien * src/system.h (IS_SLASH): New macro. 84955357Sobrien (is_EISDIR): Define it here for DOS and Windows. 85055357Sobrien 85155357Sobrien * src/grep.c (main) [O_BINARY]: Set stdout to binary mode, so the 85255357Sobrien EOL formats of the input and output files match, unless stdout is 85355357Sobrien the console device. 85455357Sobrien (is_EISDIR): Don't define if already defined. Accept a second 85555357Sobrien argument, the file name; all callers changed. 85655357Sobrien (grepdir): Don't free `file', inside the loop. Use IS_SLASH to 85755357Sobrien check whether `dir' needs a slash. 85855357Sobrien (grepfile): If file is a directory, set e to EISDIR. 85955357Sobrien 86055357Sobrien1998-11-10 Alain Magloire 86155357Sobrien 86255357Sobrien * src/vms_fab.{c,h}: New file for VMS wildcard expansion 86355357Sobrien Written by Phillip C. Brisco. 86455357Sobrien 86555357Sobrien * vms/make.com : add line to compile vms_fab.c and 86655357Sobrien {e,f,}grepmat.c with link for each grep/fgrep/egrep. 86755357Sobrien Base on patch send by Phillib C. Brisco. 86855357Sobrien 86955357Sobrien1998-11-09 Alain Magloire 87055357Sobrien 87155357Sobrien * grep-2.2c on alpha for testing. 87255357Sobrien 87355357Sobrien1998-11-09 Paul Eggert 87455357Sobrien 87555357Sobrien * src/grep.1: Fix `Last Change' of output by generating the date 87655357Sobrien from the RCS Id. 87755357Sobrien 87855357Sobrien * src/grep.c (is_EISDIR): New macro. 87955357Sobrien (grep): If -s, suppress errors from trying to read directories. 88055357Sobrien (grepfile): Use is_EISDIR to simplify code. 88155357Sobrien (grepdir): If -s, suppress errors from trying to read directories. 88255357Sobrien 88355357Sobrien * src/grep.1: Fix -q -r -s problems; describe BSD grep better. 88455357Sobrien 88555357Sobrien * src/grep.c (main): Update copyright. 88655357Sobrien 88755357Sobrien Specify default matcher with default_matcher extern var, not 88855357Sobrien DEFAULT_MATCHER macro. This is more straightforward and means 88955357Sobrien we need to compile grep.c just once. 89055357Sobrien 89155357Sobrien * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c: New files. 89255357Sobrien 89355357Sobrien * src/Makefile.am (base_sources): New macro. 89455357Sobrien (egrep_SOURCES, fgrep_SOURCES, grep_SOURCES): Now consist of 89555357Sobrien $(base_sources) plus the single tailoring file. 89655357Sobrien (grep_LDADD, egrep_LDADD, fgrep_LDADD): Remove. 89755357Sobrien (EXTRA_DIST): Remove grep.c, regex.c. 89855357Sobrien (fgrep.o, egrep.o): Remove. 89955357Sobrien 90055357Sobrien * src/grep.h (matcher): Now char const *. 90155357Sobrien (default_matcher): New decl. 90255357Sobrien 90355357Sobrien * src/grep.c (matcher): Now char const *. 90455357Sobrien (setmatcher): Now accepts char const *. 90555357Sobrien (main): Default the matcher from default_matcher (linked externally) 90655357Sobrien rather than DEFAULT_MATCHER (a macro). 90755357Sobrien 90855357Sobrien1998-11-08 Alain Magloire 90955357Sobrien 91055357Sobrien * src/grep.1: `prep.ai.mit.edu' should be replaced with `gnu.org'. 91155357Sobrien Nit from Paul Eggert. 91255357Sobrien 91355357Sobrien1998-11-06 Alain Magloire 91455357Sobrien 91555357Sobrien * src/grep.c: The Matcher is not set to argv[0] but 91655357Sobrien explicitly by a #define MATCHER at compile time default is "grep". 91755357Sobrien 91855357Sobrien * aclocal/: NEW dir. provides our own *.m4 91955357Sobrien 92055357Sobrien * configure.in: Move Paul's Large Files to AC_LFS.(aclocal/lfs.m4) 92155357Sobrien Taken from Jim Meyering fileutils. 92255357Sobrien 92355357Sobrien1998-11-05 Alain Magloire 92455357Sobrien 92555357Sobrien * src/grep.1: update the man pages according to the 92655357Sobrien changes make by Miles. 92755357Sobrien 92855357Sobrien * po/*.po: updated. 92955357Sobrien 93055357Sobrien * first beta release for 2.3 (2.2a). 93155357Sobrien 93255357Sobrien1998-11-04 Miles Bader 93355357Sobrien 93455357Sobrien * src/grep.c (main): Rationalize interaction of -C/-NUM/-A/-B 93555357Sobrien options, and allow -C to have an optional argument. -NUM can 93655357Sobrien now be mixed with -C, and -A, -B always take precedence over 93755357Sobrien -C/-NUM, regardless of order. 93855357Sobrien (long_options): Let -C/--context take an optional argument. 93955357Sobrien 94055357Sobrien1998-11-03 Alain Magloire 94155357Sobrien 94255357Sobrien * src/dfa.c: HP-UX define clrbit/setbit as macros in <sys/param.h> 94355357Sobrien #undef if defined. 94455357Sobrien Fixed by Andreas Ley and Philippe Defert. 94555357Sobrien 94655357Sobrien * src/grep.1 : mention that -s follows POSIX.2 behavior. 94755357Sobrien Noted by Paul Eggert and others. 94855357Sobrien 94955357Sobrien * tests/khadafy.sh: a typo in failure(s). 95055357Sobrien Spotted By Sotiris Vassilopoulos. 95155357Sobrien 95255357Sobrien1998-11-01 Paul Eggert 95355357Sobrien 95455357Sobrien * src/system.h (IN_CTYPE_DOMAIN): New macro. 95555357Sobrien (ISALPHA, ISUPPER, ISLOWER, ISDIGIT, ISXDIGIT, ISSPACE, 95655357Sobrien ISPUNCT, ISALNUM, ISPRINT, ISGRAPH, ISCNTRL): Use 95755357Sobrien IN_CTYPE_DOMAIN instead of isascii. 95855357Sobrien 95955357Sobrien1998-08-18 Paul Eggert 96055357Sobrien 96155357Sobrien Add support for new -r or --recursive (or -d recurse or 96255357Sobrien --directories=recurse) option. 96355357Sobrien 96455357Sobrien * src/Makefile.am (grep_SOURCES): Add savedir.c, savedir.h, stpcpy.c. 96555357Sobrien 96655357Sobrien * src/grep.1: Describe new options. 96755357Sobrien 96855357Sobrien * src/grep.c: Include "savedir.h". 96955357Sobrien (long_options): Add -r or --recursive. 97055357Sobrien (RECURSE_DIRECTORIES): New enum value. 97155357Sobrien (IS_DIRECTORY_ERRNO): Remove. 97255357Sobrien (reset, grep): Add file name arg. 97355357Sobrien (grepdir, grepfile): New functions. 97455357Sobrien (initial_bufoffset): New var. 97555357Sobrien (reset): Initialize it. 97655357Sobrien (fillbuf): Use it. 97755357Sobrien (count_matches, list_files, no_filenames, suppress_errors): New static 97855357Sobrien vars; formerly were local to `main'. 97955357Sobrien (grep): Recurse through directories if the user asks for this. 98055357Sobrien (usage, main): Add new options. 98155357Sobrien (main): Change some local vars to be static, as described above. 98255357Sobrien Move most of the guts into grepfile function. 98355357Sobrien so that it can be recursed through. 98455357Sobrien 98555357Sobrien * configure.in (AC_HEADER_DIRENT, AC_FUNC_CLOSEDIR_VOID): Add. 98655357Sobrien (AC_REPLACE_FUNCS): Add stpcpy. 98755357Sobrien 98855357Sobrien * src/savedir.c, src/savedir.h, src/stpcpy.c: New files; 98955357Sobrien taken from fileutils 3.16u. 99055357Sobrien 99155357Sobrien1998-08-11 Paul Eggert 99255357Sobrien 99355357Sobrien * src/system.h (initialize_main): New macro. 99455357Sobrien * src/grep.c (main): Invoke initialize_main first thing. 99555357Sobrien 99655357Sobrien1998-04-29 Paul Eggert 99755357Sobrien 99855357Sobrien * NEWS, src/grep.1: Describe new -a and -d options. 99955357Sobrien 100055357Sobrien * src/grep.c (long_options, usage, main): 100155357Sobrien New options -d or --directories and -a or --text. 100255357Sobrien (directories, always_text): New variables. 100355357Sobrien (IS_DIRECTORY_ERRNO): New macro. 100455357Sobrien (reset): Now returns value specifying whether to skip this file. 100555357Sobrien Stat the file if either mmap or directory-skipping is possible. 100655357Sobrien Skip the file if it's a directory and we're skipping directories. 100755357Sobrien (grep): Skip the file if `reset' tells us to. 100855357Sobrien (main): If open fails because the file is a directory, and if we're 100955357Sobrien skipping directories, don't report an error. 101055357Sobrien Remove special case for DOS and Windows. 101155357Sobrien 101255357Sobrien * src/dosbuf.c (guess_type): Use the same method for guessing whether a 101355357Sobrien file is binary as grep.c's grep does. 101455357Sobrien There's no longer any need to declare `bp' to be unsigned. 101555357Sobrien 101655357Sobrien1998-04-26 Alain Magloire 101755357Sobrien 101855357Sobrien * grep-2.2 release. 101955357Sobrien 102055357Sobrien * src/dfa.c: Wrong revision was pulled out 102155357Sobrien for beta 2.1.1d. 102255357Sobrien * src/search.c: Wrong revision was pulled out 102355357Sobrien for beta 2.1.1d. 102455357Sobrien 102555357Sobrien * src/grep.c: ck_atoi () added instead of atoi (). 102655357Sobrien Suggestion from Jim Meyering. 102755357Sobrien ck_atoi () pulled from diffutils-2.7, maintained by Paul Eggert. 102855357Sobrien 102955357Sobrien * AUTHORS: Rephrase of some sentences. 103055357Sobrien * README: Rewording. 103155357Sobrien Noted and patched by Joel N. Weber II. 103255357Sobrien 103355357Sobrien1998-04-17 Kaveh R. Ghazi 103455357Sobrien 103555357Sobrien * src/dfa.h: Don't define `const', trust autoconf to handle it. 103655357Sobrien 103755357Sobrien1998-04-16 Alain Magloire 103855357Sobrien 103955357Sobrien * tests/{status,empty}.sh: wrong return status. 104055357Sobrien 104155357Sobrien * src/grep.c: Remove the REGEX part in usage (), it was 104255357Sobrien consider overkill by most. 104355357Sobrien 104455357Sobrien1998-04-14 Eli Zaretskii 104555357Sobrien 104655357Sobrien * djgpp/config.bat: Support file names with multiple dots on all 104755357Sobrien platforms. 104855357Sobrien 104955357Sobrien * djgpp/README: Add instructions about file names illegal on 105055357Sobrien MS-DOS. 105155357Sobrien 105255357Sobrien1998-04-13 Alain Magloire 105355357Sobrien 105455357Sobrien * src/dfa.c: by "popular" demand reverse 105555357Sobrien back to '_' not word-constituent. 105655357Sobrien 105755357Sobrien * grep-2.1.1c available for testing. 105855357Sobrien 105955357Sobrien1998-04-13 Karl Heuer 106055357Sobrien 106155357Sobrien * src/grep.c: (a) The directory check is done too early: 106255357Sobrien logically, if the argument is "-", then it refers to standard 106355357Sobrien input, regardless of whether there's something in the file 106455357Sobrien system answering to "-". 106555357Sobrien (b) The sh command "grep -l root /etc/passwd /etc/group 0<&-" 106655357Sobrien prints "(standard input)" instead of "/etc/passwd", because it 106755357Sobrien mistakenly believes that a named file will never be opened on fd 106855357Sobrien 0. The string "(standard input)" should be based on the file 106955357Sobrien having been originally specified as "-", rather than making 107055357Sobrien assumptions about the fd. 107155357Sobrien (c) the code that calls close(fd) is being done outside of the 107255357Sobrien test for a bad fd. Thus, if the open failed, this code will 107355357Sobrien attempt to close(-1). It should be done inside the "fd != -1" 107455357Sobrien branch. 107555357Sobrien This patch addresses all three of these problems. 107655357Sobrien 107755357Sobrien1998-04-13 Alain Magloire 107855357Sobrien 107955357Sobrien * configure.in: remove the deprecated AC_ISC_POSIX macro. 108055357Sobrien Spotted by Karl Heuer. 108155357Sobrien 108255357Sobrien1998-04-03 Eli Zaretskii 108355357Sobrien 108455357Sobrien * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated from the 108555357Sobrien relevant Makefile.in files. 108655357Sobrien 108755357Sobrien * djgpp/config.bat: Create files in intl directory like the 108855357Sobrien configure script does. 108955357Sobrien 109055357Sobrien1998-03-28 Eli Zaretskii 109155357Sobrien 109255357Sobrien * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated to track 109355357Sobrien changes in respective Makefile.in files. 109455357Sobrien 109555357Sobrien * src/dosbuf.c (guess_type): Avoid running off the end of the 109655357Sobrien buffer. Spotted by Paul Eggert. 109755357Sobrien 109855357Sobrien1998-03-27 Alain Magloire 109955357Sobrien 110055357Sobrien * grep-2.1.1b.tar.gz available. 110155357Sobrien 110255357Sobrien * src/regex.c: CLASS_CHAR_MAX set to 256 instead of 6 110355357Sobrien when WCTYPE and WCHAR are not defined. When class names 110455357Sobrien where bigger then 6, it will not detect an error. 110555357Sobrien example '[[:alphabet:]]'. 110655357Sobrien 110755357Sobrien * Updated the copyright of the files with emacs. 110855357Sobrien With emacs Jim :). 110955357Sobrien 111055357Sobrien1998-03-26 Jim Meyering 111155357Sobrien 111255357Sobrien * src/dfa.c (IS_WORD_CONSTITUENT): Define. 111355357Sobrien (lex): Use IS_WORD_CONSTITUENT, not ISALNUM. 111455357Sobrien Don't special-case '_'. 111555357Sobrien (dfastate): Use IS_WORD_CONSTITUENT, not ISALNUM. 111655357Sobrien (dfaexec): Likewise. 111755357Sobrien 111855357Sobrien1998-03-25 Alain Magloire 111955357Sobrien 112055357Sobrien * tests/warning.sh: typos and replace the echos with 112155357Sobrien a simple cat. 112255357Sobrien Noted By Jim Meyering. 112355357Sobrien 112455357Sobrien * src/regex.c: #undef ISASCII and ISPRINT before defining 112555357Sobrien them(On Solaris it was define). 112655357Sobrien Pattern 'a[[:]:]]b' is an invalid char class and the error 112755357Sobrien from regex was 1(REG_NOMATCH) instead of 2 (REG_ECTYPE). 112855357Sobrien Fix with help from Ulrich Drepper. 112955357Sobrien 113055357Sobrien * src/grep.c (usage): Ulrich wrote: "A single printf should 113155357Sobrien not have more than 900 bytes. For translation reasons the 113255357Sobrien text shouldn't be split in too many pieces since this is 113355357Sobrien tiresome and also does not help to generate a consistent picture." 113455357Sobrien Noted by Ulrich Drepper. 113555357Sobrien * src/grep.c (usage): Dig out and old patch from 113655357Sobrien Franc,ois to explain the regex in usage(). 113755357Sobrien Ideas from Franc,ois Pinard. 113855357Sobrien 113955357Sobrien1998-03-23 Alain Magloire 114055357Sobrien 114155357Sobrien * testing: grep-2.1.1a for testing. 114255357Sobrien 114355357Sobrien * configure.in: Solaris needs '-lw' if we use wchar/wctype 114455357Sobrien functions. 114555357Sobrien * src/btowc.c: New file from GNU libc. Solaris 2.5 don't 114655357Sobrien have it define. 114755357Sobrien * configure.in : check for btowc (). 114855357Sobrien 114955357Sobrien * regex.c: Include <wchar.h> before <wctype.h>, to work around 115055357Sobrien a Solaris 2.5 bug. 115155357Sobrien Patch provided by Paul Eggert. 115255357Sobrien 115355357Sobrien * tests/status.sh: new file to check return status code. 115455357Sobrien * tests/empty.sh: new file to check for empty pattern. 115555357Sobrien * tests/warning.sh: new file to tell where to report errors. 115655357Sobrien 115755357Sobrien * configure.in: If available, prefer support for large files 115855357Sobrien unless the user specified one of the CPPFLAGS, LDFLAGS, or LIBS 115955357Sobrien variables. 116055357Sobrien Done by Paul Eggert. 116155357Sobrien 116255357Sobrien * src/grep.c (usage): change prep.ai.mit.edu for gnu.org. 116355357Sobrien 116455357Sobrien1998-03-18 Alain Magloire 116555357Sobrien 116655357Sobrien * src/grep.c (usage): Formating the --help message a bit off. 116755357Sobrien Noted by William Bader. 116855357Sobrien 116955357Sobrien * src/grep.c (main): When checking conflicting matcher for option -E the 117055357Sobrien matcher was to "egrep" instead of "posix-egrep". 117155357Sobrien Reported by kwzh@gnu.org. 117255357Sobrien 117355357Sobrien * src/grep.c: Typos and rewording the --help message. 117455357Sobrien Reported by Karl Heuer. 117555357Sobrien 117655357Sobrien * src/grep.1: The man page wording : 117755357Sobrien A regular expression matching a single character may be 117855357Sobrien followed by one of several repetition operators: 117955357Sobrien is unclear since 'x(yz)*z' is a valid regex. 118055357Sobrien Remove the "matching a single character". 118155357Sobrien Suggested by Harald Hanche-Olsen. 118255357Sobrien 118355357Sobrien * src/grep.c (main): `-f /dev/null' now specifies no patterns 118455357Sobrien and therfore matches nothing. 118555357Sobrien Reported by Jorge Stolfi. 118655357Sobrien Patched by Paul Eggert. 118755357Sobrien 118855357Sobrien1998-03-10 Alain Magloire 118955357Sobrien 119055357Sobrien * Ice storm 98(el nino). Lost grep repository disk, 119155357Sobrien and my $HOME directory, etc .. 119255357Sobrien Trying to get the emails/patch from dejanews.com 119355357Sobrien and start from grep-2.1. 119455357Sobrien sigh .... 119555357Sobrien 119655357Sobrien1997-11-01 Alain Magloire 119755357Sobrien 119855357Sobrien * src/grep.c: For the long options, the problems are: 119955357Sobrien --file appears in the option table as 'no_argument' 120055357Sobrien instead of 'required_argument'. 120155357Sobrien --files-with-matches is missing from the option table. 120255357Sobrien The help lists '--fixed-strings' as the long option for -F, 120355357Sobrien the table has '--fixed-regexp'. 120455357Sobrien --regexp appears in the option table as 'no_argument' 120555357Sobrien instead of 'required_argument'. 120655357Sobrien --with-filename is missing from the option table. 120755357Sobrien Reported by Grant McDorman and Krishna Sethuraman. 120855357Sobrien 120955357Sobrien1997-10-19 Alain Magloire 121055357Sobrien 121155357Sobrien * src/grep.c: the option "with-filename was not in the arg table. 121255357Sobrien Corrected by Jim Hand. 121355357Sobrien 121455357Sobrien * GNU gettext library from gettext-0.10.32. 121555357Sobrien 121655357Sobrien * src/grep.c: reverse back to greping directories, 121755357Sobrien One could skip the error message by defining 121855357Sobrien SKIP_DIR_ERROR. There is no clear way of doing 121955357Sobrien things, I hope to setle this on the next majore release 122055357Sobrien Thanks Paul Eggert, Eli Zaretskii and gnits for the 122155357Sobrien exchange. 122255357Sobrien 122355357Sobrien * tests/status.sh: add this check to make sure 122455357Sobrien That the return status code is ok. 122555357Sobrien 122655357Sobrien1997-10-10 Andreas Schwab 122755357Sobrien 122855357Sobrien * src/grep.1: Fix formatting. 122955357Sobrien 123055357Sobrien * configure.in: Check for wctype.h, wchar.h, libintl.h and 123155357Sobrien isascii, which are needed for regex.c. 123255357Sobrien 123355357Sobrien1997-10-01 Paul Eggert 123455357Sobrien 123555357Sobrien * src/grep.c (fillbuf): Don't warn about mmap failures. 123655357Sobrien 123755357Sobrien1997-09-7 Alain Magloire 123855357Sobrien 123955357Sobrien * src/grep.c: added code for -H --with-filename. 124055357Sobrien 124155357Sobrien * djgpp/*: patch wrongly apply 124255357Sobrien duplication of text in djgpp/{README,config.h}. 124355357Sobrien Filter djgpp/config.bat with unix2dos. 124455357Sobrien 124555357Sobrien * djgpp/make.mak: beautify 124655357Sobrien From Eli Zaretskii. 124755357Sobrien 124855357Sobrien * grep-2.1 release. 124955357Sobrien 125055357Sobrien1997-09-01 Alain Magloire 125155357Sobrien 125255357Sobrien * grep-2.0f out for testing. 125355357Sobrien 125455357Sobrien * update to GNU gettext library from gettext-0.10.31 125555357Sobrien 125655357Sobrien * grep.c : have a nicer format for --version. 125755357Sobrien Noted by Ulrich Drepper. 125855357Sobrien 125955357Sobrien * obstack.[ch]: updated from GNU C library 126055357Sobrien * configure.in: look for stdlib.h [HAVE_STDLIB_H] 126155357Sobrien Comments from Ulrich Drepper. 126255357Sobrien 126355357Sobrien1997-08-25 Philippe De Muyter <phdm@info.ucl.ac.be> 126455357Sobrien 126555357Sobrien * src/dfa.c (sys/types.h): File included unconditionnaly. 126655357Sobrien 126755357Sobrien1997-08-16 Eli Zaretskii <eliz@is.elta.co.il> 126855357Sobrien 126955357Sobrien * grep.c (long_options) [O_BINARY]: Add DOS-specific options. 127055357Sobrien (fillbuf) [O_BINARY]: For DOS-style text files, strip CR 127155357Sobrien characters at end of line. 127255357Sobrien (prline) [O_BINARY]: Report correct byte offsets, even though CR 127355357Sobrien characters were stripped when reading the file. 127455357Sobrien (usage) [O_BINARY]: Add DOS-specific options. 127555357Sobrien (setmatcher) [HAVE_SETRLIMIT]: Set re_max_failures so that the 127655357Sobrien matcher won't ever overflow the stack. 127755357Sobrien (main) [__MSDOS__, _WIN32]: Handle backslashes and drive letters 127855357Sobrien in argv[0], remove the .exe suffix, and downcase the prgram name. 127955357Sobrien [O_BINARY]: Pass additional DOS-specific options to getopt_long 128055357Sobrien and handle them. Call stat before attempting to open the file, in 128155357Sobrien case it is a directory (DOS will fail the open call for 128255357Sobrien directories). Switch the input descriptor to binary mode, unless 128355357Sobrien it is a terminal device. 128455357Sobrien 128555357Sobrien * system.h [O_BINARY]: Define macros to switch a handle to binary 128655357Sobrien mode, so binary files could be grep'ed on MS-DOS and MS-Windows. 128755357Sobrien [HAVE_SETLOCALE]: Test for HAVE_SETLOCALE instead of 128855357Sobrien HAVE_LC_MESSAGES, to prevent compilation error in grep.c on 128955357Sobrien systems which don't define HAVE_LC_MESSAGES, but have setlocale. 129055357Sobrien 129155357Sobrien * dosbuf.c: New file, functions specific for MS-DOS/MS-Windows. 129255357Sobrien (guess_type, undossify_input, dossified_pos): New functions. 129355357Sobrien 129455357Sobrien * djgpp/config.h, djgpp/config.bat, djgpp/main.mak, djgpp/src.mak, 129555357Sobrien djgpp/po.mak, djgpp/intl.mak, djgpp/tests.mak, djgpp/po2tbl.sed: 129655357Sobrien New files, for building Grep with DJGPP tools for MS-DOS and 129755357Sobrien MS-Windows. 129855357Sobrien 129955357Sobrien * grep.1: Document DOS-specific switches. 130055357Sobrien 130155357Sobrien1997-08-08 Alain Magloire 130255357Sobrien 130355357Sobrien * grep-2.0e: available for testing 130455357Sobrien 130555357Sobrien * grep.c: change LC_MESSAGE to LC_ALL for (LC_CTYPE). 130655357Sobrien Suggested by Jochen Hein. 130755357Sobrien 130855357Sobrien * ABOUT-NLS: updated. 130955357Sobrien * grep.c: --version: more verbosity (COPYRIGHT). 131055357Sobrien * grep.c: --help: PATTERN, FILE instead of <pattern>, <file>. 131155357Sobrien * INSTALL.grep: not necessary removed. 131255357Sobrien * configure.in: --disable-regex rename --without-include-regex. 131355357Sobrien * THANKS: format: first row name, second email. 131455357Sobrien * ChangeLog: format ISO 8601. 131555357Sobrien Reported by Franc,ois Pinard. 131655357Sobrien 131755357Sobrien * grep.c: move dcl of struct stat st into "else" where it's used. 131855357Sobrien Reported by Jim Meyering. 131955357Sobrien 132055357Sobrien * grep.c: totalnl should be %u in printf. 132155357Sobrien Reported by Michael Aichlmay 132255357Sobrien Corrected with guidance from Ulrich Drepper 132355357Sobrien 132455357Sobrien1997-07-24 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 132555357Sobrien 132655357Sobrien * Makefile.am: corrected an error when installing {f,e}grep.1. 132755357Sobrien From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. 132855357Sobrien From Ulrich Drepper <drepper@cygnus.com>. 132955357Sobrien 133055357Sobrien * Many files: use PARAMS instead of __STDC__ for prototypes. 133155357Sobrien From Jim Meyering <meyering@eng.ascend.com>. 133255357Sobrien Patch provided by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. 133355357Sobrien 133455357Sobrien * dfa.[ch]: uses the one in gawk-3.0.3 with the patch from 133555357Sobrien Arnold (see Changelog: July 12 1997) 133655357Sobrien 133755357Sobrien * grep.1: a note to say -l, -L, -q stop on first match. 133855357Sobrien Noted by Andrew Beattie <gaffer@tug.com>. 133955357Sobrien 134055357Sobrien * grep.c: refuse to scan if the file is a directory. 134155357Sobrien This was causing problems on SUNs. If the directory contains 134255357Sobrien a file that could match the pattern, garbage was display. 134355357Sobrien 134455357Sobrien * tests directory: added new set of tests from Henry Spencer 134555357Sobrien regex package. Change the way the tests were done to be more 134655357Sobrien conformant to automake. 134755357Sobrien 134855357Sobrien * configure.in: added --disable-regex for folks with their own fuctions. 134955357Sobrien 135055357Sobrien * grep-20d : available for testing 135155357Sobrien 135255357Sobrien1997-07-18 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 135355357Sobrien 135455357Sobrien * grep-2.0c: available for testing 135555357Sobrien 135655357Sobrien1997-07-17 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 135755357Sobrien 135855357Sobrien * src/grep.c: Cause grep to fail if `fclose (stdout)' fails. 135955357Sobrien From Jim Meyering <meyering@eng.ascend.com>. 136055357Sobrien 136155357Sobrien * grep.c:usage() more consistency in the --help. 136255357Sobrien 136355357Sobrien * egrep, fgrep were links This is in violation of GNU standards: 136455357Sobrien "Please don't make the behavior of a utility depend on the name used 136555357Sobrien to invoke it. It is useful sometimes to make a link to a utility with 136655357Sobrien a different name, and that should not change what it does." 136755357Sobrien For now egrep and fgrep will be copies of grep. A better scheme 136855357Sobrien should be found later. 136955357Sobrien After discussion with Tom Tromey <tromey@cygnus.com>. 137055357Sobrien 137155357Sobrien * fgrep.man and egrep.man included: They are stubs that call grep.1. 137255357Sobrien * Makefile.am: modified to install {f,e,}grep[,.1]. 137355357Sobrien 137455357Sobrien * speed hack for -l, -L: bail out on first match. 137555357Sobrien From Scott Weikart <scott@igc.apc.org>. 137655357Sobrien 137755357Sobrien * *.[ch]: provided prototypes for strict argument checking 137855357Sobrien With the help of Stewart Levin <stew@sep.stanford.edu>. 137955357Sobrien 138055357Sobrien1997-07-16 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 138155357Sobrien 138255357Sobrien * configure.in: typo in the creation of po/Makefile 138355357Sobrien Noted by Volker Borchert bt@teknon.de. 138455357Sobrien 138555357Sobrien * grep-2.0b: make it available for testing. 138655357Sobrien 138755357Sobrien1997-07-15 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 138855357Sobrien 138955357Sobrien * src/grep.c usage(): cut the --help in smaller printf()'s 139055357Sobrien Noted by Ulrich Drepper <drepper@cygnus.com>. 139155357Sobrien 139255357Sobrien1997-07-14 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 139355357Sobrien 139455357Sobrien * grep-2.0a: make an alpha available for testing. 139555357Sobrien 139655357Sobrien1997-07-12 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 139755357Sobrien 139855357Sobrien * run gettextize: added the po directory filled with *.po files. 139955357Sobrien 140055357Sobrien * check.sh, scriptgen.awk: fix grep paths. 140155357Sobrien 140255357Sobrien * change the directory strucure: grep is now in src to comply with 140355357Sobrien gettext.m4. 140455357Sobrien 140555357Sobrien * grep.c version.c [VERSION]: got rid of version.c, 140655357Sobrien it is now define via config.h. 140755357Sobrien 140855357Sobrien * dfa.c: patch to speed up initialization. 140955357Sobrien Arnold Robbins (arnold@gnu.ai.mit.edu). 141055357Sobrien 141155357Sobrien1997-07-09 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 141255357Sobrien 141355357Sobrien * *.c [HAVE_CONFIG_H]: Macro defined. 141455357Sobrien 141555357Sobrien * support for I18N in Makefile.am and configure.in. 141655357Sobrien 141755357Sobrien * update all the string to use gettext(I18N). 141855357Sobrien Help from Franc,ois Pinard previous patch <pinard@IRO.UMontreal.CA>. 141955357Sobrien 142055357Sobrien1997-07-04 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 142155357Sobrien 142255357Sobrien * obstack.[ch]: updated from glibc. 142355357Sobrien Work of Ulrich Drepper <drepper@cygnus.com>. 142455357Sobrien 142555357Sobrien * regex.[ch]: updated from glibc. 142655357Sobrien Work of Ulrich Drepper <drepper@cygnus.com>. 142755357Sobrien 142855357Sobrien * grep.c: for option -e not counting '\n' for new keys. 142955357Sobrien From Mark Waite <markw@mddmew.fc.hp.com>. 143055357Sobrien 143155357Sobrien * grep.c: for option -f allocating the right count. 143255357Sobrien From Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>. 143355357Sobrien Mike Heartel (mike@cs.uoregon.edu). 143455357Sobrien 143555357Sobrien * kwset.c (bmexec): Cast tp[-2] to unsigned char before comparing. 143655357Sobrien From Jim Meyering <meyering@asic.sc.ti.com>. 143755357Sobrien 143855357Sobrien * grep.1: various typos. 143955357Sobrien From Keith Bostic <bostic@bsdi.com>. 144055357Sobrien Mike Heartel (mike@cs.uoregon.edu). 144155357Sobrien 144255357Sobrien1997-06-17 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 144355357Sobrien 144455357Sobrien * grep.c: support for long options. 144555357Sobrien patch done by Franc,ois Pinard <pinard@IRO.UMontreal.CA>. 144655357Sobrien 144755357Sobrien * add getopt1.c in Makefile.am. 144855357Sobrien Noted by Franc,ois Pinard <pinard@IRO.UMontreal.CA> 144955357Sobrien 145055357Sobrien * replace getopt.[ch] and add getopt1.c. 145155357Sobrien 145255357Sobrien * kwset.c: undef malloc before define it. 145355357Sobrien Franc,ois Pinard <pinard@IRO.UMontreal.CA>. 145455357Sobrien 145555357Sobrien1997-06-07 Alain Magloire <alainm@rcsm.ee.mcgill.ca> 145655357Sobrien 145755357Sobrien * grep.c: format incorrect in 145855357Sobrien fprintf("%s: warning: %s: %s...", filename, strerror(errno)). 145955357Sobrien Mike Heartel (mike@cs.uoregon.edu). 146055357Sobrien 146155357Sobrien1996-11-19 David J MacKenzie <djm@catapult.va.pubnix.com> 146255357Sobrien 146355357Sobrien * make.com: Set the logical SYS. From rdb@cocamrd.oz.au (Rodney Brown). 146455357Sobrien 146555357Sobrien * grep.c (S_ISREG): Define if not defined already, for e.g. 146655357Sobrien SunOS 4.0.3. 146755357Sobrien 146855357Sobrien * dfa.c (test_bit, set_bit, clear_bit): Renamed from tstbit, 146955357Sobrien setbit, clrbit to avoid conflict with HP-UX sys/param.h macros. 147055357Sobrien 147155357Sobrien * memchr.c: New file, from GNU libc. 147255357Sobrien * grep.c (memchr): Remove definition. 147355357Sobrien * configure.in: Use AC_REPLACE_FUNCS for memchr. 147455357Sobrien 147555357Sobrien * configure.in: Remove unused checks for memalign and unsigned char. 147655357Sobrien * grep.c: HAVE_WORKING_MMAP -> HAVE_MMAP. 147755357Sobrien 147855357Sobrien * system.h: New file. 147955357Sobrien * dfa.c, kwset.c, grep.c, search.c: Use it instead of duplicating 148055357Sobrien portability boilerplate. 148155357Sobrien 148255357Sobrien * grep.c: Include sys/types.h once, instead of three times 148355357Sobrien conditionally. 148455357Sobrien * dfa.c, kwset.c, search.c: Include sys/types.h unconditionally, 148555357Sobrien to always try to get size_t (needed on some old SysV's). 148655357Sobrien 148755357Sobrien * dfa.c: Define strchr in terms of index, not the other way around. 148855357Sobrien * search.c: Use memcpy instead of bcopy. 148955357Sobrien 149055357Sobrien1996-11-15 David J MacKenzie <djm@catapult.va.pubnix.com> 149155357Sobrien 149255357Sobrien * Many files: Update FSF address. 149355357Sobrien Update configuration to use autoconf v2 and automake. 149455357Sobrien 149555357Sobrien1993-05-22 Mike Haertel <mike@cs.uoregon.edu> 149655357Sobrien 149755357Sobrien * Version 2.0 released. 1498