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]

Re: [head] Java bootstrap failure: natClip.cc:26: syntax error before`;'


On Feb 24, 2001, "Zack Weinberg" <zackw@Stanford.EDU> wrote:

> On Sat, Feb 24, 2001 at 02:38:40AM -0300, Alexandre Oliva wrote:
>> On Feb 24, 2001, "Zack Weinberg" <zackw@Stanford.EDU> wrote:
>> 
>> > On Sat, Feb 24, 2001 at 02:10:05AM -0300, Alexandre Oliva wrote:
>> >> On Feb 17, 2001, "Zack Weinberg" <zackw@stanford.edu> wrote:
>> >> 
>> >> > I stuck debugging echos all over that thing and it appears that
>> >> > neither branch of the case gets executed.  I don't know how that
>> >> > could happen, but it is.
>> >> 
>> >> The only substantial difference I can find between
>> >> CONFIGURE_TARGET_MODULES, that works, and ALL_TARGET_MODULES, that
>> >> doesn't, is that CXX is evaluated in a shell assignment and exported
>> >> in `configure', but used only as an argument to make in `all'.
>> 
>> > Um, for me, CONFIGURE_TARGET_MODULES *doesn't* work.
>> 
>> Ugh!

What exactly does it mean that it doesn't work?

I've just been able to reproduce a failure scenario on Red Hat Linux
7/x86.  boehm-gc would configure before libstdc++-v3 was built, even
though configure-target-boehm-gc depended on $(ALL_GCC_CXX) that
depended on all-target-libstdc++-v3.  Nevertheless, I'd remove
i686-pc-linux-gnu/{config.cache,libstdc++-v3} and `make
configure-target-boehm-gc' wouldn't proceed to configuring and
building libstdc++-v3 first.  The result was that boehm-gc would get a
definition of CXX without the flags in libstdc++.INC, because this
file hadn't been built yet.  From then on, configure of all target
directories would pick the wrong CXX from the cache.

Looks like a bug in GNU make to me.  I'll try to find a short
testcase.  Fortunately, I have found an easy work-around: moving the
definitions of ALL_GCC, ALL_GCC_C and ALL_GCC_CXX before all the
configure-target-* all-target-* custom rules.

Manfred, Zack, will you please let me know whether making this
Makefile change fixes this problem?  You'll have to remove
target/config.cache and any affected target sub-directories before the
change can take any effect.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me


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