+2003-10-23 Paul Eggert <eggert@twinsun.com>
+
+ * lib/Automake/XFile.pm: Don't assume -j is solo.
+ Issue a more-informative diagnostic.
+ Problems reported by Eric Sunshine.
+
2003-10-21 Alexandre Duret-Lutz <adl@gnu.org>
* m4/lispdir.m4 (AM_PATH_LISPDIR): Always check for Emacs.
# perl was not built with -Ud_flock. Normally, this problem is harmless,
# so ignore the ENOLCK errors that are reported in that situation,
# However, if the invoker is using "make -j", the problem is not harmless,
- # so report it in that case. Admittedly this is a bit of a hack.
+ # so report it in that case, by inspecting MAKEFLAGS and looking for
+ # any arguments indicating that the invoker used -j.
+ # Admittedly this is a bit of a hack.
if (!flock ($fh, $mode)
- && (!$!{ENOLCK} || " $ENV{'MAKEFLAGS'}" =~ / (-j|--jobs)/))
+ && (!$!{ENOLCK}
+ || " -$ENV{'MAKEFLAGS'}" =~ / (-[BdeikrRsSw]*j|---?jobs)/))
{
my $file = $fh->name;
- fatal "cannot lock $file with mode $mode: $!";
+ fatal "cannot lock $file with mode $mode (perhaps you are running make -j on a lame NFS client?): $!";
}
}