X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=stepmake%2Fstepmake%2Ftexinfo-rules.make;h=007f88fdad9eb87bab1d4f4e62010c6c428e6584;hb=a767abf023c5449fcecce36ace9196901e7374a2;hp=ae2c4acc8f2eb2503c3634f1dfc2c2639ee306ef;hpb=3013ae598ba51789b8487c43b65e30263154f56d;p=lilypond.git diff --git a/stepmake/stepmake/texinfo-rules.make b/stepmake/stepmake/texinfo-rules.make index ae2c4acc8f..007f88fdad 100644 --- a/stepmake/stepmake/texinfo-rules.make +++ b/stepmake/stepmake/texinfo-rules.make @@ -6,79 +6,90 @@ # $(outdir)/$(INFO_IMAGES_DIR)/*.png symlinks are only needed to view # out-www/*.info with Emacs -- HTML docs no longer need these # symlinks, see replace_symlinks_urls in -# buildscripts/add_html_footer.py. +# python/auxiliar/postprocess_html.py. # make dereferences symlinks, and $(INFO_IMAGES_DIR) is a symlink # to $(outdir), so we can't use directly $(INFO_IMAGES_DIR) as a # prerequisite, otherwise %.info are always outdated (because older -# than $(outdir), hence this .dep file +# than $(outdir)), hence this .dep file -$(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep: $(INFO_DOCS:%=$(outdir)/%.texi) +$(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep: $(OUT_TEXI_FILES) ifneq ($(INFO_IMAGES_DIR),) rm -f $(INFO_IMAGES_DIR) ln -s $(outdir) $(INFO_IMAGES_DIR) mkdir -p $(outdir)/$(INFO_IMAGES_DIR) rm -f $(outdir)/$(INFO_IMAGES_DIR)/[a-f0-9][a-f0-9] - cd $(outdir)/$(INFO_IMAGES_DIR) && $(PYTHON) $(top-src-dir)/buildscripts/mass-link.py symbolic .. . [a-f0-9][a-f0-9] + cd $(outdir)/$(INFO_IMAGES_DIR) && $(buildscript-dir)/mass-link symbolic .. . [a-f0-9][a-f0-9] endif touch $@ -$(outdir)/%.info: $(outdir)/%.texi $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep $(outdir)/version.itexi - $(MAKEINFO) -I$(src-dir) -I$(outdir) --output=$@ $< +# Copy files while tracking their dependencies. +$(outdir)/%.texi: %.texi $(outdir)/version.itexi + mkdir -p $(dir $@) + $(DO_TEXI_DEP) cp -f $< $@ -ifeq (,$(findstring texi2html,$(MISSING_OPTIONAL))) -$(outdir)/%-big-page.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi - $(TEXI2HTML) --I=$(src-dir) --I=$(outdir) -D bigpage --output=$@ $(TEXI2HTML_INIT) $< - cp $(top-src-dir)/Documentation/lilypond*.css $(dir $@) +$(outdir)/%.itexi: %.itexi + mkdir -p $(dir $@) + $(DO_TEXI_DEP) cp -f $< $@ -$(outdir)/%.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi - $(TEXI2HTML) --I=$(src-dir) --I=$(outdir) --output=$@ $(TEXI2HTML_INIT) $< - cp $(top-src-dir)/Documentation/lilypond*.css $(dir $@) +$(outdir)/%.info: $(outdir)/%.texi $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep $(outdir)/version.itexi $(outdir)/weblinks.itexi | $(OUT_TEXINFO_MANUALS) +ifeq ($(WEB_VERSION),yes) + $(buildscript-dir)/run-and-check "$(MAKEINFO) -I$(src-dir) -I$(outdir) -D web_version --output=$@ $<" "$*.makeinfoweb.log" +else + $(buildscript-dir)/run-and-check "$(MAKEINFO) -I$(src-dir) -I$(outdir) --output=$@ $<" "$*.makeinfo.log" +endif -$(outdir)/%/index.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi - mkdir -p $(dir $@) - $(TEXI2HTML) --I=$(src-dir) --I=$(outdir) --output=$(dir $@) --prefix=index --split=section $(TEXI2HTML_INIT) $< - cp $(top-src-dir)/Documentation/lilypond*.css $(dir $@) +$(outdir)/%-big-page.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi $(outdir)/weblinks.itexi | $(OUT_TEXINFO_MANUALS) +ifeq ($(WEB_VERSION),yes) + $(buildscript-dir)/run-and-check "DEPTH=$(depth) AJAX_SEARCH=$(AJAX_SEARCH) $(TEXI2HTML) $(TEXI2HTML_FLAGS) -D bigpage -D web_version --output=$@ $<" "$*.bigtexi.log" +else + $(buildscript-dir)/run-and-check "DEPTH=$(depth) AJAX_SEARCH=$(AJAX_SEARCH) $(TEXI2HTML) $(TEXI2HTML_FLAGS) -D bigpage --output=$@ $<" "$*.bigtexi.log" +endif -else # Rules using makeinfo follow -$(outdir)/%-big-page.html: $(outdir)/%.texi $(outdir)/version.itexi - $(MAKEINFO) -I$(src-dir) -I $(outdir) --output=$@ --css-include=$(top-src-dir)/Documentation/texinfo.css --html --no-split -D bigpage --no-headers $< +$(outdir)/%.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi $(outdir)/weblinks.itexi | $(OUT_TEXINFO_MANUALS) + $(buildscript-dir)/run-and-check "DEPTH=$(depth) AJAX_SEARCH=$(AJAX_SEARCH) $(TEXI2HTML) $(TEXI2HTML_FLAGS) --output=$@ $<" "$*.texilog.log" -$(outdir)/%.html: $(outdir)/%.texi $(outdir)/version.itexi - $(MAKEINFO) -I$(src-dir) -I$(outdir) --output=$@ --css-include=$(top-src-dir)/Documentation/texinfo.css --html --no-split --no-headers $< -$(outdir)/%/index.html: $(outdir)/%.texi $(outdir)/version.itexi +$(outdir)/%/index.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi $(outdir)/weblinks.itexi $(outdir)/%.html.omf | $(OUT_TEXINFO_MANUALS) mkdir -p $(dir $@) - $(MAKEINFO) -I$(src-dir) -I$(outdir) --output=$(dir $@) --css-include=$(top-src-dir)/Documentation/texinfo.css --html $< +ifeq ($(WEB_VERSION),yes) + $(buildscript-dir)/run-and-check "DEPTH=$(depth)/../ AJAX_SEARCH=$(AJAX_SEARCH) $(TEXI2HTML) $(TEXI2HTML_SPLIT) $(TEXI2HTML_FLAGS) -D web_version --output=$(dir $@) $<" "$*.splittexi.log" +else + $(buildscript-dir)/run-and-check "DEPTH=$(depth)/../ AJAX_SEARCH=$(AJAX_SEARCH) $(TEXI2HTML) $(TEXI2HTML_SPLIT) $(TEXI2HTML_FLAGS) --output=$(dir $@) $<" "$*.splittexi.log" endif +ifneq ($(ISOLANG),) +$(XREF_MAPS_DIR)/%.$(ISOLANG).xref-map: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map | $(OUT_TEXINFO_MANUALS) + $(buildscript-dir)/extract_texi_filenames $(XREF_MAP_FLAGS) -q -o $(XREF_MAPS_DIR) --master-map-file=$(XREF_MAPS_DIR)/$*.xref-map $< +else +$(XREF_MAPS_DIR)/%.xref-map: $(outdir)/%.texi | $(OUT_TEXINFO_MANUALS) + $(buildscript-dir)/extract_texi_filenames $(XREF_MAP_FLAGS) -q -o $(XREF_MAPS_DIR) $< +endif + +$(outdir)/%.pdf: $(outdir)/%.texi $(outdir)/version.itexi $(outdir)/%.pdf.omf $(outdir)/weblinks.itexi | $(OUT_TEXINFO_MANUALS) +ifeq ($(WEB_VERSION),yes) + PDFTEX=$(PDFTEX) PDFLATEX=$(PDFLATEX) $(buildscript-dir)/run-and-check "cd $(outdir); texi2pdf $(TEXI2PDF_FLAGS) -D web_version -I $(abs-src-dir) $(TEXINFO_PAPERSIZE_OPTION) $( $@ - echo $(TOPLEVEL_VERSION)>> $@ - echo '@end macro'>> $@ +$(outdir)/version.itexi: $(top-src-dir)/VERSION + $(PYTHON) $(top-src-dir)/scripts/build/create-version-itexi.py > $@ -.SECONDARY: $(outdir)/version.itexi $(outdir)/version.texi \ - $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep +$(outdir)/weblinks.itexi: $(top-src-dir)/VERSION + $(PYTHON) $(top-src-dir)/scripts/build/create-weblinks-itexi.py > $@