X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=stepmake%2Fstepmake%2Fmetafont-rules.make;h=45ff320f467d31262a28f36d2e9a2a84bbbca152;hb=8659a99f233f5c4684292728e7ad4206669b35b0;hp=01feec1d1b388811ceeb7616521bd9224aecb8f0;hpb=8903693f3b43cf4b196b558aa939b9e148ddaec1;p=lilypond.git diff --git a/stepmake/stepmake/metafont-rules.make b/stepmake/stepmake/metafont-rules.make index 01feec1d1b..45ff320f46 100644 --- a/stepmake/stepmake/metafont-rules.make +++ b/stepmake/stepmake/metafont-rules.make @@ -1,31 +1,38 @@ - # Don't remove $(outdir)/.log's. Logs are a target! +# we want to see botched results as well. $(outdir)/%.dvi: %.mf - $(METAFONT) "\nonstopmode; input $<;" - gftodvi $(basename $<) + -$(DO_MF_DEP) MFINPUTS=$(src-dir) $(METAFONT) "\scrollmode; input $<;" + gftodvi $(basename $<) mv $(basename $<).dvi $(outdir) rm $(basename $<).*gf -$(outdir)/%.log: %.mf - $(METAFONT) $< - 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) + rm -f $(basename $(@F)).*gf $(basename $(@F)).*pk -$(outdir)/%.$(XPM_RESOLUTION)pk: $(outdir)/%.$(XPM_RESOLUTION)gf - gftopk $< $@ +# 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_DIR=`mktemp -d $(outdir)/pfbtemp.$*.XXXXXXXXX` \ + && ( cd $$TMP_DIR \ + && ln -s ../mf2pt1.mem . \ + && ln -s ../../mf2pt1.mp . \ + && MFINPUTS=$(abs-src-dir):..:: \ + FONTFORGE=$(FONTFORGE) \ + $(buildscript-dir)/mf2pt1 $(MF2PT1_OPTIONS) $< $(METAFONT_QUIET)) \ + && mv $$TMP_DIR/*pfb $(outdir); \ + rm -rf $$TMP_DIR -#%.afm: -# $(SHELL) $(depth)/buildscripts/tfmtoafm.sh $(shell basename $@ .afm) -# mv $@ $@.in +# 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