[head] Java bootstrap failure: natClip.cc:26: syntax error before`;'
Manfred Hollstein
manfredh@redhat.com
Thu Mar 1 02:35:00 GMT 2001
On , 28 February 2001, 19:29:20 -0300, aoliva@redhat.com wrote:
> 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.
I just tried a snapshot from the branch, but unfortunately the problem
is still not fixed. I applied the patch below to the toplevel Makefile.in.
Although it is failing in the same way as before, this time libstdc++-v3
had been configured before all other libraries (even before libiberty);
and the build also ran before libjava's configure... so, libstdc++.INC
was there...
--- gcc-3.0.orig/Makefile.in Thu Feb 22 17:30:26 2001
+++ gcc-3.0/Makefile.in Thu Mar 1 10:25:21 2001
@@ -1034,6 +1034,10 @@ maintainer-clean: local-maintainer-clean
maintainer-clean: local-distclean
realclean: maintainer-clean
+ALL_GCC = all-gcc
+ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss
+ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3
+
# This rule is used to clean specific modules.
.PHONY: $(CLEAN_MODULES) $(CLEAN_X11_MODULES) clean-gcc
$(CLEAN_MODULES) $(CLEAN_X11_MODULES) clean-gcc:
@@ -1572,9 +1576,6 @@ all-flex: all-libiberty all-bison all-by
all-gas: all-libiberty all-opcodes all-bfd all-intl
all-gash: all-tcl
all-gawk:
-ALL_GCC = all-gcc
-ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss
-ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3
all-gcc: all-bison all-byacc all-binutils all-gas all-ld all-zlib
all-bootstrap: all-libiberty all-texinfo all-bison all-byacc all-binutils all-gas all-ld all-zlib
GDB_TK = all-tk all-tcl all-itcl all-tix all-libgui
>
> --
> 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
Cheers.
l8er
manfred
More information about the Gcc-bugs
mailing list