summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/dvisirule/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/dvisirule/Makefile')
-rw-r--r--macros/latex/contrib/dvisirule/Makefile105
1 files changed, 105 insertions, 0 deletions
diff --git a/macros/latex/contrib/dvisirule/Makefile b/macros/latex/contrib/dvisirule/Makefile
new file mode 100644
index 0000000000..484b2c412e
--- /dev/null
+++ b/macros/latex/contrib/dvisirule/Makefile
@@ -0,0 +1,105 @@
+
+Dir ?= /tmp
+export Dir
+
+InstallBase ?= ${Dir}/texmf-dist
+InstallLib ?= ${InstallBase}/lib
+InstallSty ?= ${InstallBase}/lib/texinputs
+InstallBin ?= ${InstallBase}/bin
+export InstallLib InstallSty InstallBin
+
+include cmd.mk
+Lo = '\def\Dir{'${Dir}'}'
+CFLAGS = -Wall -O
+
+########################################
+
+Name = dvisirule
+Pdf = ${Dir}/${Name}.pdf
+Runtime = $(addprefix ${Dir}/, \
+ ${Name}.sty ${Name} \
+ $(addprefix ${Name}-, bin pgnum.awk expg.mk marker.awk) \
+ )
+Tgt = ${Pdf} ${Runtime}
+Dtx = ${Name}.dtx
+
+HelpTxt = ${Dir}/help.txt
+Fig = demo
+FigPdf = $(addprefix ${Dir}/, $(addsuffix .pdf, ${Fig}))
+FigTex = $(addprefix ${Dir}/, $(addsuffix print.tex, ${Fig}))
+
+-include privar.mk
+
+########################################
+
+all: ${Tgt}
+
+clean:
+ ${RM} *~ ${Tgt} ${HelpTxt} ${FigPdf} ${FigTex}
+ ${MAKE} -C src $@
+
+install: ${Runtime}
+ install -m 444 -pD ${Dir}/${Name}.sty \
+ ${InstallSty}/${Name}.sty
+ install -m 444 -pD ${Dir}/${Name}-pgnum.awk \
+ ${Dir}/${Name}-marker.awk \
+ ${Dir}/${Name}-expg.mk \
+ ${InstallLib}/
+ install -m 555 -pD ${Dir}/${Name} \
+ ${InstallBin}/${Name}
+ install -m 555 -pD -s ${Dir}/${Name}-bin \
+ ${InstallLib}/${Name}-bin
+# echo ${MAKE} -C src $@
+
+########################################
+
+sty: ${Dir}/${Name}.sty
+${Dir}/${Name}.sty: ${Name}.ins ${Dtx}
+ $(call Latex, $<)
+ ls -l $@
+
+define MakePdf
+ $(call Latex, ${1}.dtx)
+ $(call Latex, ${1}.dtx)
+ cd ${Dir}; \
+ ${DVIPDFMX} -o ${2} ${1}.dvi
+endef
+
+${Dir}/${Name}.pdf: %.pdf: %.sty ${HelpTxt} ${FigPdf} ${FigTex}
+ $(call MakePdf,${Name},$@)
+ ls -l $@
+
+${FigPdf}: bname = $(notdir $(basename $@))
+${FigPdf}: ${Dir}/%.pdf: ${CURDIR}/%.tex ${Runtime}
+ $(call Latex, $<)
+ cd ${Dir}; \
+ cp -p ${bname}.dvi ${bname}.dvi.save && \
+ ${Dir}/${Name} ${bname}.dvi ${bname}-si.dvi && \
+ ${DVIPDFMX} ${bname}-si.dvi && \
+ ${PDFCROP} ${bname}-si.pdf $@
+ ebb $@
+
+${FigTex}: demo.tex
+ sed -n -e '/definecolor/,/hskip0pt/p' $< |\
+ egrep -v '(hfill|hskip)' > $@
+
+${HelpTxt}: ${Dir}/${Name}
+ sh $< -h | sed -e 's/\.sh//' > $@
+
+${Dir}/${Name}: ${Name}.sh
+ install -m 555 -pD $< $@
+
+FORCE:
+${Dir}/${Name}-bin: b = $(notdir $@)
+${Dir}/${Name}-bin: FORCE
+ test -e src/Makefile || sh reconf.sh src
+ ${MAKE} -C src ${b}
+ cp -pu src/${b} $@
+
+${Dir}/%.awk: %.awk
+ cp -pu $< $@
+
+${Dir}/%.mk: %.mk
+ cp -pu $< $@
+
+-include priv.mk