98 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| #%SRCPAT% \.md
 | |
| 
 | |
| ############
 | |
| # Settings #
 | |
| ############
 | |
| 
 | |
| suffixPub :=
 | |
| suffixInt := _intern
 | |
| 
 | |
| 
 | |
| ###########
 | |
| # Default #
 | |
| ###########
 | |
| 
 | |
| suffixSubst = $(patsubst %.$(2),%$(4).$(3),$(1))
 | |
| 
 | |
| mdFiles     := $(wildcard *.md)
 | |
| 
 | |
| pdfFilesPub := $(call suffixSubst,$(mdFiles),md,pdf,$(suffixPub))
 | |
| texFilesPub := $(call suffixSubst,$(mdFiles),md,tex,$(suffixPub))
 | |
| 
 | |
| pdfFilesInt := $(call suffixSubst,$(mdFiles),md,pdf,$(suffixInt))
 | |
| texFilesInt := $(call suffixSubst,$(mdFiles),md,tex,$(suffixInt))
 | |
| 
 | |
| .PHONY: all pdf pdfPub pdfInt tex texPub texInt
 | |
| all: pdf
 | |
| 
 | |
| pdf: pdfPub pdfInt
 | |
| pdfPub: $(pdfFilesPub)
 | |
| pdfInt: $(pdfFilesInt)
 | |
| 
 | |
| tex: texPub texInt
 | |
| texPub: $(texFilesPub)
 | |
| texInt: $(texFilesInt)
 | |
| 
 | |
| 
 | |
| ###########
 | |
| # Recipes #
 | |
| ###########
 | |
| 
 | |
| compile_md = pandoc \
 | |
| 	$(2) \
 | |
| 	--standalone \
 | |
| 	--from markdown \
 | |
| 	--to $(1) \
 | |
| 	--template lev-protokoll \
 | |
| 	--variable colorlinks:true \
 | |
| 	--variable csquotes:true \
 | |
| 	--variable lang:de-DE \
 | |
| 	--output $(3)
 | |
| 
 | |
| GSFLAGS := \
 | |
| 	-sDEVICE=pdfwrite \
 | |
| 	-dNOOUTERSAVE \
 | |
| 	-dNOPAUSE \
 | |
| 	-dQUIET \
 | |
| 	-dBATCH
 | |
| 
 | |
| postprocess_pdf = gs \
 | |
| 	$(GSFLAGS) \
 | |
| 	-sPAPERSIZE=a4 \
 | |
| 	-dFIXEDMEDIA \
 | |
| 	-dPDFFitPage \
 | |
| 	-dCompatibilityLevel=1.7 \
 | |
| 	-dPDFSETTINGS=/ebook \
 | |
| 	-sOutputFile=$(2) \
 | |
| 	$(1) \
 | |
| 	2>/dev/null
 | |
| 
 | |
| convert_pdfa = /opt/pdfa/bin/gs-919-linux_x86_64 \
 | |
| 	$(GSFLAGS) \
 | |
| 	-dPDFA=2 \
 | |
| 	-sProcessColorModel=DeviceRGB \
 | |
| 	-dPDFACompatibilityPolicy=1 \
 | |
| 	-sOutputFile=$(2) \
 | |
| 	/opt/pdfa/PDFA_def.ps \
 | |
| 	$(1) \
 | |
| 	2>/dev/null
 | |
| 
 | |
| md2pdf = $(call compile_md,pdf,$(1),-) | $(call postprocess_pdf,-,$(2))
 | |
| 
 | |
| md2pdfa = $(call md2pdf,$(1),-) | $(call convert_pdfa,-,$(2))
 | |
| 
 | |
| # pdf
 | |
| 
 | |
| %$(suffixPub).pdf: %.md lev-shorthands.sty
 | |
| 	python3 /opt/lenaisten/redact.py $< | $(call md2pdfa,-,$@)
 | |
| 
 | |
| %$(suffixInt).pdf: %.md lev-shorthands.sty
 | |
| 	python3 /opt/lenaisten/redact.py -i $< | $(call md2pdfa,-,$@)
 | |
| 
 | |
| # tex
 | |
| 
 | |
| %$(suffixPub).tex: %.md lev-shorthands.sty
 | |
| 	python3 /opt/lenaisten/redact.py $< | $(call compile_md,latex,-,$@)
 | |
| 
 | |
| %$(suffixInt).tex: %.md lev-shorthands.sty
 | |
| 	python3 /opt/lenaisten/redact.py -i $< | $(call compile_md,latex,-,$@)
 |