Blame ChangeLog-2009

Packit 709fb3
2009-11-26  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap.conf: Add binary-io, dirname.
Packit 709fb3
	* configure.ac: Remove check for setmode, AC_DOSFILE.
Packit 709fb3
	* m4/dosfile.m4: Remove.
Packit 709fb3
	* src/grep.c: Adjust for dirname.h.
Packit 709fb3
	* src/system.h: Adjust for new gnulib modules.
Packit 709fb3
Packit 709fb3
2009-11-26  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap.conf: Add gnulib modules for replacement functions and
Packit 709fb3
	headers.
Packit 709fb3
	* configure.ac: Remove macros subsumed by gnulib.
Packit 709fb3
	* lib/hard-locale.c: Remove guards for headers/functions provided by gnulib.
Packit 709fb3
	* lib/regex.c: Likewise.
Packit 709fb3
	* lib/savedir.c: Likewise.
Packit 709fb3
	* src/dfa.c: Likewise.
Packit 709fb3
	* src/grep.c: Likewise.
Packit 709fb3
	* src/mbsupport.h: Likewise.
Packit 709fb3
	* src/system.h: Likewise.
Packit 709fb3
Packit 709fb3
	* src/dfa.h: Do not look at PROTOTYPES.
Packit 709fb3
Packit 709fb3
	* m4/mbstate_t.m4: Remove.
Packit 709fb3
	* src/getpagesize.h: Remove.
Packit 709fb3
Packit 709fb3
2009-11-26  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap.conf: Add gnulib modules and build libgreputils.a.
Packit 709fb3
	* configure.ac: Remove macros subsumed by gnulib.
Packit 709fb3
	* lib/Makefile.am: Remove files subsumed by gnulib.
Packit 709fb3
	* lib/alloca.c: Remove.
Packit 709fb3
	* lib/atexit.c: Remove.
Packit 709fb3
	* lib/error.c: Remove.
Packit 709fb3
	* lib/error.h: Remove.
Packit 709fb3
	* lib/fnmatch.c: Remove.
Packit 709fb3
	* lib/fnmatch.h: Remove.
Packit 709fb3
	* lib/getopt.c: Remove.
Packit 709fb3
	* lib/getopt.h: Remove.
Packit 709fb3
	* lib/getopt1.c: Remove.
Packit 709fb3
	* lib/gettext.h: Remove.
Packit 709fb3
	* lib/malloc.c: Remove.
Packit 709fb3
	* lib/memchr.c: Remove.
Packit 709fb3
	* lib/obstack.c: Remove.
Packit 709fb3
	* lib/obstack.h: Remove.
Packit 709fb3
	* lib/quotearg.c: Remove.
Packit 709fb3
	* lib/quotearg.h: Remove.
Packit 709fb3
	* lib/realloc.c: Remove.
Packit 709fb3
	* lib/stpcpy.c: Remove.
Packit 709fb3
	* lib/strtol.c: Remove.
Packit 709fb3
	* lib/strtoul.c: Remove.
Packit 709fb3
	* lib/strtoull.c: Remove.
Packit 709fb3
	* lib/xalloc.h: Remove.
Packit 709fb3
	* lib/xmalloc.c: Remove.
Packit 709fb3
	* lib/xstrtol.c: Remove.
Packit 709fb3
	* lib/xstrtol.h: Remove.
Packit 709fb3
	* lib/xstrtoumax.c: Remove.
Packit 709fb3
	* m4/error.m4: Remove.
Packit 709fb3
	* m4/inttypes_h.m4: Remove.
Packit 709fb3
	* m4/malloc.m4: Remove.
Packit 709fb3
	* m4/realloc.m4: Remove.
Packit 709fb3
	* m4/uintmax_t.m4: Remove.
Packit 709fb3
	* m4/ulonglong.m4: Remove.
Packit 709fb3
	* m4/xstrtoumax.m4: Remove.
Packit 709fb3
	* src/system.h: Remove strerror, sys_nerr, sys_errlist.
Packit 709fb3
Packit 709fb3
2009-11-26  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap: Use gnulib's build-aux/bootstrap.
Packit 709fb3
	* configure.ac: Add gl_INIT and gl_EARLY.
Packit 709fb3
Packit 709fb3
2009-11-26  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac: Bump AC_PREREQ to 2.59.
Packit 709fb3
Packit 709fb3
2009-11-26  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* lib/savedir.c: Do not use NAMLEN.
Packit 709fb3
Packit 709fb3
2009-11-21  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac: Remove AC_SEP.
Packit 709fb3
	* m4/envsep.m4: Remove.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac: Do not generate lib/posix/Makefile.
Packit 709fb3
	* lib/Makefile.am: Remove SUBDIRS.
Packit 709fb3
	* lib/posix/Makefile.am: Remove.
Packit 709fb3
	* lib/posix/regex.h: Overwrite...
Packit 709fb3
	* lib/regex.h: ... this.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* doc/Makefile.am: Remove AUTOMAKE_OPTIONS.
Packit 709fb3
	* lib/posix/Makefile.am: Remove AUTOMAKE_OPTIONS.
Packit 709fb3
	* vms/Makefile.am: Remove AUTOMAKE_OPTIONS.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* Makefile.cvs: Remove.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* m4/largefile.m4: Remove.
Packit 709fb3
	* m4/lib-ld.m4: Remove.
Packit 709fb3
	* m4/lib-prefix.m4: Remove.
Packit 709fb3
	* m4/missing.m4: Remove.
Packit 709fb3
	* m4/nls.m4: Remove.
Packit 709fb3
	* m4/progtest.m4: Remove.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap: Add autopoint invocation and fetching of .po files.
Packit 709fb3
	* configure.ac: Bump to GNU gettext 0.17.
Packit 709fb3
Packit 709fb3
	* ABOUT-NLS: Remove.
Packit 709fb3
	* m4/gettext.m4: Remove.
Packit 709fb3
	* m4/iconv.m4: Remove.
Packit 709fb3
	* m4/lib-link.m4: Remove.
Packit 709fb3
	* m4/po.m4: Remove.
Packit 709fb3
	* po/*.po: Remove.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* autogen.sh: Rename to...
Packit 709fb3
	* bootstrap: ... this.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap/*: Remove.
Packit 709fb3
	* configure.ac: Do not create bootstrap/Makefile.
Packit 709fb3
	* Makefile.am: Do not recurse into bootstrap, distribute new files.
Packit 709fb3
	* Makefile.boot: Move from bootstrap/Makefile.try.
Packit 709fb3
	* README-boot: Move from bootstrap/README.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* lib/Makefile.am: Distribute gettext.h.
Packit 709fb3
	* lib/closeout.c: Use it.
Packit 709fb3
	* lib/gettext.h: New.
Packit 709fb3
	* lib/quotearg.c: Use it.
Packit 709fb3
	* lib/xmalloc.c: Use it.
Packit 709fb3
	* src/dfa.c: Use it.
Packit 709fb3
	* src/system.h: Use it.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac.in: Rename...
Packit 709fb3
	* configure.ac: ... to this.  Remove ALL_LINGUAS definition.
Packit 709fb3
	* autogen.sh: Generate po/LINGUAS instead of configure.ac.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac.in: Remove pointless (?) stamp-h rule.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac.in: Remove m4/Makefile creation.
Packit 709fb3
	* Makefile.am: Remove m4 subdirectory.
Packit 709fb3
	* m4/Makefile.am: Remove.
Packit 709fb3
	* m4/codeset.m4: Remove.
Packit 709fb3
	* m4/glibc.m4: Remove.
Packit 709fb3
	* m4/glibc21.m4: Remove.
Packit 709fb3
	* m4/header.m4: Remove.
Packit 709fb3
	* m4/install.m4: Remove.
Packit 709fb3
	* m4/isc-posix.m4: Remove.
Packit 709fb3
	* m4/lcmessage.m4: Remove.
Packit 709fb3
	* m4/sanity.m4: Remove.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac.in (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
Packit 709fb3
	* Makefile.am (EXTRA_DIST): Add build-aux/config.rpath.
Packit 709fb3
	* intl/*: Remove.
Packit 709fb3
	* m4/gettext.m4: Upgrade to gettext-0.17.
Packit 709fb3
	* m4/iconv.m4: Upgrade to gettext-0.17.
Packit 709fb3
	* m4/lib-ld.m4: New file, from gettext-0.17.
Packit 709fb3
	* m4/lib-link.m4: New file, from gettext-0.17.
Packit 709fb3
	* m4/lib-prefix.m4: New file, from gettext-0.17.
Packit 709fb3
	* m4/nls.m4: New file, from gettext-0.17.
Packit 709fb3
	* m4/po.m4: New file, from gettext-0.17.
Packit 709fb3
	* m4/progtest.m4: Upgrade to gettext-0.17.
Packit 709fb3
	* m4/Makefile.am (EXTRA_DIST): Add the new files.
Packit 709fb3
	* po/Makefile.in.in: Upgrade to gettext-0.17.
Packit 709fb3
	* po/Makevars: New.
Packit 709fb3
	* po/cat-id-tbl.c: New.
Packit 709fb3
	* src/Makefile.am: Replace @INTLLIBS@ with @LIBINTL@.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac.in: Test for limits.h, locale.h, stddef.h, mempcpy
Packit 709fb3
	and setlocale, though already done implicitly via AM_GNU_GETTEXT.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* bootstrap/Makefile.try: Adjust.
Packit 709fb3
	* lib/savedir.c: Avoid using stpcpy, so that bootstrapping does not
Packit 709fb3
	need it.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* configure.ac: Slightly modernize.
Packit 709fb3
	* Makefile.am: Modernize, use dependencies.
Packit 709fb3
	* Makefile.am: Modernize, use dependencies.
Packit 709fb3
	* lib/Makefile.am: Remove ansi2knr.
Packit 709fb3
	* src/Makefile.am: Remove ansi2knr.
Packit 709fb3
Packit 709fb3
	* .gitignore: Add INSTALL
Packit 709fb3
	* build-aux/.gitignore: New.
Packit 709fb3
Packit 709fb3
2009-11-20  Paolo Bonzini  <bonzini@gnu.org>
Packit 709fb3
Packit 709fb3
	* autogen.sh: Remove what is useless with git.
Packit 709fb3
Packit 709fb3
2009-02-10  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
	* po/*.po: update from the Translation Project
Packit 709fb3
Packit 709fb3
	* configure.ac.in: update version to 2.6-cvs
Packit 709fb3
Packit 709fb3
2009-02-02  Karl Berry  <karl@tug.org>
Packit 709fb3
Packit 709fb3
	* configure.ac.in (pcre): set CPPFLAGS, not CFLAGS.
Packit 709fb3
Packit 709fb3
2009-02-01  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
	* po/*.po: update from the Translation Project
Packit 709fb3
Packit 709fb3
	* po/Makefile.in.in: Remove deleted file ChangeLog from DISTFILES
Packit 709fb3
Packit 709fb3
	* configure.ac.in: Replace obsolete macro AC_OUTPUT with modern equivalent
Packit 709fb3
Packit 709fb3
2009-02-01  Karl Berry  <karl@tug.org>
Packit 709fb3
Packit 709fb3
	* missing: re-add (from gnulib), since it's missing.
Packit 709fb3
Packit 709fb3
	* src/grep.c (usage): consistent punctuation.
Packit 709fb3
Packit 709fb3
2009-01-31  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
	* m4/*.m4: quote underquoted definitions
Packit 709fb3
	* m4/codeset.m4: serial AM1 -> serial 1
Packit 709fb3
	* m4/iconv.m4: serial AM2 -> serial 2
Packit 709fb3
	* m4/header.m4: m4_regexp -> m4_bregexp, m4_patsubst -> m4_bpatsubst
Packit 709fb3
Packit 709fb3
2009-01-29  Karl Berry  <karl@gnu.org>
Packit 709fb3
Packit 709fb3
	* src/grep.c (usage): mention gnu.org/s/grep and gnu.org/gethelp.
Packit 709fb3
Packit 709fb3
        Update and/or add copyright notices:
Packit 709fb3
        * ABOUT-NLS
Packit 709fb3
        * AUTHORS
Packit 709fb3
        * ChangeLog
Packit 709fb3
        * Makefile.am
Packit 709fb3
        * NEWS
Packit 709fb3
        * README
Packit 709fb3
        * README-alpha
Packit 709fb3
        * README.DOS
Packit 709fb3
        * THANKS
Packit 709fb3
        * autogen.sh
Packit 709fb3
        * configure.ac.in
Packit 709fb3
        * bootstrap/Makefile.am
Packit 709fb3
        * bootstrap/Makefile.try
Packit 709fb3
        * bootstrap/README
Packit 709fb3
        * doc/Makefile.am
Packit 709fb3
        * doc/grep.texi
Packit 709fb3
        * lib/Makefile.am
Packit 709fb3
        * m4/Makefile.am
Packit 709fb3
        * po/POTFILES.in
Packit 709fb3
        * src/Makefile.am
Packit 709fb3
        * src/dfa.h
Packit 709fb3
        * src/dosbuf.c
Packit 709fb3
        * src/grep.h
Packit 709fb3
        * src/kwset.c
Packit 709fb3
        * src/kwset.h
Packit 709fb3
        * src/mbsupport.h
Packit 709fb3
        * src/search.c
Packit 709fb3
        * src/system.h
Packit 709fb3
        * src/vms_fab.c
Packit 709fb3
        * src/vms_fab.h
Packit 709fb3
        * tests/Makefile.am
Packit 709fb3
        * tests/backref.sh
Packit 709fb3
        * tests/bre.awk
Packit 709fb3
        * tests/bre.sh
Packit 709fb3
        * tests/empty.sh
Packit 709fb3
        * tests/ere.awk
Packit 709fb3
        * tests/ere.sh
Packit 709fb3
        * tests/file.sh
Packit 709fb3
        * tests/fmbtest.sh
Packit 709fb3
        * tests/foad1.sh
Packit 709fb3
        * tests/khadafy.sh
Packit 709fb3
        * tests/options.sh
Packit 709fb3
        * tests/pcre.sh
Packit 709fb3
        * tests/spencer1.awk
Packit 709fb3
        * tests/spencer1.sh
Packit 709fb3
        * tests/spencer2.sh
Packit 709fb3
        * tests/status.sh
Packit 709fb3
        * tests/tests
Packit 709fb3
        * tests/warning.sh
Packit 709fb3
        * tests/yesno.sh
Packit 709fb3
                * vms/Makefile.am
Packit 709fb3
        * vms/config_vms.h
Packit 709fb3
Packit 709fb3
        * po/ChangeLog: remove this file, just a bit of ancient cruft.
Packit 709fb3
Packit 709fb3
2009-01-25  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * README: updated "KNOWN BUGS" section
Packit 709fb3
Packit 709fb3
2009-01-24  Bruno Haible  <bruno@clisp.org>
Packit 709fb3
Packit 709fb3
        * lib/posix/regex.h (__restrict, __restrict_arr): Remove macros.
Packit 709fb3
          (_Restrict_, _Restrict_arr_): New macros. From gnulib/lib/regex.h.
Packit 709fb3
          (regcomp, regexec): Update declarations to use them.
Packit 709fb3
Packit 709fb3
        * lib/savedir.c (isdir): New declaration.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (update_mb_len_index): Change argument type to
Packit 709fb3
          'char const *'.
Packit 709fb3
          (match_mb_charset): Cast argument to strncpy.
Packit 709fb3
          (dfaexec): Add pointer cast.
Packit 709fb3
Packit 709fb3
        * src/grep.c (parse_grep_colors): Add braces for disambiguation.
Packit 709fb3
Packit 709fb3
        * src/kwset.c: Include xalloc.h instead of declaring xmalloc manually.
Packit 709fb3
Packit 709fb3
2009-01-20  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: disable tests that fail under cs_CZ.UTF-8.
Packit 709fb3
        * tests/fmbtest.sh: likewise
Packit 709fb3
        * README: added "KNOWN BUGS" section
Packit 709fb3
        * src/grep.c: updated copyright year
Packit 709fb3
Packit 709fb3
2008-12-12  Karl Berry  <karl@gnu.org>
Packit 709fb3
Packit 709fb3
        * doc/grep.texi (Exit Status, grep Programs): move these
Packit 709fb3
          nodes to under Invoking.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: remove all remaining node pointers;
Packit 709fb3
          downcase cindex entries.
Packit 709fb3
Packit 709fb3
2008-12-11  Karl Berry  <karl@gnu.org>
Packit 709fb3
Packit 709fb3
        * doc/grep.texi (Copying): update url's.
Packit 709fb3
          (GNU General Public License): remove node.
Packit 709fb3
          (GNU Free Documentation License): @include fdl.texi instead.
Packit 709fb3
          (@copying): update to v1.3 or later.
Packit 709fb3
        * doc/fdl.texi: new file, copied from
Packit 709fb3
          http://www.gnu.org/licenses/fdl.texi.
Packit 709fb3
        * doc/Makefile.am (grep_TEXINFOS): new variable to get fdl.texi.
Packit 709fb3
          Also add usual GPL license statement.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi (Index): Merge in Concept Index node,
Packit 709fb3
          to have only one index.  Arrange @syncodeindex's accordingly.
Packit 709fb3
Packit 709fb3
2008-12-10  Karl Berry  <karl@gnu.org>
Packit 709fb3
Packit 709fb3
        * doc/grep.texi (@copying): use @copying; move @contents to
Packit 709fb3
          beginning; rearrange other frontmatter in the conventional ways.
Packit 709fb3
Packit 709fb3
2008-06-15  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * src/ansi2knr.[1c]: Remove generated files (installed by
Packit 709fb3
          automake). Thanks to Emanuele Giaquinta for this.
Packit 709fb3
Packit 709fb3
2008-02-14  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c: Factor out copyright year in --version. Thanks to
Packit 709fb3
          Karl Berry for this.
Packit 709fb3
        * src/grep.c: Update copyright years
Packit 709fb3
Packit 709fb3
        * po/POTFILES.in: +src/system.h +lib/closeout.c +lib/regex.c
Packit 709fb3
          +lib/xmalloc.c -lib/getopt1.c
Packit 709fb3
Packit 709fb3
2008-02-09  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Replace a MALLOC and for loop with a CALLOC.  Thanks to
Packit 709fb3
          Johan Walles for this. Patch #6288
Packit 709fb3
Packit 709fb3
        * README-alpha: more info about CVS code
Packit 709fb3
        * README: pointer to README-alpha
Packit 709fb3
Packit 709fb3
        * src/grep.c: Update grep copyright year
Packit 709fb3
Packit 709fb3
2008-02-08  Reuben Thomas <rrt@sc3d.org> (tiny change)
Packit 709fb3
Packit 709fb3
        * .cvsignore: add configure.ac
Packit 709fb3
        * src/.cvsignore: add .deps
Packit 709fb3
Packit 709fb3
2008-02-06  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Comment out cases that are known to fail. These
Packit 709fb3
      should be uncommented after the 2.5.4 release.
Packit 709fb3
        * tests/yesno.sh: Likewise.
Packit 709fb3
        * doc/grep.1: Update description of -e PATTERN; from Benno Schulenberg
Packit 709fb3
        * doc/grep.texi: Likewise.
Packit 709fb3
Packit 709fb3
2007-11-19  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * m4/Makefile.am: Remove reference strerror_r.m4
Packit 709fb3
Packit 709fb3
2007-11-16  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * po/sk.po: updated from the translation project
Packit 709fb3
Packit 709fb3
2007-11-03  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * po/*.po: get latest translations
Packit 709fb3
        * po/no.po: removed
Packit 709fb3
        * po/ky.po: added
Packit 709fb3
        * po/sk.po: added
Packit 709fb3
Packit 709fb3
2007-10-10  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * configure.ac.in: update version to 2.6-dev
Packit 709fb3
Packit 709fb3
        * src/grep.c: update --version message
Packit 709fb3
Packit 709fb3
2007-10-07  Tony Abou-Assaleh <taa@acm.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c: When -h and -H are combined, use the last specified,
Packit 709fb3
          Bug #15620, Patch #4866
Packit 709fb3
        * tests/foad1.sh: add tests for -h and -H
Packit 709fb3
Packit 709fb3
        * ChangeLog: Add a copyright notice (years taken from commit logs),
Packit 709fb3
          add a license notice (taken from gnulib ChangeLog)
Packit 709fb3
Packit 709fb3
        * TODO: update the link to a list of other grep implementations
Packit 709fb3
Packit 709fb3
2007-06-29  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
Packit 709fb3
        * all files: GPLv3
Packit 709fb3
        * configure.ac.in: Change version number
Packit 709fb3
Packit 709fb3
2006-11-25  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
Packit 709fb3
        * configure.ac.in: Update version number for post-2.5.2 development
Packit 709fb3
Packit 709fb3
2006-11-25  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
Packit 709fb3
        * configure.ac.in, grep.spec: Update version number
Packit 709fb3
Packit 709fb3
        * Makefile.cvs: Update to work with current autoconf scripts
Packit 709fb3
Packit 709fb3
        * po/Makefile.in.in: Adjust to work with automake 1.1x
Packit 709fb3
Packit 709fb3
2006-08-19  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
Packit 709fb3
        * po/*: Sync with translation project
Packit 709fb3
Packit 709fb3
        * doc/*: Assorted documentation updates, Patch #4610
Packit 709fb3
Packit 709fb3
        * autogen.sh, configure.in, configure.ac.in: Autogenerate
Packit 709fb3
          ALL_LINGUAS variable
Packit 709fb3
Packit 709fb3
        * m4/strerror_r.m4, configure.ac.in: Fix detection of strerror_r
Packit 709fb3
Packit 709fb3
        * lib/error.c: Remove bogus warning
Packit 709fb3
Packit 709fb3
        * lib/savedir.c, lib/savedir.h, src/grep.c, doc/*:
Packit 709fb3
          Add --exclude-dir option (patch #5051)
Packit 709fb3
Packit 709fb3
2005-11-18  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Use ": ${VERBOSE=}" so that the caller can
Packit 709fb3
          set it without modifying the script; the usual caller (Makefile)
Packit 709fb3
          still leaves it untouched (usually unset, so it's off by default).
Packit 709fb3
          Modify "-m1 -A99 '^...$'" tests that failed so that their
Packit 709fb3
          expectation now corresponds to the output currently produced
Packit 709fb3
          by grep.  Those tests used to expect that two selected (or
Packit 709fb3
          selectable) lines be output, even with -m1.  Nothing was
Packit 709fb3
          modified with other similar tests that output _context_ lines
Packit 709fb3
          after one selected line has been output with -m1; they used to
Packit 709fb3
          and still succeed.  Although tests/yesno.sh now provides a more
Packit 709fb3
          comprehensive framework for testing -m/-C feature interaction,
Packit 709fb3
          it doesn't exercise mixing them with anchors so the whole
Packit 709fb3
          relevant tests/foad1.sh test group is kept, notably to check
Packit 709fb3
          that grep doesn't crash when it is run.
Packit 709fb3
Packit 709fb3
2005-11-17  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        On 2005-06-21, many changes were made that affected --color,
Packit 709fb3
        --only-matching, and --invert-match.  Some of them introduced a
Packit 709fb3
        misunderstanding between the concepts of matched/non-matched and
Packit 709fb3
        selected/rejected lines.  Furthermore, a few bugs with -v sneaked
Packit 709fb3
        in stemming from this.  This set of changes aims to rectify most
Packit 709fb3
        of this situation.  Some GREP_COLORS capabilities are also added
Packit 709fb3
        as a result of the clarification.  (Further issues with -v/-o/-C
Packit 709fb3
        feature interaction still remain to be sorted out.)
Packit 709fb3
Packit 709fb3
        * src/grep.c: Rename/add global variables, macros, and capabilities:
Packit 709fb3
            SEP_CHAR_MATCH    -->  SEP_CHAR_SELECTED
Packit 709fb3
            SEP_CHAR_CONTEXT  -->  SEP_CHAR_REJECTED
Packit 709fb3
            SEP_STR_CHUNK     -->  SEP_STR_GROUP
Packit 709fb3
            grep_color        -->  selected_match_color + context_match_color
Packit 709fb3
            mlines_color      -->  selected_line_color
Packit 709fb3
            context_color     -->  context_line_color
Packit 709fb3
            "ml"              -->  "sl"
Packit 709fb3
            "mt"              -->  "mt" = "ms" + "mc"
Packit 709fb3
                              -->  "rv" (reverse "sl"/"cx" when -v)
Packit 709fb3
        * src/grep.c (color_cap_mt_fct, color_cap_rv_fct): New functions.
Packit 709fb3
        * src/grep.c (print_line_tail): Renamed color argument to line_color.
Packit 709fb3
        * src/grep.c (print_line_middle, prline): Revert part of the logic to
Packit 709fb3
          a pre-2005-06-21 one so that lines with matches have their matched
Packit 709fb3
          parts properly handled again ("m?" colors or --only-matching),
Packit 709fb3
          whether or not -v is specified.  Whole line colors ("sl", "cx")
Packit 709fb3
          follow a selected / rejected(context) logic, as opposed to a
Packit 709fb3
          matched / non-matched one (unless "rv").  Matched text colors ("ms",
Packit 709fb3
          "mc") always follow a selected / rejected(context) logic,
Packit 709fb3
          regardless of "rv", because only matched lines use them anyway.
Packit 709fb3
          pr_line_middle() now takes additional line_color and match_color
Packit 709fb3
          arguments computed by prline() prior to calling that function.
Packit 709fb3
          The old logic was a buggy hybrid matched / rejected(context) one.
Packit 709fb3
        * src/grep.c (prpending, prtext, grepfile): Renamed macro invocations.
Packit 709fb3
        * src/grep.c (parse_grep_colors): Update top comment.
Packit 709fb3
        * src/grep.c (main): GREP_COLOR (singular) now sets both
Packit 709fb3
          selected_match_color and context_match_color.
Packit 709fb3
Packit 709fb3
2005-11-16  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/search.c (Pcompile): Clarify message for the -P option
Packit 709fb3
          not being supported so that users don't assume it's a run-time
Packit 709fb3
          problem, but know that it's a compile-time configuration choice.
Packit 709fb3
          Based on an idea by:  Benno Schulenberg <benno@nietvergeten.nl>.
Packit 709fb3
Packit 709fb3
2005-11-13  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * tests/yesno.sh: New file.  Test feature interaction
Packit 709fb3
          of -C, -v, -o, and -m.  This reveals bugs, including some I
Packit 709fb3
          introduced on 2005-06-21, but also others.
Packit 709fb3
        * tests/Makefile.am (TESTS): Add yesno.sh.
Packit 709fb3
        * tests/Makefile.am (CLEANFILES): Add cspatfile and csinput, as
Packit 709fb3
          created by fmbtest.sh.  Add yesno.txt, as created by yesno.sh.
Packit 709fb3
Packit 709fb3
2005-11-11  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * configure.in (ALL_LINGUAS): Add languages that were missing
Packit 709fb3
          from this variable (bg, ca, da, nb, tr), but that GNU grep supports
Packit 709fb3
          with a po/xx.po file.  Reported by Tony Abou-Assaleh <taa@acm.org>.
Packit 709fb3
Packit 709fb3
        * src/search.c (Pcompile): Abort in error if -P and multiple patterns
Packit 709fb3
          are specified, with an error message explaining the situation.
Packit 709fb3
          Fixing this won't be simple; the '\n' characters separating the
Packit 709fb3
          patterns cannot just be replaced by '|' to create an alternation as
Packit 709fb3
          back-references are assumed to be local to each individual pattern.
Packit 709fb3
Packit 709fb3
        * src/grep.c (parse_grep_colors, main): Replace all uses of
Packit 709fb3
          fprintf(stderr, _("%s: foo\n"), program_name, ...) with
Packit 709fb3
          error(0, 0, _("foo"), ...) for uniformization and simplification
Packit 709fb3
          of warning messages that will be up for localization.  (My bad.)
Packit 709fb3
Packit 709fb3
2005-11-10  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        The introduction of the --only-matching and --color GNU extensions
Packit 709fb3
        to grep added the requirement that each execute() implementation
Packit 709fb3
        not only be able to identify matching lines as a whole, but also
Packit 709fb3
        individual "exact" matches within a line known to be matching,
Packit 709fb3
        from leftmost to rightmost match, when the output from matching
Packit 709fb3
        lines is actually produced.  The interface and implementations
Packit 709fb3
        of execute() were not up to it.  This set of changes aims to
Packit 709fb3
        rectify that situation.  Previously failing tests relative to
Packit 709fb3
        left anchors (^ and \<) and -w should now pass.  This fixes
Packit 709fb3
        <http://savannah.gnu.org/bugs/?func=detailitem&item_id=11579>,
Packit 709fb3
        <http://savannah.gnu.org/patch/?func=detailitem&item_id=1834>,
Packit 709fb3
        <http://savannah.gnu.org/bugs/?func=detailitem&item_id=8243>,
Packit 709fb3
        and possibly part of other, bigger, pending patches.  The problem
Packit 709fb3
        was also compounded by the POSIX requirement to support a pattern
Packit 709fb3
        list instead of just an individual pattern (for -G and -E as well).
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Test for increasing/decreasing-length word
Packit 709fb3
          matches, given pattern order, and leftmost/longest match.
Packit 709fb3
        * tests/fmbtest.sh: Modify test #6 according to new expectations.
Packit 709fb3
          Better document what tests #6 and #7 are actually for.  Eliminate
Packit 709fb3
          test #5 in favor of bringing tests #6 and #7 within the F G E loop.
Packit 709fb3
        * src/grep.h (EXECUTE_ARGS): Change last argument from "int exact"
Packit 709fb3
          to "char const *start_ptr".  Testing for "start_ptr" being non-NULL
Packit 709fb3
          retains the same semantics as testing for "exact" being non-zero.
Packit 709fb3
        * src/grep.c (print_line_middle): Call execute() with whole
Packit 709fb3
          buffer to work on, but using current position as start_ptr.
Packit 709fb3
        * src/grep.c (prpending, grepbuf): Call execute() with NULL
Packit 709fb3
          as start_ptr.
Packit 709fb3
        * src/search.c (EGexecute, Fexecute, Pexecute): When start_ptr is
Packit 709fb3
          non-NULL, return first match from it as an offset relative to buf.
Packit 709fb3
        * src/search.c (EGexecute): Consider all patterns if many and,
Packit 709fb3
          for an exact match, return the best one (leftmost, then longest).
Packit 709fb3
          Don't explore worst solutions, of course (branch and bound).
Packit 709fb3
Packit 709fb3
2005-11-10  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Fix a subtle memory allocation bug introduced
Packit 709fb3
          with the mb_icase_keys() function, which can call xrealloc() or
Packit 709fb3
          free() on keys, by making sure keys is always dynamically allocated.
Packit 709fb3
Packit 709fb3
2005-11-09  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * doc/grep.1, doc/grep.texi: Advise users to test for
Packit 709fb3
          "exit_status > 1" instead of "exit_status == 2" in order to
Packit 709fb3
          detect errors, for portability with other POSIX-compliant
Packit 709fb3
          implementations.
Packit 709fb3
Packit 709fb3
2005-11-09  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        The following set of changes aims to make "egrep" and "fgrep"
Packit 709fb3
        minimal executable programs for legacy applications, instead of
Packit 709fb3
        shell scripts.  This "fgrep" is much smaller than "grep".
Packit 709fb3
        This set of changes appears more daunting than it really is.
Packit 709fb3
Packit 709fb3
        * src/egrep.c, src/fgrep.c, src/esearch.c, src/fsearch.c: New files
Packit 709fb3
          that #define either EGREP_PROGRAM or FGREP_PROGRAM and #include
Packit 709fb3
          the corresponding generic (i.e., non e or f specific) *.c file.
Packit 709fb3
        * src/grepmat.c: Remove whole file.
Packit 709fb3
        * src/Makefile.am: Remove no-dependencies from AUTOMAKE_OPTIONS.
Packit 709fb3
          Add definitions to make "egrep" and "fgrep" specific standalone
Packit 709fb3
          executable programs that only use the source files they need.
Packit 709fb3
          Remove rules for "egrep" and "fgrep" shell scripts.
Packit 709fb3
        * src/grep.h: #define GREP_PROGRAM if both EGREP_PROGRAM and
Packit 709fb3
          FGREP_PROGRAM are #undef.  Only declare matchers[] in this case
Packit 709fb3
          along with the compile_fp_t and execute_fp_t function pointers
Packit 709fb3
          typedefs, otherwise declare prototypes for straight compile()
Packit 709fb3
          and execute() functions for the specialized "egrep" and "fgrep"
Packit 709fb3
          programs.  Remove the extern declaration for matcher.
Packit 709fb3
          Define COMPILE_RET, COMPILE_ARGS, EXECUTE_RET, EXECUTE_ARGS,
Packit 709fb3
          COMPILE_FCT, and EXECUTE_FCT helper preprocessor macros.
Packit 709fb3
        * src/grep.c (short_options, long_options, usage, main): Only
Packit 709fb3
          support -G, -E, -F, -P, and -X for GREP_PROGRAM, but not for
Packit 709fb3
          EGREP_PROGRAM or FGREP_PROGRAM.  Customize usage messages.
Packit 709fb3
        * src/grep.c (set_limits): New function with unchanged code,
Packit 709fb3
          called from main(), because it shouldn't be in install_matcher()
Packit 709fb3
          since it was already matcher-independent.
Packit 709fb3
        * src/grep.c (matcher): Add as static, only for GREP_PROGRAM.
Packit 709fb3
        * src/grep.c (setmatcher, install_matcher): Only for GREP_PROGRAM.
Packit 709fb3
        * src/grep.c (main): Remove any tweaking and dependence on argv[0].
Packit 709fb3
        * src/grep.c (print_line_middle, prpending, grepbuf, main): Call
Packit 709fb3
          compile() and execute() directly, not through a function
Packit 709fb3
          pointer dereferencing notation, so that it works with both
Packit 709fb3
          straight functions (in EGREP_PROGRAM and FGREP_PROGRAM) and
Packit 709fb3
          function pointers (in GREP_PROGRAM).
Packit 709fb3
        * src/search.c (<regex.h>, "dfa.h", dfa, pattern0, patterns,
Packit 709fb3
          pcount, dfaerror, kwset_exact_matches, kwsmusts): Only
Packit 709fb3
          include/declare/define if not FGREP_PROGRAM.
Packit 709fb3
        * src/search.c: Remove function prototypes for all functions
Packit 709fb3
          that are not used before their definition, since this is just
Packit 709fb3
          a hassle now with their varying names and conditional definition.
Packit 709fb3
        * src/search.c (GEAcompile): Rename from Ecompile().  Add new
Packit 709fb3
          syntax_bits argument/variable.  Use as compile() for EGREP_PROGRAM.
Packit 709fb3
          Put in the needed RE_ICASE fix, albeit commented-out for now.
Packit 709fb3
          Make sure to free() modified word/line pattern after use, if any.
Packit 709fb3
        * src/search.c (Gcompile): Merge with GEAcompile() then remove.
Packit 709fb3
        * src/search.c (Gcompile, Acompile, Ecompile): New small functions
Packit 709fb3
          that call GEAcompile(), now that matcher is not an extern variable.
Packit 709fb3
        * src/search.c (GEAcompile, Gcompile, Acompile, Ecompile,
Packit 709fb3
          Fcompile, Pcompile, EGexecute, Fexecute, Pexecute, matchers):
Packit 709fb3
          Only define when needed according to *GREP_PROGRAM, and rename
Packit 709fb3
          to just compile() and execute() when appropriate.
Packit 709fb3
        * grep/bootstrap/Makefile.try: Similar changes.
Packit 709fb3
Packit 709fb3
2005-11-08  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * README.DOS, TODO, grep.spec, doc/grep.1, doc/grep.texi,
Packit 709fb3
          src/grep.h, po/da.po, po/nb.po, po/no.po, po/sv.po:
Packit 709fb3
          Replace all capitalized "Grep" by a lowercase "grep", except
Packit 709fb3
          in citations.  Reported by Benno Schulenberg <benno@nietvergeten.nl>
Packit 709fb3
          from the <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=190551>
Packit 709fb3
          entry in the Debian bug tracker.
Packit 709fb3
        * doc/grep.1, doc/grep.texi: Explain that the "egrep" and "fgrep"
Packit 709fb3
          commands are deprecated and provided for historical applications.
Packit 709fb3
          Replace some "egrep" uses by "grep -E" to promote the newer usage.
Packit 709fb3
          Typeset "zgrep" as a command.  Fix some spacing and punctuation bugs.
Packit 709fb3
Packit 709fb3
2005-11-08  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Rewrite a poorly written usage example about
Packit 709fb3
          back-references, and tweak another.  New text by Benno Schulenberg.
Packit 709fb3
Packit 709fb3
2005-11-04  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c (mb_icase_keys): New function to properly lowercase
Packit 709fb3
          keys if match_icase.  The problem was that some multi-octet
Packit 709fb3
          characters can get longer or shorter upon this conversion, so that
Packit 709fb3
          it cannot just naively be done in place on the same memory buffer.
Packit 709fb3
        * src/grep.c (main): Call mb_icase_keys (and remove in-line code).
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh:  Duplicate three "-o -b" tests for the "-F"
Packit 709fb3
          mode because it relies on a different code path that deserves
Packit 709fb3
          the same kind of testing.
Packit 709fb3
Packit 709fb3
2005-09-27  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * doc/grep.1: Fix a typo.
Packit 709fb3
Packit 709fb3
2005-08-24  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c (print_line_middle): In case of an empty match,
Packit 709fb3
          make minimal progress and continue instead of aborting process
Packit 709fb3
          of the remainder of the line, in case there's still an upcoming
Packit 709fb3
          non-empty match.
Packit 709fb3
        * tests/foad1.sh: Add two tests for this.
Packit 709fb3
        * doc/grep.texi, doc/grep.1: Document this behavior, since
Packit 709fb3
          --only-matching and --color are GNU extensions which are
Packit 709fb3
          otherwise unspecified by POSIX or other standards.
Packit 709fb3
Packit 709fb3
2005-07-26  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * tests/pcre.sh: New file.  Add test 1.
Packit 709fb3
        * tests/Makefile.am: Add pcre.sh to TESTS.
Packit 709fb3
Packit 709fb3
2005-07-07  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c: Remove all xm capability code.
Packit 709fb3
Packit 709fb3
2005-07-05  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Add missing green color in GREP_COLORS description.
Packit 709fb3
        * doc/grep.1: Fix typo and reorganize GREP_COLORS documentation.
Packit 709fb3
Packit 709fb3
        * src/kwset.c (DEPTH_SIZE): New macro to anticipate
Packit 709fb3
          architectures/compilers where CHAR_BIT is not 8 (we assume it
Packit 709fb3
          won't be less than 4, which would be non-standard and unlikely).
Packit 709fb3
          Checked to hold for CHAR_BIT up to 1023 (and maybe more)!
Packit 709fb3
        * src/kwset.c (kwsincr): Use DEPTH_SIZE in two array declarations.
Packit 709fb3
Packit 709fb3
        * src/kwset.c (kwsincr): When a second obstack_alloc() call fails,
Packit 709fb3
          free what the first one successfully allocated by popping it
Packit 709fb3
          off the top of the obstack, before returning in error, just
Packit 709fb3
          to keep things clean.
Packit 709fb3
        * src/kwset.c (kwsprep): Verify return value of obstack_alloc()
Packit 709fb3
          and return a memory exhausted error if so.  This function had
Packit 709fb3
          a prototype to return such errors, but never did.
Packit 709fb3
Packit 709fb3
2005-07-04  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/kwset.c: Readability changes.
Packit 709fb3
          Replace uses of 0 for pointer values by NULL.
Packit 709fb3
          Generalize use of existing U() macro to whole file.
Packit 709fb3
Packit 709fb3
        * src/kwset.c (kwsprep): Use memset() and memcpy() when appropriate.
Packit 709fb3
Packit 709fb3
        * src/kwset.c (kwsprep): Move three variable declarations to
Packit 709fb3
          the single {}-block where they are used.
Packit 709fb3
Packit 709fb3
        * src/kwset.c (kwsprep): Optimize search for mind2 value by
Packit 709fb3
          starting from the end of the target[] array.
Packit 709fb3
Packit 709fb3
2005-06-22  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * grep/autogen.sh, grep/src/Makefile.am, grep/tests/backref.sh,
Packit 709fb3
          grep/tests/bre.sh, grep/tests/empty.sh, grep/tests/ere.sh,
Packit 709fb3
          grep/tests/file.sh, grep/tests/fmbtest.sh, grep/tests/foad1.sh,
Packit 709fb3
          grep/tests/khadafy.sh, grep/tests/options.sh,
Packit 709fb3
          grep/tests/spencer1.sh, grep/tests/spencer2.sh,
Packit 709fb3
          grep/tests/status.sh, grep/tests/warning.sh: As per autoconf's
Packit 709fb3
          "Portable Shell Programming" guidelines, replace all instances
Packit 709fb3
          of "#!/bin/sh" by "#! /bin/sh" (notice the space).
Packit 709fb3
Packit 709fb3
2005-06-21  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c (nlscan): Make this function more robust by removing
Packit 709fb3
          the undocumented assumption that its "lim" argument points
Packit 709fb3
          right after a line boundary.  This will be used later to fix
Packit 709fb3
          --byte-offset's broken behavior.  Patch #3769.
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Add a test to check if -o/--only-matching
Packit 709fb3
          and context lines are both specified and if so, set both context
Packit 709fb3
          specifications (before and after) to zero then print an explicit
Packit 709fb3
          warning to stderr explaining what was done and why (as opposed
Packit 709fb3
          to drastically aborting the process in error).  Patch #3768.
Packit 709fb3
          Other code needs this zero setting to work correctly without
Packit 709fb3
          having to repeatedly test for this conflictual condition.
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Add tests combining -o, -n/-b/-H, and -i,
Packit 709fb3
          since there are separate code paths for -i.  Add tests combining
Packit 709fb3
          -o, -n/-b/-H, and -3, since any context line specification
Packit 709fb3
          should be ignored when combined with -o.
Packit 709fb3
        * src/grep.c (print_line_head): New function, culled off the
Packit 709fb3
          top content of prline().  Adds a guard against "lastnl" having
Packit 709fb3
          already reached "lim", which can happen when if the function
Packit 709fb3
          is called more than once per line.
Packit 709fb3
        * src/grep.c (prline): Now calls print_line_head(), not only at
Packit 709fb3
          the beginning to replace the moved code when -o is not
Packit 709fb3
          specified, but also for each match when -o is specified (two
Packit 709fb3
          code paths with this).  Patch #3770, more or less.  This makes
Packit 709fb3
          all tests combining -o and -n/-b/-H pass, which they didn't
Packit 709fb3
          before.  Fixes bug #12727.
Packit 709fb3
Packit 709fb3
        * src/grep.c (SEP_CHAR_MATCH, SEP_CHAR_CONTEXT, SEP_STR_CHUNK):
Packit 709fb3
          New macros for ':', '-', and "--".  Used throughout the file.
Packit 709fb3
          Will be used even more in upcoming updates, so good to have now.
Packit 709fb3
Packit 709fb3
        * src/grep.c: The new GREP_COLORS (plural) framework, only
Packit 709fb3
          partially used at this point to make for a simpler initial
Packit 709fb3
          patch in CVS.  A subset of patch #3644 on Savannah.
Packit 709fb3
        * src/grep.c (color_cap_ne_fct, color_cap_xm_fct, print_filename,
Packit 709fb3
          print_sep, parse_grep_colors): New functions.
Packit 709fb3
        * src/grep.c (prtext, grepfile, main): Existing functions modified
Packit 709fb3
          to use the new framework.
Packit 709fb3
        * doc/grep.texi, doc/grep.1: Document GREP_COLORS.
Packit 709fb3
Packit 709fb3
        * src/grep.c: The new -T/--initial-tab framework, only
Packit 709fb3
          partially used at this point to make for a simpler initial
Packit 709fb3
          patch in CVS.  A subset of patch #3644 on Savannah.
Packit 709fb3
          The option name/calling convention is the same as for GNU diff.
Packit 709fb3
        * doc/grep.texi, doc/grep.1: Document -T/--initial-tab.
Packit 709fb3
Packit 709fb3
        * src/grep.c (print_offset): Renamed print_offset_sep() to better
Packit 709fb3
          represent its new functionality; new calling convention.
Packit 709fb3
        * src/grep.c (print_offset, print_line_head): Use and implement
Packit 709fb3
          missing parts of the GREP_COLORS and -T/--initial-tab frameworks.
Packit 709fb3
Packit 709fb3
        * src/grep.c (print_line_middle, print_line_tail): New functions,
Packit 709fb3
          unused for now, intended to allow a simplifying rewrite of
Packit 709fb3
          prline().  Adding them first will make for cleaner CVS patches.
Packit 709fb3
Packit 709fb3
        * src/grep.c (prline): Simplifying rewrite using
Packit 709fb3
          print_line_middle() and print_line_tail().  No longer attempts
Packit 709fb3
          to find matches to colorize in context lines, thus avoiding
Packit 709fb3
          costly calls to (*execute)(), since we know by then that they
Packit 709fb3
          can't contain any by definition.  There are no longer four
Packit 709fb3
          different code paths whether -o and -i are each specified
Packit 709fb3
          or not; they have been unified into one, which should help
Packit 709fb3
          avoid bugs similar to previous ones due to not updating all
Packit 709fb3
          code paths in a synchronized fashion.  The -i code has been
Packit 709fb3
          explicitly marked since it doesn't belong there and should
Packit 709fb3
          be removed as soon as other -i code elsewhere is fixed.
Packit 709fb3
          The remaining GREP_COLORS functionality is implemented.
Packit 709fb3
          Savannah patch #3771 and patch #3644, heavily reworked.
Packit 709fb3
Packit 709fb3
        * src/grep.c (color_cap_ne_fct, color_cap_xm_fct,
Packit 709fb3
          print_line_middle, print_line_tail): Make these four functions
Packit 709fb3
          static.
Packit 709fb3
Packit 709fb3
2005-06-20  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c: Extensively document the SGR/EL-to-Right issue.
Packit 709fb3
Packit 709fb3
        * src/grep.c: Explain the context and logic for choosing default
Packit 709fb3
          --color screen attributes (SGR parameters).
Packit 709fb3
Packit 709fb3
2005-06-15  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Since this script is run by /bin/sh, it
Packit 709fb3
          must work under posix mode.  That means not using assignment
Packit 709fb3
          statements right before a function call (LC_ALL=... grep_test,
Packit 709fb3
          in this case), because it won't do the expected thing.
Packit 709fb3
Packit 709fb3
2005-06-14  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        Fix bug #11022 (Line wrapping causes GREP_COLOR background
Packit 709fb3
        color to "smear") by outputting a "clear to end of line"
Packit 709fb3
        control sequence after each SGR (Select Graphic Rendition)
Packit 709fb3
        control sequence (START and END).  This also avoid similar
Packit 709fb3
        problems with HT (tab) characters.
Packit 709fb3
Packit 709fb3
        * src/grep.c (SGR_START, SGR_END, PR_SGR_FMT, PR_SGR_FMT_IF,
Packit 709fb3
          PR_SGR_START, PR_SGR_END, PR_SGR_START_IF, PR_SGR_END_IF):
Packit 709fb3
          New macros.
Packit 709fb3
        * src/grep.c (prline): Use the new macros.
Packit 709fb3
        * tests/fmbtest.sh, tests/foad1.sh: Adjust the regression tests
Packit 709fb3
          to expect the new control sequences.
Packit 709fb3
Packit 709fb3
2005-05-06  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * TODO: Add a few more projects and derived versions to check out.
Packit 709fb3
Packit 709fb3
2005-05-05  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * README-alpha: Document grep-commit mailing list.
Packit 709fb3
        * TODO: Add various stuff culled from the mailing list.
Packit 709fb3
Packit 709fb3
2005-05-02  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * 78 files: Update FSF's civic address, zip code,
Packit 709fb3
          and citizen relocation code.
Packit 709fb3
Packit 709fb3
2005-04-29  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Add -b and tricky UTF-8 tests.
Packit 709fb3
          Display LC_ALL when its value is special.  Patch #3962.
Packit 709fb3
Packit 709fb3
        * ABOUT-NLS: Sync with CVS revision 1.9
Packit 709fb3
          of 2005-04-13T11:21:55Z from GNU gettext
Packit 709fb3
          on ":pserver:anoncvs@sources.redhat.com:/cvs/gettext",
Packit 709fb3
          file "gettext/gettext-runtime/ABOUT-NLS".
Packit 709fb3
Packit 709fb3
2005-04-29  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        * Makefile.am: Remove reference to long-gone files PATCHES.AC and
Packit 709fb3
          PATCHES.AM.  Thanks to Tony Abou-Assaleh for this.  Patch #3961.
Packit 709fb3
Packit 709fb3
2005-04-29  Charles Levert  <charles_levert@gna.org>
Packit 709fb3
Packit 709fb3
        * src/grep.c: Fix typo in prline()'s --only-matching --ignore-case
Packit 709fb3
          code path; this fixes bug #9768 and passes one more test
Packit 709fb3
          in tests/foad1.sh.  This whole code path should be removed in
Packit 709fb3
          the future, when other --ignore-case issues are dealt with.
Packit 709fb3
Packit 709fb3
2005-04-28  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Remove Bash-specific syntax.
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Fix a DFA bug whereby a bracket "[" was matched by the
Packit 709fb3
          pattern "[[:alpha:]]" in UTF-8 locales.  Patch #3800, by Tim Waugh.
Packit 709fb3
        * tests/foad1.sh: Add a regression test for that.
Packit 709fb3
Packit 709fb3
2005-04-27  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        Fix a bug reported by Elliott Hughes in patch #1834 whereby "grep -Fw"
Packit 709fb3
        would miss matches after a non-word occurrence of the pattern.  Fix by
Packit 709fb3
        Gordon Lack; tests based on reproduction recipes by Gordon Lack.
Packit 709fb3
Packit 709fb3
        * src/search.c (Fexecute): Fix the "match_words" case.
Packit 709fb3
        * tests/foad1.sh: Modify the test framework so that the "PATTERN"
Packit 709fb3
          argument is optional.  Add a regression test and a test for
Packit 709fb3
          a similar case that other proposed patches have got wrong.
Packit 709fb3
Packit 709fb3
        Add more tests, some initially failing.
Packit 709fb3
Packit 709fb3
        * tests/foad1.sh: Add tests for "--color", most initially failing.
Packit 709fb3
        * tests/fmbtest.sh: New file of tests for "grep -i" with multi-byte
Packit 709fb3
          chars, by Jakub Jelinek, from patch #3808: Red Hat's "tests" patch.
Packit 709fb3
          Initially, test #4 fails (in all three modes).
Packit 709fb3
        * tests/Makefile.am: Include the new tests file "fmbtest.sh".
Packit 709fb3
Packit 709fb3
2005-04-12  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        * tests/bre.tests: Enable a regression test for bug #9519.
Packit 709fb3
        * src/grep.c: Fix a seg-fault in "-o -i": patch #1939.
Packit 709fb3
        * tests/foad1.sh: New tests for "-o", initially all failing.
Packit 709fb3
        * tests/Makefile.am: Include the new tests file "foad1.sh".
Packit 709fb3
        * tests/spencer2.sh: Be consistent with "spencer1.sh" in the
Packit 709fb3
          naming of associated files.
Packit 709fb3
        * src/grep.c: Fix off-by-one error in prpending().
Packit 709fb3
          Patch #3840 by Claudio Fontana.
Packit 709fb3
        * tests/foad1.sh: Add tests by Pavol Gono for patch #3840.
Packit 709fb3
          Some of them still fail, but no longer seg-fault due to that bug.
Packit 709fb3
Packit 709fb3
2005-04-11  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        * doc/grep.texi, doc/grep.1: Document USG grep -s too.
Packit 709fb3
          Based on a patch by Paul Eggert; suggested by Keith Marshall.
Packit 709fb3
        * src/dfa.c (lex): Fix bug #9519: "echo do^re | grep do^re" was
Packit 709fb3
          failing to find a match.
Packit 709fb3
Packit 709fb3
2005-03-09  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/search.c (EGexecute, Fexecute): Use xmalloc, not malloc.
Packit 709fb3
        (EGexecute): Handle the failure in one place, goto there.
Packit 709fb3
Packit 709fb3
2005-02-26  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/grep.c (get_nondigit_option): Don't give up too early.
Packit 709fb3
        * src/search.c (Pexecute): Add a comment explaining that this
Packit 709fb3
          situation should not happen.
Packit 709fb3
Packit 709fb3
2005-02-22  Claudio Fontana  <sick_soul@users.sourceforge.net>  (tiny change)
Packit 709fb3
Packit 709fb3
        * src/search.c (Pexecute): Consider eof case when delimiting
Packit 709fb3
          matching line.  Fixes bug #4531.
Packit 709fb3
Packit 709fb3
2005-02-23  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        * po/ko.po: Fix email address.
Packit 709fb3
        * README-alpha: Fix email addresses and clarify the notes.
Packit 709fb3
        * tests/backref.sh: Fix trivial typos.
Packit 709fb3
Packit 709fb3
2005-02-08  Bruno Haible  <bruno@clisp.org>  (tiny change)
Packit 709fb3
Packit 709fb3
        * src/kwset.h (kwsincr, kwsprep): Change return type to 'const char *'.
Packit 709fb3
        * src/kwset.c (kwsincr, kwsprep): Likewise.
Packit 709fb3
Packit 709fb3
2005-02-08  Arnold D. Robbins  <arnold@skeeve.com>
Packit 709fb3
            Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/mbsupport.h: Don't say the file is part of GAWK.
Packit 709fb3
        Make wording in explanatory comment more generic.
Packit 709fb3
Packit 709fb3
2005-02-07  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/grep.c: Document that -X is undocumented.
Packit 709fb3
Packit 709fb3
2005-01-16  Bruno Haible  <bruno@clisp.org>  (tiny change)
Packit 709fb3
            Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * configure.in: Add tests for iswctype, mbrlen, wcrtomb, wcscoll;
Packit 709fb3
          use AC_FUNC_MBRTOWC to check for mbrtowc and mbstate_t; move
Packit 709fb3
          AC_MBSTATE_T below it.
Packit 709fb3
        * src/grep.c: Include mbsupport.h to define MBS_SUPPORT uniformly.
Packit 709fb3
        * src/mbsupport.h: Don't test for HAVE_WCTYPE_T.
Packit 709fb3
Packit 709fb3
2005-01-13  Arnold D. Robbins  <arnold@skeeve.com>
Packit 709fb3
Packit 709fb3
        * src/dfa.c (dfaparse): Use LC_COLLATE whenever it is defined;
Packit 709fb3
          ENABLE_NLS has nothing to do with this.
Packit 709fb3
Packit 709fb3
2005-01-07  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * tests/status.sh: Added two tests--option '-s' should have no
Packit 709fb3
          influence on the exit status.
Packit 709fb3
Packit 709fb3
2004-12-16  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        Cosmetic changes, mostly imported from gawk:
Packit 709fb3
Packit 709fb3
        * src/dfa.c (lexstart): Removed unused variable.
Packit 709fb3
        (parse_bracket_exp_mb): Don't initialize different pointers in one
Packit 709fb3
          assignment
Packit 709fb3
        (lex): Don't initialize automatic arrays, it's invalid in pre-C89
Packit 709fb3
          compilers.
Packit 709fb3
        Various other typos.
Packit 709fb3
        * src/dfa.h, src/grep.c, src/search.c: Typos.
Packit 709fb3
Packit 709fb3
2004-12-16  Isamu Hasegawa  <isamuh@jp.ibm.com>
Packit 709fb3
Packit 709fb3
        From http://oss.software.ibm.com/linux/patches/?patch_id=25
Packit 709fb3
Packit 709fb3
        * src/search.c: Patch for i18n correctness.
Packit 709fb3
        * src/grep.c: Likewise.
Packit 709fb3
        * src/dfa.c: Likewise.
Packit 709fb3
        * lib/regex.c: Likewise.
Packit 709fb3
Packit 709fb3
2004-12-15  Julian Foad  <julianfoad@btopenworld.com>
Packit 709fb3
Packit 709fb3
        Changes to documentation and help text, mostly from Stepan Kasal.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Minor fixes of phrasing.
Packit 709fb3
        * doc/grep.1: Likewise.
Packit 709fb3
        * src/grep.c: Likewise.
Packit 709fb3
Packit 709fb3
2004-12-01  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Use "FILE_PATTERN" for --include and --exclude,
Packit 709fb3
          change "only print" to "print only".
Packit 709fb3
        * doc/grep.1: Likewise; state that wildcard matching is used.
Packit 709fb3
          Move some options so that they are sorted alphabetically.
Packit 709fb3
        * dfa.c, NEWS: Fix typos.
Packit 709fb3
Packit 709fb3
2004-11-28  Benno Schulenberg  <benno@nietvergeten.nl>  (tiny change)
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Clean up several details in the usage string.
Packit 709fb3
        * doc/grep.1: Fix descriptions of --include and --exclude.
Packit 709fb3
        * doc/grep.texi: Likewise.
Packit 709fb3
Packit 709fb3
2004-11-23  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/Makefile.am: The egrep and fgrep script now use their own
Packit 709fb3
        path to construct the full pathname of grep.
Packit 709fb3
Packit 709fb3
2004-11-23  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/Makefile.am: Merged the rules for creating the egrep and
Packit 709fb3
        fgrep script.
Packit 709fb3
Packit 709fb3
2004-11-23  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Make sure both copies of the "usage"
Packit 709fb3
          strings match.  Add "(C)" to the copyright notice.
Packit 709fb3
        * src/dfa.c: Changed "out of memory" to "memory exhausted" to
Packit 709fb3
          match messages elsewhere in the source.
Packit 709fb3
Packit 709fb3
2004-11-22  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/search.c: Use mbsupport.h .
Packit 709fb3
        * src/dfa.c: Move the inclusion of mbsupport.h lower.
Packit 709fb3
Packit 709fb3
2004-11-22  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Use PACKAGE_STRING for --version.
Packit 709fb3
Packit 709fb3
2004-11-20  Benno Schulenberg  <benno@nietvergeten.nl>  (tiny change)
Packit 709fb3
Packit 709fb3
        * src/grep.c (reset): Move the stat check ...
Packit 709fb3
        (grepfile): ... here, and also check for a fifo.
Packit 709fb3
Packit 709fb3
2004-11-20  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        This change is based on a suggestion by Elliott Hughes.
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Use PACKAGE_BUGREPORT.
Packit 709fb3
        * po/*.po: Hacked the current translation again.
Packit 709fb3
Packit 709fb3
2004-11-20  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * configure.in: Added a copyright notice (using gawk as a template).
Packit 709fb3
        (AC_INIT, AM_INIT_AUTOMAKE): Changed to the "new" form so that
Packit 709fb3
          the PACKAGE_* symbols get defined correctly in config.h.
Packit 709fb3
Packit 709fb3
2004-11-20  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * ./cvsignore: Amended several .cvsignore files and
Packit 709fb3
          removed *.gmo, acinclude.m4 and stamp-h.in from the root one.
Packit 709fb3
        * m4/init.m4: Nuked, it was breaking current automake.
Packit 709fb3
        * m4/Makefile.m4: Removed init.m4.
Packit 709fb3
        * autogen.m4: Drop support for legacy autoconf; tell whether the
Packit 709fb3
          auto tools exited successfully or not; fix the permissions of
Packit 709fb3
          tests/*.sh--CVS doesn't provide a way to fix it.
Packit 709fb3
Packit 709fb3
2004-11-19  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Removed old version of gofast patch, from 2003-05-30.
Packit 709fb3
        * src/search.c (check_multibyte_string): Likewise.
Packit 709fb3
Packit 709fb3
2004-11-19  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Added some simple changes from gawk.
Packit 709fb3
        * src/mbsupport.h: Imported from gawk.
Packit 709fb3
Packit 709fb3
2004-11-11  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * tests/spencer1.awk: Use only lines with 3 fields.
Packit 709fb3
        * tests/spencer1.tests: Disable #55 for now.
Packit 709fb3
        * tests/ere.tests, tests/bre.tests: Add "TO CORRECT" to disabled
Packit 709fb3
          tests which had empty $4.
Packit 709fb3
        * tests/backref.sh: Modify #2 so that current glibc regex can
Packit 709fb3
          handle it in finite time.
Packit 709fb3
Packit 709fb3
2004-11-12  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        Change bug-gnu-utils address to bug-grep, on many places; there
Packit 709fb3
        is no need to have the word "grep" in subject then.
Packit 709fb3
        Thanks to Tony Abou-Assaleh and Benno Schulenberg for pointing
Packit 709fb3
        out this.
Packit 709fb3
Packit 709fb3
2004-11-02  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * README-alpha: Remove obsolete instructions about CVS, redirect
Packit 709fb3
          the reader to savannah web.
Packit 709fb3
Packit 709fb3
2004-09-26  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/search.c (check_multibyte_string, Gcompile, Ecompile): Replace
Packit 709fb3
          malloc with xmalloc.
Packit 709fb3
        * src/dfa.c (dfamust): Replace two calls to 'malloc' by MALLOC.
Packit 709fb3
Packit 709fb3
2003-07-23  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
Packit 709fb3
        * src/Makefile.am: Add the egrep and fgrep scripts to CLEANFILES.
Packit 709fb3
Packit 709fb3
2003-07-23  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
        * tests/backref.sh: Messages fixed.
Packit 709fb3
Packit 709fb3
2003-07-08  David Kaelbling  <drk@sgi.com>  (tiny change)
Packit 709fb3
        * src/dfa.c: remove non-constant initializers from dfa.c
Packit 709fb3
Packit 709fb3
2003-06-16  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
        * doc/grep.1: two typos "--line-buffered [...] penalty"
Packit 709fb3
        * doc/grep.texi: a typo
Packit 709fb3
Packit 709fb3
2003-06-12  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * README-alpha: Mention bug tracking system and grep-devel-list
Packit 709fb3
        * tests/spencer1.tests: Fix test 55, as noted by Tim Waugh
Packit 709fb3
        * src/search.c: Speed up multibyte support (Patch from Tim Waugh)
Packit 709fb3
Packit 709fb3
2003-06-05  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
        * tests/formatbre.awk, tests/formatere.awk: probably unused, so
Packit 709fb3
          I've removed them.
Packit 709fb3
Packit 709fb3
2003-06-05  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
        * intl/Makefile: remove generated file.
Packit 709fb3
Packit 709fb3
2003-06-04  Stepan Kasal  <kasal@ucw.cz>
Packit 709fb3
        * src/dfa.c: typos fixed.
Packit 709fb3
Packit 709fb3
2003-05-30  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * src/dfa.c: Speed up multibyte support (Patch from Tim Waugh)
Packit 709fb3
Packit 709fb3
2003-01-18  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * src/grep.c: Fix -i -o combination (Patch from Tim Waugh)
Packit 709fb3
Packit 709fb3
2002-03-26  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
Packit 709fb3
        * 2.5.1 Release.
Packit 709fb3
Packit 709fb3
2002-03-26  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * src/grep.c: Don't fail if we don't have an stdout fd and -q
Packit 709fb3
          is used (happens e.g. on calls from hotplug scripts)
Packit 709fb3
        * src/grep.c: Don't hang forever if fed with an empty string to
Packit 709fb3
          grep for and --color enabled
Packit 709fb3
        * src/grep.c: Fix infinite loop on
Packit 709fb3
          echo "1 one" | grep -E "[0-9]*" -o
Packit 709fb3
          echo "1 one" | grep -E "[0-9]*" --color
Packit 709fb3
        * po/*: Sync with translation project
Packit 709fb3
        * src/grep.c, src/Makefile.am, configure.in: Add patch from
Packit 709fb3
          Paul Eggert <eggert@twinsun.com> to comply with ridiculous
Packit 709fb3
          guidelines (don't act differently if invoked as egrep or fgrep)
Packit 709fb3
        * configure.in: Bump version number, require a recent autoconf
Packit 709fb3
Packit 709fb3
2002-03-14  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * src/Makefile.am, po/Makefile.in.in: Support DESTDIR properly
Packit 709fb3
        * tests/bre.tests: Add fix from
Packit 709fb3
          Peter Breitenlohner <peb@mppmu.mpg.de>
Packit 709fb3
Packit 709fb3
2002-03-13  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * configure.in, m4/regex.m4, m4/malloc.m4, m4/realloc.m4:
Packit 709fb3
          Don't set LIBOBJS directly, autoconf 2.53 doesn't like it
Packit 709fb3
        * intl/*: Sync with gettext 0.11
Packit 709fb3
        * po/*: Sync with translation project
Packit 709fb3
        * configure.in, src/Makefile.am: Don't duplicate code - make
Packit 709fb3
          egrep and fgrep links to grep and set matcher based on
Packit 709fb3
          application name, suggestion from
Packit 709fb3
          Guillaume Cottenceau <gc@mandrakesoft.com>
Packit 709fb3
        * src/grep.c: (prline) Add fix for -i --color from
Packit 709fb3
          Jim Meyering <meyering@lucent.com>
Packit 709fb3
        * configure.in: Version 2.5; release
Packit 709fb3
Packit 709fb3
2002-01-23  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * configure.in: Version 2.5g
Packit 709fb3
        * Makefile.cvs, grep.spec: Add packaging tools
Packit 709fb3
        Merge djgpp changes from Andrew Cottrell <anddjgpp@ihug.coml.au>:
Packit 709fb3
        * src/grep.c: Added conditional compilation for DJGPP
Packit 709fb3
        * djgpp: remove directory as it is no longer required with DJGPP 2.03
Packit 709fb3
                 (or 2.04 when released)
Packit 709fb3
        * README.DOS: Moved djgpp/readme to readme.dos
Packit 709fb3
        * PATCHES.AC, PATCHES.AM: delete files - redundant
Packit 709fb3
        * configure.in, Makefile.am: remove djgpp directory from list
Packit 709fb3
Packit 709fb3
2002-01-22  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * doc/grep.texi, doc/grep.1, NEWS: Document --label
Packit 709fb3
        * po/ru.po: Sync with translation project
Packit 709fb3
        * po/grep.pot: Sync with source
Packit 709fb3
Packit 709fb3
2002-01-18  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * src/grep.c: Add --label, based on patch from Stepan Koltsov
Packit 709fb3
Packit 709fb3
2001-11-20  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * autogen.sh: Don't hardcode aclocal dir
Packit 709fb3
Packit 709fb3
2001-11-19  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * src/grep.c: Add --only-matching (-o) switch (see NEWS)
Packit 709fb3
        * doc/grep.texi, doc/grep.1, NEWS: Document changes
Packit 709fb3
        * configure.in, lib/Makefile.am: Don't use internal getopt if
Packit 709fb3
          we're on a system that provides a working getopt function
Packit 709fb3
Packit 709fb3
2001-09-25  Bernhard Rosenkraenzer <bero@arklinux.org>
Packit 709fb3
        * configure.in: Detect pcre correctly even when it's in
Packit 709fb3
          non-standard locations, using pcre-config
Packit 709fb3
        * src/grep.c: Add --color={always,never,tty} argument (like in ls)
Packit 709fb3
        * src/grep.c: Turn off blinking in the default colorization
Packit 709fb3
        * src/grep.c: Add --devices (-D) switch (analogous to --directories)
Packit 709fb3
        * src/dfa.c: Fix an i18n bug: echo "A" | grep '[A-Z0-9]' wouldn't work
Packit 709fb3
          in non-C-Locales on systems using current versions of glibc.
Packit 709fb3
        * AUTHORS: Change maintainer, credit Alain for his work until now
Packit 709fb3
        * configure.in, m4/decl.m4, m4/dosfile.m4, m4/gettext.m4,
Packit 709fb3
          m4/init.m4, m4/install.m4, m4/largefile.m4, m4/lcmessage.m4,
Packit 709fb3
          m4/header.m4, m4/isc-posix.m4, m4/missing.m4, m4/progtest.m4,
Packit 709fb3
          m4/sanity.m4:
Packit 709fb3
          Fix build with autoconf 2.5x, retain 2.1x compatibility for now
Packit 709fb3
        * autogen.sh: Add some crude hacks to make it possible to build with
Packit 709fb3
          both autoconf 2.5x and 2.1x
Packit 709fb3
        * acconfig.h: removed (no longer required)
Packit 709fb3
        * Makefile.am: add cvs-clean target
Packit 709fb3
        * doc/grep.texi, doc/grep.1, NEWS: Document changes
Packit 709fb3
          (--color, --devices, -D)
Packit 709fb3
        * src/dfa.c, src/grep.c: Add vim modelines
Packit 709fb3
Packit 709fb3
2001-08-30  Alain Magloire
Packit 709fb3
Packit 709fb3
        * configure.in: Add gl in ALL_LINGUAS.
Packit 709fb3
Packit 709fb3
2001-08-30  Kurt D Schwehr
Packit 709fb3
Packit 709fb3
        * doc/grep.1: Warn that grep insert a "--" between groups of matches,
Packit 709fb3
        when using the context options.
Packit 709fb3
        * doc/grep.texi: Likewised.
Packit 709fb3
Packit 709fb3
2001-08-25  Heikki Korpela
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Point out that some Platforms do not support
Packit 709fb3
        reading of directories and silently ignore them.
Packit 709fb3
Packit 709fb3
2001-08-21  Alain Magloire
Packit 709fb3
Packit 709fb3
        * lib/malloc.c: New file:
Packit 709fb3
        * lib/realloc.c: New file:
Packit 709fb3
        * lib/Makefile.am: Add malloc.c and realloc.c in EXTRA_DIST.
Packit 709fb3
Packit 709fb3
2001-07-31  Alain Magloire
Packit 709fb3
Packit 709fb3
        * po/*.po: New files from the translation team:
Packit 709fb3
        grep-2.5e.de.po  grep-2.5e.el.po  grep-2.5e.eo.po grep-2.5e.es.po
Packit 709fb3
        grep-2.5e.et.po  grep-2.5e.fr.po  grep-2.5e.gl.po grep-2.5e.it.po
Packit 709fb3
        grep-2.5e.pl.po  grep-2.5e.sl.po
Packit 709fb3
Packit 709fb3
2001-07-31  Andreas Schwab
Packit 709fb3
Packit 709fb3
        * src/grep.c: Fix all uses of error to pass a proper format
Packit 709fb3
        string.
Packit 709fb3
Packit 709fb3
2001-07-29  Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep/src/grep.c (usage): Typos corrected.
Packit 709fb3
        Patches from Santiago Vila.
Packit 709fb3
Packit 709fb3
2001-07-29  Alain Magloire
Packit 709fb3
Packit 709fb3
        David Clissold, wrote:
Packit 709fb3
        a small bug in the GNU grep 2.4.2, which may have gone unnoticed
Packit 709fb3
        because it only causes a failure if building on a system with large
Packit 709fb3
        files enabled (e.g. an "off_t" is a "long long" rather than a "long").
Packit 709fb3
        savedir() takes on off_t argument, but in grepdir() the parameter
Packit 709fb3
        is cast to an (unsigned).  Well, if an off_t is larger than an int,
Packit 709fb3
        the value gets truncated.  This would not normally have an effect on a
Packit 709fb3
        little-endian platform (unless the file is >2GB), but on a big-endian
Packit 709fb3
        system it will always fail.  The external effect is that
Packit 709fb3
        "grep -r foo dir_name" fails with ENOMEM (from malloc() within
Packit 709fb3
        savedir()).
Packit 709fb3
Packit 709fb3
        * grep/src/grep.c (grepdir): Remove the (unsigned) cast when calling
Packit 709fb3
        savedir().
Packit 709fb3
        Patch from David Clissold.
Packit 709fb3
Packit 709fb3
2001-07-29  Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep/doc/grep.texi: In Bugs report use {n,m} for consistency.
Packit 709fb3
        * grep/doc/grep.1: Likewised.
Packit 709fb3
        Noted by Steven Lucy.
Packit 709fb3
Packit 709fb3
2001-04-27  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        * dfa.c (mblen_buf) : New variable contains the amount of remain
Packit 709fb3
        byte of corresponding multibyte character in the input string.
Packit 709fb3
        (SKIP_REMAIN_MB_IF_INITIAL_STATE) : Use mblen_buf.
Packit 709fb3
        (match_anychar) : Use mblen_buf.
Packit 709fb3
        (match_mb_charset) : Use mblen_buf.
Packit 709fb3
        (transit_state_consume_1char) : Use mblen_buf.
Packit 709fb3
        (transit_state) : Use inputwcs to get current (multibyte) character.
Packit 709fb3
        (dfaexec) : Add initialization of mblen_buf.
Packit 709fb3
Packit 709fb3
2001-04-27  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        * dfa.c (addtok) : Set appropriate value to multibyte_prop.
Packit 709fb3
        (dfastate) : Add the initialization of the variable.
Packit 709fb3
        (dfaexec) : Call transit_state if d->fail may transit by
Packit 709fb3
        multibyte characters.
Packit 709fb3
        (transit_state_singlebyte) : Clean up unnecessary code.
Packit 709fb3
        (transit_state_consume_1char) : Likewise.
Packit 709fb3
        (transit_state) : Add checking for word and newline.
Packit 709fb3
Packit 709fb3
2001-04-19  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        * search.c (check_multibyte_string) : Check the case when mbclen == 0.
Packit 709fb3
Packit 709fb3
2001-04-11  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        * search.c (check_multibyte_string) : Check the head of multibyte
Packit 709fb3
        characters, and optimize a bit.
Packit 709fb3
        (EGexecute) : Optimize a bit.
Packit 709fb3
        (Fexecute) : Fix the index.
Packit 709fb3
Packit 709fb3
2001-04-02  Alain Magloire
Packit 709fb3
Packit 709fb3
        * lib/regex.c: Update from GNU lib C, with the changes
Packit 709fb3
        provided by Paul Eggert.
Packit 709fb3
        * lib/posix/regex.h: Likewise.
Packit 709fb3
Packit 709fb3
2001-02-17  Paul Eggert
Packit 709fb3
Packit 709fb3
        Stop trying to support hosts that have nonstandard declarations for
Packit 709fb3
        mbrtowc and/or mbstate_t.  It's not worth the portability hassle.
Packit 709fb3
Packit 709fb3
        * lib/quotearg.c (mbrtowc, mbsinit): Remove workaround macros
Packit 709fb3
        for hosts that have mbrtowc but not mbstate_t, as we now
Packit 709fb3
        insist on proper declarations for both before using mbrtowc.
Packit 709fb3
Packit 709fb3
2001-03-18  Alain Magloire
Packit 709fb3
Packit 709fb3
        * configure.in: Call AC_MBSTATE_T.
Packit 709fb3
        * Makefile.am: Add mbstate_t.m4
Packit 709fb3
        * m4/Makefile.am: Add mbstate_t.m4
Packit 709fb3
        * m4/mbstate_t.m4: New m4 macro.
Packit 709fb3
        * lib/strtol.c: Define CHAR_BITS.
Packit 709fb3
        Uwe H. Steinfeld, Ruslan Ermilov, Volkert Bochert, noted
Packit 709fb3
        that mbstate_t was not define for certain platforms.
Packit 709fb3
Packit 709fb3
2001-03-18  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (fillbuf): Fix storage allocation performance
Packit 709fb3
        bug: buffer was doubling in size in many cases where it didn't
Packit 709fb3
        have to.
Packit 709fb3
Packit 709fb3
2001-03-17  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (fillbuf): Avoid unnecessary division by 2.
Packit 709fb3
        Don't check xrealloc return value; it's guaranteed to be nonzero.
Packit 709fb3
        (fillbuf, grepdir): Use xalloc_die rather than error; it's shorter.
Packit 709fb3
Packit 709fb3
2001-03-17  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c (context_length_arg): error () passing wrong format.
Packit 709fb3
        Spotted by Jim Meyering.
Packit 709fb3
Packit 709fb3
2001-03-07  Alain Magloire
Packit 709fb3
Packit 709fb3
        * README-alpha: Removed reference to GNU tar, add the location
Packit 709fb3
        of the CVSROOT.
Packit 709fb3
Packit 709fb3
2001-03-06  Alain Magloire
Packit 709fb3
Packit 709fb3
        Only the Regex patterns should be split in an array, patterns[].
Packit 709fb3
        The dfa and KWset compiled patterns should remain global and the
Packit 709fb3
        patterns compiled all at once.
Packit 709fb3
Packit 709fb3
        * src/search.c: include "error.h" and "xalloc.h" to get prototyping
Packit 709fb3
        of x*alloc() and error().
Packit 709fb3
        (kwsinit): Reverse to previous behaviour and takes no argument.
Packit 709fb3
        (kwsmusts): Likewised.
Packit 709fb3
        (Gcompile): For the regex pattern, split them and each pattern
Packit 709fb3
        is put in different compiled structure patterns[]. The patterns
Packit 709fb3
        are given to dfacomp() and kwsmusts() as is.
Packit 709fb3
        (Ecompile): Likewised.
Packit 709fb3
        (Fcompile): Reverse to the old behaviour of compiling the enire
Packit 709fb3
        patterns in one shot.
Packit 709fb3
        (EGexecute): If falling to GNU regex for the matching, loop in the
Packit 709fb3
        array of compile patterns[] to find a match.
Packit 709fb3
        (error): Many error () were call with arguments in the wrong order.
Packit 709fb3
        * tests/file.sh: Simple test to check for pattern in files.
Packit 709fb3
Packit 709fb3
        Reaction to bug report fired by Greg Louis <glouis@dynamicro.on.ca>
Packit 709fb3
Packit 709fb3
2001-03-06  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        In multibyte environments, handle multibyte characters as single
Packit 709fb3
        characters in bracket expressions.
Packit 709fb3
Packit 709fb3
        * src/dfa.h (mb_char_classes) : new structure.
Packit 709fb3
        (mbcsets): new variable.
Packit 709fb3
        (nmbcsets): new variable.
Packit 709fb3
        (mbcsets_alloc) : new variable.
Packit 709fb3
        * src/dfa.c (prtok) : handle MBCSET.
Packit 709fb3
        (fetch_wc): new function to fetch a wide character.
Packit 709fb3
        (parse_bracket_exp_mb) : new function to handle multibyte character
Packit 709fb3
        in lex().
Packit 709fb3
        (lex): invoke parse_bracket_exp_mb() for multibyte bracket expression.
Packit 709fb3
        (atom): handle MBCSET.
Packit 709fb3
        (epsclosure): likewise.
Packit 709fb3
        (dfaanalyze): likewise.
Packit 709fb3
        (dfastate): likewise.
Packit 709fb3
        (match_mb_charset): new function to judge whether a bracket match
Packit 709fb3
        with a multibyte character.
Packit 709fb3
        (check_matching_with_multibyte_ops) : handle MBCSET.
Packit 709fb3
        (dfainit): initialize new variables.
Packit 709fb3
        (dfafree): free new variables.
Packit 709fb3
Packit 709fb3
2001-03-04  Alain Magloire
Packit 709fb3
Packit 709fb3
        To get more in sync with other GNU utilities like GNU tar and fetish
Packit 709fb3
        all the supporting functions are now under lib.
Packit 709fb3
        Thanks to Jim Meyering, Volkert Bochert and Paul Eggert for
Packit 709fb3
        the code and the reminders.
Packit 709fb3
Packit 709fb3
        * src/grep.c (fatal): Function removed, using error () from
Packit 709fb3
        lib/error.c instead.
Packit 709fb3
        (usage): Copyright updated.
Packit 709fb3
        (error): Function removed, using error () from lib/error.c instead,
Packit 709fb3
        adjust prototypes.
Packit 709fb3
        (prog): Global variable rename to program_name, to work with new
Packit 709fb3
        lib/error.c.
Packit 709fb3
        (xrealloc): Removed using lib/xmalloc.c.
Packit 709fb3
        (xmalloc): Removed using lib/xmalloc.c
Packit 709fb3
        (main): Register with atexit() to check for error on stdout.
Packit 709fb3
        * configure.in: Check for atexit(), call jm_MALLOC, jm_RELLOC and
Packit 709fb3
        jm_PREREQ_ERROR.
Packit 709fb3
        * tests/bre.awk: Removed the hack to drain the buffer since we
Packit 709fb3
        always fclose(stdout) atexit.
Packit 709fb3
        * tests/ere.awk: Likewise.
Packit 709fb3
        * tests/spencer1.awk: Likewise.
Packit 709fb3
        * bootstrap/Makefile.try: Update the Makefile to reflect the changes
Packit 709fb3
        in the new hierarchy.
Packit 709fb3
Packit 709fb3
        * README-alpha: New File.
Packit 709fb3
        * m4/realloc.m4: New File.
Packit 709fb3
        * m4/malloc.m4: New File.
Packit 709fb3
        * m4/error.m4: New File.
Packit 709fb3
        * m4/Makefile.am: Updated.
Packit 709fb3
        * lib: New directory.
Packit 709fb3
        * lib/Makefile.am: New file.
Packit 709fb3
        * lib/closeout.c: New file.
Packit 709fb3
        * lib/closeout.h: New file.
Packit 709fb3
        * lib/fnmatch.c: New file.
Packit 709fb3
        * lib/fnmatch.h: New file.
Packit 709fb3
        * lib/atexit.c: New file.
Packit 709fb3
        * lib/error.c: New file.
Packit 709fb3
        * lib/error.h: New file.
Packit 709fb3
        * lib/quotearg.h: New file.
Packit 709fb3
        * lib/quotearg.c: New file.
Packit 709fb3
        * lib/xmalloc.c: New file.
Packit 709fb3
        * lib/posix: New directory.
Packit 709fb3
        * lib/posix/Makefile.am: New file.
Packit 709fb3
        * src/getopt.c: Moved to lib.
Packit 709fb3
        * src/getopt1.c: Moved to lib.
Packit 709fb3
        * src/getopt.h: Moved to lib.
Packit 709fb3
        * src/alloca.c: Moved to lib.
Packit 709fb3
        * src/exclude.c: Moved to lib.
Packit 709fb3
        * src/exclude.h: Moved to lib.
Packit 709fb3
        * src/hard-locale.h: Moved to lib.
Packit 709fb3
        * src/hard-locale.c: Moved to lib.
Packit 709fb3
        * src/isdir.c: Moved to lib.
Packit 709fb3
        * src/mechr.c: Moved to lib.
Packit 709fb3
        * src/obstack.c: Moved to lib.
Packit 709fb3
        * src/obstack.h: Moved to lib.
Packit 709fb3
        * src/regex.c: Moved to lib.
Packit 709fb3
        * src/regex.h: Moved to lib.
Packit 709fb3
        * src/posix: Moved to lib.
Packit 709fb3
        * src/posix/regex.h: Moved to lib.
Packit 709fb3
        * src/savedir.h: Moved to lib.
Packit 709fb3
        * src/savedir.c: Moved to lib.
Packit 709fb3
        * src/stpcpy.c: Moved to lib.
Packit 709fb3
        * src/strtoul.c: Moved to lib.
Packit 709fb3
        * src/strtol.c: Moved to lib.
Packit 709fb3
        * src/strtoull.c: Moved to lib.
Packit 709fb3
        * src/strtoumax.c: Moved to lib.
Packit 709fb3
        * src/xstrtol.c: Moved to lib.
Packit 709fb3
        * src/xstrtol.h: Moved to lib.
Packit 709fb3
        * src/xstrtoumax.c: Moved to lib.
Packit 709fb3
Packit 709fb3
2001-03-01  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        Implement the mechanism to match with multibyte characters,
Packit 709fb3
        and use it for 'period' in multibyte environments.
Packit 709fb3
Packit 709fb3
        * dfa.h (mbps): new variable.
Packit 709fb3
        * dfa.c (prtok): handle ANYCHAR.
Packit 709fb3
        (lex): use ANYCHAR for 'period' in multibyte environments.
Packit 709fb3
        (atom): handle ANYCHAR.
Packit 709fb3
        (state_index): initialize mbps in multibyte environments.
Packit 709fb3
        (epsclosure): handle ANYCHAR.
Packit 709fb3
        (dfaanalyze): handle ANYCHAR.
Packit 709fb3
        (dfastate): handle ANYCHAR.
Packit 709fb3
        (realloc_trans_if_necessary): new function.
Packit 709fb3
        (transit_state_singlebyte): new function.
Packit 709fb3
        (match_anychar): new function.
Packit 709fb3
        (check_matching_with_multibyte_ops): new function.
Packit 709fb3
        (transit_state_consume_1char): new function.
Packit 709fb3
        (transit_state): new function.
Packit 709fb3
        (dfaexec): invoke transit_state if expression can match with
Packit 709fb3
        a multibyte character in multibyte environments.
Packit 709fb3
        (dfamust): handle ANYCHAR.
Packit 709fb3
Packit 709fb3
2001-03-01  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/exclude.c: New file.
Packit 709fb3
        * src/exclude.h: New file.
Packit 709fb3
        * src/grep.c (main): Took the GNU tar code to handle
Packit 709fb3
        the option --include, --exclude, --exclude-from.
Packit 709fb3
        Files are check for a match, with exlude_filename ().
Packit 709fb3
        New option --exclude-from.
Packit 709fb3
        * src/savedir.c: Call exclude_filename() to check for
Packit 709fb3
        file pattern exclusion or inclusion.
Packit 709fb3
        * configure.in: --disable-pcre rename to --disable-perl-regexp.
Packit 709fb3
Packit 709fb3
Packit 709fb3
2001-02-25  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Typo corrected.
Packit 709fb3
        Noted by Isamu Hasegawa.
Packit 709fb3
        * src/savedir.c: Typos corrected.
Packit 709fb3
Packit 709fb3
2001-02-22  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/savedir.c (isdir1): New function, calling isdir with
Packit 709fb3
        the correct pathname.
Packit 709fb3
Packit 709fb3
2001-02-19  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        Avoid incorrect state transition in multibyte environments.
Packit 709fb3
Packit 709fb3
        * dfa.h (nmultibyte_prop): new variable.
Packit 709fb3
        (multibyte_prop): new variable.
Packit 709fb3
        * dfa.c (addtok): set inputwcs.
Packit 709fb3
        (dfastate): avoid incorrect state transition in multibyte
Packit 709fb3
        environments.
Packit 709fb3
        (dfaexec): likewise.
Packit 709fb3
        (dfainit): init multibyte_prop.
Packit 709fb3
        (dfafree): free multibyte_prop.
Packit 709fb3
        (inputwcs): new variable.
Packit 709fb3
Packit 709fb3
2001-02-19  Isamu Hasegawa
Packit 709fb3
Packit 709fb3
        Handle a multibyte character followed by '*', '+', and '{n,m}'
Packit 709fb3
        correctly.
Packit 709fb3
Packit 709fb3
        * dfa.c (update_mb_len_index): new function.
Packit 709fb3
        Support for multibyte string.
Packit 709fb3
        (FETCH): call update_mb_len_index.
Packit 709fb3
        (lex): check cur_mb_index not to misunderstand multibyte characters.
Packit 709fb3
        (atom): make a tree from a multibyte character.
Packit 709fb3
        (dfaparse): initialize new variables.
Packit 709fb3
        (mbs): new variable.
Packit 709fb3
        (cur_mb_len): new variable.
Packit 709fb3
        (cur_mb_index): new variable.
Packit 709fb3
Packit 709fb3
2001-02-18  Jim Meyering
Packit 709fb3
Packit 709fb3
        * m4/dosfile.m4 (AC_DOSFILE): Move AC_DEFINEs out of AC_CACHE_CHECK.
Packit 709fb3
Packit 709fb3
2001-02-17  Alain Malgoire
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Document the new options and the new behaviour
Packit 709fb3
        back-references are local.  Use excerpt from Karl Berry regex
Packit 709fb3
        texinfo.
Packit 709fb3
Packit 709fb3
        * bootstrap/Makefile.try: Added xstrtoumax.o xstrtoul.o hard-local.o
Packit 709fb3
Packit 709fb3
2001-02-17  Alain Magloire
Packit 709fb3
Packit 709fb3
        From Guglielmo 'bond' Bondioni :
Packit 709fb3
        The bug was that using a multi line file that contained REs (one per
Packit 709fb3
        line), backreferences in the REs were considered global (to the file)
Packit 709fb3
        and not local (to the line).
Packit 709fb3
        That is, \1 in line n refers to the first \(.\) in the whole file,
Packit 709fb3
        rather than in the line itself.
Packit 709fb3
Packit 709fb3
        From Tapani Tarvainen :
Packit 709fb3
        # Re: grep -e '\(a\)\1' -e '\(b\)\1'
Packit 709fb3
        That's not the way it should work: multiple -e arguments
Packit 709fb3
        should be treated as independent patterns and back references
Packit 709fb3
        should not refer to previous ones.
Packit 709fb3
Packit 709fb3
        From Paul Eggert :
Packit 709fb3
        GNU grep currently does not issue
Packit 709fb3
        diagnostics for the following two cases, both of which are erroneous:
Packit 709fb3
        grep -e '[' -e ']'
Packit 709fb3
        grep '[
Packit 709fb3
        ]'
Packit 709fb3
        POSIX requires a diagnostic in both cases because '[' is not a valid
Packit 709fb3
        regular expression.
Packit 709fb3
Packit 709fb3
        To overcome those problems, grep no longer pass the concatenate
Packit 709fb3
        patterns to GNU regex but rather compile each patterns separately
Packit 709fb3
        and keep the result in an array.
Packit 709fb3
Packit 709fb3
        * src/search.c (patterns): New global variable; a structure array
Packit 709fb3
        holding the compiled patterns.
Packit 709fb3
        Declare function prototypes to minimize error.
Packit 709fb3
        (dfa, kswset, regexbuf, regs): Removed, no longer static globals, but
Packit 709fb3
        rather fields in patterns[] structure per motif.
Packit 709fb3
        (Fcompile): Alloc an entry in patterns[] to hold the regex.
Packit 709fb3
        (Ecompile): Alloc an entry per motif in the patterns[] array.
Packit 709fb3
        (Gcompile): Likewise.
Packit 709fb3
        (EGexecute): Loop through of array of patterns[] for a match.
Packit 709fb3
Packit 709fb3
2001-02-17  Alain Magloire
Packit 709fb3
Packit 709fb3
        From Bernd Strieder :
Packit 709fb3
        # tail -f logfile | grep important | do_something_urgent
Packit 709fb3
        # tail -f logfile | grep important | do_something_taking_very_long
Packit 709fb3
        If grep does full buffering in these cases then the urgent operation
Packit 709fb3
        does not happen as it should in the first case, and in the second case
Packit 709fb3
        time is lost due to waiting for the buffer to be filled.
Packit 709fb3
        This is clearly spoken not grep's fault in the first place, but libc's.
Packit 709fb3
        There is a heuristic in libc that make a stream line-buffered only if a
Packit 709fb3
        terminal is on the other end. This doesn't take care of the cases where
Packit 709fb3
        this connection is somehow indirect.
Packit 709fb3
Packit 709fb3
        * src/grep.c (line_buffered): new option variable.
Packit 709fb3
        (prline): if line_buffered is set fflush() is call.
Packit 709fb3
        (usage): line_buffered new option.
Packit 709fb3
        Input from Paul Eggert, doing setvbuf() may not be portable
Packit 709fb3
        and breaks grep -z.
Packit 709fb3
Packit 709fb3
2001-02-16  Alain Magloire
Packit 709fb3
Packit 709fb3
        Patch from Isamu Hasegawa, for multibyte support.
Packit 709fb3
        This patch prevent kwset_matcher from following problems.
Packit 709fb3
        For example, in SJIS encoding, one character has the codepoint 0x895c.
Packit 709fb3
        So the second byte of the character can match with '\' incorrectly.
Packit 709fb3
        And in eucJP encoding, there are the characters whose codepoints are
Packit 709fb3
        0xa5b9, 0xa5c8.  On the other hand, there is one character whose
Packit 709fb3
        codepoint is 0xb9a5.  So 0xb9a5 can match with 2nd byte of 0xa5b9
Packit 709fb3
        and 1st byte of 0xa5c8.
Packit 709fb3
Packit 709fb3
        * configure.in: Add check for mbrtowc.
Packit 709fb3
        * src/search.c (check_multibyte_string): new function.
Packit 709fb3
        Support for multibyte string.
Packit 709fb3
        (EGexecute): call check_multibyte_string when kwset is set.
Packit 709fb3
        (Fexecute): call to check_multibyte_string.
Packit 709fb3
        (MBS_SUPPORT): new macro.
Packit 709fb3
        (MB_CUR_MAX): new macro.
Packit 709fb3
Packit 709fb3
2001-02-16  Alain Magloire
Packit 709fb3
Packit 709fb3
        * djgpp/config.bat: Fix for 4dos.com.
Packit 709fb3
        * m4/dosfile.m4 (HAVE_DOS_FILE_CONTENTS): Was not set.
Packit 709fb3
        Bugs noted and patched by Juan Manuel Guerrero.
Packit 709fb3
Packit 709fb3
2001-02-16  Alain Magloire
Packit 709fb3
Packit 709fb3
        A much requested feature, the possibility to select
Packit 709fb3
        files when doing recurse :
Packit 709fb3
        # find . -name "*.c" | xargs grep main {}
Packit 709fb3
        # grep --include=*.c main .
Packit 709fb3
        # find . -not -name "*.c" | xargs grep main {}
Packit 709fb3
        # grep --exclude=*.c main .
Packit 709fb3
Packit 709fb3
        * src/grep.c (short_options): -R equivalent to -r.
Packit 709fb3
        (#ifdef) : Fix some inconsistencies in the use of #ifdefs, prefer
Packit 709fb3
        #if defined() wen possible.
Packit 709fb3
        (long_options): Add --color, --include and exclude.
Packit 709fb3
        (Usage): Description of new options.
Packit 709fb3
        (color): Rename color variable to color_option.
Packit 709fb3
        Removed 'always|never|auto' arguments, not necessary for grep.
Packit 709fb3
        (exclude_pattern): new variable, holder for the file pattern.
Packit 709fb3
        (include_pattern): new variable, hoder for the file pattern.
Packit 709fb3
        * src/savedir.c: Signature change, take two new argmuments.
Packit 709fb3
        * doc/grep.texi: Document, new options.
Packit 709fb3
        * doc/grep.man: Document, new options.
Packit 709fb3
Packit 709fb3
2001-02-09  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c (long_options): Added equivalent to -r with -R.
Packit 709fb3
        * src/grep.c (usage): added --color and --colour.
Packit 709fb3
        Noted with patch from, H.Merijn Brand and Wichert Akkerman.
Packit 709fb3
Packit 709fb3
2001-02-09  Alain Magloire
Packit 709fb3
Packit 709fb3
        Patch from Ulrich Drepper to provide hilighting.
Packit 709fb3
Packit 709fb3
        * src/grep.c: New option --color.
Packit 709fb3
        (color): New static var.
Packit 709fb3
        (COLOR_OPTION): new constant.
Packit 709fb3
        (grep_color): new static var.
Packit 709fb3
        (prline): Now when color is set prline() will call the current matcher
Packit 709fb3
        to find the offset of the matching string.
Packit 709fb3
        * src/savedir.c: Take advantage of _DIRENT_HAVE_TYPE if supported.
Packit 709fb3
        * src/search.c (EGexecute, Fexecute, Pexecute): Take a new argument
Packit 709fb3
        when doing exact match for the color hiligting.
Packit 709fb3
Packit 709fb3
2000-09-01  Brian Youmans
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Typo fixes.
Packit 709fb3
Packit 709fb3
2000-08-30  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.texi (Usage): Talk about what "grep -r hello *.c"
Packit 709fb3
        means.
Packit 709fb3
Packit 709fb3
2000-08-20  Paul Eggert
Packit 709fb3
Packit 709fb3
        Handle range expressions correctly even when they match
Packit 709fb3
        strings with two or more characters.
Packit 709fb3
Packit 709fb3
        * src/dfa.h (CRANGE): New enum value.  Comment fix.
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Include <locale.h> if HAVE_SETLOCALE.
Packit 709fb3
        Include "hard-locale.h".
Packit 709fb3
        (prtok): Print CRANGE.
Packit 709fb3
        (hard_LC_COLLATE): New static var.
Packit 709fb3
        (lex): Return CRANGE when parsing a character range in a hard locale.
Packit 709fb3
        Don't use strcoll; it's no longer needed and wasn't correct anyway.
Packit 709fb3
        Use unsigned rather than token to hold unsigned chars.
Packit 709fb3
        (addtok): Comment fix.
Packit 709fb3
        (atom): Treat a CRANGE as if it were (.\1), approximately.
Packit 709fb3
        (dfaparse): Initialize hard_LC_COLLATE.
Packit 709fb3
Packit 709fb3
        * src/Makefile.am (base_sources): Add hard-locale.c, hard-locale.h.
Packit 709fb3
Packit 709fb3
        * src/hard-locale.c, src/hard-locale.h: New files, taken from
Packit 709fb3
        textutils.
Packit 709fb3
Packit 709fb3
2000-08-20  Paul Eggert
Packit 709fb3
Packit 709fb3
        * tests/Makefile.am (TESTS_ENVIRONMENT): Add LC_ALL=C, since
Packit 709fb3
        some of the tests assume the C locale.
Packit 709fb3
Packit 709fb3
2000-08-16  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/search.c (Gcompile, Ecompile): -x overrides -w, for
Packit 709fb3
        consistency with fgrep.  Don't assume that sizes fit in 'int'.
Packit 709fb3
        Fix comments to match code.
Packit 709fb3
Packit 709fb3
2000-06-06  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (grepdir): Don't look at st_dev when testing for
Packit 709fb3
        Mingw32 bug.
Packit 709fb3
Packit 709fb3
2000-06-05  Paul Eggert
Packit 709fb3
Packit 709fb3
        Port to Mingw32, based on suggestions from Christian Groessler
Packit 709fb3
        <cpg@aladdin.de>.
Packit 709fb3
Packit 709fb3
        * src/isdir.c: New file, taken from fileutils.
Packit 709fb3
Packit 709fb3
        * src/Makefile.am (base_sources): Add isdir.c.
Packit 709fb3
Packit 709fb3
        * src/grep.c (grepfile): Use isdir instead of doing it inline.
Packit 709fb3
        (grepdir): Suppress ancestor check if the directory's inode and device
Packit 709fb3
        are both zero, as that occurs only on Mingw32 which doesn't support
Packit 709fb3
        inode or device.
Packit 709fb3
Packit 709fb3
        * src/system.h (isdir): New decl.
Packit 709fb3
        (is_EISDIR): Depend on HAVE_DIR_EACCES_BUG, not D_OK.
Packit 709fb3
        Use isdir, not access.
Packit 709fb3
Packit 709fb3
2000-06-02  Paul Eggert
Packit 709fb3
Packit 709fb3
        Problen noted by Gerald Stoller <gerald_stoller@hotmail.com>
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): POSIX says that -q overrides -l, which
Packit 709fb3
        in turn overrides the other output options.  Fix grep to
Packit 709fb3
        behave that way.
Packit 709fb3
Packit 709fb3
2000-05-27  Paul Eggert
Packit 709fb3
Packit 709fb3
        Simplify and tune the buffer allocation strategy.  Do not reserve a
Packit 709fb3
        large save area: reserve only enough bytes to hold the residue, plus
Packit 709fb3
        page alignment.  Put a newline sentinel before the buffer, for speed
Packit 709fb3
        when searching backwards for newline.
Packit 709fb3
Packit 709fb3
        * src/grep.c (ubuffer, bufsalloc, PREFERRED_SAVE_FACTOR, page_alloc):
Packit 709fb3
        Remove.  All uses changed.
Packit 709fb3
        (INITIAL_BUFSIZE): New macro.
Packit 709fb3
        (reset, fillbuf): Use simpler buffer allocation strategy.
Packit 709fb3
        (reset): Check for preposterously large pagesize that would cause
Packit 709fb3
        later calculations to overflow.
Packit 709fb3
        (fillbuf): Do not resize buffer if there's room at the end for
Packit 709fb3
        at least one more page.  This greatly increases performance when
Packit 709fb3
        reading from non-regular files that contain no newlines.
Packit 709fb3
        When growing the buffer, double its size instead of using a
Packit 709fb3
        more complicated algorithm.
Packit 709fb3
        (prtext, grep): Speed up by relying on the newline sentinel before the
Packit 709fb3
        start of the buffer.
Packit 709fb3
        (grep): When looking backwards for the last newline in a buffer,
Packit 709fb3
        stop when we hit the residue, since it can't contain a newline.
Packit 709fb3
        This avoids an O(N**2) algorithm when reading binary data from
Packit 709fb3
        a pipe.  Use a sentinel to speed up the backward search for newline.
Packit 709fb3
        (nlscan): Undo previous change; it wasn't needed and just complicates
Packit 709fb3
        and slows down the code a tad.
Packit 709fb3
Packit 709fb3
2000-05-24  Paul Eggert
Packit 709fb3
Packit 709fb3
        Handle very large input counts better. Bug noted by Jim Meyering.
Packit 709fb3
Packit 709fb3
        * src/grep.c (totalcc, totalnl): Use uintmax_t, not off_t.
Packit 709fb3
        (add_count): New function.
Packit 709fb3
        (nlscan, prline, grep): Use it to check line and byte count overflows.
Packit 709fb3
        (nlscan, grep): Don't keep track of counts when not asked to; this
Packit 709fb3
        avoids unnecessary overflow diagnostics.
Packit 709fb3
        (print_offset_sep): Now takes args of type uintmax_t and char,
Packit 709fb3
        not off_t and int.
Packit 709fb3
Packit 709fb3
2000-05-16  Paul Eggert
Packit 709fb3
Packit 709fb3
        Problem reported by Bob Proulx <rwp@hprwp.fc.hp.com>, this patch
Packit 709fb3
        is base on his finding, with appropriate corrections.
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Fix bug: -x and -w matched even when no
Packit 709fb3
        patterns were specified.
Packit 709fb3
        * tests/empty.sh: Test for -x and -w bug in grep 2.4.2.
Packit 709fb3
Packit 709fb3
2000-04-24  Paul Eggert
Packit 709fb3
Packit 709fb3
        POSIX conformance fixes: grep -q now exits with status zero
Packit 709fb3
        if an input line is selected, even if an error also occurs.
Packit 709fb3
        grep -s no longer affects exit status.
Packit 709fb3
Packit 709fb3
        * src/grep.c (suppress_errors): Move definition earlier so
Packit 709fb3
        that suppressible_error can use it.
Packit 709fb3
        (suppressible_error): New function.
Packit 709fb3
        (exit_on_match): New var.
Packit 709fb3
        (grepbuf): If exit_on_match is nonzero, exit with status zero
Packit 709fb3
        immediately.
Packit 709fb3
        (grep, grepfile, grepdir): Invoke suppressible_error.
Packit 709fb3
        (main): -q sets exit_on_match.
Packit 709fb3
Packit 709fb3
        * doc/grep.1, doc/grep.texi, NEWS:
Packit 709fb3
        Document -q's behavior as required by POSIX.
Packit 709fb3
Packit 709fb3
        * tests/status.sh:
Packit 709fb3
        Test for -q and -s behavior as conforming to POSIX.
Packit 709fb3
Packit 709fb3
2000-04-20  Paul Eggert
Packit 709fb3
Packit 709fb3
        * tests/Makefile.am (TESTS_ENVIRONMENT):
Packit 709fb3
        Set GREP_OPTIONS to the empty string.
Packit 709fb3
Packit 709fb3
2000-04-20  Paul Eggert
Packit 709fb3
Packit 709fb3
        * tests/status.sh: Fix typo: test -b -> test -r.
Packit 709fb3
Packit 709fb3
2000-04-20  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/dfa.c (lex):
Packit 709fb3
        Do not assume that [c] is equivalent to [c-c]; this isn't true
Packit 709fb3
        if LC_COLLATE specifies that some characters are equivalent.
Packit 709fb3
        (setbit_case_fold): New function.
Packit 709fb3
        (lex): Use it to simplify the code a bit.
Packit 709fb3
Packit 709fb3
2000-04-17  Paul Eggert
Packit 709fb3
Packit 709fb3
        Do CRLF munging only if HAVE_DOS_FILE_CONTENTS, instead of
Packit 709fb3
        having it depend on O_BINARY (which leads to incorrect results
Packit 709fb3
        on BeOS, VMS, and MacOS).
Packit 709fb3
Packit 709fb3
        * bootstrap/Makefile.try (DEFS): Add -DHAVE_DOS_FILE_CONTENTS.
Packit 709fb3
        * src/system.h (SET_BINARY): Define only if HAVE_DOS_FILE_CONTENTS.
Packit 709fb3
        (O_BINARY): Do not define.
Packit 709fb3
Packit 709fb3
        * m4/dosfile.m4: Define HAVE_DOS_FILE_CONTENTS if it appears we're
Packit 709fb3
        using DOS.
Packit 709fb3
Packit 709fb3
        * src/grep.c (undossify_input, fillbuf, dosbuf.c, prline, main):
Packit 709fb3
        Depend on HAVE_DOS_FILE_CONTENTS, not O_BINARY, when handling CRLF
Packit 709fb3
        matters.
Packit 709fb3
        (grepfile, main): Depend on SET_BINARY, not O_BINARY, when
Packit 709fb3
        handling binary files on hosts that care about text versus binary.
Packit 709fb3
Packit 709fb3
2000-04-17  Paul Eggert
Packit 709fb3
Packit 709fb3
        * lib/getpagesize.h (getpagesize): Define to B_PAGE_SIZE if
Packit 709fb3
        __BEOS__ is defined.  Based on a fix by Bruno Haible
Packit 709fb3
        <haible@clisp.cons.org>.
Packit 709fb3
Packit 709fb3
2000-04-17  Bruno Haible
Packit 709fb3
Packit 709fb3
        * src/system.h [BeOS]: Ignore O_BINARY.
Packit 709fb3
        * src/getpagesize.h [BeOS]: Define getpagesize() as B_PAGE_SIZE.
Packit 709fb3
Packit 709fb3
2000-04-10  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.1, doc/grep.texi, NEWS: -C now requires an operand.
Packit 709fb3
        * src/grep.c (short_options, long_options, main, usage): Likewise.
Packit 709fb3
        (context_length_arg): Renamed from ck_atoi.  Now reports an error
Packit 709fb3
        and exits if the number is out of range for a context length.
Packit 709fb3
        (get_nondigit_option): New function, which checks for overflow
Packit 709fb3
        correctly, and which does not parse nonadjacent strings of digits
Packit 709fb3
        into a single number.
Packit 709fb3
        (main): Use get_nondigit_option instead of doing the code inline.
Packit 709fb3
        With -A, -B, and -C, optarg is now guaranteed to be nonzero.
Packit 709fb3
Packit 709fb3
2000-04-08  Paul Eggert
Packit 709fb3
Packit 709fb3
        Now that we know that the input is always terminated by a
Packit 709fb3
        newline before the matching algorithms see it, clean up the
Packit 709fb3
        matching algorithms so that they no longer need to modify the
Packit 709fb3
        input by inserting a sentinel newline, and no longer worry
Packit 709fb3
        about running off the end of the buffer due to a missing sentinel.
Packit 709fb3
Packit 709fb3
        * src/grep.c (nlscan, prpending, prtext, grepbuf): Do not
Packit 709fb3
        worry about running off the end of the input buffer, since
Packit 709fb3
        it's now guaranteed to end in the sentinel newline.
Packit 709fb3
        * src/search.c (EGexecute, Pexecute): Likewise.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (prtok, dfasyntax, dfaparse, copy, merge, state_index,
Packit 709fb3
        epsclosure, dfaexec, dfacomp):
Packit 709fb3
        Change many instances of "T *" to "T const *", to catch
Packit 709fb3
        any inadvertent programming errors made during this conversion.
Packit 709fb3
        * src/dfa.h (dfacomp, dfaexec, dfaparse): Likewise.
Packit 709fb3
        * src/grep.c (struct stats.parent, long_options, grepdir,
Packit 709fb3
        compile, execute, fillbuf, lastnl, lastout, nlscan, prline,
Packit 709fb3
        prpending, prtext, grepbuf, grep, grepfile, grepdir): Likewise.
Packit 709fb3
        * src/grep.h (struct matcher.compile, struct matcher.execute):
Packit 709fb3
        Likewise.
Packit 709fb3
        * src/kwset.c (struct kwset.trans, kwsalloc, kwsincr, treefails,
Packit 709fb3
        treedelta, hasevery, treenext, bmexec, cwexec, kwsexec): Likewise.
Packit 709fb3
        * src/kwset.h (kwsalloc, kwsincr, kwsexec): Likewise.
Packit 709fb3
        * src/search.c (kwsmusts, Gcompile, Ecompile, EGexecute, Pcompile,
Packit 709fb3
        Pexecute): Likewise.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (dfaexec):
Packit 709fb3
        Use size_t, not char *, to avoid worrisome casts to convert
Packit 709fb3
        char const * to char *.
Packit 709fb3
        * src/dfa.h (dfaexec): Likewise.
Packit 709fb3
        * src/grep.c (execute): Likewise.
Packit 709fb3
        * src/grep.h (execute): Likewise.
Packit 709fb3
        * src/kwset.c (bmexec, cwexec, kwsexec): Likewise.
Packit 709fb3
        * src/kwset.h (struct kwsmatch.offset, kwsalloc, kwsincr,
Packit 709fb3
        kwsexec): Likewise.
Packit 709fb3
        * src/search.c (EGexecute, Fexecute, Pexecute): Likewise.
Packit 709fb3
Packit 709fb3
        * src/dfa.h (_PTR_T): Depend on defined __STDC__, not __STDC__.
Packit 709fb3
        (PARAMS): Depend on PROTOTYPES, not __STDC__.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (dfasyntax): Last arg is unsigned char, not int.
Packit 709fb3
        * src/dfa.h (dfasyntax): Likewise.
Packit 709fb3
Packit 709fb3
        * src/dfa.h (struct dfa): Remove member newlines; no longer needed.
Packit 709fb3
        * src/dfa.c (build_state, dfaexec, dfafree): Do not worry
Packit 709fb3
        about special newline state.
Packit 709fb3
Packit 709fb3
        * src/search.c (matchers): Move definition to end of file, so
Packit 709fb3
        that we don't need forward decls.
Packit 709fb3
        (lastexact): Remove.
Packit 709fb3
        (kwset_exact_matches): New var; subsumes old lastexact var.
Packit 709fb3
        All uses changed.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (index): Remove macro.
Packit 709fb3
        (REALLOC_IF_NECESSARY): Skip unnecessary test.
Packit 709fb3
        (tstbit, setbit, clrbit): Declare arg to be unsigned, to help compiler.
Packit 709fb3
        (copyset, zeroset, equal): Use C builtin primitives, to help compiler.
Packit 709fb3
        (dfaexec): Do not modify input string.
Packit 709fb3
        Remove newline parameter; no longer needed.
Packit 709fb3
        (comsubs): Use strchr, not index.
Packit 709fb3
Packit 709fb3
        * src/grep.h (matchers): Use fixed name size, not pointer (as
Packit 709fb3
        there's no need for the extra flexibility).  All uses changed.
Packit 709fb3
Packit 709fb3
        * src/kwset.h (struct kwsmatch.offset): Renamed from beg, with
Packit 709fb3
        change of type to size_t.  All uses changed.
Packit 709fb3
Packit 709fb3
        * src/grep.c (reset): No longer need kludge for dfaexec.  Simplify.
Packit 709fb3
        (reset, grepbuf): Adjust to new interface for 'execute'.
Packit 709fb3
        (install_matcher): List is now terminated by null compile,
Packit 709fb3
        not null name.
Packit 709fb3
        Do not invoke setrlimit if that wouldn't change the limit.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (xcalloc, xmalloc, xrealloc, prtok, tstbit, setbit,
Packit 709fb3
        clrbit, copyset, zeroset, notset, equal, charclass_index,
Packit 709fb3
        looking_at, lex, addtok, atom, nsubtoks, copytoks, closure,
Packit 709fb3
        branch, regexp, copy, insert, merge, delete, state_index,
Packit 709fb3
        build_state, build_state_zero, icatalloc, icpyalloc, istrstr,
Packit 709fb3
        ifree, freelist, enlist, comsubs, addlists, inboth):
Packit 709fb3
        Remove forward decls; no longer needed.
Packit 709fb3
        * src/grep.c (ck_atoi, usage, error, setmatcher,
Packit 709fb3
        install_matcher, prepend_args, prepend_default_options,
Packit 709fb3
        page_alloc, reset, fillbuf, grepbuf, prtext, prpending, prline,
Packit 709fb3
        print_offset_sep, nlscan, grep, grepfile): Likewise.
Packit 709fb3
        * src/kwset.c (enqueue, treefails, treedelta, hasevery,
Packit 709fb3
        treenext, bmexec, cwexec): Likewise.
Packit 709fb3
        * src/search.c (Gcompile, Ecompile, EGexecute, Fcompile, Fexecute,
Packit 709fb3
        Pcompile, Pexecute, kwsinit): Likewise.
Packit 709fb3
Packit 709fb3
        * src/search.c (Pcompile): Do not assume newly allocated
Packit 709fb3
        storage is zeroed.
Packit 709fb3
Packit 709fb3
2000-04-06  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.1, doc/grep.texi, NEWS: Improve the explanation of
Packit 709fb3
        locale-dependent behavior of range expressions.  Mention
Packit 709fb3
        LC_COLLATE, since this affects range expressions.
Packit 709fb3
Packit 709fb3
2000-03-26  Paul Eggert
Packit 709fb3
Packit 709fb3
        * Makefile.am (ACINCLUDE_INPUTS): Add decl.m4, inttypes_h.m4,
Packit 709fb3
        uintmax_t.m4, ulonglong.m4, xstrtoumax.m4.
Packit 709fb3
        * m4/Makefile.am (EXTRA_DIST): Likewise.
Packit 709fb3
Packit 709fb3
        * src/Makefile.am (base_sources):
Packit 709fb3
        Add xstrtol.c, xstrtol.h, xstrtoumax.c.
Packit 709fb3
        (EXTRA_DIST): Add strtol.c.
Packit 709fb3
Packit 709fb3
        * configure.in (jm_AC_TYPE_UINTMAX_T, jm_AC_PREREQ_XSTRTOUMAX,
Packit 709fb3
        HAVE_DECL_STRTOUL, HAVE_DECL_STRTOULL): Add.
Packit 709fb3
        (AC_REPLACE_FUNCS): Add strtoul.
Packit 709fb3
Packit 709fb3
        * src/grep.c: Include xstrtol.h.
Packit 709fb3
        (ck_atio): Use xstrtoumax and do proper overflow checking.
Packit 709fb3
        (max_count, outleft): Now off_t, not int.
Packit 709fb3
        (main): Likewise. Use xstrtoumax to convert max_count from string.
Packit 709fb3
Packit 709fb3
        * acconfig.h (HAVE_DECL_STRTOUL, HAVE_DECL_STRTOULL): New #undefs.
Packit 709fb3
        (HAVE_STPCPY, ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
Packit 709fb3
        HAVE_LC_MESSAGES): Remove.
Packit 709fb3
Packit 709fb3
        * m4/decl.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4,
Packit 709fb3
        m4/xstrtoumax.m4, src/strtol.c, src/strtoul.c, src/strtoull.c,
Packit 709fb3
        src/strtoumax.c, src/xstrtol.c, src/xstrtol.h, src/xstrtoumax.c:
Packit 709fb3
        New files, taken unchanged from textutils, fileutils, sh-utils
Packit 709fb3
        and/or tar.
Packit 709fb3
Packit 709fb3
2000-03-23  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/search.c (Pcompile): Add support for NUL bytes in
Packit 709fb3
        Perl regular expressions.
Packit 709fb3
Packit 709fb3
2000-03-23  Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS, doc/grep.1, doc/grep.texi: Change --pcre to --perl-regexp.
Packit 709fb3
        * src/grep.c (long_options, usage): Likewise.
Packit 709fb3
Packit 709fb3
        * doc/grep.1, doc/grep.texi: Remove pgrep program.
Packit 709fb3
        * src/Makefile.am (bin_PROGRAMS): Likewise.
Packit 709fb3
        (pgrep_SOURCES): Remove.
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Rename matcher from "pgrep" to "perl".
Packit 709fb3
        * src/search.c (matchers): Likewise.
Packit 709fb3
Packit 709fb3
        * src/search.c: Do not include stdio.h; no longer needed.
Packit 709fb3
        (NILP): Remove.
Packit 709fb3
        (sub): No longer static.
Packit 709fb3
        (n_pcre): Remove.
Packit 709fb3
        (cre): No longer an array.  Present only if HAVE_LIBPCRE.
Packit 709fb3
        (extra): New variable.
Packit 709fb3
        (Pcompile): Use fatal to report errors.
Packit 709fb3
        This also removes a possible core dump.
Packit 709fb3
        Add checks (marked FIXME) for restrictions in pcre.
Packit 709fb3
        Use pcre_maketables for proper localized behavior.
Packit 709fb3
        (Pcompile, Pexecute): Use GNU coding style.
Packit 709fb3
        The argument is a single pattern, not a list of patterns separated
Packit 709fb3
        by newlines; this is for consistency with grep and egrep.
Packit 709fb3
        Use pcre_study for speed.
Packit 709fb3
        (Pexecute): Abort if we lack pcre.
Packit 709fb3
        Abort if pcre_exec reports an impossible error.
Packit 709fb3
        Use code similar to the rest of search.c
Packit 709fb3
        to narrow down to the line we've found.
Packit 709fb3
Packit 709fb3
2000-03-21  Alain Magloire
Packit 709fb3
Packit 709fb3
        * configure.in: added AC_CHECK_LIB(pcre, pcre_exec)
Packit 709fb3
        * ChangeLog: Typos corrected.
Packit 709fb3
        * src/search.c: new MACRO HAVE_LIBPCRE
Packit 709fb3
Packit 709fb3
2000-03-21  H.Merijn Brand
Packit 709fb3
Packit 709fb3
        * src/Makefile.am(bin_PROGRAMS): added pgrep and new macro
Packit 709fb3
        pgrep_SOURCES.
Packit 709fb3
        * src/search.c: new functions Pcompile() and Pexecute()
Packit 709fb3
        to support PCRE.  Update matcher[] array for pgrep.
Packit 709fb3
        * src/grep.c: new short and long option --pcre and -P.
Packit 709fb3
        usage() updated.
Packit 709fb3
Packit 709fb3
2000-03-21  Bastiaan Stougie
Packit 709fb3
Packit 709fb3
        Improvement of the -m or --max-count option. Now works for NUM > 1 and
Packit 709fb3
        prints trailing context for the last matching line.
Packit 709fb3
Packit 709fb3
        * src/grep.c
Packit 709fb3
        (after_last_match): Is a new off_t variable that replaces inputhwm
Packit 709fb3
        to retain the correct input offset even after a call to fillbuf. Note
Packit 709fb3
        that after_last_match has a different meaning than inputhwm:
Packit 709fb3
        it always points to the offset in the input of the first byte after
Packit 709fb3
        the last matching line, and is 0 if no matching line has been found
Packit 709fb3
        yet.
Packit 709fb3
        (grep): Print trailing context after the NUMth match when the -m NUM
Packit 709fb3
        option is used.
Packit 709fb3
        (grep): Added comment. Should have been commented already.
Packit 709fb3
        (grepbuf): Now updates outleft correctly. This fixes the bug that the
Packit 709fb3
        -m NUM option did not stop after NUM lines for NUM greater than 1.
Packit 709fb3
        (grepbuf, prtext): Now update after_last_match instead of inputhwm.
Packit 709fb3
        (fillbuf): No longer updates inputhwm.
Packit 709fb3
        (prpending): When outputting trailing context of the max_count-th
Packit 709fb3
        matching line, stop at the first matching line.
Packit 709fb3
        (grepfile): Seek to after_last_match or eof, depending on the values
Packit 709fb3
        of outleft and bufmapped.
Packit 709fb3
        (usage): added the -m or --max-count option to the help message.
Packit 709fb3
        * doc/grep.texi, doc/grep.1: Document the change of the -m option.
Packit 709fb3
Packit 709fb3
2000-03-17  Paul Eggert
Packit 709fb3
Packit 709fb3
        Add new -m or --max-count option, based on a suggestion by
Packit 709fb3
        Bastiaan Stougie.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi, doc/grep.1: Document it.
Packit 709fb3
        * src/grep.c (short_options, long_options, main): Add it.
Packit 709fb3
        (inputhwm): New variable.
Packit 709fb3
        (fillbuf, prtext, grepbuf): Set it.
Packit 709fb3
        (bufmapped): Now a macro (defined to zero) if HAVE_MMAP is not defined.
Packit 709fb3
        (max_count, outleft): New variables.
Packit 709fb3
        (prtext, grepbuf, grep): Don't output more than outleft lines.
Packit 709fb3
        (grepfile): If grepping standard input, seek to the limit of what
Packit 709fb3
        we've read before exiting.  This fixes a bug with mmapped input,
Packit 709fb3
        and is needed for proper -m support.
Packit 709fb3
        (main): Exit immediately if -m 0 is specified.
Packit 709fb3
Packit 709fb3
2000-03-08  Alain Magloire
Packit 709fb3
Packit 709fb3
        * configure.in: version 2.4.2
Packit 709fb3
Packit 709fb3
2000-03-07  Paul Eggert
Packit 709fb3
Packit 709fb3
        * Make intl subdirectory match fileutils, tar, etc.;
Packit 709fb3
        see intl/ChangeLog for details.
Packit 709fb3
Packit 709fb3
        * src/getpagesize.h: Reformat to match latest fileutils.
Packit 709fb3
Packit 709fb3
        * src/savedir.c (savedir): Work even if directory size is
Packit 709fb3
        negative; this can happen with some NFS screwups.
Packit 709fb3
Packit 709fb3
2000-03-03  Jim Meyering
Packit 709fb3
Packit 709fb3
        * regex.m4: Make sure re_compile_pattern accepts patterns like '{1'.
Packit 709fb3
Packit 709fb3
2000-03-02  Alain Magloire
Packit 709fb3
Packit 709fb3
        * 2.4.1 Release
Packit 709fb3
Packit 709fb3
2000-02-25  Paul Eggert
Packit 709fb3
Packit 709fb3
        * configure.in (LIBOBJS): Work around automake 1.4 bug:
Packit 709fb3
        regex.c wasn't being passed through ansi2knr on pre-ANSI hosts.
Packit 709fb3
        (ac_use_included_regex): Fix typo in warning.
Packit 709fb3
        * src/Makefile.am (EXTRA_DIST): Remove regex.c, as the LIBOBJS
Packit 709fb3
        workaround means that automake now puts regex.c into DIST_COMMON.
Packit 709fb3
Packit 709fb3
2000-02-25  Alain Magloire
Packit 709fb3
Packit 709fb3
        * po/*.po: update of the PO files.
Packit 709fb3
Packit 709fb3
2000-02-22  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * doc/grep.1:  Two small glitches(typos).
Packit 709fb3
Packit 709fb3
2000-02-18  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * djgpp/config.site (prefix, INSTALL): Use /dev/env/DJDIR instead
Packit 709fb3
        of ${DJDIR}, so that the produced Makefile's work on any DJGPP
Packit 709fb3
        installation.
Packit 709fb3
Packit 709fb3
2000-01-30 Alain Magloire
Packit 709fb3
Packit 709fb3
        * doc/grep.1:  corrected typo.
Packit 709fb3
        Noted by Ruslan Ermilov.
Packit 709fb3
Packit 709fb3
2000-01-30 Alain Magloire
Packit 709fb3
Packit 709fb3
        * vms/Makefile.am: added config_vms.h to EXTRA_DIST.
Packit 709fb3
        * vms/config_vms.h: New File, contains macros specific to VMS and
Packit 709fb3
        avoid namespace collision with operating system supplied C library.
Packit 709fb3
        * vms/make.com: Better compiler auto-detection; information for builds
Packit 709fb3
        on pre-OpenVMS 7.x systems; general overhaul.
Packit 709fb3
        * src/getpagesize.h: Reinstate support for different pagesizes on
Packit 709fb3
        VAX and Alpha. Work around problem with DEC C compiler.
Packit 709fb3
        * src/vms_fab.c: Cast to some assigments; fixed typo argcp vs. argp.
Packit 709fb3
        * src/vms_fab.h: Added new include files to avoid warnings about
Packit 709fb3
        undefined function prototypes.
Packit 709fb3
        Those patches were provided by Martin P.J. Zinser (zinser@decus.de).
Packit 709fb3
Packit 709fb3
2000-01-30  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Update copyright notice.
Packit 709fb3
Packit 709fb3
2000-01-28  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage):  The example "%s -i 'hello.*world' could
Packit 709fb3
        lead to confusion when progname is 'fgrep.
Packit 709fb3
        Noted by Akim Demaille.
Packit 709fb3
Packit 709fb3
        * configure.in: Reenable, jm_INCLUDE_REGEX() since we now
Packit 709fb3
        track GNU lib C.
Packit 709fb3
        * src/Makefile.am: EXTRA_DIST new macros with regex.c regex.h.
Packit 709fb3
        Requested By Ulrich Drepper.
Packit 709fb3
Packit 709fb3
2000-01-25  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (grep): If the final byte of an input file is not
Packit 709fb3
        a newline, grep now silently supplies one.
Packit 709fb3
        * doc/grep.texi, NEWS: Likewise.
Packit 709fb3
Packit 709fb3
2000-01-25  Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS, doc/grep.1, doc/grep.texi: Add -I option.
Packit 709fb3
        * src/grep.c (short_options, usage, main): Likewise.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Fix some incorrect references to ASCII.
Packit 709fb3
Packit 709fb3
2000-01-25  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.1: Simplify synopsis; sort options; mention
Packit 709fb3
        environment variables; clean up some minor gaffes.
Packit 709fb3
Packit 709fb3
2000-01-25  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.texi:
Packit 709fb3
        Fix some errors in description of [:print:] and the like.
Packit 709fb3
Packit 709fb3
2000-01-23  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/dfa.c (FETCH, lex): Put brackets around if-body to avoid
Packit 709fb3
        GCC warning about ambiguous if-then-else.
Packit 709fb3
Packit 709fb3
2000-01-23  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/regex.c (GET_UNSIGNED_NUMBER): Allow only ASCII digits.
Packit 709fb3
        * src/dfa.c (ISASCIIDIGIT): New macro.
Packit 709fb3
        (lex): Use it instead of ISDIGIT.
Packit 709fb3
Packit 709fb3
2000-01-23  Paul Eggert
Packit 709fb3
Packit 709fb3
        The bug is that regular expression ranges like [a-z] compare raw
Packit 709fb3
        byte codes to the range boundaries, whereas POSIX says that they
Packit 709fb3
        should use the current collating sequence instead.  For example,
Packit 709fb3
        in Solaris 7 with LC_ALL=en_US, the command
Packit 709fb3
        echo x | grep '[ -~]'
Packit 709fb3
        outputs 'x', but it shouldn't output anything since ' ' and '~'
Packit 709fb3
        sort before all letters in that locale.
Packit 709fb3
Packit 709fb3
        * src/regex.c (compile_range): When matching a character
Packit 709fb3
        range, use the current collating sequence, as POSIX requires.
Packit 709fb3
        * src/dfa.c (lex): Likewise.
Packit 709fb3
Packit 709fb3
2000-01-20  Alain Magloire
Packit 709fb3
Packit 709fb3
        * tests/Makefile.am (dist-hook): Added new rule to make sure
Packit 709fb3
        that the shell scripts have the right permissions.
Packit 709fb3
        * src/posix/Makefile.am (EXTRA_DIST): added regex.h in the
Packit 709fb3
        distribution.
Packit 709fb3
        * THANKS: updated.
Packit 709fb3
Packit 709fb3
2000-01-18  Alain Magloire
Packit 709fb3
Packit 709fb3
        * Rectification the initial patch to add --binary-file option
Packit 709fb3
        was done by Ruslan Ermilov.
Packit 709fb3
Packit 709fb3
2000-01-17  Paul Eggert
Packit 709fb3
Packit 709fb3
        Sync with sources of fileutils 4.0n, tar 1.13.17, glibc 2.1.3a1.
Packit 709fb3
        Convert to ANSI C prototypes (using ansi2knr for backwards
Packit 709fb3
        compatibility), as this makes it easier to sync.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_OBJEXT): Spell in a funny way, to work around
Packit 709fb3
        a bug in automake 1.4 with ansi2knr.
Packit 709fb3
        (LIBOBJS): Add assignment so that .o files in LIBOBJS are also built
Packit 709fb3
        via the ANSI2KNR-filtering rules.
Packit 709fb3
        (AC_OUTPUT): Add src/posix/Makefile.
Packit 709fb3
        * src/Makefile.am (AUTOMAKE_OPTIONS): Add ansi2knr.
Packit 709fb3
        (SUBDIRS): New macro.
Packit 709fb3
        * src/ansi2knr.1, src/ansi2knr.c, src/posix/Makefile.am: New files.
Packit 709fb3
        * src/dfa.c, src/dosbuf.c, src/grep.c, src/kwset.c, src/search.c,
Packit 709fb3
        src/vms_fab.c:
Packit 709fb3
        Use prototypes for function definitions.
Packit 709fb3
        * src/grep.c (main): Use int counter for default context,
Packit 709fb3
        fixing an ANSI portability bug uncovered by the above changes.
Packit 709fb3
Packit 709fb3
        * config.guess, config.sub, install-sh, missing, src/alloca.c,
Packit 709fb3
        src/getpagesize.h, src/memchr.c, src/savedir.c, src/savedir.h,
Packit 709fb3
        src/stpcpy.c:
Packit 709fb3
        Upgrade to latest version from fileutils 4.0n.
Packit 709fb3
Packit 709fb3
        * src/getopt.c, src/getopt.h, src/getopt1.c: Upgrade to latest
Packit 709fb3
        version from tar 1.13.17.
Packit 709fb3
Packit 709fb3
        * src/obstack.c, src/obstack.h, src/regex.c, src/regex.h:
Packit 709fb3
        Upgrade to glibc 2.1.3 alpha 1, with K&R C portability fix.
Packit 709fb3
        * src/posix/regex.h: New file, from glibc 2.1.3 alpha 1.
Packit 709fb3
Packit 709fb3
2000-01-04  Paul Eggert
Packit 709fb3
Packit 709fb3
        Initial patch by Ruslan Ermilov.
Packit 709fb3
Packit 709fb3
        Add --binary-files option.
Packit 709fb3
        * NEWS, doc/grep.1, doc/grep.texi: Document it.
Packit 709fb3
        * src/grep.c (BINARY_FILES_OPTION): New constant.
Packit 709fb3
        (long_options, grep, usage, main): New --binary-files option.
Packit 709fb3
        (binary_files): New var.
Packit 709fb3
        * src/system.h (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, CHAR_MAX):
Packit 709fb3
        New macros.
Packit 709fb3
        (INT_MAX, UCHAR_MAX): Define in terms of TYPE_MAXIMUM.
Packit 709fb3
Packit 709fb3
2000-01-04  Paul Eggert
Packit 709fb3
Packit 709fb3
        * savedir.c (savedir): Don't store past the end of an array if
Packit 709fb3
        name_size is zero and the directory is empty.
Packit 709fb3
        Reported by Dima Barsky <dima@pwd.hp.com>.
Packit 709fb3
Packit 709fb3
1999-12-03  Alain Magloire
Packit 709fb3
Packit 709fb3
        * 2.4 Release.
Packit 709fb3
Packit 709fb3
1999-11-18  Paul Eggert
Packit 709fb3
Packit 709fb3
        * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
Packit 709fb3
        problem with the QNX 4.25 shell, which doesn't propagate exit
Packit 709fb3
        status of failed commands inside shell assignments.
Packit 709fb3
Packit 709fb3
1999-11-13  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Minor markup and spelling corrections.  Use
Packit 709fb3
        @noindent where appropriate.
Packit 709fb3
Packit 709fb3
        * PATCHES-{AM,AC}: rename to PATCHES.{AM,AC}
Packit 709fb3
Packit 709fb3
1999-11-12  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        doc/grep.texi: Minor fixes and typos corrected.
Packit 709fb3
        djgpp/README: Updated version.
Packit 709fb3
Packit 709fb3
1999-11-07  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Fix misspelling.
Packit 709fb3
Packit 709fb3
1999-11-07  Paul Eggert
Packit 709fb3
Packit 709fb3
        Don't assume that the C library has re_set_syntax and friends.
Packit 709fb3
        * src/Makefile.am (base_sources): Add regex.c, regex.h.
Packit 709fb3
        (EXTRA_DIST): Remove regex.c, regex.h.
Packit 709fb3
Packit 709fb3
        * src/grep.c (prtext): Use out_quiet, not not_text, to decide
Packit 709fb3
        whether to set pending to zero at the end.
Packit 709fb3
        (not_text): Remove static variable, undoing latest change.
Packit 709fb3
        (grep): Likewise.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Tighten up the text, and fix some minor
Packit 709fb3
        spelling and usage errors.  Use @enumerate rather than @table
Packit 709fb3
        @samp, since it's better for Q&A format.  Add cross
Packit 709fb3
        references.
Packit 709fb3
Packit 709fb3
1999-11-01 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/search.c: Use the more portable [[:alnum:]]
Packit 709fb3
        to define a word instead of Ascii dependent [0-9A-Za-z]
Packit 709fb3
        * src/grep.c: make not_text global to not display text when
Packit 709fb3
        the context switches -A/-B/-C are use on binary files.
Packit 709fb3
        * make grep-2.3g available for testing.
Packit 709fb3
        * configure.in: drop support for --without-included-regex.
Packit 709fb3
        This was generating bogus bug reports, since many GNU/Linux
Packit 709fb3
        users have different version of glibc.  And glibc maintainers
Packit 709fb3
        decided to drop k&r support.
Packit 709fb3
Packit 709fb3
1999-11-01 Arnold D. Robbins
Packit 709fb3
Packit 709fb3
        * regex.c (init_syntax_once): move below definition of
Packit 709fb3
        ISALNUM etc., then use ISALNUM to init the table, so that
Packit 709fb3
        the word ops will work if i18n'ed.
Packit 709fb3
        (SYNTAX): And subscript with 0xFF for Latin-1 characters.
Packit 709fb3
Packit 709fb3
1999-10-26  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/regex.c: Merge changes from GNU lib C.
Packit 709fb3
        * Updated the *.po files
Packit 709fb3
Packit 709fb3
1999-10-26  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (fillbuf): Don't report buffer size overflow if
Packit 709fb3
        newalloc == save and maxalloc == save.  This can happen
Packit 709fb3
        e.g. when reading a large page-aligned file that contains
Packit 709fb3
        no newlines.
Packit 709fb3
Packit 709fb3
1999-10-21  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Give example.  Clarify -F.
Packit 709fb3
        Explain exit status more clearly.
Packit 709fb3
Packit 709fb3
1999-10-12  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Shorten the commentary about egrep and {.
Packit 709fb3
        "BSD grep" -> "traditional grep".
Packit 709fb3
        * doc/grep.1: Match recent changes to grep.texi.
Packit 709fb3
Packit 709fb3
1999-10-11  Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS, doc/grep.1, doc/grep.texi: New option --mmap.
Packit 709fb3
        * src/grep.c (mmap_option): New variable.
Packit 709fb3
        (long_options, reset, usage): Add --mmap.
Packit 709fb3
        Default is now read, not mmap.
Packit 709fb3
Packit 709fb3
        * doc/grep.1: Document -Z or --null.
Packit 709fb3
Packit 709fb3
1999-10-11  Paul Eggert
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Fix texinfo glitches.  POSIX -> POSIX where
Packit 709fb3
        appropriate.
Packit 709fb3
Packit 709fb3
1999-10-11  Paul Eggert
Packit 709fb3
Packit 709fb3
        * acconfig.h (ssize_t): New #undef.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_CHECK_TYPE): Add ssize_t.
Packit 709fb3
Packit 709fb3
        * src/grep.c (PREFERRED_SAVE_FACTOR): New macro.
Packit 709fb3
        (reset): If the buffer has already been allocated, set bufsalloc to
Packit 709fb3
        be bufalloc / PREFERRED_SAVE_FACTOR.  This avoids problems when
Packit 709fb3
        bufsalloc == bufalloc (possible after reading a large binary file).
Packit 709fb3
        (reset): Use PREFERRED_SAVE_FACTOR instead of magic constant.
Packit 709fb3
        Do not set bufbeg; nobody uses it.
Packit 709fb3
        Always set buflim.
Packit 709fb3
        Check for lseek error.
Packit 709fb3
        Use SEEK_CUR, not a magic constant.
Packit 709fb3
        (fillbuf): Return an error indication, not a count.
Packit 709fb3
        All callers changed.
Packit 709fb3
        Do not assume ssize_t fits in int.
Packit 709fb3
        Use PREFERRED_SAVE_FACTOR instead of magic constant.
Packit 709fb3
        Clean up mmap code.
Packit 709fb3
        Do not attempt to mmap zero bytes.
Packit 709fb3
        Check for lseek error.
Packit 709fb3
        Use SEEK_SET, not a magic constant.
Packit 709fb3
        Work correctly if read is interrupted.
Packit 709fb3
        (grepfile): Work correctly if open or close is interrupted.
Packit 709fb3
Packit 709fb3
        * src/system.h (SEEK_SET, SEEK_CUR): New macros.
Packit 709fb3
Packit 709fb3
1999-10-02 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/regex.[ch]: upgrade from GNU lib C source tree.
Packit 709fb3
Packit 709fb3
        * make beta 2.3f available.
Packit 709fb3
Packit 709fb3
1999-10-02  Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS: egrep is now equivalent to 'grep -E'.
Packit 709fb3
        The lower bound of an interval is not optional.
Packit 709fb3
        You can specify a matcher multiple types without error.
Packit 709fb3
        -u and -U are now allowed on non-DOS hosts, and have no effect.
Packit 709fb3
        * doc/grep.texi: Likewise.
Packit 709fb3
        * doc/grep.1: Likewise.
Packit 709fb3
        Fix some troff bugs that prevented 'groff' from rendering the page.
Packit 709fb3
Packit 709fb3
        * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c (default_matcher):
Packit 709fb3
        Remove.
Packit 709fb3
        (matcher): Add.
Packit 709fb3
        * src/grep.h (default_matcher): Remove.
Packit 709fb3
        (matcher): Now exported from ?grepmat.c, not grep.c.
Packit 709fb3
Packit 709fb3
        * src/dfa.c (lex): If { would start an invalid interval specification,
Packit 709fb3
        treat it as a normal character.
Packit 709fb3
        Remove (broken) support for {,M} meaning {0,M}.
Packit 709fb3
        Diagnose bogus intervals like {1,0}.
Packit 709fb3
        (closure): maxrep is now -1 to indicate no limit, not zero;
Packit 709fb3
        zero is a valid value for maxrep, meaning an upper bound of zero.
Packit 709fb3
Packit 709fb3
        * src/grep.c (short_options): New constant.
Packit 709fb3
        (long_options, main): -u and -U are now supported on Unix,
Packit 709fb3
        with no effect.
Packit 709fb3
        (matcher): Removed; now defined by ?grepmat.c.
Packit 709fb3
        (install_matcher): Renamed from setmatcher.
Packit 709fb3
        (setmatcher): New function.
Packit 709fb3
        (usage): Report new, more uniform option scheme.
Packit 709fb3
        (main): Do not initialize matcher; ?grepmat.c now does this.
Packit 709fb3
        Rely on setmatcher to catch matcher conflicts.
Packit 709fb3
        Default matcher is "grep".
Packit 709fb3
Packit 709fb3
        * src/search.c (matchers):
Packit 709fb3
        Remove "posix-egrep" matcher; no longer needed.
Packit 709fb3
        (Ecompile): Likewise.
Packit 709fb3
        The egrep matcher now has POSIX behavior.
Packit 709fb3
Packit 709fb3
        * tests/bre.tests: grep '\{' is no longer an error.
Packit 709fb3
        Fix test for interval too large, and enable it.
Packit 709fb3
        * tests/ere.tests: grep -E {1 is no longer an error
Packit 709fb3
        Likewise for a{1, a{1a, a{1a}, a{1,x}.
Packit 709fb3
Packit 709fb3
1999-09-22  Paul Eggert
Packit 709fb3
Packit 709fb3
        * largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
Packit 709fb3
        2.95.1 bug with HP-UX 10.20.
Packit 709fb3
Packit 709fb3
1999-09-12  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (fillbuf): Fix typo: we sometimes reported
Packit 709fb3
        arithmetic overflow even when there wasn't any.
Packit 709fb3
Packit 709fb3
1999-09-12  Paul Eggert
Packit 709fb3
Packit 709fb3
        * configure.in (AC_CHECK_FUNCS): Add memmove.
Packit 709fb3
Packit 709fb3
        * src/system.h (S_ISREG): New macro.
Packit 709fb3
        (memmove): Define if ! defined HAVE_MEMMOVE && ! defined memmove,
Packit 709fb3
        not if !defined STDC_HEADERS.  This is needed for SunOS 4.1.4,
Packit 709fb3
        which defines STDC_HEADERS but lacks memmove.
Packit 709fb3
Packit 709fb3
        * src/grep.c (bufoffset): Needed even if !defined HAVE_MMAP.
Packit 709fb3
        (reset): Always fstat the file, since we always need its size if it is
Packit 709fb3
        regular.
Packit 709fb3
        Similarly, get the buffer offset of every regular file.
Packit 709fb3
        Set bufmapped to 0 if the file's initial offset is not a multiple
Packit 709fb3
        of the page size.
Packit 709fb3
        (fillbuf): Calculate an upper bound on how much memory we should
Packit 709fb3
        allocate only for regular files, since we don't know the sizes of
Packit 709fb3
        other files.
Packit 709fb3
        Don't bother to check whether the file offset is a multiple of the page
Packit 709fb3
        size, since we now do that just once in 'reset'.
Packit 709fb3
        When an mmapped area would fall past the end of the file, trim it to
Packit 709fb3
        just before instead of giving up immediately and doing a 'read';
Packit 709fb3
        that avoids a worst-case behavior that could read half an mmapped file.
Packit 709fb3
        Fix bug when computing offsets on hosts that don't have mmap.
Packit 709fb3
Packit 709fb3
1999-08-27  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/system.h (memmove): New macro.
Packit 709fb3
Packit 709fb3
        * src/grep.c (page_alloc): Reallocate the old buffer instead
Packit 709fb3
        of having both old and new buffers active simultaneously.
Packit 709fb3
        Remove valloc debugging variant, which no longer applies.
Packit 709fb3
Packit 709fb3
        (fillbuf): Rejigger the buffer allocation mechanism.  The old
Packit 709fb3
        mechanism could allocate more than 10*N bytes for an N-byte
Packit 709fb3
        file, which was excessive.  Check for arithmetic overflow a
Packit 709fb3
        bit more carefully.
Packit 709fb3
Packit 709fb3
1999-08-25  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (grepdir):
Packit 709fb3
        Don't assume that st_ino and st_dev must be integers;
Packit 709fb3
        POSIX allows them to be floating-point (!).
Packit 709fb3
Packit 709fb3
        * src/vms_fab.h (arr_ptr): ':' -> ';' to fix typo.
Packit 709fb3
Packit 709fb3
1999-08-18  Alain Magloire
Packit 709fb3
Packit 709fb3
        * 2.3e snapshot.
Packit 709fb3
Packit 709fb3
1999-08-18  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/search.c: On a CRAY J90 system running UNICOS 8.0.
Packit 709fb3
        Compilation of ./src/search.c failed because the declaration of
Packit 709fb3
        the variable "regex":
Packit 709fb3
          static struct re_pattern_buffer regex;
Packit 709fb3
        conflicted with a previous declaration search.c #includes "system.h",
Packit 709fb3
        which #includes <stdlib.h>, which declares :
Packit 709fb3
        extern char *regex __((char *_Re, char *_Subject, ...));
Packit 709fb3
        The declaration in search.c is local to that one source file.
Packit 709fb3
        I just changed its name to something less likely to conflict.
Packit 709fb3
        (I called it "regexbuf", but you could pick any name you want.)
Packit 709fb3
        Excerpt email from Dean Kopesky.
Packit 709fb3
Packit 709fb3
1999-08-16  Paul Eggert
Packit 709fb3
Packit 709fb3
        Upgrade large-file support to the version used in tar and
Packit 709fb3
        textutils.
Packit 709fb3
Packit 709fb3
        * Makefile.am (ACLOCAL_AMFLAGS): Define to be empty.
Packit 709fb3
        (M4DIR, ACINCLUDE_INPUTS): New macros.
Packit 709fb3
        ($(srcdir)/acinclude.m4): New rule.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_CANONICAL_HOST, AM_C_PROTOTYPES): Add.
Packit 709fb3
        (AC_SYS_LARGEFILE): Renamed from AC_LFS, for compatibility
Packit 709fb3
        with what should appear in the next autoconf release.
Packit 709fb3
Packit 709fb3
        * m4/largefile.m4: Renamed from m4/lfs.m4.
Packit 709fb3
Packit 709fb3
        * src/ansi2knr.1, src/ansi2knr.c, config.guess, config.sub:
Packit 709fb3
        New files.  config.guess and config.sub ar needed by the new
Packit 709fb3
        AC_SYS_LARGEFILE.  ansi2knr is needed by AM_C_PROTOTYPES,
Packit 709fb3
        which in turn is needed by the new AC_SYS_LARGEFILE.
Packit 709fb3
Packit 709fb3
1999-08-16  Alain Magloire
Packit 709fb3
Packit 709fb3
        * 2.3d snapshot on ftp server.
Packit 709fb3
Packit 709fb3
1999-07-26  Paul Eggert
Packit 709fb3
Packit 709fb3
	Several GNU tools have options to process arbitrary file names, even
Packit 709fb3
	file names that contain newline characters.  These include 'find
Packit 709fb3
	-print0', 'perl -0', 'sort -z', and 'xargs -0'.  It'd be handy if GNU
Packit 709fb3
	grep also processed such file names.  Here's a proposed patch to do
Packit 709fb3
	this, relative to grep 2.3c.  This patch introduces two options, one
Packit 709fb3
	for the data, and one for the file names.  (Sometimes one wants
Packit 709fb3
	null-terminated file names in the output, and sometimes one wants to
Packit 709fb3
	process lists of null-terminated strings, and these are orthogonal
Packit 709fb3
	axes.)
Packit 709fb3
Packit 709fb3
        * NEWS, doc/grep.texi: New -z or --null-data and -Z or --null options.
Packit 709fb3
        * src/grep.c (long_options, usage, main): Likewise.
Packit 709fb3
Packit 709fb3
        * src/dfa.h (dfasyntax): New eol parameter.
Packit 709fb3
        * src/dfa.c (eolbyte): New var.
Packit 709fb3
        (dfasyntax): Set it from new parameter.
Packit 709fb3
        (lex, dfastat, build_state, dfaexec): Use it instead of '\n'.
Packit 709fb3
Packit 709fb3
        * src/grep.h (eolbyte): New decl.
Packit 709fb3
        * src/grep.c (eolbyte): New var.
Packit 709fb3
        (nlscan, prpending, prtext, grepbuf, grep): Use it instead of '\n'.
Packit 709fb3
        (filename_mask): New var.
Packit 709fb3
        (prline, grepfile): Output NUL separator if filename_mask is zero.
Packit 709fb3
        (grep): Look for '\200' as the hallmark of a binary file, not '\0',
Packit 709fb3
        if -z or --null-data is specified, since it implies that '\0' is
Packit 709fb3
        expected as text.
Packit 709fb3
Packit 709fb3
        * src/search.c (Gcompile, Ecompile): Pass eolbyte to dfasyntax.
Packit 709fb3
        (EGexecute, Fexecute): Use eolbyte instead of '\n'.
Packit 709fb3
Packit 709fb3
1999-06-15 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c, doc/grep{1,texi} :
Packit 709fb3
        --revert-match should be --invert-match.
Packit 709fb3
        Correction proposed by Karl Berry.
Packit 709fb3
Packit 709fb3
1999-06-12 Alain Magloire
Packit 709fb3
Packit 709fb3
        * doc/grep.{1,texi}: add description for --with-filename.
Packit 709fb3
        Noted missing by UEBAYASHI Masao.
Packit 709fb3
Packit 709fb3
1999-03-17 Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS: Add GREP_OPTIONS.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: Document GREP_OPTIONS, and the other
Packit 709fb3
        environment variables.  Fix doc for [:blank:], [:cntrl:], [:punct:].
Packit 709fb3
Packit 709fb3
        * src/grep.c (prepend_args, prepend_default_options): New functions.
Packit 709fb3
        (main): Use them to implement GREP_OPTIONS.
Packit 709fb3
        * src/system.h (getenv): New decl.
Packit 709fb3
Packit 709fb3
1999-03-16 Volker Borchert
Packit 709fb3
Packit 709fb3
        * configure.in: Use case case ... esac for  checking Visual C++.
Packit 709fb3
        When ${CC} contains options it was not recognize.
Packit 709fb3
Packit 709fb3
1999-03-07 Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (usage): Don't report -E, -F, and -G unless we're grep.
Packit 709fb3
        (main): Don't match options -E, -F, and -G unless we're grep.
Packit 709fb3
        Remove after-the-fact check for options -E, -F, and -G, since
Packit 709fb3
        they're no longer needed.
Packit 709fb3
Packit 709fb3
1999-03-05  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Print the name of the default matcher instead
Packit 709fb3
        of just "grep".
Packit 709fb3
Packit 709fb3
1999-02-06 Alain Magloire
Packit 709fb3
Packit 709fb3
        * tests/*.awk : Linux users are seeing "Broken Pipe" on make check.
Packit 709fb3
        The problem is that grep does not drain its stdin, thus the previous
Packit 709fb3
        process in the pipeline receives a SIGPIPE.  Other shells are silent
Packit 709fb3
        about this.  There is actually no failure, since the broken pipe is
Packit 709fb3
        expected.  You can work around it by changing the pipeline, so that
Packit 709fb3
        the input is drained, like this:
Packit 709fb3
        status=`echo 'check' | { ${GREP} -E -e pattern >/dev/null 2>&1;
Packit 709fb3
        echo $?; cat >/dev/null; }`; if test $status -ne $errnu then ... fi
Packit 709fb3
        Excerpt email from Andreas Schwab.
Packit 709fb3
Packit 709fb3
1999-02-23 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c : Restrict the use of -E, -F, -G
Packit 709fb3
        to only grep driver, Posix behaviour. {f,e}grep
Packit 709fb3
        the matcher is already set. This change may brake
Packit 709fb3
        scripts, warn in NEWS.
Packit 709fb3
Packit 709fb3
        * doc/grep.{1,texi} : -C takes arguments, upgrade manual.
Packit 709fb3
Packit 709fb3
        * beta 2.3a
Packit 709fb3
Packit 709fb3
1999-02-23 Alain Magloire
Packit 709fb3
Packit 709fb3
        * configure.in : Change the configure VC test from
Packit 709fb3
        'test x$ac_cv_prog_CC = xcl;' to 'test x"$ac_cv_prog_CC" = xcl;'
Packit 709fb3
        Email from Joshua R. Poulson.
Packit 709fb3
Packit 709fb3
1999-02-23 Paul Eggert
Packit 709fb3
Packit 709fb3
        Fix porting bug reported by Amakawa Shuhei for SunOS 4.1.4-JL.
Packit 709fb3
        The btowc.c shipped with grep 2.3 is incorrect for Solaris
Packit 709fb3
        2.5.1 and earlier, as it assumes UTF8, which these OSes do not
Packit 709fb3
        support.  Solaris 7 supports btowc, so there's no need to ship
Packit 709fb3
        a substitute for it.  The only questionable case is Solaris
Packit 709fb3
        2.6, which lacks btowc but does support UTF8.  However, 2.6
Packit 709fb3
        supports UTF8 but only as a demonstration (for an English
Packit 709fb3
        locale!); Japanese Solaris 2.6 users typically use EUC, or
Packit 709fb3
        sometimes shift-JIS, but they cannot use UTF8 since Japanese
Packit 709fb3
        UTF8 is not supported.  Hence there's no point to having grep
Packit 709fb3
        substitute a btowc that uses UTF8, as it is either redundant,
Packit 709fb3
        or it will almost invariably have incorrect behavior.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_CHECK_HEADERS): Don't set USE_WCHAR.
Packit 709fb3
        (AC_CHECK_FUNCS): Add btowc, wctype.
Packit 709fb3
        (AC_REPLACE_FUNCS): Don't replace btowc; our replacement is
Packit 709fb3
        invariably doing the wrong thing anyway, at least on SunOS/Solaris.
Packit 709fb3
        Don't bother to check for wctype in -lw, as we don't support
Packit 709fb3
        wide characters on Solaris 2.5.1 or earlier anyway.
Packit 709fb3
Packit 709fb3
        * bootstrap/Makefile.try (OBJS): Remove btowc.$(OBJEXT).
Packit 709fb3
Packit 709fb3
        * src/btowc.c: Removed; no longer needed.
Packit 709fb3
Packit 709fb3
1999-02-19  Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS: Fix typo when talking about the old behavior of
Packit 709fb3
        silently skipping directories; it was grep 2.1, not grep 2.2.
Packit 709fb3
Packit 709fb3
1999-02-15 Alain Magloire
Packit 709fb3
Packit 709fb3
        * bootstrap/Makefile.try : add DJGPP DEFS.
Packit 709fb3
        Done by Elie Zaretsckii.
Packit 709fb3
Packit 709fb3
1999-02-14 Alain Magloire
Packit 709fb3
Packit 709fb3
        * m4/gettext.m4 : Guard [] with changequote.
Packit 709fb3
        From Elie Zaretskii.
Packit 709fb3
Packit 709fb3
        * djgpp/config.bat : Makefile.in.in --> Makefile.in-in
Packit 709fb3
        From Elie Zaretskii.
Packit 709fb3
Packit 709fb3
        * src/dosbuf: k&r function parameter.
Packit 709fb3
Packit 709fb3
        * release of 2.3.
Packit 709fb3
Packit 709fb3
1999-02-10 Alain Magloire
Packit 709fb3
Packit 709fb3
        * bootstrap/{Makefile{try,am},REAMDE} : skeleton
Packit 709fb3
        provided for system lacking the tools to autoconfigure.
Packit 709fb3
Packit 709fb3
        * src/{e,f,}grepmat.c: added guard [HAVE_CONFIG_H]
Packit 709fb3
Packit 709fb3
1999-02-10 Alain Magloire
Packit 709fb3
Packit 709fb3
        * PATCHES-AC, PATCHES-AM: updated.
Packit 709fb3
Packit 709fb3
        * m4/regex.m4 : updated.
Packit 709fb3
Packit 709fb3
1999-02-05 Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * m4/gettext.m4 : Support DOS-style D:/foo/bar absolute file
Packit 709fb3
        names.
Packit 709fb3
Packit 709fb3
        * aclocal.m4 (DJGPP) : Use $DJ_GPP instead, since changing the
Packit 709fb3
        latter prevents GCC from finding headers and libraries.
Packit 709fb3
Packit 709fb3
        * djgpp/config.bat: Make building from another directory work
Packit 709fb3
Packit 709fb3
        * djgpp/config.sed: Remove redundant command that edited path
Packit 709fb3
        separator: now done by configure.
Packit 709fb3
Packit 709fb3
        * src/grep.c [O_BINARY]: Add prototype for undossify_input.
Packit 709fb3
Packit 709fb3
        * doc/grep.texi (Introduction): Typo fixed.
Packit 709fb3
Packit 709fb3
1999-02-03 Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep-2.2f beta release.
Packit 709fb3
Packit 709fb3
1999-02-02 Alain Magloire
Packit 709fb3
Packit 709fb3
        * m4/{djgpp,envsep,glibc,regex,dosfile,isc-posix}.m4 :
Packit 709fb3
        New files to aid configuration and unload configure.in.
Packit 709fb3
        * m4/Makefile.am : updated.
Packit 709fb3
        * src/btowc.c : protect for wchar.h
Packit 709fb3
Packit 709fb3
1999-01-28 Alain Magloire
Packit 709fb3
Packit 709fb3
        * intl/Makefile.in: Replace .o with .${ac_objext} where necessary.
Packit 709fb3
        Work around a limitation of Visual C++ on Cygwin32.
Packit 709fb3
        * acconfig.h configure.in: Define 'alloca' as '_alloca' when CC=cl.
Packit 709fb3
        This little hack was suggested by Ian Roxborough <irox@cygnus.com>.
Packit 709fb3
        Patch forwarded by Ben Elliston.
Packit 709fb3
Packit 709fb3
1999-01-28 Alain Magloire
Packit 709fb3
Packit 709fb3
        * PATCHES-AM: New file. A small patch for automake-1.4, use $(sep)
Packit 709fb3
        as the path separator base on @SEP@.
Packit 709fb3
        * PATCHES-AC configure.in : updated for autoconf-13.
Packit 709fb3
Packit 709fb3
1999-01-27 Volker Borchert
Packit 709fb3
Packit 709fb3
        * grep.c: fgrep -NUM not working correctly.
Packit 709fb3
        add the argument number to digit_args_val.
Packit 709fb3
Packit 709fb3
1999-01-22 Paul Eggert
Packit 709fb3
Packit 709fb3
        Prevent grep -r from recursing infinitely through directory loops via
Packit 709fb3
        symbolic links.
Packit 709fb3
Packit 709fb3
        * grep.c (struct stats): New type.
Packit 709fb3
        (stats_base): New var.
Packit 709fb3
        (bufstat): Remove; subsumed by stats->stat.
Packit 709fb3
        (reset, fillbuf, grep, grepdir, grepfile): Pass struct stats * arg,
Packit 709fb3
        for directory loop checking; use this instead of the bufstat global.
Packit 709fb3
        All callers changed.
Packit 709fb3
        (grepfile): Stat the file before invoking grepdir.
Packit 709fb3
        (grepdir): Assume that the argument has already been statted.
Packit 709fb3
        No longer a need for a directory size argument, since it
Packit 709fb3
        can be gotten from the struct stats * argument.
Packit 709fb3
        Check for directory loops.
Packit 709fb3
        Create linked list of directories currently being visited,
Packit 709fb3
        to detect loops.
Packit 709fb3
Packit 709fb3
1998-12-29 Kaveh R. Ghazi
Packit 709fb3
Packit 709fb3
        intl/localealias.c: When building grep-2.2e using cc on Irix4,
Packit 709fb3
        I needed the following patch to intl/localealias.c.
Packit 709fb3
        (Its the same patch used by fileutils-4.0.) The patch resolves
Packit 709fb3
        conflicts between char* and unsigned char* in the i18n code.
Packit 709fb3
Packit 709fb3
1998-12-10 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c : Typo in contex -->context
Packit 709fb3
        Noted by  Vladimir Michl.
Packit 709fb3
Packit 709fb3
1998-12-01  Alain Magloire
Packit 709fb3
Packit 709fb3
        * doc/Makefile.am djgpp/Makefile.am m4/Makefile.am vms/Makefile.am:
Packit 709fb3
        New files.
Packit 709fb3
Packit 709fb3
        * m4/progtest.m4: proctect '[]' from m4.
Packit 709fb3
        Noted by Eli Z.
Packit 709fb3
Packit 709fb3
        * PATCHES-AC: New file, add the patch for autoconf in the dist.
Packit 709fb3
Packit 709fb3
        * acconfig.h: (HAVE_DOS_FILENAME)
Packit 709fb3
Packit 709fb3
        * TODO: updated.
Packit 709fb3
Packit 709fb3
        * src/search.c: remove obsolete 'gegrep,ggrep,gnugrep'
Packit 709fb3
        matchers. grep no longer depend on argv[0].
Packit 709fb3
Packit 709fb3
        * grep-2.2e beta to test DJGPP port.
Packit 709fb3
Packit 709fb3
1998-11-28  Paul Eggert
Packit 709fb3
Packit 709fb3
        Various portability enhancements:
Packit 709fb3
        - Don't assume that O_BINARY implies DOS.  Use separate
Packit 709fb3
        macros D_OK (for DOS-like directory access) and
Packit 709fb3
        HAVE_DOS_FILE_NAMES (for DOS-like file names).
Packit 709fb3
        - Don't assume that off_t fits into long; it doesn't on Solaris 2.6.
Packit 709fb3
        - Have is_EISDIR set errno properly on hosts with screwed-up EISDIR.
Packit 709fb3
        - Treat ':' specially in DOS file names only if it's the end of a
Packit 709fb3
        drive specifier.
Packit 709fb3
        - Protect against errno < 0.
Packit 709fb3
Packit 709fb3
        * src/grep.c (is_EISDIR): Move defn to system.h.
Packit 709fb3
        (print_offset_sep): New function.
Packit 709fb3
        (fillbuf): Remove redundant test of O_BINARY.
Packit 709fb3
        (totalcc, totalnl): Now of type off_t.
Packit 709fb3
        (prline): Use print_offset_sep to print file offsets.
Packit 709fb3
        (grepfile): Don't set e to EISDIR; that's is_EISDIR's responsibility
Packit 709fb3
        on machines that don't work properly with EISDIR.
Packit 709fb3
        (grepdir): Don't assume ':' means slash on all DOS filenames;
Packit 709fb3
        it means it only in the file prefix.
Packit 709fb3
Packit 709fb3
        * src/system.h (strerror): Check for negative error numbers.
Packit 709fb3
        (is_EISDIR): Depend on D_OK, not O_BINARY.
Packit 709fb3
        (SET_BINARY): Depend on HAVE_SETMODE, not __DJGPP__.
Packit 709fb3
        (IS_SLASH, FILESYSTEM_PREFIX_LEN): Depend on HAVE_DOS_FILE_NAMES,
Packit 709fb3
        not O_BINARY.
Packit 709fb3
        (CHAR_BIT): New macro.
Packit 709fb3
Packit 709fb3
        * src/dosbuf.c (struct dos_map):
Packit 709fb3
        pos and add members are now of type off_t.
Packit 709fb3
        (dos_stripped_crs): Now of type off_t.
Packit 709fb3
        (dossified_pos): Now accepts arg and returns value of type off_t.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_CHECK_FUNCS): Add setmode.
Packit 709fb3
        (HAVE_DOS_FILENAMES): New macro
Packit 709fb3
Packit 709fb3
1998-11-27  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * djgpp/config.sed: New file, a Sed script to edit configure
Packit 709fb3
        script before running it on DOS/Windows.
Packit 709fb3
        * djgpp/config.bat: Updated to handle po2tbl.sed.in and
Packit 709fb3
        po/Makefile.in.in on DOS filesystems, and to run config.sed.
Packit 709fb3
Packit 709fb3
1998-11-24  Jim Meyering
Packit 709fb3
Packit 709fb3
        * src/grep.c : Typo s/infalid/invalid/
Packit 709fb3
        Also noted by Stanislav Brabec.
Packit 709fb3
Packit 709fb3
1998-11-24  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * doc/grep.texi: I found and corrected several typos.
Packit 709fb3
        I believe the GNU standards require the section that describes the
Packit 709fb3
        options to the programs to be called "Invoking" or "Invoking
Packit 709fb3
        <program-name>".  This is so users and programs can easily find
Packit 709fb3
        that node in any Info file.  So I changed the name of the
Packit 709fb3
        "Options" chapter to "Invoking", and corrected the
Packit 709fb3
        cross-references accordingly.
Packit 709fb3
        I added some markup to things like file names and options.
Packit 709fb3
        I added some additional index entries where that seemed useful.
Packit 709fb3
        I also corrected some index entries, such as "@cindex [:alnum:]",
Packit 709fb3
        which used a colon in them (the colons confuse Info readers).
Packit 709fb3
Packit 709fb3
1998-11-24  Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep/doc/grep.texi : -h is not use for help.
Packit 709fb3
        Nit spotted by Jim Meyering.
Packit 709fb3
Packit 709fb3
1998-11-23  Alain Magloire
Packit 709fb3
Packit 709fb3
        * doc: New directory, grep.1, {e,f}grep.man move here
Packit 709fb3
        * doc/grep.texi: New info manual
Packit 709fb3
        * doc/version.texi: New
Packit 709fb3
        * doc/Makefile.am: New
Packit 709fb3
        * tests/{ere,bre}.*: New files. The spencer2 test is split
Packit 709fb3
        in two ere/bre.
Packit 709fb3
        * config.hin: New, config.h.in rename to config.hin for OS
Packit 709fb3
        with limited file system aka DOS.
Packit 709fb3
Packit 709fb3
        * grep-2.2d release for beta.
Packit 709fb3
Packit 709fb3
1998-11-18  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/regex.[ch] : Updated from GLibc, previous patches were
Packit 709fb3
        integrate by Ulrich Drepper and some added ones.
Packit 709fb3
Packit 709fb3
1998-11-16  Paul Eggert
Packit 709fb3
Packit 709fb3
        * grep.h (__attribute__): New macro, if not GCC.
Packit 709fb3
        (fatal): Add __attribute__((noreturn)).
Packit 709fb3
        * grep.c (usage): Add __attribute__((noreturn)).
Packit 709fb3
Packit 709fb3
1998-11-16  Paul Eggert
Packit 709fb3
Packit 709fb3
        Remove memory leak with valloced buffers, by invoking malloc instead.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_CHECK_FUNCS), src/system.h (valloc): Remove.
Packit 709fb3
        * src/grep.c (page_alloc): New function.
Packit 709fb3
        (ubuffer, pagesize): New vars.
Packit 709fb3
        (ALIGN_TO): New macro.
Packit 709fb3
        (reset): Initialize new vars.  Check for overflow in buffer size calc.
Packit 709fb3
        Use page_alloc instead of valloc.
Packit 709fb3
        (fillbuf): Likewise.  Use memcpy to copy saved area.
Packit 709fb3
Packit 709fb3
1998-11-15  Paul Eggert
Packit 709fb3
Packit 709fb3
        * dfa.c (dfacomp), search.c (EGexecute): Don't assume char is unsigned.
Packit 709fb3
Packit 709fb3
1998-11-14  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.c (grepdir): Fix bug: memory freed twice.
Packit 709fb3
Packit 709fb3
        * src/search.c (Gcompile, Ecompile): Don't invoke dfainit,
Packit 709fb3
        since dfacomp does it for us, and if we also do it then we
Packit 709fb3
        leak memory.
Packit 709fb3
Packit 709fb3
1998-11-13  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * djgpp/config.bat: Rewrite to run the configure script via Bash.
Packit 709fb3
        * djgpp/config.site, djgpp/getconf: New files.
Packit 709fb3
        * djgpp/config.h, djgpp/*.mak, djgpp/po2tbl.sed: Remove.
Packit 709fb3
        * djgpp/README: Update instructions.
Packit 709fb3
Packit 709fb3
        * Makefile.am (EXTRA_DIST): Update the list of DJGPP files.
Packit 709fb3
Packit 709fb3
        * src/system.h (IS_SLASH): New macro.
Packit 709fb3
        (is_EISDIR): Define it here for DOS and Windows.
Packit 709fb3
Packit 709fb3
        * src/grep.c (main) [O_BINARY]: Set stdout to binary mode, so the
Packit 709fb3
        EOL formats of the input and output files match, unless stdout is
Packit 709fb3
        the console device.
Packit 709fb3
        (is_EISDIR): Don't define if already defined.  Accept a second
Packit 709fb3
        argument, the file name; all callers changed.
Packit 709fb3
        (grepdir): Don't free 'file', inside the loop.  Use IS_SLASH to
Packit 709fb3
        check whether 'dir' needs a slash.
Packit 709fb3
        (grepfile): If file is a directory, set e to EISDIR.
Packit 709fb3
Packit 709fb3
1998-11-10  Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/vms_fab.{c,h}: New file for VMS wildcard expansion
Packit 709fb3
        Written by Phillip C. Brisco.
Packit 709fb3
Packit 709fb3
        * vms/make.com : add line to compile vms_fab.c and
Packit 709fb3
        {e,f,}grepmat.c with link for each grep/fgrep/egrep.
Packit 709fb3
        Base on patch send by Phillib C. Brisco.
Packit 709fb3
Packit 709fb3
1998-11-09  Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep-2.2c on alpha for testing.
Packit 709fb3
Packit 709fb3
1998-11-09  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/grep.1: Fix "Last Change" of output by generating the date
Packit 709fb3
        from the RCS Id.
Packit 709fb3
Packit 709fb3
        * src/grep.c (is_EISDIR): New macro.
Packit 709fb3
        (grep): If -s, suppress errors from trying to read directories.
Packit 709fb3
        (grepfile): Use is_EISDIR to simplify code.
Packit 709fb3
        (grepdir): If -s, suppress errors from trying to read directories.
Packit 709fb3
Packit 709fb3
        * src/grep.1: Fix -q -r -s problems; describe BSD grep better.
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Update copyright.
Packit 709fb3
Packit 709fb3
        Specify default matcher with default_matcher extern var, not
Packit 709fb3
        DEFAULT_MATCHER macro.  This is more straightforward and means
Packit 709fb3
        we need to compile grep.c just once.
Packit 709fb3
Packit 709fb3
        * src/egrepmat.c, src/fgrepmat.c, src/grepmat.c: New files.
Packit 709fb3
Packit 709fb3
        * src/Makefile.am (base_sources): New macro.
Packit 709fb3
        (egrep_SOURCES, fgrep_SOURCES, grep_SOURCES): Now consist of
Packit 709fb3
        $(base_sources) plus the single tailoring file.
Packit 709fb3
        (grep_LDADD, egrep_LDADD, fgrep_LDADD): Remove.
Packit 709fb3
        (EXTRA_DIST): Remove grep.c, regex.c.
Packit 709fb3
        (fgrep.o, egrep.o): Remove.
Packit 709fb3
Packit 709fb3
        * src/grep.h (matcher): Now char const *.
Packit 709fb3
        (default_matcher): New decl.
Packit 709fb3
Packit 709fb3
        * src/grep.c (matcher): Now char const *.
Packit 709fb3
        (setmatcher): Now accepts char const *.
Packit 709fb3
        (main): Default the matcher from default_matcher (linked externally)
Packit 709fb3
        rather than DEFAULT_MATCHER (a macro).
Packit 709fb3
Packit 709fb3
1998-11-08 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.1: 'prep.ai.mit.edu' should be replaced with 'gnu.org'.
Packit 709fb3
        Nit from Paul Eggert.
Packit 709fb3
Packit 709fb3
1998-11-06 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.c: The Matcher is not set to argv[0] but
Packit 709fb3
        explicitly by a #define MATCHER at compile time default is "grep".
Packit 709fb3
Packit 709fb3
        * aclocal/: NEW dir. provides our own *.m4
Packit 709fb3
Packit 709fb3
        * configure.in: Move Paul's Large Files to AC_LFS.(aclocal/lfs.m4)
Packit 709fb3
        Taken from Jim Meyering fileutils.
Packit 709fb3
Packit 709fb3
1998-11-05 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/grep.1: update the man pages according to the
Packit 709fb3
        changes make by Miles.
Packit 709fb3
Packit 709fb3
        * po/*.po: updated.
Packit 709fb3
Packit 709fb3
        * first beta release for 2.3 (2.2a).
Packit 709fb3
Packit 709fb3
1998-11-04 Miles Bader
Packit 709fb3
Packit 709fb3
        * src/grep.c (main): Rationalize interaction of -C/-NUM/-A/-B
Packit 709fb3
        options, and allow -C to have an optional argument. -NUM can
Packit 709fb3
        now be mixed with -C, and -A, -B always take precedence over
Packit 709fb3
        -C/-NUM, regardless of order.
Packit 709fb3
        (long_options): Let -C/--context take an optional argument.
Packit 709fb3
Packit 709fb3
1998-11-03 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/dfa.c: HP-UX define clrbit/setbit as macros in <sys/param.h>
Packit 709fb3
        #undef if defined.
Packit 709fb3
        Fixed by Andreas Ley and Philippe Defert.
Packit 709fb3
Packit 709fb3
        * src/grep.1 : mention that -s follows POSIX behavior.
Packit 709fb3
        Noted by Paul Eggert and others.
Packit 709fb3
Packit 709fb3
        * tests/khadafy.sh: a typo in failure(s).
Packit 709fb3
        Spotted By Sotiris Vassilopoulos.
Packit 709fb3
Packit 709fb3
1998-11-01  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/system.h (IN_CTYPE_DOMAIN): New macro.
Packit 709fb3
        (ISALPHA, ISUPPER, ISLOWER, ISDIGIT, ISXDIGIT, ISSPACE,
Packit 709fb3
        ISPUNCT, ISALNUM, ISPRINT, ISGRAPH, ISCNTRL): Use
Packit 709fb3
        IN_CTYPE_DOMAIN instead of isascii.
Packit 709fb3
Packit 709fb3
1998-08-18  Paul Eggert
Packit 709fb3
Packit 709fb3
        Add support for new -r or --recursive (or -d recurse or
Packit 709fb3
        --directories=recurse) option.
Packit 709fb3
Packit 709fb3
        * src/Makefile.am (grep_SOURCES): Add savedir.c, savedir.h, stpcpy.c.
Packit 709fb3
Packit 709fb3
        * src/grep.1: Describe new options.
Packit 709fb3
Packit 709fb3
        * src/grep.c: Include "savedir.h".
Packit 709fb3
        (long_options): Add -r or --recursive.
Packit 709fb3
        (RECURSE_DIRECTORIES): New enum value.
Packit 709fb3
        (IS_DIRECTORY_ERRNO): Remove.
Packit 709fb3
        (reset, grep): Add file name arg.
Packit 709fb3
        (grepdir, grepfile): New functions.
Packit 709fb3
        (initial_bufoffset): New var.
Packit 709fb3
        (reset): Initialize it.
Packit 709fb3
        (fillbuf): Use it.
Packit 709fb3
        (count_matches, list_files, no_filenames, suppress_errors): New static
Packit 709fb3
        vars; formerly were local to 'main'.
Packit 709fb3
        (grep): Recurse through directories if the user asks for this.
Packit 709fb3
        (usage, main): Add new options.
Packit 709fb3
        (main): Change some local vars to be static, as described above.
Packit 709fb3
        Move most of the guts into grepfile function.
Packit 709fb3
        so that it can be recursed through.
Packit 709fb3
Packit 709fb3
        * configure.in (AC_HEADER_DIRENT, AC_FUNC_CLOSEDIR_VOID): Add.
Packit 709fb3
        (AC_REPLACE_FUNCS): Add stpcpy.
Packit 709fb3
Packit 709fb3
        * src/savedir.c, src/savedir.h, src/stpcpy.c: New files;
Packit 709fb3
        taken from fileutils 3.16u.
Packit 709fb3
Packit 709fb3
1998-08-11  Paul Eggert
Packit 709fb3
Packit 709fb3
        * src/system.h (initialize_main): New macro.
Packit 709fb3
        * src/grep.c (main): Invoke initialize_main first thing.
Packit 709fb3
Packit 709fb3
1998-04-29  Paul Eggert
Packit 709fb3
Packit 709fb3
        * NEWS, src/grep.1: Describe new -a and -d options.
Packit 709fb3
Packit 709fb3
        * src/grep.c (long_options, usage, main):
Packit 709fb3
        New options -d or --directories and -a or --text.
Packit 709fb3
        (directories, always_text): New variables.
Packit 709fb3
        (IS_DIRECTORY_ERRNO): New macro.
Packit 709fb3
        (reset): Now returns value specifying whether to skip this file.
Packit 709fb3
        Stat the file if either mmap or directory-skipping is possible.
Packit 709fb3
        Skip the file if it's a directory and we're skipping directories.
Packit 709fb3
        (grep): Skip the file if 'reset' tells us to.
Packit 709fb3
        (main): If open fails because the file is a directory, and if we're
Packit 709fb3
        skipping directories, don't report an error.
Packit 709fb3
        Remove special case for DOS and Windows.
Packit 709fb3
Packit 709fb3
        * src/dosbuf.c (guess_type): Use the same method for guessing whether a
Packit 709fb3
        file is binary as grep.c's grep does.
Packit 709fb3
        There's no longer any need to declare 'bp' to be unsigned.
Packit 709fb3
Packit 709fb3
1998-04-26 Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep-2.2 release.
Packit 709fb3
Packit 709fb3
        * src/dfa.c: Wrong revision was pulled out
Packit 709fb3
        for beta 2.1.1d.
Packit 709fb3
        * src/search.c: Wrong revision was pulled out
Packit 709fb3
        for beta 2.1.1d.
Packit 709fb3
Packit 709fb3
        * src/grep.c: ck_atoi () added instead of atoi ().
Packit 709fb3
        Suggestion from Jim Meyering.
Packit 709fb3
        ck_atoi () pulled from diffutils-2.7, maintained by Paul Eggert.
Packit 709fb3
Packit 709fb3
        * AUTHORS: Rephrase of some sentences.
Packit 709fb3
        * README:  Rewording.
Packit 709fb3
        Noted and patched by Joel N. Weber II.
Packit 709fb3
Packit 709fb3
1998-04-17 Kaveh R. Ghazi
Packit 709fb3
Packit 709fb3
        * src/dfa.h: Don't define 'const', trust autoconf to handle it.
Packit 709fb3
Packit 709fb3
1998-04-16 Alain Magloire
Packit 709fb3
Packit 709fb3
        * tests/{status,empty}.sh: wrong return status.
Packit 709fb3
Packit 709fb3
        * src/grep.c: Remove the REGEX part in usage (), it was
Packit 709fb3
        consider overkill by most.
Packit 709fb3
Packit 709fb3
1998-04-14  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * djgpp/config.bat: Support file names with multiple dots on all
Packit 709fb3
        platforms.
Packit 709fb3
Packit 709fb3
        * djgpp/README: Add instructions about file names illegal on
Packit 709fb3
        MS-DOS.
Packit 709fb3
Packit 709fb3
1998-04-13 Alain Magloire
Packit 709fb3
Packit 709fb3
        * src/dfa.c: by "popular" demand reverse
Packit 709fb3
        back to '_' not word-constituent.
Packit 709fb3
Packit 709fb3
        * grep-2.1.1c available for testing.
Packit 709fb3
Packit 709fb3
1998-04-13  Karl Heuer
Packit 709fb3
Packit 709fb3
        * src/grep.c: (a) The directory check is done too early:
Packit 709fb3
        logically, if the argument is "-", then it refers to standard
Packit 709fb3
        input, regardless of whether there's something in the file
Packit 709fb3
        system answering to "-".
Packit 709fb3
        (b) The sh command "grep -l root /etc/passwd /etc/group 0<&-"
Packit 709fb3
        prints "(standard input)" instead of "/etc/passwd", because it
Packit 709fb3
        mistakenly believes that a named file will never be opened on fd
Packit 709fb3
        0.  The string "(standard input)" should be based on the file
Packit 709fb3
        having been originally specified as "-", rather than making
Packit 709fb3
        assumptions about the fd.
Packit 709fb3
        (c) the code that calls close(fd) is being done outside of the
Packit 709fb3
        test for a bad fd.  Thus, if the open failed, this code will
Packit 709fb3
        attempt to close(-1).  It should be done inside the "fd != -1"
Packit 709fb3
        branch.
Packit 709fb3
        This patch addresses all three of these problems.
Packit 709fb3
Packit 709fb3
1998-04-13 Alain Magloire
Packit 709fb3
Packit 709fb3
        * configure.in: remove the deprecated AC_ISC_POSIX macro.
Packit 709fb3
        Spotted by Karl Heuer.
Packit 709fb3
Packit 709fb3
1998-04-03  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated from the
Packit 709fb3
        relevant Makefile.in files.
Packit 709fb3
Packit 709fb3
        * djgpp/config.bat: Create files in intl directory like the
Packit 709fb3
        configure script does.
Packit 709fb3
Packit 709fb3
1998-03-28  Eli Zaretskii
Packit 709fb3
Packit 709fb3
        * djgpp/main.mak, djgpp/src.mak, djgpp/tests.mak: Updated to track
Packit 709fb3
        changes in respective Makefile.in files.
Packit 709fb3
Packit 709fb3
        * src/dosbuf.c (guess_type): Avoid running off the end of the
Packit 709fb3
        buffer.  Spotted by Paul Eggert.
Packit 709fb3
Packit 709fb3
1998-03-27  Alain Magloire
Packit 709fb3
Packit 709fb3
        * grep-2.1.1b.tar.gz available.
Packit 709fb3
Packit 709fb3
        * src/regex.c: CLASS_CHAR_MAX set to 256 instead of 6
Packit 709fb3
        when WCTYPE and WCHAR are not defined. When class names
Packit 709fb3
        where bigger then 6, it will not detect an error.
Packit 709fb3
        example '[[:alphabet:]]'.
Packit 709fb3
Packit 709fb3
        * Updated the copyright of the files with emacs.
Packit 709fb3
        With emacs Jim :).
Packit 709fb3
Packit 709fb3
1998-03-26 Jim Meyering
Packit 709fb3
Packit 709fb3
        * src/dfa.c (IS_WORD_CONSTITUENT): Define.
Packit 709fb3
        (lex): Use IS_WORD_CONSTITUENT, not ISALNUM.
Packit 709fb3
        Don't special-case '_'.
Packit 709fb3
        (dfastate): Use IS_WORD_CONSTITUENT, not ISALNUM.
Packit 709fb3
        (dfaexec): Likewise.
Packit 709fb3
Packit 709fb3
1998-03-25  Alain Magloire
Packit 709fb3
Packit 709fb3
        * tests/warning.sh: typos and replace the echos with
Packit 709fb3
        a simple cat.
Packit 709fb3
        Noted By Jim Meyering.
Packit 709fb3
Packit 709fb3
        * src/regex.c: #undef ISASCII and ISPRINT before defining
Packit 709fb3
        them(On Solaris it was define).
Packit 709fb3
        Pattern 'a[[:]:]]b' is an invalid char class and the error
Packit 709fb3
        from regex was 1(REG_NOMATCH) instead of 2 (REG_ECTYPE).
Packit 709fb3
        Fix with help from Ulrich Drepper.<