summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/jsclasses/Makefile
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/jsclasses/Makefile
Initial commit
Diffstat (limited to 'macros/latex/contrib/jsclasses/Makefile')
-rw-r--r--macros/latex/contrib/jsclasses/Makefile88
1 files changed, 88 insertions, 0 deletions
diff --git a/macros/latex/contrib/jsclasses/Makefile b/macros/latex/contrib/jsclasses/Makefile
new file mode 100644
index 0000000000..b7af18707d
--- /dev/null
+++ b/macros/latex/contrib/jsclasses/Makefile
@@ -0,0 +1,88 @@
+STRIPTARGET = jsarticle.cls jslogo.sty okumacro.sty jsverb.sty okuverb.sty
+DOCTARGET = jsclasses jslogo okumacro jsverb okuverb
+PDFTARGET = $(addsuffix .pdf,$(DOCTARGET))
+DVITARGET = $(addsuffix .dvi,$(DOCTARGET))
+KANJI = -kanji=utf8
+FONTMAP = -f ipaex.map -f ptex-ipaex.map
+TEXMF = $(shell kpsewhich -var-value=TEXMFHOME)
+
+default: $(STRIPTARGET) $(DVITARGET)
+strip: $(STRIPTARGET)
+all: $(STRIPTARGET) $(PDFTARGET)
+
+JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls
+
+# for generating files, we use pdflatex incidentally.
+# otherwise, ptexenc might convert U+2212 -> U+FF0D in okumacro.sty
+jsarticle.cls: jsclasses.dtx
+ pdflatex jsclasses.ins
+
+jslogo.sty: jslogo.dtx
+ pdflatex jslogo.ins
+
+okumacro.sty: okumacro.dtx
+ pdflatex okumacro.ins
+
+jsverb.sty: jsverb.dtx
+ pdflatex jsverb.ins
+
+okuverb.sty: okuverb.dtx
+ pdflatex okuverb.ins
+
+.SUFFIXES: .dtx .dvi .pdf
+.dtx.dvi:
+ platex $(KANJI) $<
+ platex $(KANJI) $<
+.dvi.pdf:
+ dvipdfmx $(FONTMAP) $<
+
+.PHONY: install clean cleanstrip cleanall cleandoc jisfile
+install:
+ mkdir -p ${TEXMF}/doc/platex/jsclasses
+ cp ./LICENSE ${TEXMF}/doc/platex/jsclasses/
+ cp ./README.md ${TEXMF}/doc/platex/jsclasses/
+ cp ./*.pdf ${TEXMF}/doc/platex/jsclasses/
+ mkdir -p ${TEXMF}/source/platex/jsclasses
+ cp ./Makefile ${TEXMF}/source/platex/jsclasses/
+ cp ./*.dtx ${TEXMF}/source/platex/jsclasses/
+ cp ./*.ins ${TEXMF}/source/platex/jsclasses/
+ mkdir -p ${TEXMF}/tex/platex/jsclasses
+ cp ./*.cls ${TEXMF}/tex/platex/jsclasses/
+ cp ./*.sty ${TEXMF}/tex/platex/jsclasses/
+clean:
+ rm -f $(JSCLASSES) \
+ jslogo.sty okumacro.sty jsverb.sty okuverb.sty \
+ $(DVITARGET)
+cleanstrip:
+ rm -f $(JSCLASSES) \
+ jslogo.sty okumacro.sty jsverb.sty okuverb.sty
+cleanall:
+ rm -f $(JSCLASSES) \
+ jslogo.sty okumacro.sty jsverb.sty okuverb.sty \
+ $(DVITARGET) $(PDFTARGET)
+cleandoc:
+ rm -f $(DVITARGET) $(PDFTARGET)
+jisfile:
+ mkdir -p jis0
+ cp *.{dtx,ins,cls,sty} jis0/
+ # GNU iconv can be used to convert UTF-8 -> ISO-2022-JP
+ for x in jis0/*; do \
+ if [ -f "$$x" ]; then \
+ iconv -f UTF-8 -t ISO-2022-JP "$$x" >"$$x.conv"; \
+ mv "$$x.conv" "$$x"; \
+ fi \
+ done
+ # jsclasses and okumacro contain non-ASCII chars also in stripped files
+ for x in $(addprefix jis0/,$(JSCLASSES) jsclasses.dtx okumacro.dtx okumacro.sty); do \
+ perl -pi.bak -0777 -e 's/(%\n)?\\ifx\\epTeXinputencoding\\undefined.*?\n\\fi\n(%\n)?//s' $$x; \
+ rm -f $$x.bak; \
+ done
+ # others have no non-ASCII chars in stripped files
+ for x in $(addprefix jis0/,$(wildcard *.dtx)); do \
+ perl -pi.bak -0777 -e 's/(%\n)?% \\ifx\\epTeXinputencoding\\undefined.*?\n% \\fi\n(%\n)?//s' $$x; \
+ perl -pi.bak -0777 -e 's/(%\n)?%<\*driver>\n\\ifx\\epTeXinputencoding\\undefined.*?\n\\fi\n%<\/driver>\n//s' $$x; \
+ rm -f $$x.bak; \
+ done
+ rm -f jis/*.{dtx,ins,cls,sty}
+ mv jis0/* jis/
+ rmdir jis0