X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=make%2Fly-rules.make;h=19b00f05b222ed41653b2f40fd7345e91c30b296;hb=9171fc87b5b9693865339578be6ae00d1c536b3b;hp=4d5590f2dadd23755dfa2454141b6a743c560ffd;hpb=56bfccb2c0eb177bbe68f034c9a55242f7acee27;p=lilypond.git diff --git a/make/ly-rules.make b/make/ly-rules.make index 4d5590f2da..19b00f05b2 100644 --- a/make/ly-rules.make +++ b/make/ly-rules.make @@ -1,56 +1,42 @@ -# Mudela_rules.make +.SUFFIXES: .doc .tely .texi .ly -.SUFFIXES: .doc .dvi .mudtex .tely .texi .ly +# TODO: fix hardcoded out/ ? +LYS_OUTPUT_OPTION= --lily-output-dir $(LYS_OUTPUT_DIR) +LYS_OUTPUT_DIR=$(top-build-dir)/out/lybook-db/ +LILYPOND_BOOK_FLAGS += $(LYS_OUTPUT_OPTION) +$(outdir)/%.latex: %.doc $(INIT_LY_SOURCES) $(SCHEME_SOURCES) + LILYPOND_VERSION=$(TOPLEVEL_VERSION) $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --process='$(LILYPOND_BOOK_PROCESS) $(LILYPOND_BOOK_LILYPOND_FLAGS)' --output=$(outdir) $(LILYPOND_BOOK_FLAGS) $< -$(outdir)/%.latex: %.doc - rm -f $@ - $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES)\ -$(LILYPOND_BOOK_FLAGS) --verbose --dependencies --outdir=$(outdir) $< - chmod -w $@ +# This allows -j make option while making sure only one lilypond-book instance +# is running at the same time +define CHAIN_RULE +$(i) +$(i): +endef + +$(eval $(firstword $(TEXI_FILES_FROM_TELY)):\ + $(foreach i, $(wordlist 2, $(words $(TEXI_FILES_FROM_TELY)),\ + $(TEXI_FILES_FROM_TELY)),$(CHAIN_RULE))) # don't do ``cd $(outdir)'', and assume that $(outdir)/.. is the src dir. # it is not, for --srcdir builds -$(outdir)/%.texi: %.tely - rm -f $@ - set|egrep '(TEX|LILY)' # ugh, what's this? - $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi --verbose $(LILYPOND_BOOK_FLAGS) $< - chmod -w $@ - -$(outdir)/%.texi: $(outdir)/%.tely - rm -f $@ - set|egrep '(TEX|LILY)' # ugh, what's this? - $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi --verbose $(LILYPOND_BOOK_FLAGS) $< - rm -f $< - chmod -w $@ - -# nexi: no-lily texi -# for plain info doco: don't run lily -$(outdir)/%.nexi: %.tely - rm -f $@ - $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi --no-lily $(LILYPOND_BOOK_FLAGS) $< - mv $(@D)/$(*F).texi $@ - chmod -w $@ - -# nfo: info from non-lily texi -$(outdir)/%.info: $(outdir)/%.nexi - $(MAKEINFO) --output=$(outdir)/$(*F).info $< - -# nfo: info from non-lily texi -#$(outdir)/%.nfo: $(outdir)/%.nexi -# $(MAKEINFO) --output=$(outdir)/$(*F).info $< - -$(outdir)/%.tex: $(outdir)/%.ly - $(LILYPOND) $(LILYPOND_BOOK_INCLUDES) -o $@ $< - -# -# Timothy's booklet -# -$(outdir)/%-book.ps: $(outdir)/%.ps - psbook $< $<.tmp - pstops '2:0L@.7(21cm,0)+1L@.7(21cm,14.85cm)' $<.tmp $@ - -$(outdir)/%.pdf: $(outdir)/%.dvi - dvips -u lilypond.map -o $@.pdfps -Ppdf $< - ps2pdf $@.pdfps $@ +$(outdir)/%.texi: %.tely $(outdir)/version.itexi $(DOCUMENTATION_LOCALE_TARGET) $(INIT_LY_SOURCES) $(SCHEME_SOURCES) + LILYPOND_VERSION=$(TOPLEVEL_VERSION) $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --process='$(LILYPOND_BOOK_PROCESS) $(LILYPOND_BOOK_LILYPOND_FLAGS)' --output=$(outdir) --format=$(LILYPOND_BOOK_FORMAT) $(LILYPOND_BOOK_FLAGS) $< + + +$(outdir)/%.texi: $(outdir)/%.tely $(outdir)/version.itexi $(DOCUMENTATION_LOCALE_TARGET) $(INIT_LY_SOURCES) $(SCHEME_SOURCES) + LILYPOND_VERSION=$(TOPLEVEL_VERSION) $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --process='$(LILYPOND_BOOK_PROCESS) $(LILYPOND_BOOK_INCLUDES) $(LILYPOND_BOOK_LILYPOND_FLAGS)' --output=$(outdir) --format=$(LILYPOND_BOOK_FORMAT) $(LILYPOND_BOOK_FLAGS) $< + + +$(outdir)/%.html.omf: %.tely + $(call GENERATE_OMF,html) + +$(outdir)/%.pdf.omf: %.tely + $(call GENERATE_OMF,pdf) + +$(outdir)/%.html.omf: $(outdir)/%.texi + $(call GENERATE_OMF,html) +$(outdir)/%.pdf.omf: $(outdir)/%.texi + $(call GENERATE_OMF,pdf)