X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f Message-Id: <200809161527.m8GFRUsE028804@delorie.com> X-Recipient: djgpp-announce AT delorie DOT com X-Authenticated: #27081556 X-Provags-ID: V01U2FsdGVkX1/+VgM8cp3+UncADV9uQ79tf7r8KXAEbhrtPvidEa GVatjRa00sgv0e From: "Juan Manuel Guerrero" To: Subject: ANNOUNCE: Release 2 of the DJGPP port of GNU Which 2.20 uploaded. Date: Tue, 16 Sep 2008 13:43:06 +0200 X-Priority: 3 X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-FuHaFi: 0.5600000000000001 This is release 2 of the port of GNU Which 2.20 to MSDOS/DJGPP. DJGPP specific changes. ======================= This is a bugfix release. As has beeen reported by JT Williams some days ago, the old port fails on plain DOS. The reason for this failure is that functions like realpath and _fixpath return ENOSYS to the calling function even if the canonicalization of the passed path has been successfully performed. ENOSYS is generated by _use_lfn that is called by realpath and/or _fixpath. If _use_lfn detects that the used OS does not provide INT 21 function 0x71A0, then errno is set to ENOSYS. But if function 0x71A0 is available or not has no real influence on the canonicalization of the path itself. The setting of errno by _use_lfn inside realpath and _fixpath clobbers errno and confuses the calling function. I have solve the problem by checking that errno != ENOSYS before calling the error function and terminating program (which) execution. Please note that the difficulty only appeares with OSs that do not implement function 0x71A0 (Get Volume Info), you can not reproduce this bug with Win95 and other Windows. That is the reason why I have never noticed it before. Thanks again to JT Williams for calling my attention to this issue. Please note that the distributed source package has been configured for djdev203. If you use WinXP and you want to rebuild the binaries, you will have to reconfigure the source package from scratch. As usual, all the djgpp specific files (config.bat, diffs, readme files, etc.) are stored in the /djgpp subdir. To be able to configure and compile this source package, you will need to install libsupport 5.2 or later. The library will provide a fixed version of realpath() and _fixpath() that are required to produce correct canonicalized paths. You can download this package from ftp.delorie.com or mirrors: ftp://ftp.delorie.com/pub/djgpp/beta/v2tk/lsupp52a.zip Of course, if you are not interested in compiling the sources you do not need to download and install lsupp52a.zip at all. For futher information about GNU Which please read the info docs and the NEWS file. Downloading the port. ===================== The port consists of the usual three packages produced using stock djdev203 that can be downloaded from ftp.delorie.com and mirrors as (timestamp 2008-09-15): Which 2.20 binary, info and man format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/whic220br2.zip Which 2.20 dvi, html, pdf and ps format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/whic220dr2.zip Which 2.20 source: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/whic220sr2.zip For the convenience of the WinXP users the binaries has been produced a second time using the djdev204 beta library. This package is available at ftp.delorie.com and mirrors as (timestamp 2008-09-15): Which 2.20 binary, info and man format documentation: ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/whic220br2.zip Send which specific bug reports to . Send suggestions and bug reports concerning the DJGPP port to comp.os.msdos.djgpp or . Enjoy. Guerrero, Juan Manuel