aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: 499658aa9a6f2c516976e74d23bc55c814c84fcd (plain)
  1. DOCUMENTS = report
  2. PDF_DOCUMENTS = _site/report.pdf
  3. include _make/*.mk
  4. DOCUMENT_APPENDIX_REGEX = Pandoc plugin semantic-markdown
  5. FILTER = _extensions/ruc-play/semantic-markdown/semantic-markdown.lua
  6. DIFFTESTS = $(patsubst %.md,%,$(wildcard test/*.md))
  7. #DIFF = diff -u
  8. DIFF = git --no-pager diff --no-index
  9. #PANDOC = pandoc -f markdown+fenced_divs+bracketed_spans-auto_identifiers
  10. PANDOC = pandoc --from commonmark
  11. #PANDOC = quarto pandoc --from commonmark
  12. SYNTAX_DIAGRAMS := $(patsubst %.py,%.svg,$(wildcard def_*.py))
  13. RAPPER = rapper -i rdfa
  14. #RAPPER += -f relativeURIs
  15. # implicit namespaces at <https://www.w3.org/2011/rdfa-context/rdfa-1.1>
  16. NS += foaf=http://xmlns.com/foaf/0.1/
  17. NS += rdfa=http://www.w3.org/ns/rdfa\#
  18. NS += rdfs=http://www.w3.org/2000/01/rdf-schema\#
  19. NS += schema=http://schema.org/
  20. NS += wd=https://www.wikidata.org/entity/
  21. NS += bibo=http://purl.org/ontology/bibo/
  22. NS += ov=http://open.vocab.org/terms/
  23. RAPPER += $(foreach s,$(NS),$(let a b,$(subst =, $(),$s), -f 'xmlns:$a="$b"'))
  24. _site/report.pdf: $(wildcard _*.qmd) $(SYNTAX_DIAGRAMS)
  25. $(SYNTAX_DIAGRAMS): %.svg: %.py
  26. python3 $<
  27. check: $(DIFFTESTS:%=check-%)
  28. luacheck --quiet $(FILTER)
  29. $(DIFFTESTS:%=check-%): check-%: %.md
  30. -$(strip $(PANDOC) --lua-filter $(FILTER) --wrap preserve < $< \
  31. | $(DIFF) $*.plain.html /dev/stdin)
  32. $(DIFFTESTS:%=debug-%): debug-%: %.md
  33. $(PANDOC) --to native --lua-filter $(FILTER) < $<
  34. $(DIFFTESTS:%=debugdiff-%): SHELL = /bin/bash
  35. $(DIFFTESTS:%=debugdiff-%): debugdiff-%: %.md
  36. -$(strip $(DIFF) \
  37. <($(PANDOC) --to native < $<) \
  38. <($(PANDOC) --to native --lua-filter $(FILTER) < $<))
  39. $(DIFFTESTS:%=turtle-from-%): turtle-from-%: %.rdfa.html
  40. $(RAPPER) -o turtle $< $(dir $<)
  41. $(DIFFTESTS:%=xmp-from-%): xmp-from-%: %.rdfa.html
  42. $(RAPPER) -o rdfxml-xmp $< $(dir $<)
  43. .PHONY: check \
  44. $(foreach x,check debug debugdiff turtle-from xmp-from,\
  45. $(DIFFTESTS:%=$x-%))