On Apr 16 20:39, Eric Blake wrote: > This change in cygwin 1.7: > > - File locking is now advisory, not mandatory anymore. The fcntl(2) and > the new lockf(2) APIs create and maintain locks with POSIX semantics, > the flock(2) API creates and maintains locks with BSD semantics. > POSIX and BSD locks are independent of each other. > > is causing parallel make bugs in autotooled projects: > > http://lists.gnu.org/archive/html/bug-automake/2009-04/msg00048.html > > The problem is that perl's flock is no longer locking files the way it > used to, so parallel instances of autom4te (the engine behind both > autoconf and automake) end up stomping on each others' output. I > don't know if it something that needs to be fixed in perl, in > automake's XFile::lock wrapper around perl's flock, or even in cygwin > itself. But it seems like if two instances of the same perl program > are using the same advisory locking mechanism, that they should keep > each other out of the file properly (advisory means that processes not > using flock can still stomp on the file, but not other processes using > the same locking mechanism).
Default question: Do you have a simple testcase to reproduce this problem? I'm going to play with the lock.pl perl script from http://lists.gnu.org/archive/html/bug-automake/2009-04/msg00053.html but I don't know if I can get it working. Perl isn't exactly my domain. I'd prefer a testcase in C. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/