# this uses {X}fm which can be cloned from: https://gitlab.com/rouxware/xfm
+XPATH=XFM_PATH=.:/usr/local/share/xfm TFM_PATH=.:/usr/local/share/xfm
+
docs = user_guide
src = user_guide.xfm
-imbed_src = cpp_frame.im example1.im example2.im example3.im
+imbed_src = cpp_frame.im example1.im example2.im example3.im jhash.im
desired_out = rst ps
# use care: the output type is used to source the macros based on the type
# references etc.
#
%.ps: %.xfm
- OUTPUT_TYPE=generic_ps XFM_PASS=1 pfm $< /dev/null
- OUTPUT_TYPE=generic_ps XFM_PASS=2 pfm $< $@
+ $(XPATH) OUTPUT_TYPE=generic_ps XFM_PASS=1 pfm $< /dev/null
+ $(XPATH) OUTPUT_TYPE=generic_ps XFM_PASS=2 pfm $< $@
%.md: %.xfm
- OUTPUT_TYPE=markdown XFM_PASS=1 tfm $< /dev/null
- OUTPUT_TYPE=markdown XFM_PASS=2 tfm $< | sed 's/^ //' >$@
+ $(XPATH) OUTPUT_TYPE=markdown XFM_PASS=1 tfm $< /dev/null
+ $(XPATH) OUTPUT_TYPE=markdown XFM_PASS=2 tfm $< | sed 's/^ //' >$@
%.rst: %.xfm
- OUTPUT_TYPE=rst XFM_PASS=1 tfm $< /dev/null
- GEN_TITLE=1 OUTPUT_TYPE=rst XFM_PASS=2 tfm $< | sed 's/^ //' >$@
+ $(XPATH) OUTPUT_TYPE=rst XFM_PASS=1 tfm $< /dev/null
+ $(XPATH) GEN_TITLE=1 OUTPUT_TYPE=rst XFM_PASS=2 tfm $< | sed 's/^ //; s/ *$$//' >$@
%.txt: %.xfm
- OUTPUT_TYPE=txt XFM_PASS=1 tfm $< /dev/null
- OUTPUT_TYPE=txt XFM_PASS=2 tfm $< $@
+ $(XPATH) OUTPUT_TYPE=txt XFM_PASS=1 tfm $< /dev/null
+ $(XPATH) OUTPUT_TYPE=txt XFM_PASS=2 tfm $< $@
# -----------------------------------------------------------------------------------
all: $(desired_out:%=user_guide.%)
$(docs:%=%.rst): always
publish: user_guide.rst
- cp *.rst ../../../docs/
+ cp user_guide.rst ../../../docs/user-guide.rst
# intermeidate junk that might straggle
clean: