This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RFA (build): Avoid circular dependency
- From: Joern Rennecke <amylaar at spamcop dot net>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 29 Jun 2010 17:21:39 -0400
- Subject: RFA (build): Avoid circular dependency
Because of PR44719, I grepped my build log for more odd make messages.
I've found this:
make[3]: Circular s-tm-texi <- ../../gcc/gcc/doc/tm.texi dependency dropped.
This is an unwanted consequence of having to check in the generated
$(srcdir)/doc/tm.texi.
Because of vpath, there is confusion between $(srcdir)/doc/tm.texi and tm.texi.
By giving tm.texi (the build dir one only) a different name, make can
distinguish the files.
Currently bootstrapping on i686-pc-linux-gnu.
2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
* Makefile.in (tm.texi): Rename to new-tm.texi.
Index: Makefile.in
===================================================================
--- Makefile.in (revision 161563)
+++ Makefile.in (working copy)
@@ -3675,7 +3675,7 @@ s-constrs-h: $(MD_DEPS) build/genpreds$(
$(STAMP) s-constrs-h
target-hooks-def.h: s-target-hooks-def-h; @true
-tm.texi: s-tm-texi; @true
+new-tm.texi: s-tm-texi; @true
s-target-hooks-def-h: build/genhooks$(build_exeext)
$(RUN_GEN) build/genhooks$(build_exeext) > tmp-target-hooks-def.h
@@ -3689,8 +3689,8 @@ s-tm-texi: $(srcdir)/doc/tm.texi
s-tm-texi: build/genhooks$(build_exeext) $(srcdir)/doc/tm.texi.in
$(RUN_GEN) build/genhooks$(build_exeext) \
$(srcdir)/doc/tm.texi.in > tmp-tm.texi
- $(SHELL) $(srcdir)/../move-if-change tmp-tm.texi tm.texi
- @if cmp -s $(srcdir)/doc/tm.texi tm.texi; then \
+ $(SHELL) $(srcdir)/../move-if-change tmp-tm.texi new-tm.texi
+ @if cmp -s $(srcdir)/doc/tm.texi new-tm.texi; then \
$(STAMP) $@; \
elif test $(srcdir)/doc/tm.texi -nt $(srcdir)/doc/tm.texi.in \
&& test $(srcdir)/doc/tm.texi -nt $(srcdir)/doc/target.def; then \
@@ -3700,7 +3700,7 @@ s-tm-texi: build/genhooks$(build_exeext)
else \
echo >&2 ; \
echo Verify that you have permission to grant a GFDL license for all >&2 ; \
- echo new text in tm.texi, then copy it to $(srcdir)/doc/tm.texi. >&2 ; \
+ echo new text in new-tm.texi, then copy it to $(srcdir)/doc/tm.texi. >&2 ; \
false; \
fi
@@ -4153,7 +4153,7 @@ TEXI_GCC_FILES = gcc.texi gcc-common.tex
TEXI_GCCINT_FILES = gccint.texi gcc-common.texi gcc-vers.texi \
contribute.texi makefile.texi configterms.texi options.texi \
portability.texi interface.texi passes.texi \
- rtl.texi md.texi tm.texi hostconfig.texi fragments.texi \
+ rtl.texi md.texi new-tm.texi hostconfig.texi fragments.texi \
configfiles.texi collect2.texi headerdirs.texi funding.texi \
gnu.texi gpl_v3.texi fdl.texi contrib.texi languages.texi \
sourcebuild.texi gty.texi libgcc.texi cfg.texi tree-ssa.texi \