automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: HPUX: PARALLEL=4 make -P


From: deckrider
Subject: Re: HPUX: PARALLEL=4 make -P
Date: Tue, 13 Feb 2007 05:43:18 -0700

On 2/12/07, Ralf Wildenhues <address@hidden> wrote:
Hello Jason, all,

* Jason Kraftcheck wrote on Mon, Feb 12, 2007 at 07:34:25PM CET:
>
> This looks like a race to create .libs by concurrent libtool processes.

Nope.  Unless the output is mangled in order, the link commands are
simply issued too early.

This is what I thought at first.  However, another characteristic is
that I am _not_ able to cause an error through these steps:

configure
make
make clean
PARALLEL=4
export PARALLEL
while make -P ; do make clean ; done

In other words, _after_ config.status runs, it is safe to run in
parallel.  But as you can see in the log, config.status is at times
running _again_ with HP make.  Thus, if I do this in Makefile.am, I
also don't see errors:

$(PROGRAMS): Makefile

We also have a very large project, but have not seen this problem in
it.  Perhaps the reason is that it has a lot of $(BUILT_SOURCES) to
generate before it starts compiling and linking, and by the time it
compiles and links, config.status has already finished running.

But I am not certain of my conclusions ... just reporting some
additional behavior that I've seen.

Looks like a bug in HP-UX make.  Haven't
reproduced it yet, though.  My guess is it doesn't understand inference
rules with separated dependencies, when targets and/or dependencies are
in subdirectories.  But I haven't been able to confirm this either.

> Perhaps libtool should check again to see if the directory exists if mkdir
> fails?

It does already.

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]