delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2000/10/22/14:46:14

Message-Id: <4.3.1.0.20001022143136.00b03d60@pop5.banet.net>
X-Sender: usbanet DOT farley3 AT pop5 DOT banet DOT net
X-Mailer: QUALCOMM Windows Eudora Version 4.3.1
Date: Sun, 22 Oct 2000 14:46:23 -0400
To: djgpp-workers AT delorie DOT com
From: "Peter J. Farley III" <pjfarley AT banet DOT net>
Subject: New versions of perl require "flock" or working "fcntl(fh,
F_SETLK/W,...)"
Mime-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com

Hello all,

I've been helping Laszlo Molnar and the p5p list with the upcoming 
releases of perl (5.6.1/5.7.0).  The latest "bleadperl" (development 
version) has a new extension "Storable" for "persistent objects" that 
requires an "flock" function.  Because DJGPP libc has no "flock", the 
perl core code tries to emulate "flock" using "fcntl(fh, 
F_SETLK/W,...)" functions, which are not implemented though the 
constants are defined.  Needless to say, this makes the perl tests fail 
(with ENOSYS, function not implemented).

Is there any way in the world we can actually implement these 
functions, perhaps using "_dos_lock" or a copy of the "_dos_lock" code 
under the covers?  I realize this leads to problems in plain DOS when 
no SHARE.EXE is loaded, but a documented requirement to load SHARE.EXE 
to use the new perl functions or to use perl's "flock" emulation (as 
well as those functions of "fcntl", of course) would be OK with most 
folk, wouldn't it?

In the meantime, I'll be trying to get perl's tests and the new 
"Storable" code do croak a little more gracefully, so that at least the 
package can be built and used.

TIA for any advice, cautions, brickbats, etc.  I'm willing to try to do 
the new "fcntl" code, if it is agreed that it can actually be done.
---------------------------------------------------------
Peter J. Farley III (pjfarley AT dorsai DOT org OR
                      pjfarley AT banet DOT net)

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019