X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fuser%2FGNUmakefile;h=60e16bbd12df5651d3b5eeb4d1d3c4492a4bc2ae;hb=cfc4cbf34569db6a6c8968694f86e36b206a9d05;hp=c11ad6c3cb954d74a86a3ffecc78620996e428d8;hpb=b567811cb0fa5a805aabb9e8fb903763c13e8c29;p=lilypond.git diff --git a/Documentation/user/GNUmakefile b/Documentation/user/GNUmakefile index c11ad6c3cb..60e16bbd12 100644 --- a/Documentation/user/GNUmakefile +++ b/Documentation/user/GNUmakefile @@ -14,30 +14,40 @@ OUT_PDF_IMAGES=$(IMAGES:%.png=$(outdir)/%.pdf) $(addprefix $(outdir)/,$(PDF_ILLU OUT_PNG_IMAGES=$(OUT_PDF_IMAGES:%.pdf=%.png) +OUT_MASTER_TEXI_FILES = $(outdir)/lilypond-internals.texi OUT_TEXI_FILES=$(ITEXI_FILES:%.itexi=$(outdir)/%.texi)\ $(ITELY_FILES:%.itely=$(outdir)/%.texi) + HTML_FILES = $(TELY_FILES:%.tely=$(outdir)/%-big-page.html)\ $(outdir)/lilypond-internals-big-page.html # todo: add latex. -PDF_FILES = $(TELY_FILES:%.tely=$(outdir)/%.pdf) +PDF_FILES = $(TELY_FILES:%.tely=$(outdir)/%.pdf)\ + $(outdir)/lilypond-internals.pdf MAIN_INFO_DOC = lilypond INFO_DOCS = lilypond lilypond-internals music-glossary lilypond-program lilypond-learning INFO_FILES = $(INFO_DOCS:%=$(outdir)/%.info) +TEXI2PDF_FLAGS = \ + -I $(outdir) \ + -I $(top-src-dir)/Documentation/user \ + -I $(top-build-dir)/Documentation/user/$(outconfbase) + ifeq ($(out),www) INFO_IMAGES_DIR = lilypond DEST_INFO_IMAGES_SUBDIR = Documentation/user endif -STEPMAKE_TEMPLATES=tex texinfo omf documentation +STEPMAKE_TEMPLATES=texinfo omf documentation OMF_FILES += $(outdir)/lilypond-internals.html.omf LOCALSTEPMAKE_TEMPLATES=lilypond ly include $(depth)/make/stepmake.make +default: + info: $(INFO_FILES) @echo export LILYPOND_DATADIR=$(LILYPOND_DATADIR) @echo export PYTHONPATH=$(PYTHONPATH) @@ -45,13 +55,6 @@ info: $(INFO_FILES) xml: $(outdir)/lilypond/lilypond.xml $(outdir)/lilypond-internals/lilypond-internals.xml -# All web targets, except info image symlinks and info docs are -# installed in non-recursing target from TOP-SRC-DIR -local-install-WWW: local-install-info -local-uninstall-WWW: local-uninstall-info - -default: - local-clean: rm -f $(INFO_IMAGES_DIR) @@ -60,14 +63,9 @@ local-help: extra-local-help extra-local-help: @echo -e "\ info update info pages\n\ - ps update PostScript documents\n\ xml update Docbook xml documentation\n\ " -# Generic rule using % twice not possible? -# $(outdir)/%/%.html: $(outdir)/%.texi -$(outdir)/lilypond.texi: $(outdir)/lilypond-internals.texi - # # Split manuals in HTML # @@ -83,11 +81,11 @@ $(outdir)/lilypond-learning-big-page.html: $(OUT_PNG_IMAGES) $(outdir)/lilypond.xml: $(outdir)/lilypond.texi mkdir -p $(dir $@) - $(MAKEINFO) -I$(outdir) --output=$@ --docbook $< + $(MAKEINFO) -I$(src-dir) -I$(outdir) --output=$@ --docbook $< $(outdir)/lilypond-internals/lilypond-internals.xml: $(outdir)/lilypond-internals.texi mkdir -p $(dir $@) - $(MAKEINFO) --output=$(outdir)/lilypond-internals --docbook $< + $(MAKEINFO) -I$(src-dir) -I$(outdir) --output=$(outdir)/lilypond-internals --docbook $< $(outdir)/lilypond.pdf $(outdir)/lilypond-learning.pdf: $(OUT_PDF_IMAGES) @@ -113,7 +111,7 @@ DEEP_HTML_FILES =\ # Symlinks to refer to external source documents from split and non-split HTML source-links = $(outdir)/source $(outdir)/lilypond/source $(outdir)/music-glossary/source \ - $(outdir)/lilypond-program/source $(outdir)/lilypond-learning/source + $(outdir)/lilypond-program/source $(outdir)/lilypond-learning/source $(outdir)/lilypond-internals/source $(outdir)/source: @rm -f $(@) @@ -124,22 +122,29 @@ $(outdir)/%/source: mkdir -p $(dir $@) ln -sf $(depth)/.. $(@) -local-WWW: $(HTML_FILES) $(DEEP_HTML_FILES)\ - $(datafiles) $(PDF_FILES) $(source-links) info +ifeq ($(out),www) +local-WWW-1: $(MASTER_TEXI_FILES) $(PDF_FILES) info + +local-WWW-2: $(HTML_FILES) $(DEEP_HTML_FILES) $(source-links) +endif $(outdir)/%.bib: %.bib ln -f $< $@ - # lilypond.texi deps $(top-build-dir)/mf/$(outconfbase)/feta16list.ly: $(MAKE) -C $(top-src-dir)/mf $(outdir)/lilypond.texi $(outdir)/lilypond-program.texi $(outdir)/lilypond-learning.texi $(outdir)/music-glossary.texi: $(ITELY_FILES) $(ITEXI_FILES) +$(outdir)/lilypond.texi: $(outdir)/ly-grammar.txt # Rules for the automatically generated documentation +$(outdir)/ly-grammar.txt: $(top-src-dir)/lily/parser.yy + cd $(outdir) && $(BISON) -v $< + $(auxscript-dir)/yyout2grammar.py $(outdir)/parser.output $@ + # There used to be a dependency on a dummy target, to force a rebuild # of lilypond-internals every time. however, this triggers # compilation during install, which is a bad thing (tm). @@ -147,7 +152,4 @@ $(outdir)/lilypond.texi $(outdir)/lilypond-program.texi $(outdir)/lilypond-learn $(outdir)/lilypond-internals.texi: $(LILYPOND_BINARY) cd $(outdir) && $(LILYPOND_BINARY) --verbose $(top-src-dir)/ly/generate-documentation - -## unused -$(outdir)/interfaces.itexi: dummy - cd $(outdir) && lilypond $(top-src-dir)/ly/generate-interface-doc +.SECONDARY: