X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=stepmake%2Fstepmake%2Fmetafont-rules.make;h=1db797468fbcd034afc444970f5de8386d9ac406;hb=c39d188d28fdc84cef8cbaea7b8d6e2fb718c30f;hp=585da6669f63955e0a5fc76455800e87e7e11f6a;hpb=8e7f4ff155c236aa0b6c551c1ffa0807cc8d807b;p=lilypond.git diff --git a/stepmake/stepmake/metafont-rules.make b/stepmake/stepmake/metafont-rules.make index 585da6669f..1db797468f 100644 --- a/stepmake/stepmake/metafont-rules.make +++ b/stepmake/stepmake/metafont-rules.make @@ -1,42 +1,38 @@ - # Don't remove $(outdir)/.log's. Logs are a target! # we want to see botched results as well. $(outdir)/%.dvi: %.mf - -$(METAFONT) "\scrollmode; input $<;" - gftodvi $(basename $<) + -$(DO_MF_DEP) MFINPUTS=$(src-dir) $(METAFONT) "\scrollmode; input $<;" + gftodvi $(basename $<) mv $(basename $<).dvi $(outdir) rm $(basename $<).*gf -# This is not metafont, this is feta-specific -$(outdir)/%.log: %.mf - $(METAFONT) "\mode:=$(MFMODE); nonstopmode; input $<;" - mv $(@F) $@ - rm $(basename $(@F)).*gf - -$(outdir)/%.tfm $(outdir)%.log: %.mf - $(METAFONT) "\mode:=$(MFMODE); nonstopmode; input $<;" +$(outdir)/%.tfm $(outdir)/%.log: %.mf + $(DO_MF_DEP) MFINPUTS=$(src-dir) $(METAFONT) "\mode:=$(MFMODE); nonstopmode; input $<;" $(METAFONT_QUIET) # Let's keep this log output, it saves another mf run. mv $(basename $(@F)).log $(basename $(@F)).tfm $(outdir) - rm $(basename $(@F)).*gf - -$(outdir)/%.$(XPM_RESOLUTION)gf: %.mf - $(METAFONT) "\\mode=$(XPM_MODE); \\input $<" -# Let's keep this log output, it saves another mf run. - mv $(@F) $(basename $(@F)).log $(basename $(@F)).tfm $(outdir) - -$(outdir)/%.$(XPM_RESOLUTION)pk: $(outdir)/%.$(XPM_RESOLUTION)gf - gftopk $< $@ - - -MFTRACE_FORMATS = pfa pfb svg -$(outdir)/%.pfb $(outdir)/%.svg $(outdir)/%.pfa: %.mf - $(MFTRACE) $(MFTRACE_FLAGS) --simplify -I $(outdir)/ --formats=pfa,pfb,svg $(basename $(@F)) -# -mv $(MFTRACE_FORMATS:%=$(basename $(@F).%)) $(outdir) - -mv $(basename $(@F)).pfa $(outdir) - -mv $(basename $(@F)).pfb $(outdir) - -mv $(basename $(@F)).svg $(outdir) - -#%.afm: -# $(SHELL) $(depth)/buildscripts/tfmtoafm.sh $(shell basename $@ .afm) -# mv $@ $@.in + rm -f $(basename $(@F)).*gf $(basename $(@F)).*pk + +# ugh . mf2pt1 is extremely broken, it pollutes CWD iso. creating a +# temp dir. +# +# the soft link for mf2pt1.mp is for recent mpost versions +# which no longer dump a .mem file +$(outdir)/%.pfb: %.mf $(outdir)/mf2pt1.mem $(outdir)/%.log + $(DO_MF_DEP) TMP=`mktemp -d $(outdir)/pfbtemp.$*.XXXXXXXXX` \ + && ( cd $$TMP \ + && ln -s ../mf2pt1.mem . \ + && ln -s ../../mf2pt1.mp . \ + && MFINPUTS=$(abs-src-dir):..:: \ + FONTFORGE=$(FONTFORGE) \ + $(buildscript-dir)/mf2pt1 $(MF2PT1_OPTIONS) $< $(METAFONT_QUIET)) \ + && mv $$TMP/*pfb $(outdir); \ + rm -rf $$TMP + +# since recent mpost versions no longer create a mem file, we create a dummy +# file to satisfy the dependency (which gets overwritten in case an older +# mpost creates a real mem file) +$(outdir)/mf2pt1.mem: mf2pt1.mp + cd $(outdir) \ + && touch mf2pt1.mem \ + && mpost -progname=mpost -ini $(top-src-dir)/mf/mf2pt1.mp \\dump