head	1.5;
access;
symbols
	RELENG_8_4:1.5.0.76
	RELENG_9_1_0_RELEASE:1.5
	RELENG_9_1:1.5.0.74
	RELENG_9_1_BP:1.5
	RELENG_8_3_0_RELEASE:1.5
	RELENG_8_3:1.5.0.72
	RELENG_8_3_BP:1.5
	RELENG_9_0_0_RELEASE:1.5
	RELENG_9_0:1.5.0.70
	RELENG_9_0_BP:1.5
	RELENG_9:1.5.0.68
	RELENG_9_BP:1.5
	RELENG_7_4_0_RELEASE:1.5
	RELENG_8_2_0_RELEASE:1.5
	RELENG_7_4:1.5.0.66
	RELENG_7_4_BP:1.5
	RELENG_8_2:1.5.0.64
	RELENG_8_2_BP:1.5
	RELENG_8_1_0_RELEASE:1.5
	RELENG_8_1:1.5.0.62
	RELENG_8_1_BP:1.5
	RELENG_7_3_0_RELEASE:1.5
	RELENG_7_3:1.5.0.60
	RELENG_7_3_BP:1.5
	RELENG_8_0_0_RELEASE:1.5
	RELENG_8_0:1.5.0.58
	RELENG_8_0_BP:1.5
	RELENG_8:1.5.0.56
	RELENG_8_BP:1.5
	RELENG_7_2_0_RELEASE:1.5
	RELENG_7_2:1.5.0.54
	RELENG_7_2_BP:1.5
	RELENG_7_1_0_RELEASE:1.5
	RELENG_6_4_0_RELEASE:1.5
	RELENG_7_1:1.5.0.52
	RELENG_7_1_BP:1.5
	RELENG_6_4:1.5.0.50
	RELENG_6_4_BP:1.5
	RELENG_7_0_0_RELEASE:1.5
	RELENG_6_3_0_RELEASE:1.5
	RELENG_7_0:1.5.0.48
	RELENG_7_0_BP:1.5
	RELENG_6_3:1.5.0.46
	RELENG_6_3_BP:1.5
	RELENG_7:1.5.0.44
	RELENG_7_BP:1.5
	RELENG_6_2_0_RELEASE:1.5
	RELENG_6_2:1.5.0.42
	RELENG_6_2_BP:1.5
	RELENG_5_5_0_RELEASE:1.5
	RELENG_5_5:1.5.0.40
	RELENG_5_5_BP:1.5
	RELENG_6_1_0_RELEASE:1.5
	RELENG_6_1:1.5.0.38
	RELENG_6_1_BP:1.5
	RELENG_6_0_0_RELEASE:1.5
	RELENG_6_0:1.5.0.36
	RELENG_6_0_BP:1.5
	RELENG_6:1.5.0.34
	RELENG_6_BP:1.5
	RELENG_5_4_0_RELEASE:1.5
	RELENG_5_4:1.5.0.32
	RELENG_5_4_BP:1.5
	RELENG_4_11_0_RELEASE:1.5
	RELENG_4_11:1.5.0.30
	RELENG_4_11_BP:1.5
	RELENG_5_3_0_RELEASE:1.5
	RELENG_5_3:1.5.0.28
	RELENG_5_3_BP:1.5
	RELENG_5:1.5.0.26
	RELENG_5_BP:1.5
	grep_2_5_1:1.1.1.2
	RELENG_4_10_0_RELEASE:1.5
	RELENG_4_10:1.5.0.24
	RELENG_4_10_BP:1.5
	grep_2_4_2:1.1.1.2
	RELENG_5_2_1_RELEASE:1.5
	RELENG_5_2_0_RELEASE:1.5
	RELENG_5_2:1.5.0.22
	RELENG_5_2_BP:1.5
	RELENG_4_9_0_RELEASE:1.5
	RELENG_4_9:1.5.0.20
	RELENG_4_9_BP:1.5
	RELENG_5_1_0_RELEASE:1.5
	RELENG_5_1:1.5.0.18
	RELENG_5_1_BP:1.5
	RELENG_4_8_0_RELEASE:1.5
	RELENG_4_8:1.5.0.16
	RELENG_4_8_BP:1.5
	RELENG_5_0_0_RELEASE:1.5
	RELENG_5_0:1.5.0.14
	RELENG_5_0_BP:1.5
	RELENG_4_7_0_RELEASE:1.5
	RELENG_4_7:1.5.0.12
	RELENG_4_7_BP:1.5
	RELENG_4_6_2_RELEASE:1.5
	RELENG_4_6_1_RELEASE:1.5
	RELENG_4_6_0_RELEASE:1.5
	RELENG_4_6:1.5.0.10
	RELENG_4_6_BP:1.5
	RELENG_4_5_0_RELEASE:1.5
	RELENG_4_5:1.5.0.8
	RELENG_4_5_BP:1.5
	RELENG_4_4_0_RELEASE:1.5
	RELENG_4_4:1.5.0.6
	RELENG_4_4_BP:1.5
	RELENG_4_3_0_RELEASE:1.5
	RELENG_4_3:1.5.0.4
	RELENG_4_3_BP:1.5
	RELENG_4_2_0_RELEASE:1.5
	RELENG_4_1_1_RELEASE:1.5
	PRE_SMPNG:1.5
	RELENG_4_1_0_RELEASE:1.5
	RELENG_3_5_0_RELEASE:1.2.12.1
	RELENG_4_0_0_RELEASE:1.5
	RELENG_4:1.5.0.2
	RELENG_4_BP:1.5
	grep_2_4d:1.1.1.2
	grep_2_4a:1.1.1.2
	grep_2_4:1.1.1.2
	grep_2_3:1.1.1.2
	FSF:1.1.1
	RELENG_3_4_0_RELEASE:1.2
	RELENG_3_3_0_RELEASE:1.2
	RELENG_3_2_PAO:1.2.0.14
	RELENG_3_2_PAO_BP:1.2
	RELENG_3_2_0_RELEASE:1.2
	RELENG_3_1_0_RELEASE:1.2
	RELENG_3:1.2.0.12
	RELENG_3_BP:1.2
	RELENG_2_2_8_RELEASE:1.2
	RELENG_3_0_0_RELEASE:1.2
	RELENG_2_2_7_RELEASE:1.2
	RELENG_2_2_6_RELEASE:1.2
	RELENG_2_2_5_RELEASE:1.2
	RELENG_2_2_2_RELEASE:1.2
	RELENG_2_2_1_RELEASE:1.2
	RELENG_2_2_0_RELEASE:1.2
	RELENG_2_1_7_RELEASE:1.2
	RELENG_2_1_6_1_RELEASE:1.2
	RELENG_2_1_6_RELEASE:1.2
	RELENG_2_2:1.2.0.10
	RELENG_2_2_BP:1.2
	RELENG_2_1_5_RELEASE:1.2
	RELENG_2_1_0_RELEASE:1.2
	RELENG_2_1_0:1.2.0.8
	RELENG_2_1_0_BP:1.2
	RELENG_2_0_5_RELEASE:1.2
	RELENG_2_0_5:1.2.0.6
	RELENG_2_0_5_BP:1.2
	RELENG_2_0_5_ALPHA:1.2
	RELEASE_2_0:1.2
	BETA_2_0:1.2
	ALPHA_2_0:1.2.0.4
	MOVED_NEWCVS:1.2
	FINAL_1_1_5:1.2
	ALPHA_1_1_5:1.2
	FINAL_1_1:1.2
	GAMMA_1_1:1.2
	BETA_1_1:1.2.0.2
	BP_BETA_1_1:1.2
	FINAL_1_0:1.2
	EPSILON_1_0:1.2
	GAMMA_1_0:1.2
	BETA_1_0:1.2
	ALPHA_1_0:1.2
	GREP_1_6:1.1.1.1
	GNU:1.1.1;
locks; strict;
comment	@# @;


1.5
date	99.12.30.19.30.26;	author ru;	state Exp;
branches
	1.5.76.1;
next	1.4;

1.4
date	99.11.20.09.40.04;	author peter;	state Exp;
branches;
next	1.3;

1.3
date	99.10.28.10.34.17;	author ru;	state dead;
branches;
next	1.2;

1.2
date	93.07.06.18.44.54;	author nate;	state Exp;
branches
	1.2.12.1;
next	1.1;

1.1
date	93.06.29.06.04.43;	author nate;	state Exp;
branches
	1.1.1.1;
next	;

1.5.76.1
date	99.12.30.19.30.26;	author svnexp;	state dead;
branches;
next	1.5.76.2;

1.5.76.2
date	2013.03.28.13.02.50;	author svnexp;	state Exp;
branches;
next	;

1.2.12.1
date	99.12.31.09.55.50;	author ru;	state Exp;
branches;
next	;

1.1.1.1
date	93.06.29.06.04.44;	author nate;	state Exp;
branches;
next	1.1.1.2;

1.1.1.2
date	99.12.30.19.19.37;	author ru;	state Exp;
branches;
next	;


desc
@@


1.5
log
@This is the stock 2.3 file.  Since someone majorly SPAMMED the
repository by NOT vendor importing the virgin 2.0 sources, CVS
had no idea what to do here.
@
text
@This is GNU grep, the "fastest grep in the west" (we hope).  All
bugs reported in previous releases have been fixed.  Many exciting new
bugs have probably been introduced in this revision.

GNU grep is provided "as is" with no warranty.  The exact terms
under which you may use and (re)distribute this program are detailed
in the GNU General Public License, in the file COPYING.

GNU grep is based on a fast lazy-state deterministic matcher (about
twice as fast as stock Unix egrep) hybridized with a Boyer-Moore-Gosper
search for a fixed string that eliminates impossible text from being
considered by the full regexp matcher without necessarily having to
look at every character.  The result is typically many times faster
than Unix grep or egrep.  (Regular expressions containing backreferencing
will run more slowly, however.)

See the files AUTHORS and THANKS for a list of authors and other contributors.

See the file INSTALL for compilation and installation instructions.

See the file NEWS for a description of major changes in this release.

See the file TODO for ideas on how you could help us improve grep.

Send bug reports to bug-gnu-utils@@gnu.org.  Be sure to
include the word "grep" in your Subject: header field.
@


1.5.76.1
log
@file README was added on branch RELENG_8_4 on 2013-03-28 13:02:50 +0000
@
text
@d1 26
@


1.5.76.2
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/248810
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
@
text
@a0 26
This is GNU grep, the "fastest grep in the west" (we hope).  All
bugs reported in previous releases have been fixed.  Many exciting new
bugs have probably been introduced in this revision.

GNU grep is provided "as is" with no warranty.  The exact terms
under which you may use and (re)distribute this program are detailed
in the GNU General Public License, in the file COPYING.

GNU grep is based on a fast lazy-state deterministic matcher (about
twice as fast as stock Unix egrep) hybridized with a Boyer-Moore-Gosper
search for a fixed string that eliminates impossible text from being
considered by the full regexp matcher without necessarily having to
look at every character.  The result is typically many times faster
than Unix grep or egrep.  (Regular expressions containing backreferencing
will run more slowly, however.)

See the files AUTHORS and THANKS for a list of authors and other contributors.

See the file INSTALL for compilation and installation instructions.

See the file NEWS for a description of major changes in this release.

See the file TODO for ideas on how you could help us improve grep.

Send bug reports to bug-gnu-utils@@gnu.org.  Be sure to
include the word "grep" in your Subject: header field.
@


1.4
log
@Back out the botched attempt to update to gnu grep 2.3 (lots of history
was lost).  Restore original version to try and avoid breaking the build
while David O'brien does a proper set of imports and merges.

Requested by:	obrien
@
text
@d1 1
a1 1
This is GNU grep 2.0, the "fastest grep in the west" (we hope).  All
d3 1
a3 1
bugs have probably been introduced in this major revision.
d17 1
a17 1
See the file AUTHORS for a list of authors and other contributors.
a20 2
See the file MANIFEST for a list of files in this distribution.

d23 1
a23 1
See the file PROJECTS if you want to be mentioned in AUTHORS.
d25 1
a25 1
Send bug reports to bug-gnu-utils@@prep.ai.mit.edu.  Be sure to
@


1.3
log
@Upgrade grep to version 2.3
@
text
@@


1.2
log
@Update GNU grep to version 2.0
@
text
@@


1.2.12.1
log
@MFC: Update to GNU grep 2.3
@
text
@d1 1
a1 1
This is GNU grep, the "fastest grep in the west" (we hope).  All
d3 1
a3 1
bugs have probably been introduced in this revision.
d17 1
a17 1
See the files AUTHORS and THANKS for a list of authors and other contributors.
d21 2
d25 1
a25 1
See the file TODO for ideas on how you could help us improve grep.
d27 1
a27 1
Send bug reports to bug-gnu-utils@@gnu.org.  Be sure to
@


1.1
log
@Initial revision
@
text
@d1 3
a3 2
This README documents GNU e?grep version 1.6.  All bugs reported for
previous versions have been fixed.
d5 1
a5 5
See the file INSTALL for compilation and installation instructions.

Send bug reports to bug-gnu-utils@@prep.ai.mit.edu.

GNU e?grep is provided "as is" with no warranty.  The exact terms
d9 1
a9 1
GNU e?grep is based on a fast lazy-state deterministic matcher (about
d15 5
a19 1
may run more slowly, however.)
d21 1
a21 1
GNU e?grep is brought to you by the efforts of several people:
d23 1
a23 2
	Mike Haertel wrote the deterministic regexp code and the bulk
	of the program.
d25 1
a25 43
	James A. Woods is responsible for the hybridized search strategy
	of using Boyer-Moore-Gosper fixed-string search as a filter
	before calling the general regexp matcher.

	Arthur David Olson contributed code that finds fixed strings for
	the aforementioned BMG search for a large class of regexps.

	Richard Stallman wrote the backtracking regexp matcher that is
	used for \<digit> backreferences, as well as the getopt that
	is provided for 4.2BSD sites.  The backtracking matcher was
	originally written for GNU Emacs.

	D. A. Gwyn wrote the C alloca emulation that is provided so
	System V machines can run this program.  (Alloca is used only
	by RMS' backtracking matcher, and then only rarely, so there
	is no loss if your machine doesn't have a "real" alloca.)

	Scott Anderson and Henry Spencer designed the regression tests
	used in the "regress" script.

	Paul Placeway wrote the manual page, based on this README.

If you are interested in improving this program, you may wish to try
any of the following:

1.  Replace the fast search loop with a faster search loop.
    There are several things that could be improved, the most notable
    of which would be to calculate a minimal delta2 to use.

2.  Make backreferencing \<digit> faster.  Right now, backreferencing is
    handled by calling the Emacs backtracking matcher to verify the partial
    match.  This is slow; if the DFA routines could handle backreferencing
    themselves a speedup on the order of three to four times might occur
    in those cases where the backtracking matcher is called to verify nearly
    every line.  Also, some portability problems due to the inclusion of the
    emacs matcher would be solved because it could then be eliminated.
    Note that expressions with backreferencing are not true regular
    expressions, and thus are not equivalent to any DFA.  So this is hard.

3.  Handle POSIX style regexps.  I'm not sure if this could be called an
    improvement; some of the things on regexps in the POSIX draft I have
    seen are pretty sickening.  But it would be useful in the interests of
    conforming to the standard.
d27 2
a28 2
4.  Replace the main driver program grep.c with the much cleaner main driver
    program used in GNU fgrep.
@


1.1.1.1
log
@Gnu e?grep 1.6
@
text
@@


1.1.1.2
log
@Virgin import of a trimmed down GNU Grep 2.3.

It is being re-imported here, to keep our long source change history with
this source continuous.
src/contrib/grep will be deleted some time in the very near future.
@
text
@d1 2
a2 3
This is GNU grep, the "fastest grep in the west" (we hope).  All
bugs reported in previous releases have been fixed.  Many exciting new
bugs have probably been introduced in this revision.
d4 5
a8 1
GNU grep is provided "as is" with no warranty.  The exact terms
d12 1
a12 1
GNU grep is based on a fast lazy-state deterministic matcher (about
d18 1
a18 1
will run more slowly, however.)
d20 1
a20 3
See the files AUTHORS and THANKS for a list of authors and other contributors.

See the file INSTALL for compilation and installation instructions.
d22 2
a23 1
See the file NEWS for a description of major changes in this release.
d25 43
a67 1
See the file TODO for ideas on how you could help us improve grep.
d69 2
a70 2
Send bug reports to bug-gnu-utils@@gnu.org.  Be sure to
include the word "grep" in your Subject: header field.
@

