This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Irix make loop (stmp-multilib)
On Mon, 27 April 1998, 12:44:36, manfred@s-direktnet.de wrote:
> Nope, I replied too fast. The build on SunOS fails here with
> circular dependencies, too. The problem is caused by the following:
>
> - LIBGCC = stmp-multilib
> - stmp-multilib itself depends on libgcc2.ready which depends on
> $(GCC_PASSES) which depends on $(LIBGCC) :-(
It's slightly different:
- stmp-fixproto needs stmp-headers
- stmp-headers needs gfloat.h
- gfloat.h needs float.h-nat
- float.h-nat needs enquire
- enquire needs $(GCC_PARTS)
- $(GCC_PARTS) needs $(LIBGCC)
- $(LIBGCC) needs libgcc2.ready
- libgcc2.ready needs $(STMP_FIXPROTO)
- STMP_FIXPROTO is stmp-fixproto, hence goto begin of loop :-(
>
> Do you see the loop? I'll come up with a patch (once I have a clue how
> to break this ;-)
I still have no idea, how to break this; until someone has found a
way, we should revert my patch. Jim, is it OK to check in?
Mon Apr 27 13:45:15 1998 Manfred Hollstein <manfred@s-direktnet.de>
* Makefile.in (libgcc2.ready): Revert last patch.
diff -cp egcs-19980425.orig/gcc/Makefile.in egcs-19980425/gcc/Makefile.in
*** egcs-19980425.orig/gcc/Makefile.in Fri Apr 24 08:01:51 1998
--- egcs-19980425/gcc/Makefile.in Fri Apr 24 08:01:51 1998
*************** libgcc1.S: libgcc1.c $(CONFIG_H) config.
*** 981,987 ****
# Compiling libgcc2.a requires making sure that cc1, etc. have been compiled.
# But recompiling cc1 should not force recompilation of libgcc2.a.
# If you want to force recompilation, delete libgcc2.a.
! libgcc2.ready: $(GCC_PASSES) $(LIBGCC2_DEPS) stmp-int-hdrs $(STMP_FIXPROTO)
-if [ -f libgcc2.ready ] ; then \
true; \
else \
--- 981,987 ----
# Compiling libgcc2.a requires making sure that cc1, etc. have been compiled.
# But recompiling cc1 should not force recompilation of libgcc2.a.
# If you want to force recompilation, delete libgcc2.a.
! libgcc2.ready: $(GCC_PASSES) $(LIBGCC2_DEPS) stmp-int-hdrs
-if [ -f libgcc2.ready ] ; then \
true; \
else \