On Tue, 2020-01-14 at 15:25 +0530, nikhil jain wrote: > Hi Paul, > > I am coming across a strange issue in gmake. > in Job.c there is a condition - > > /* Now try a blocking wait for a remote child. */ > pid = remote_status (&exit_code, &exit_sig, &coredump, 1); > > this pid is coming as -1 and errorno set to 10 means no child.
remote_status() tells you the result of waiting for *REMOTE* children. That is, children that are running on another host not the local host. The standard build of GNU make does not support any remote operations and it links in the remote-stub.c file which provides do-nothing versions of all the remote functions. In this case, the fact that remote_status() returns -1 means that there were no *remote* children running, it doesn't mean that there were no children at all running. When this status is returned make will continue processing local children.