Mail Archives: djgpp/2015/11/07/22:59:28
This is a port of GNU grep 2.22 to MSDOS/DJGPP.
This is GNU grep, the "fastest grep in the west".
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.)
DJGPP specific changes.
=======================
- There are no DJGPP specific user visible changes compared with the last port.
- The port has been tested by using it. I have used them only on WinXP.
It has worked flawlessly. I do not konw if this will ever be the case on
FreeDOS. I have never used/tested them in that environment.
- The port has been configured and compiled on WinXP SP3. There is no
guarantee that this may be possible with any other DOS-like OS. Due
to the massive use of long file names it will not be possible to configure
and compile without LFN support. The port has been compiled using gcc520
and bnu225br2.
- The port does not provide NLS support.
- The port has been configured with perl-regexp (pcre) support enabled.
This means that you will have to install pcre libray available as:
ftp://ftp.delorie.com/pub/djgpp/current/v2tk/pcre837b.zip
if you decide to compile the the preconfigured sources. If you prefer
to disable the pcre support you will have to reconfigure and recompile
the sources again, but this time passing the "no-pcre" command line
option to config.bat. The zip file contains only the one build with
perl-regexp support enabled.
As usual, all djgpp specific files (diffs, README files, etc.) are stored in
the /djgpp directory. The sources have been configured to be build in the
/_build directory. If for some reason it does not work for you, delete its
contents and configure from scratch again.
For further information about GNU grep please read the info docs and NEWS file.
This is an verbatim extract of the NEWS file (multi-byte specific features are
not supported by the DJGPP port):
-------------------------------------------------------------------------------
* Noteworthy changes in release 2.22 (2015-11-01) [stable]
** Improvements
Performance has improved for patterns containing very long strings,
reducing preprocessing time for an N-byte regexp from O(N^2) to
only slightly superlinear for most patterns. Before, a command like
the following would take over a minute, but now, it takes less than
a second:
: | grep -f <(seq -s '' 99999)
When building grep, 'configure' now uses PCRE's pkg-config module for
configuration information, rather than attempting to guess it by hand.
** Bug fixes
A DFA matcher bug made this command mistakenly print its input line:
echo axb | grep -E '^x|x$'
Likewise for this equivalent command:
echo axb | grep -e '^x' -e 'x$'
[bug introduced in grep-2.19 ]
grep no longer reads from uninitialized memory or from beyond the end
of the heap-allocated input buffer. This fix addressed CVE-2015-1345.
[bug introduced in grep-2.19 ]
With -z, '.' and '[^x]' in a pattern now consistently match newline.
Previously, they sometimes matched newline, and sometimes did not.
[bug introduced in grep-2.4]
When the JIT stack is exhausted, grep -P now grows the stack rather
than reporting an internal PCRE error.
'grep -D skip PATTERN FILE' no longer hangs if FILE is a fifo.
[bug introduced in grep-2.12]
--exclude and related options are now matched against entire
command-line arguments, not against command-line components.
[bug introduced in grep-2.6]
Fix performance degradation of grep -Fw in unibyte locales.
[bug introduced in grep-2.19 ]
-------------------------------------------------------------------------------
The port consists of the usual three packages produced using djdev205
that can be downloaded from ftp.delorie.com and mirrors as (time stamp 2015-11-07):
grep 2.22 binaries, info and man format documentation:
ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/grep222b.zip
grep 2.22 dvi, html, pdf and ps format documentation:
ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/grep222d.zip
grep 2.22 source:
ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/grep222s.zip
Send grep specific bug reports to <bug-grep AT gnu DOT org>.
Send suggestions and bug reports concerning the DJGPP port to
comp.os.msdos.djgpp or <djgpp AT delorie DOT com>.
If you are not sure if the failure is really a grep failure
or a djgpp specific failure, report it here and *not* to
<bug-grep AT gnu DOT org>.
Enjoy.
Guerrero, Juan Manuel <juan DOT guerrero AT gmx DOT de>
- Raw text -