bedstead/Makefile
Ben Harris f76da21590 Split images for Web page into a new make target
"make all" shouldn't depend on things that aren't in the source
distribution, and now it doesn't.  The images that are only used for the
Web site are now generated by a separate "all-web" target.  I'm not sure
this is the right long-term approach, but it's good enough for now.
2021-11-05 00:20:46 +00:00

116 lines
3.5 KiB
Makefile

FONTBASES = bedstead bedstead-extended bedstead-semicondensed \
bedstead-condensed bedstead-extracondensed \
bedstead-ultracondensed \
bedstead-bold bedstead-boldextended bedstead-boldsemicondensed \
bedstead-boldcondensed bedstead-boldextracondensed \
bedstead-boldultracondensed
SFDFILES = $(addsuffix .sfd, $(FONTBASES))
OTFFILES = $(addsuffix .otf, $(FONTBASES))
DISTFILES = bedstead.c Makefile COPYING NEWS df.ps \
Fontmap \
$(OTFFILES) \
bedstead-10.bdf bedstead-20.bdf bedstead-bold-20.bdf \
bedstead-10-df.png bedstead-20-df.png \
bedstead-complement.pdf
all: $(DISTFILES)
.PHONY: all-web
all-web: all sample.png extended.png
.PHONY: experimental
experimental: bedstead-chiseltip.otf bedstead-plotter-thin.otf \
bedstead-plotter-light.otf bedstead-plotter-medium.otf \
bedstead-plotter-bold.otf plotter.png
bedstead.sfd: bedstead
./bedstead > bedstead.sfd
bedstead-extended.sfd: bedstead
./bedstead --extended > bedstead-extended.sfd
bedstead-semicondensed.sfd: bedstead
./bedstead --semi-condensed > bedstead-semicondensed.sfd
bedstead-condensed.sfd: bedstead
./bedstead --condensed > bedstead-condensed.sfd
bedstead-extracondensed.sfd: bedstead
./bedstead --extra-condensed > bedstead-extracondensed.sfd
bedstead-ultracondensed.sfd: bedstead
./bedstead --ultra-condensed > bedstead-ultracondensed.sfd
bedstead-bold.sfd: bedstead
./bedstead --bold > bedstead-bold.sfd
bedstead-boldextended.sfd: bedstead
./bedstead --bold --extended > bedstead-boldextended.sfd
bedstead-boldsemicondensed.sfd: bedstead
./bedstead --bold --semi-condensed > bedstead-boldsemicondensed.sfd
bedstead-boldcondensed.sfd: bedstead
./bedstead --bold --condensed > bedstead-boldcondensed.sfd
bedstead-boldextracondensed.sfd: bedstead
./bedstead --bold --extra-condensed > bedstead-boldextracondensed.sfd
bedstead-boldultracondensed.sfd: bedstead
./bedstead --bold --ultra-condensed > bedstead-boldultracondensed.sfd
bedstead-oc.sfd: bedstead
./bedstead --plotter > bedstead-oc.sfd
bedstead-plotter-%.sfd: strokefont.py bedstead-oc.sfd
fontforge -lang=py -script strokefont.py plotter-$* bedstead-oc.sfd \
bedstead-plotter-$*.sfd
bedstead-chiseltip.sfd: strokefont.py bedstead-oc.sfd
fontforge -lang=py -script strokefont.py chiseltip bedstead-oc.sfd \
bedstead-chiseltip.sfd
%-10.bdf %-20.bdf: %.sfd
fontforge -lang=ff \
-c 'Open($$1); BitmapsAvail([10, 20]); Generate($$2, "bdf")' \
$< $*.
%.otf: %.sfd
fontforge -lang=ff \
-c 'Open($$1); Generate($$2)' \
$< $*.otf
%.png: %.ps $(OTFFILES) Fontmap
gs -P -q -dSAFER -sDEVICE=pnggray -dTextAlphaBits=4 -o $@ $<
bedstead-%-df.png: df.ps bedstead.otf Fontmap
gs -P -q -dSAFER -dsize=$* -sDEVICE=png16m -o $@ $<
bedstead-complement.ps: bedstead
./bedstead --complement > bedstead-complement.ps
bedstead-complement.pdf: bedstead-complement.ps bedstead.otf Fontmap
ps2pdf -P $< $@
.PHONY: clean
clean:
rm -f bedstead *.sfd *.otf *.bdf *.png *.pdf bedstead-complement.ps
.PHONY: install-user
install-user: $(OTFFILES)
install -d "$${HOME}"/.fonts
install -m 644 $(OTFFILES) "$${HOME}"/.fonts
.PHONY: dist
dist: $(DISTFILES)
rm -rf bedstead-$$(sed -n 's/^Version: //p' < bedstead.sfd)
mkdir bedstead-$$(sed -n 's/^Version: //p' < bedstead.sfd)
ln $(DISTFILES) \
bedstead-$$(sed -n 's/^Version: //p' < bedstead.sfd)
zip -r bedstead-$$(sed -n 's/^Version: //p' < bedstead.sfd).zip \
bedstead-$$(sed -n 's/^Version: //p' < bedstead.sfd)
rm -r bedstead-$$(sed -n 's/^Version: //p' < bedstead.sfd)