# --- utilities ---
POD2MAN = pod2man -c 'OpenBSD Reference Manual' -d 'July 13, 2014' -r 'OpenBSD ports'
GROFF = groff -Tascii -P -c
MANDOC = mandoc -Tascii
DIFF = diff -u
POD2MDOC = /co/pod2mdoc/pod2mdoc -d 'July 13, 2014'
# --- lists ---
PREMANS = ${TARGETS:S/$/.preman/}
MANS = ${TARGETS:S/$/.man/}
GROFFMANS = ${TARGETS:S/$/.groff_man/}
MANDOCMANS = ${TARGETS:S/$/.mandoc_man/}
MANDOCMANMS = ${TARGETS:S/$/.mandoc_manm/}
DIFFMANS = ${TARGETS:S/$/.diff_man/}
MDOCS = ${TARGETS:S/$/.mdoc/}
GROFFMDOCS = ${TARGETS:S/$/.groff_mdoc/}
MANDOCMDOCS = ${TARGETS:S/$/.mandoc_mdoc/}
DIFFMDOCS = ${TARGETS:S/$/.diff_mdoc/}
DIFFS = ${TARGETS:S/$/.diff/}
# --- production targets ---
all: manall mdoc groffmdoc mandocmdoc diffmdoc maindiff
clean: mdoc-clean groffmdoc-clean mandocmdoc-clean
rm -f *.part *.core
mdoc: ${MDOCS}
mdoc-clean:
rm -f ${MDOCS}
groffmdoc: ${GROFFMDOCS}
groffmdoc-clean:
rm -f ${GROFFMDOCS}
mandocmdoc: ${MANDOCMDOCS}
mandocmdoc-clean:
rm -f ${MANDOCMDOCS}
diffmdoc: ${DIFFMDOCS}
maindiff: ${DIFFS}
# --- maintainer targets ---
manall: man groffman mandocman mandocmanm diffman
allclean: clean preman-clean man-clean \
groffman-clean mandocman-clean mandocmanm-clean
preman: ${PREMANS}
preman-clean:
rm -f ${PREMANS}
man: ${MANS}
man-clean:
rm -f ${MANS}
groffman: ${GROFFMANS}
groffman-clean:
rm -f ${GROFFMANS}
mandocman: ${MANDOCMANS}
mandocman-clean:
rm -f ${MANDOCMANS}
mandocmanm: ${MANDOCMANMS}
mandocmanm-clean:
rm -f ${MANDOCMANMS}
diffman: ${DIFFMANS}
.for t in ${TARGETS}
${t}.diff_man: ${t}.groff_man ${t}.mandoc_man
${DIFF} $?
${t}.diff_mdoc: ${t}.groff_mdoc ${t}.mandoc_mdoc
${DIFF} $?
${t}.diff: ${t}.mandoc_manm ${t}.mandoc_mdoc
${DIFF} $?
.endfor
# --- suffix rules ---
.SUFFIXES: .pod .preman .man .groff_man .mandoc_man .mandoc_manm .diff_man
.SUFFIXES: .mdoc .groff_mdoc .mandoc_mdoc
.pod.preman:
-${POD2MAN} $< > $@
.preman.man:
../p2m_postproc.pl < $< > $@.part
@mv $@.part $@
.man.groff_man:
${GROFF} -man $< > $@.part
@mv $@.part $@
.man.mandoc_man:
${MANDOC} -man $< > $@.part
@mv $@.part $@
.man.mandoc_manm:
${MANDOC} -man -Omdoc $< > $@.part
@mv $@.part $@
.pod.mdoc:
${POD2MDOC} $< > $@.part
@mv $@.part $@
.mdoc.groff_mdoc:
${GROFF} -mdoc $< > $@.part
@mv $@.part $@
.mdoc.mandoc_mdoc:
${MANDOC} -mdoc -Ios='OpenBSD ports' $< > $@.part
@mv $@.part $@