Message-Id: <201305121940.r4CJeI8V009551@delorie.com> Date: Sun, 12 May 2013 21:36:09 +0200 From: Juan Manuel Guerrero To: djgpp-announce AT delorie DOT com Subject: ANNOUNCE: DJGPP port of GNU Gawk 4.1.0 uploaded. Content-Type: text/plain; charset=ISO-8859-15; format=flowed Reply-To: djgpp AT delorie DOT com This is a port of GNU Gawk 4.1.0 to MSDOS/DJGPP. GNU Gawk is an interpreter for text scanning and processing language named Awk. It is specifically suited for programs that process text files one line at a time, but can also be used for much more complex tasks. DJGPP specific changes. ======================= - Add CVS version of popen.c to avoid that gawk is linked to the broken one from djdev204 (beta 1). - Minor DJGPP specific issues concerning the way the sources are compiled documented in the diffs file located in the pc subdir. - The testsuite will only work if LFN support is available. This is due to the great amount of long file names that can not match on unique short file names clashes. I have no intention to solve these file name conflicts. Please note that the package can always be compiled and installed on SFN systems. Only the testsuite will not work. - The DJGPP port does not support the building of DLLs. DLLs are not supported by DOS nor by DJGPP by the momment. - The DJGPP port does not support the use of MPFR library. This may change in the future. Here is an extract of the NEWS file showing the user visible changes from the last port (gawk 4.0.2) to this one: Changes from 4.0.2 to 4.1.0 --------------------------- 1. The three executables gawk, pgawk, and dgawk, have been merged into one, named just gawk. As a result: * The -R option is gone * Use -D to run the debugger. An optional file argument is a list of commands to run first. * Use -o to do pretty-printing only. * Use -p to do profiling. This considerably reduces gawk's "footprint" and eases the documentation burden as well. 2. Gawk now supports high precision arithmetic with MPFR. The default is still double precision, but setting PREC changes things, or using the -M / --bignum options. This support is not compiled in if the MPFR library is not available. 3. The new -i option (from xgawk) is used for loading awk library files. This differs from -f in that the first non-option argument is treated as a script. 4. The new -l option (from xgawk) is used for loading dynamic extensions. 5. The dynamic extension interface has been completely redone! There is now a defined API for C extensions to use. A C extension acts like a function written in awk, except that it cannot do everything that awk code can. However, this allows interfacing to any facility that is available from C. This is a major development, see the doc, which has a nice shiny new chapter describing everything. This support is not compiled in if dynamic loading of shared libraries is not supported. The old extension mechanism is still supported for compatiblity, but it will most definitely be removed at the next major release. 6. The "inplace" extension, built using the new facility, can be used to simulate the GNU "sed -i" feature. 7. The and(), or() and xor() functions now take any number of arguments, with a minimum of two. 8. New arrays: SYMTAB, FUNCTAB, and PROCINFO["identifiers"]. SYMTAB allows indirect access to any defined variable or array; it is possible to "walk" the symbol table, if that should be necessary. 9. Support for building gawk with a cross compiler has been improved. 10. Infrastructure upgrades: bison 2.7.1, gettext 0.18.2.1, automake 1.13.1, libtool 2.4.2 for the extensions. ----------------------------------------------------------- Compiling the sources. ====================== Compile, test and install the binaries produced from the source distribution running the following commands from the top srcdir, this is gawk-4.1-0: make djgpp cd test make cd .. make install 7 tests from the testsuite will fail without aborting the test suite. This is expected to happen. The test case: manyfiles may abort the complete test suite. This is because it tries to open 1025 files exhausting the amount of file descriptors that the OS offers. I have reduced the number to 245, so the test should work if you have set the "files" directive in your config.sys or config.nt to around the max. value of 255. For further information about GNU gawk please read the info docs and NEWS file. The port has been compiled using stock djdev203 (patchlevel 2) and consists of the usual three packages that can be downloaded from ftp.delorie.com and mirrors as (time stamp 2013-05-12): Gawk 4.1.0 binary, info and man format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gwk410b.zip Gawk 4.1.0 dvi, html and ps format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gwk410d.zip Gawk 4.1.0 source: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gwk410s.zip The binaries have been produced a second time using the stock version of djdev204 beta library. This package is available at ftp.delorie.com and mirrors as (time stamp 2013-05-12): Gawk 4.1.0 binary, info and man format documentation: ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/gwk410b.zip Send Gawk specific bug reports to . Send suggestions and bug reports concerning the DJGPP port to comp.os.msdos.djgpp or . Enjoy. Guerrero, Juan Manuel