# Books of Pumpkins, etc. Extensions to Quacks of Quedlinburg # SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 # Copyright 2020-2021 Ian Jackson PUBLISH_MD += pumpkin-books house-rules PUBLISH += pumpkin-books.pdf README.html PUBLISH += LICENCE.txt GPL-3.txt CC-BY-SA-4.0.txt PUBLISH += $(addsuffix .md.txt, $(PUBLISH_MD)) PUBLISH += $(addsuffix .md.html, $(PUBLISH_MD)) PUBLISH += $(addsuffix .md.pdf, $(PUBLISH_MD)) SHELL=bash BOOKS+= red BOOKS+= green BOOKS+= purple BOOKS+= blue BOOKS+= lotus BOOKS+= yellow BOOKS+= black-pair/black-more all: $(PUBLISH) # Don't print the ps, printers (eg ours!) don't always have the fonts o=>$@.new && mv -f $@.new $@ use_rsvg=rsvg-convert -f png -o $@.tmp.png $< shell_pipe=set -o pipefail; set -e; make_pnm = pnmdepth 255 | pnmnoraw $o pumpkin-books.ps: pumpkin-books.ps.pl bag.pgm pot.pgm droplet.ppm ./$< $(BOOKS) $o pumpkin-books.pdf: pumpkin-books.ps gs -q -dNOPAUSE -dBATCH -dPDFSETTINGS=/prepress \ -sDEVICE=pdfwrite -sOutputFile=$@ $< bag.pgm: Sack_-_Sac_-_Zak_brown.svg Makefile $(use_rsvg) $(shell_pipe) \ pngtopnm <$@.tmp.png -mix -background 'white' \ | ppmtopgm \ | $(make_pnm) pot.pgm: 146_Kaldrono.svg Makefile $(use_rsvg) $(shell_pipe) \ pngtopnm <$@.tmp.png \ | ppmtopgm \ | pnminvert \ | $(make_pnm) droplet.ppm: droplet.svg Makefile $(use_rsvg) $(shell_pipe) \ pngtopnm <$@.tmp.png -mix -background 'white' \ | pnmdepth 255 \ | $(make_pnm) PUBLISH_FILES= \ $(patsubst %.md,%.md.txt, $(PUBLISH)) \ $(patsubst %.md,%.md.html, $(filter $(PUBLISH)) \ %.md.txt: %.md cat $< $o %.md.html: %.md Makefile massage-html pandoc -s -Mtitle='Fm4YNbKyBNiS7TNu' $< >$@.tmp ./massage-html $< $@.tmp $o %.md.pdf: %.md Makefile perl -pe '$$_ = uc if $$.==1' <$< >$@.tmp pandoc --pdf-engine=wkhtmltopdf -o $@ $@.tmp pubssh=c pubpath=games-rules/quacks puburl=https://www.chiark.greenend.org.uk/~ijackson/ publish: $(PUBLISH) git push origin rsync $^ $(pubssh):public-html/$(pubpath)/. @echo $(puburl)$(pubpath)/README.html