[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Build dependencies for .texi files (issue 1852). (issue 5131045)

From: julien . rioux
Subject: Build dependencies for .texi files (issue 1852). (issue 5131045)
Date: Mon, 26 Sep 2011 21:33:36 +0000

Reviewers: ,

Apparently we have to publish this.

Build dependencies for .texi files (issue 1852).

Write .dep files containing make dependency rules for .texi files.
These .dep files are generated by scanning for lines starting with
@include in the .texi files. They are included into the build by
the file stepmake/stepmake/generic-targets.make.

With proper dependencies it became apparent that the build system
does not operate correclty as make would then complain:

*** No rule to make target `weblinks.itexi', needed by
`out-www/web.texi'.  Stop.

This was triggered when we added the above dependency rules, and
shows that the build system now attempts to build weblinks.itexi
before compiling web.texi, but fails to do so because a rule is
missing. Thus we add the missing rule to generate weblinks.texi
to the local GNUmakefile in the Documentation folder.

Another issue are @include for which the included files are in
another directory, but that is not reflected in the @include.
This produces wrong dependency targets since make would expect
the included file in the same directory as the main file. Thus
we se @include with the correct relative path in .texi files.

Please review this at

Affected files:
  M Documentation/GNUmakefile
  M stepmake/stepmake/texinfo-rules.make

Index: Documentation/GNUmakefile
diff --git a/Documentation/GNUmakefile b/Documentation/GNUmakefile
index 9b598c923ac1f0107ae6e9feab0ee4eb36c85850..26ccbc2462365fce87fc38214691320bbf83629d 100644
--- a/Documentation/GNUmakefile
+++ b/Documentation/GNUmakefile
@@ -234,6 +234,8 @@ else
 $(outdir)/web.texi: $(outdir)/we-wrote.itexi $(outdir)/others-did.itexi

+       $(buildscript-dir)/create-weblinks-itexi $(top-src-dir) > $@

 # Ugh, using '%' twice not possible
 $(outdir)/notation/notation.xml: $(outdir)/notation.texi
Index: Documentation/topdocs/AUTHORS.texi
diff --git a/Documentation/topdocs/AUTHORS.texi b/Documentation/topdocs/AUTHORS.texi index d802b4310c9b534c1056c34dcc47f2635e688238..76cbb082ef7fdc7ef003ab47cd7c438a30538b7f 100644
--- a/Documentation/topdocs/AUTHORS.texi
+++ b/Documentation/topdocs/AUTHORS.texi
@@ -10,8 +10,8 @@


address@hidden macros.itexi
address@hidden included/authors.itexi
address@hidden ../macros.itexi
address@hidden ../included/authors.itexi

 This file lists authors of LilyPond, and what they wrote.  This list
Index: Documentation/topdocs/INSTALL.texi
diff --git a/Documentation/topdocs/INSTALL.texi b/Documentation/topdocs/INSTALL.texi index 47f0a7070361123d6db15700fcef074960b3b2c8..e4d80543ef93418adec2b92d389f47882bad6076 100644
--- a/Documentation/topdocs/INSTALL.texi
+++ b/Documentation/topdocs/INSTALL.texi
@@ -12,8 +12,8 @@


address@hidden macros.itexi
address@hidden included/compile.itexi
address@hidden ../macros.itexi
address@hidden ../included/compile.itexi


Index: Documentation/web.texi
diff --git a/Documentation/web.texi b/Documentation/web.texi
index 90d9f79251a326c12c8dba68bdb9cc829ca48e5a..5014b2d90cab8127aa2908a51496b6ab59c4306d 100644
--- a/Documentation/web.texi
+++ b/Documentation/web.texi
@@ -21,7 +21,7 @@
 @set FDL
 @set web
 @include macros.itexi
address@hidden weblinks.itexi
address@hidden out/weblinks.itexi

 @c don't remove this comment.
Index: stepmake/stepmake/texinfo-rules.make
diff --git a/stepmake/stepmake/texinfo-rules.make b/stepmake/stepmake/texinfo-rules.make index 53ff4bce5366bf564117c1387b69f41ae95d82d0..2610967f44239027e6afe7816758b4f9b51703d8 100644
--- a/stepmake/stepmake/texinfo-rules.make
+++ b/stepmake/stepmake/texinfo-rules.make
@@ -24,7 +24,9 @@ endif
        touch $@

 $(outdir)/%.texi: $(src-dir)/%.texi
-       cp -p $< $@
+       echo ./$@: $(notdir $<) > $(subst .texi,.dep,$@)
+ sed -ne "/address@hidden:space:]]/s/@include/.\/$(subst /,\/,$@):/p" $< >> $(subst .texi,.dep,$@)
+       cp $< $@

$(outdir)/ $(outdir)/%.texi $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep $(outdir)/version.itexi $(outdir)/weblinks.itexi
 ifeq ($(WEB_VERSION),yes)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]