I looked into this. The relevant bits appear in output.c:

--8<---------------cut here---------------start------------->8---
/* Obtain the lock for writing output.  */
static void *
acquire_semaphore (void)
  static struct flock fl;

  fl.l_type = F_WRLCK;
  fl.l_whence = SEEK_SET;
  fl.l_start = 0;
  fl.l_len = 1;
  if (fcntl (sync_handle, F_SETLKW, &fl) != -1)
    return &fl;
  perror ("fcntl()");
  return NULL;
--8<---------------cut here---------------end--------------->8---

        So this does look like make explicitly will wait for the lock to
 be released (F_SETLKW instead of F_SETLK). The open question is whether
 the current behaviour is undesireable, and what the ramifications might
 be of not waiting for a lock.

"I believe that Ronald Reagan will someday make this country what it
once was... an arctic wilderness."-- Steve Martin
Manoj Srivastava <sriva...@acm.org> 
4096R/C5779A1C E37E 5EC5 2A01 DA25 AD20  05B6 CF48 9438 C577 9A1C

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to