Mail Archives: djgpp/2004/11/26/10:27:52
This is a port of GNU Sed 4.1.2 to MSDOS/DJGPP (release 2).
This is a djgpp specific bug fix release of the previous release
of sed412[bds].zip, so it is seriously suggested to update.
The previous release of sed412[bds].zip has a bug in the gnu specific
e (evalute) command, that makes it fail in different ways depending if
the package has been compiled with stock djdev203 or with the cvs sources
of djdev204.
DJGPP specific changes.
=======================
- djdev203 specific:
There was a bug in my code that prevented the system() call to be correctly
executed if multiple commands separated by semicolons were passed as
argument to system(). This bug made the e command fail under certain
circumstances.
This issue has been fixed so that the binaries produced with djdev203
will work correctly for all new gnu specific sed commands. Please note
that the distributed binaries have been build with djdev203.
- djdev204 specific:
The are djgpp204 specific reasons for the e command failure too.
One reason is a bug in the popen() function that is been fixed actualy.
A second reason is a memory issue that is still under investigation.
Due to this facts, the e command must be temporaly disabled if the sed
sources shall be compiled with djdev204 for WinXP use.
Compiling the sources.
======================
- If you compile the sources with djdev203 (there is no real reason to do
this) you must proceed as usual running the following commands from the
top srcdir, this is sed-4.1-2:
make
make check
make install
No test of the testsuite shall fail.
If you need to reconfigure your sources, you have to delete the config.cache
file in the /djgpp subdir first before you run config.bat.
- If you compile the sources with djdev204 it will be essential to reconfigure
sources because the distributed one have been configured for djdev203. For
this purpose you **must** delete the cache file djgpp/config.cache or you
will get a broken binary.
Due to the actually broken popen() from cvs djdev204 the configuration batch
file (xp-config.bat) will disable the checking for popen() in libc which
implies that the e command will be disabled. If you run a non portable sed
script that uses the e command, you will get an error message like this:
sed.exe: option `e' not supported
In conclusion, to rebuild the sed binary with djdev204 to get a binary
usefull for WinXP run the following commands from the top srcdir (sed-4.1-2):
rm djgpp/config.cache
djgpp\xp-config.bat
make
make check
make install
Please note that the removing of the cache file is essential. It should
also be noticed that xp-config.bat shall be used to configure the sources
or the popen() check will not be inhibit producing a broken binary.
Only the eval test should fail with a message like this:
sed.exe: option `e' not supported
This is of course intentional. All other tests of the 52 tests of the
testsuite should work.
Please do **not** report anything to <bug-gnu-utils AT gnu DOT org>, if there are
problems with this port there are probably djdev204 originated and must be
discussed and solved here.
As usual, all djgpp specific files (config.bat, diffs, readme files, etc.)
are located in the djgpp subdir.
The port consists of the usual three packages that can be downloaded from
ftp.delorie.com and mirrors as (timestamp 2004-11-25):
Sed 4.1.2 binary, info and man format documentation:
ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/sed412b.zip
Sed 4.1.2 dvi, html and ps format documentation:
ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/sed412d.zip
Sed 4.1.2 source:
ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/sed412s.zip
Send Sed specific bug reports to <bug-gnu-utils 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 <st001906 AT hrz1 DOT hrz DOT tu-darmstadt DOT de>
- Raw text -