lilypond-devel
[Top][All Lists]
Advanced

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

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


From: janek . lilypond
Subject: Build dependencies for .texi files (issue 1852). (issue 5169041)
Date: Fri, 30 Sep 2011 11:22:09 +0000

Reviewers: Julien Rioux, Graham Percival,

Message:
By Julien Rioux.

I apologize for delay, i wasn't smart enough to get around 1491.
I also apologize for previous erroneus e-mail, i was struggling with
git-cl and published wrong issue by accident.

Description:
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 http://codereview.appspot.com/5169041/

Affected files:
  M Documentation/GNUmakefile
  M Documentation/topdocs/AUTHORS.texi
  M Documentation/topdocs/INSTALL.texi
  M Documentation/web.texi
  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
 endif

+$(outdir)/weblinks.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 @@

 @contents

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 @@

 @contents

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

 @bye

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)/%.info: $(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]