Dear LilyPond developers,
'make doc' generates the texinfo file for the Internals Reference from
ly/generate-documentation.ly, which in turn relies on scm/document*.scm
and their recursive dependencies to do the actual work. In the process,
settings encoded in various other files get documented, e.g. from
ly/engraver-init.ly and scm/define-*.scm.
Changes to such files do not necessitate, nor trigger, recompiling the
LilyPond binary; yet that is the only dependency marked:
--- Documentation/GNUmakefile, lines 287-288 ---
$(outdir)/internals.texi: $(LILYPOND_BINARY)
cd $(outdir) && $(buildscript-dir)/run-and-check
"$(LILYPOND_BINARY) --verbose $(top-src-dir)/ly/generate-documentation"
"generate-documentation.log"
---
Obviously, this is inconvenient when hacking the Internals Reference,
so I would like to ask for the missing dependencies to be added.
Rather than tediously maintaining a specific list that grows incomplete
whenever the scope of the IR expands, I suggest to depend on
$(INIT_LY_SOURCES) and $(SCHEME_SOURCES) altogether, as in lines 7, 25
and 29 of make/ly-rules.make. Attached is a trivial patch that does
just that.
Best regards,
Johannes Rohrer