Mail Archives: djgpp/2019/02/03/02:13:56
This is a port of GNU Sed 4.7 to MSDOS/DJGPP.
sed is a stream editor. A stream editor is used to perform basic text
transformations on an input stream (a file or input from a pipeline).
While in some ways similar to an editor which permits scripted edits
(such as ed), sed works by making only one pass over the input(s), and
is consequently more efficient. But it is sed's ability to filter text
in a pipeline which particularly distinguishes it from other types of
editors.
Please, read carefully the NEWS file to see the user visible changes
and read the info or html docs to become familiar with the program.
For beginers the chapter: examples in the info doc may be instructive.
The chapter: Other resources for learning about 'sed' contains pointers
to usefull sed specific urls.
DJGPP specific changes.
=======================
- The most notable change of this port is that now stdin and stdout are
switched into binary mode if the --binary flag is used. This is a sed
specific change and not a DJGPP specific one. I have decided to keep
this change even if it breaks backward compatibility. For the DJGPP
port of sed, switching stdin and stdout into binary mode will not
inhibit neither SIGINT nor SIGQUIT (aka Ctnl-c and Cntl-Break) when
reading or writing from a terminal.
For the rationale of this change read the ChangLog file.
- The port has been configured and compiled on WinXP SP3 and Win98SE.
There is no guarantee that this may be possible with any other DOS-
like OS. Due to the use of long file names it will not be possible
to configure and compile without LFN support. The port has been
compiled using gcc346 and bnu2311b.
- 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.
- To be able to build this port you may need to have LFN support.
- If NLS support is wanted, then the sources must be reconfigured passing
the nls option to config.bat.
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 it contents and configure from scratch again.
Please read the docs to become familiar with this product.
Here is an extract of the NEWS file showing the user visible changes
from the last port (GNU Sed 4.5) to this one:
-------------------------------------------------------------------------------
* Noteworthy changes in release 4.7 (2018-12-20) [stable]
** Bug fixes
Some uses of \b in the C locale and with the DFA matcher would fail, e.g.,
the following would mistakenly print "123-x" instead of "123":
echo 123-x|LC_ALL=C sed 's/.\bx//'
Using a multibyte locale or certain regexp constructs (some ranges,
backreferences) would avoid the bug. [bug introduced in sed 4.6]
* Noteworthy changes in release 4.6 (2018-12-19) [stable]
** Improvements
sed now prints a clear error message when r/R/w/W (and s///w) commands
are missing a filename. Previously, w/W commands would fail with confusing
error message, while r/R would be a silent no-op.
sed now uses fully-buffered output (instead of line-buffered) when
writing to files. This should noticeably improve performance of "sed -i"
and other write commands.
Buffering can be disabled (as before) with "sed -u".
sed in non-cygwin windows environments (e.g. mingw) now properly handles
'\n' newlines in -b/--binary mode.
** Bug fixes
sed no longer accesses invalid memory (heap overflow) when given invalid
backreferences in 's' command [bug#32082, present at least since sed-4.0.6].
sed no longer adds extraneous NUL when given s/$//n command.
[related to bug#32271, present since sed-4.0.7]
sed no longer accesses invalid memory (heap overflow) with s/$//n regexes.
[bug#32271, present since sed-4.3].
** New Features
New option, --debug: print the input sed script in canonical form
and annotate program execution.
-------------------------------------------------------------------------------
The port consists of the usual three packages that have been produced
using djdev205 and can be downloaded from ftp.delorie.com and mirrors
as (time stamp 2019-01-05):
Sed 4.7 binary, info and man format documentation:
ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/sed47b.zip
Sed 4.7 dvi, html, pdf and ps format documentation:
ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/sed47d.zip
Sed 4.7 source:
ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/sed47s.zip
Send Sed specific bug reports to <bug-sed AT gnu DOT org>.
Send suggestions and bug reports concerning the DJGPP port
to comp.os.msdos.djgpp or <djgpp AT delorie DOT com>.
Enjoy.
Guerrero, Juan Manuel <juan DOT guerrero AT igd DOT fhg DOT de>
- Raw text -