This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libjava broken vs make -j?


Andrew John Hughes wrote:
> 2009/8/26 David Daney:
>> Dave Korn wrote:
>>>  I just started seeing this, with "make -j4":

>>>> make[3]: Entering directory `/gnu/gcc/obj-java2/i686-pc-cygwin/libjava'
>>>> make[3]: *** No rule to make target `classpath/lib/compile-classes',
>>>> needed by `gcjh.stamp'.  Stop.
>>>> make[3]: Leaving directory `/gnu/gcc/obj-java2/i686-pc-cygwin/libjava'
>>>> make[2]: *** [headers.stamp] Error 2

>>>  There is indeed no rule to make classpath/lib/compile-classes, as it's
>>> generated in a recursive sub-make (which would happen earlier in a
>>> non-parallel build, or at lower -j levels, rather than simultaneously and
>>> racily as here).  Presumably we need to add some dependency at the top
>>> level, perhaps something like this?
>>>
>>> classpath/lib/compile-classes: all-multi
>>>
>> Interesting, I have been doing -j16, -j14, and -j2 builds and have not hit
>> this.

> I also do builds using -j9 and haven't seen such issues, but this is
> on x86_64-pc-linux-gnu rather than cygwin.

  Nah, sorry for the noise.  I definitely went about adding a dependency
wrongly, with the result of dragging half the recursive dependencies up to the
top-level.  I think I want to append to "all-am:", not "all:", and most
probably the simplest way to do that validly is to add the phony stamp file
target to noinst_DATA.

    cheers,
      DaveK


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]