Sync Mk with ports
[dports.git] / Mk / bsd.tex.mk
1 # $FreeBSD$
2 #
3 # bsd.tex.mk - Common part for TeX related ports
4 #
5 TEX_MAINTAINER= hrs@FreeBSD.org
6
7 #
8 # Ports which depend on TeX should use USE_TEX.
9 #
10 # USE_TEX=      yes
11 # imports variables only, and
12 # USE_TEX=      full
13 # means full TeXLive dependency except for documentation and source.
14 #
15 # The other valid keywords
16 #
17 #  base:        base part
18 #  texmf:       texmf tree (except for documentation and source)
19 #  source:      source 
20 #  docs:        documentation
21 #
22 #  web2c:       WEB2C toolchain and TeX engines
23 #  kpathsea:    kpathsea library
24 #  ptexenc:     character code conversion library for pTeX
25 #  basic:       basic TeX engines including tex and pdftex
26 #  tlmgr:       tlmgr dependency (Perl modules)
27 #  texlua:      texlua52 library
28 #  texluajit:   texluajit library
29 #  synctex:     synctex library
30 #  xpdfopen:    pdfopen/pdfclose utility
31 #
32 #  dvipsk:      dvipsk
33 #  dvipdfmx:    DVIPDFMx
34 #  xdvik:       XDvi
35 #  gbklatex:    gbklatex
36 #
37 #  formats:     TeX, LaTeX, AMSTeX, ConTeXT, CSLaTeX, EplainTeX,
38 #               CSplainTeX, METAFONT, MLTeX, PDFTeX, TeXsis
39 #  tex:         TeX
40 #  latex:       LaTeX
41 #  pdftex:      PDFTeX
42 #  aleph:       Aleph
43 #  jadetex:     JadeTeX
44 #  luatex:      LuaTeX
45 #  ptex:        pTeX
46 #  xetex:       XeTeX
47 #  xmltex:      XMLTeX
48 #
49 #  texhash:     directory search hash regeneration
50 #  updmap:      font map regeneration
51 #  fmtutil:     format regeneration
52 #
53 # Examples:
54 # USE_TEX=      latex:build
55 # USE_TEX=      formats
56 # USE_TEX=      latex:build dvipsk:build
57
58 # default TeX distribution.  "texlive"
59 TEX_DEFAULT?=   texlive
60
61 .if ${TEX_DEFAULT} != texlive
62 IGNORE=         Only 'texlive' is supported as value for TEX_DEFAULT
63 .endif
64
65 TEXMFDIR?=      share/texmf
66 TEXMFDISTDIR?=  share/texmf-dist
67 TEXMFLOCALDIR?= share/texmf-local
68 TEXMFVARDIR?=   share/texmf-var
69 TEXMFCONFIGDIR?=share/texmf-config
70 FMTUTIL_CNF?=   ${TEXMFCONFIGDIR}/web2c/fmtutil.cnf
71 TEXHASHDIRS?=   ${TEXMFDIR} ${TEXMFDISTDIR} ${TEXMFLOCALDIR} ${TEXMFVARDIR} ${TEXMFCONFIGDIR}
72
73 .for V in TEXMFDIR TEXMFDISTDIR TEXMFLOCALDIR TEXMFVARDIR TEXMFCONFIGDIR FMTUTIL_CNF
74 PLIST_SUB+=     $V="${$V}"
75 .endfor
76
77 .if !empty(USE_TEX:tu:MTEXLIVE)
78 IGNORE=         "texlive" must not be defined in USE_TEX 
79 .endif
80
81 _USE_TEX_TEXMF_DEP=     ${LOCALBASE}/${TEXMFDISTDIR}/README
82 _USE_TEX_TEXMF_PORT=    print/${_USE_TEX_TEXMF_PKGNAME}
83 _USE_TEX_TEXMF_PKGNAME= texlive-texmf
84 _USE_TEX_BASE_DEP=      texconfig
85 _USE_TEX_BASE_PORT=     print/${_USE_TEX_BASE_PKGNAME}
86 _USE_TEX_BASE_PKGNAME=  texlive-base
87 _USE_TEX_GBKLATEX_DEP=  gbklatex
88 _USE_TEX_GBKLATEX_PORT= ${_USE_TEX_BASE_PORT}
89 _USE_TEX_GBKLATEX_PKGNAME=${_USE_TEX_BASE_PKGNAME}
90 _USE_TEX_SOURCE_DEP=    ${LOCALBASE}/${TEXMFDISTDIR}/source/.keep_me
91 _USE_TEX_SOURCE_PORT=   print/${_USE_TEX_SOURCE_PKGNAME}
92 _USE_TEX_SOURCE_PKGNAME=texlive-texmf-source
93 _USE_TEX_DOCS_DEP=      ${LOCALBASE}/${TEXMFDISTDIR}/doc/texlive/texlive-en/README
94 _USE_TEX_DOCS_PORT=     print/${_USE_TEX_DOCS_PKGNAME}
95 _USE_TEX_DOCS_PKGNAME=  texlive-docs
96 _USE_TEX_TLMGR_DEP=     ${LOCALBASE}/${TEXMFDISTDIR}/.texlive-tlmgr
97 _USE_TEX_TLMGR_PORT=    print/${_USE_TEX_TLMGR_PKGNAME}
98 _USE_TEX_TLMGR_PKGNAME= texlive-tlmgr
99 _USE_TEX_DVIPSK_DEP=    dvips
100 _USE_TEX_DVIPSK_PORT=   print/${_USE_TEX_DVIPSK_PKGNAME}
101 _USE_TEX_DVIPSK_PKGNAME=tex-dvipsk
102 _USE_TEX_XDVIK_DEP=     xdvi
103 _USE_TEX_XDVIK_PORT=    print/${_USE_TEX_XDVIK_PKGNAME}
104 _USE_TEX_XDVIK_PKGNAME= tex-xdvik
105 _USE_TEX_DVIPDFMX_DEP=  dvipdfmx
106 _USE_TEX_DVIPDFMX_PORT= print/${_USE_TEX_DVIPDFMX_PKGNAME}
107 _USE_TEX_DVIPDFMX_PKGNAME=tex-dvipdfmx
108 _USE_TEX_BASIC_DEP=     tex
109 _USE_TEX_BASIC_PORT=    print/${_USE_TEX_BASIC_PKGNAME}
110 _USE_TEX_BASIC_PKGNAME= tex-basic-engines
111 .for _L in TEX LATEX PDFTEX
112 _USE_TEX_${_L}_DEP=     ${_USE_TEX_FORMATS_DEP}
113 _USE_TEX_${_L}_PORT=    ${_USE_TEX_FORMATS_PORT}
114 _USE_TEX_${_L}_PKGNAME= ${_USE_TEX_FORMATS_PKGNAME}
115 .endfor
116 _USE_TEX_JADETEX_DEP=   jadetex
117 _USE_TEX_JADETEX_PORT=  print/${_USE_TEX_JADETEX_PKGNAME}
118 _USE_TEX_JADETEX_PKGNAME=tex-jadetex
119 _USE_TEX_XMLTEX_DEP=    xmltex
120 _USE_TEX_XMLTEX_PORT=   print/${_USE_TEX_XMLTEX_PKGNAME}
121 _USE_TEX_XMLTEX_PKGNAME=tex-xmltex
122 _USE_TEX_PTEX_DEP=      ptex
123 _USE_TEX_PTEX_PORT=     japanese/${_USE_TEX_PTEX_PKGNAME}
124 _USE_TEX_PTEX_PKGNAME=  tex-ptex
125 _USE_TEX_WEB2C_DEP=     weave
126 _USE_TEX_WEB2C_PORT=    devel/${_USE_TEX_WEB2C_PKGNAME}
127 _USE_TEX_WEB2C_PKGNAME= tex-web2c
128 _USE_TEX_KPATHSEA_DEP=  libkpathsea.so
129 _USE_TEX_KPATHSEA_PORT= devel/${_USE_TEX_KPATHSEA_PKGNAME}
130 _USE_TEX_KPATHSEA_PKGNAME=tex-kpathsea
131 _USE_TEX_PTEXENC_DEP=   libptexenc.so
132 _USE_TEX_PTEXENC_PORT=  print/${_USE_TEX_PTEXENC_PKGNAME}
133 _USE_TEX_PTEXENC_PKGNAME=tex-ptexenc
134 _USE_TEX_TEXLUA_DEP=    libtexlua52.so
135 _USE_TEX_TEXLUA_PORT=   devel/${_USE_TEX_TEXLUA_PKGNAME}
136 _USE_TEX_TEXLUA_PKGNAME=tex-libtexlua
137 _USE_TEX_TEXLUAJIT_DEP= libtexluajit.so
138 _USE_TEX_TEXLUAJIT_PORT=        devel/${_USE_TEX_TEXLUAJIT_PKGNAME}
139 _USE_TEX_TEXLUAJIT_PKGNAME=tex-libtexluajit
140 _USE_TEX_FORMATS_DEP=   ${LOCALBASE}/${TEXMFVARDIR}/web2c/tex/tex.fmt
141 _USE_TEX_FORMATS_PORT=  print/${_USE_TEX_FORMATS_PKGNAME}
142 _USE_TEX_FORMATS_PKGNAME=tex-formats
143 _USE_TEX_SYNCTEX_DEP=   libsynctex.so
144 _USE_TEX_SYNCTEX_PORT=  devel/${_USE_TEX_SYNCTEX_PKGNAME}
145 _USE_TEX_SYNCTEX_PKGNAME=tex-synctex
146 _USE_TEX_XPDFOPEN_DEP=  pdfopen
147 _USE_TEX_XPDFOPEN_PORT= print/${_USE_TEX_XPDFOPEN_PKGNAME}
148 _USE_TEX_XPDFOPEN_PKGNAME=      xpdfopen
149 _USE_TEX_ALEPH_DEP=     aleph
150 _USE_TEX_ALEPH_PORT=    print/${_USE_TEX_ALEPH_PKGNAME}
151 _USE_TEX_ALEPH_PKGNAME= tex-aleph
152 _USE_TEX_LUATEX_DEP=    luatex
153 _USE_TEX_LUATEX_PORT=   print/${_USE_TEX_LUATEX_PKGNAME}
154 _USE_TEX_LUATEX_PKGNAME=tex-luatex
155 _USE_TEX_XETEX_DEP=     xetex
156 _USE_TEX_XETEX_PORT=    print/${_USE_TEX_XETEX_PKGNAME}
157 _USE_TEX_XETEX_PKGNAME= tex-xetex
158
159 _USE_TEX_FULLLIST=      texmf>=20150523_3 base>=20150521_5 \
160                 web2c tlmgr:run \
161                 basic formats aleph xetex jadetex luatex xmltex ptex \
162                 dvipsk dvipdfmx xdvik xpdfopen:run \
163                 kpathsea:lib ptexenc:lib texlua:lib texluajit:lib synctex:lib
164
165 .if !empty(USE_TEX:tu:MFULL)
166 USE_TEX:=       ${USE_TEX:tu:NFULL} ${_USE_TEX_FULLLIST:tu}
167 .endif
168
169 .for _UU in ${USE_TEX:tu}
170 _U:=    ${_UU}  # ugly but necessary in for loop
171 _VOP:=
172 . if !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MTEXMF) && empty(_U:M*[<>=]*)
173 _U:=    ${_U}>=20150523_3
174 . endif
175 . if !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MBASE) && empty(_U:M*[<>=]*)
176 _U:=    ${_U}>=20150521_5
177 . endif
178 . if !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MKPATHSEA) || \
179      !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MPTEXENC) || \
180      !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MTEXLUA) || \
181      !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MTEXLUAJIT) || \
182      !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MSYNCTEX)
183 _U:=    ${_U}:lib
184 . endif
185 . if !empty(_U:M*[<>=]*)
186 _VOP:=  ${_U:C/^[^<>=]*//:C/\:.*$//}
187 . endif
188 . if empty(_U:M*\:*)
189 _C:=    BUILD RUN
190 . else
191 _C:=    ${_U:C/.*://:S/,/ /g:C/[<>=][^\:]*//g}
192 . endif
193 #. warning DEBUG: ${_U}: _VOP=${_VOP}, _C=${_C}
194 . for _CC in ${_C:tu}
195 _V:=${_UU:C/[<>=][^\:]*//:C/\:.*$//}
196 .  if defined(_USE_TEX_${_V}_PORT)
197 .   if !empty(_VOP)
198 .    for _T in ${_USE_TEX_${_V}_PKGNAME}${_VOP}:${PORTSDIR}/${_USE_TEX_${_V}_PORT}
199 TEX_${_CC}_DEPENDS+=    ${_T}
200 .    endfor
201 .   else
202 .    for _T in ${_USE_TEX_${_V}_DEP}:${PORTSDIR}/${_USE_TEX_${_V}_PORT}
203 TEX_${_CC}_DEPENDS+=    ${_T}
204 .    endfor
205 .   endif
206 .  endif
207 . endfor
208 .endfor
209
210 .for _C in EXTRACT BUILD LIB RUN
211 ${_C}_DEPENDS+= ${TEX_${_C}_DEPENDS:O:u}
212 .endfor
213
214 .ORDER: do-texhash do-fmtutil do-updmap
215
216 .if !empty(USE_TEX:Mtexhash) || \
217     !empty(USE_TEX:Mtexhash-bootstrap) || \
218     !empty(USE_TEX:Mfmtutil) || \
219     !empty(USE_TEX:Mupdmap)
220 .PHONY: do-texhash
221 do-texhash:
222 . if !empty(USE_TEX:Mtexhash-bootstrap)
223         @${ECHO_CMD} "@exec ${LOCALBASE}/bin/mktexlsr " \
224                 "${TEXHASHDIRS:S,^,%D/,}" >> ${TMPPLIST}
225         @for D in ${TEXHASHDIRS}; do \
226                 ${ECHO_CMD} "@rmtry $$D/ls-R"; \
227                 ${ECHO_CMD} "@dir $$D"; \
228         done >> ${TMPPLIST}
229 . else
230         @${ECHO_CMD} "@exec for D in ${TEXHASHDIRS:S,^,${PREFIX}/,}; do " \
231                 "if [ -r \$$D/ls-R ]; then " \
232                         "${LOCALBASE}/bin/mktexlsr \$$D; " \
233                 "fi; done" >> ${TMPPLIST}
234         @${ECHO_CMD} "@unexec for D in ${TEXHASHDIRS:S,^,${PREFIX}/,}; do " \
235                 "if [ -r \$$D/ls-R ]; then " \
236                         "${LOCALBASE}/bin/mktexlsr \$$D; " \
237                 "fi; done" >> ${TMPPLIST}
238 . endif
239
240 post-install-script: do-texhash
241 .endif
242
243 .if !empty(USE_TEX:Mfmtutil)
244 .PHONY: do-fmtutil
245 . for F in ${TEX_FORMATS}
246 do-fmtutil: post-install-$F do-fmtutil-$F
247 do-fmtutil-$F:
248         ${TEST} -n '${TEX_FORMAT_${F:tu}}'
249         ${PRINTF} "%s\t#$F\n" ${TEX_FORMAT_${F:tu}} \
250             > ${WRKDIR}/fmtutil.cnf
251         ${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFVARDIR}/web2c \
252             ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c
253         ${LN} -f -s ${LOCALBASE}/${TEXMFDISTDIR}/web2c/texmf.cnf \
254             ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c/texmf.cnf
255         ${LOCALBASE}/bin/mktexlsr ${TEXHASHDIRS:S,^,${STAGEDIR}${PREFIX}/,}
256         ${CAT} ${WRKDIR}/fmtutil.cnf | \
257                 while read format dum; do \
258                 ${SETENV} PATH=${STAGEDIR}${PREFIX}/bin:${PATH}:${LOCALBASE}/bin \
259                     TEXMFDIST=${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}:${LOCALBASE}/${TEXMFDISTDIR} \
260                     ${LOCALBASE}/bin/fmtutil-sys \
261                         --byfmt $$format \
262                         --fmtdir ${STAGEDIR}${PREFIX}/${TEXMFVARDIR}/web2c \
263                         --cnffile ${WRKDIR}/fmtutil.cnf; \
264                 done
265         # XXX
266         #cd ${STAGEDIR}${PREFIX}/${TEXMFVARDIR}/web2c && \
267         #       ${FIND} . -name "*.log" | ${XARGS} \
268         #           ${REINPLACE_CMD:S/.bak/ ""/} "s,${STAGEDIR},,g"
269         ${RM} ${TEXHASHDIRS:S,^,${STAGEDIR}${PREFIX}/,:S,$,/ls-R,} \
270             ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c/texmf.cnf
271         ${RMDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c || ${TRUE}
272         ${RMDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR} || ${TRUE}
273 _PLIST_FILES+=  ${TEX_FORMAT_${F:tu}_FILES}
274 _PLIST_DIRSTRY+=${TEX_FORMAT_${F:tu}_DIRS}
275 _PLIST_FILES+=  ${TEX_FORMAT_${F:tu}_BIN}
276 . endfor
277 post-install-script: do-fmtutil
278 PLIST_FILES=    ${_PLIST_FILES:O:u}
279 PLIST_DIRSTRY=  ${_PLIST_DIRSTRY:O:u} ${TEXMFVARDIR}/web2c
280 .endif
281
282 .if !empty(USE_TEX:Mupdmap)
283 .PHONY: do-updmap
284 do-updmap:
285         @${ECHO_CMD} "@exec ${SETENV} PATH=${PATH}:${LOCALBASE}/bin " \
286                 "TEXMFMAIN=${LOCALBASE}/${TEXMFDIR} " \
287                 "${LOCALBASE}/bin/updmap-sys"  >> ${TMPPLIST}
288         @${ECHO_CMD} "@unexec ${SETENV} PATH=${PATH}:${LOCALBASE}/bin " \
289                 "TEXMFMAIN=${LOCALBASE}/${TEXMFDIR} " \
290                 "${LOCALBASE}/bin/updmap-sys"  >> ${TMPPLIST}
291
292 post-install-script: do-updmap
293 .endif
294
295 TEX_FORMAT_ALEPH?= \
296         "aleph aleph - *aleph.ini" \
297         "lamed aleph language.dat *lambda.ini"
298 TEX_FORMAT_ALEPH_FILES= \
299         ${TEXMFVARDIR}/web2c/aleph/aleph.log \
300         ${TEXMFVARDIR}/web2c/aleph/aleph.fmt \
301         ${TEXMFVARDIR}/web2c/aleph/lamed.log \
302         ${TEXMFVARDIR}/web2c/aleph/lamed.fmt
303 TEX_FORMAT_ALEPH_BIN=   \
304         bin/lamed
305 TEX_FORMAT_ALEPH_DIRS=  \
306         ${TEXMFVARDIR}/web2c/aleph
307 post-install-aleph:
308         ${LN} -sf aleph ${STAGEDIR}${PREFIX}/bin/lamed
309
310 TEX_FORMAT_AMSTEX?= \
311         "amstex pdftex - -translate-file=cp227.tcx *amstex.ini"
312 TEX_FORMAT_AMSTEX_FILES= \
313         ${TEXMFVARDIR}/web2c/pdftex/amstex.log \
314         ${TEXMFVARDIR}/web2c/pdftex/amstex.fmt
315 TEX_FORMAT_AMSTEX_BIN= \
316         bin/amstex
317 TEX_FORMAT_AMSTEX_DIRS= \
318         ${TEXMFVARDIR}/web2c/pdftex
319 post-install-amstex:
320         ${LN} -fs pdftex ${STAGEDIR}${PREFIX}/bin/amstex
321
322 TEX_FORMAT_CONTEXT?= \
323         "cont-en pdftex cont-usr.tex -8bit *cont-en.mkii"
324 # XXX
325 #       "metafun mpost - metafun.mp"
326 TEX_FORMAT_CONTEXT_FILES=       \
327         ${TEXMFVARDIR}/web2c/pdftex/cont-en.log \
328         ${TEXMFVARDIR}/web2c/pdftex/cont-en.fmt
329 #       bin/metafun
330 TEX_FORMAT_CONTEXT_DIRS= \
331         ${TEXMFVARDIR}/web2c/pdftex
332 post-install-context:
333         @${DO_NADA}
334 #       ${LN} -sf mpost ${PREFIX}/bin/metafun
335
336 TEX_FORMAT_CSLATEX?= \
337         "cslatex pdftex - -etex cslatex.ini" \
338         "pdfcslatex pdftex - -etex cslatex.ini"
339 TEX_FORMAT_CSLATEX_FILES= \
340         ${TEXMFVARDIR}/web2c/pdftex/cslatex.log \
341         ${TEXMFVARDIR}/web2c/pdftex/cslatex.fmt \
342         ${TEXMFVARDIR}/web2c/pdftex/pdfcslatex.log \
343         ${TEXMFVARDIR}/web2c/pdftex/pdfcslatex.fmt
344 TEX_FORMAT_CSLATEX_BIN= \
345         bin/cslatex \
346         bin/pdfcslatex
347 TEX_FORMAT_CSLATEX_DIRS= \
348         ${TEXMFVARDIR}/web2c/pdftex
349 post-install-cslatex:
350         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/cslatex
351         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfcslatex
352
353 TEX_FORMAT_CSPLAIN?= \
354         "csplain pdftex - -etex -enc csplain-utf8.ini" \
355         "pdfcsplain pdftex - -etex -enc csplain-utf8.ini"
356 TEX_FORMAT_CSPLAIN_FILES= \
357         ${TEXMFVARDIR}/web2c/pdftex/csplain.log \
358         ${TEXMFVARDIR}/web2c/pdftex/csplain.fmt \
359         ${TEXMFVARDIR}/web2c/pdftex/pdfcsplain.log \
360         ${TEXMFVARDIR}/web2c/pdftex/pdfcsplain.fmt
361 TEX_FORMAT_CSPLAIN_BIN= \
362         bin/csplain
363 TEX_FORMAT_CSPLAIN_DIRS= \
364         ${TEXMFVARDIR}/web2c/pdftex
365 post-install-csplain:
366         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/csplain
367
368 TEX_FORMAT_EPLAIN?= \
369         "eplain pdftex language.dat -translate-file=cp227.tcx *eplain.ini"
370 TEX_FORMAT_EPLAIN_FILES= \
371         ${TEXMFVARDIR}/web2c/pdftex/eplain.log \
372         ${TEXMFVARDIR}/web2c/pdftex/eplain.fmt
373 TEX_FORMAT_EPLAIN_BIN= \
374         bin/eplain
375 TEX_FORMAT_EPLAIN_DIRS= \
376         ${TEXMFVARDIR}/web2c/pdftex
377 post-install-eplain:
378         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/eplain
379
380 TEX_FORMAT_JADETEX?= \
381         "jadetex pdftex language.dat *jadetex.ini" \
382         "pdfjadetex pdftex language.dat *pdfjadetex.ini"
383 TEX_FORMAT_JADETEX_FILES= \
384         ${TEXMFVARDIR}/web2c/pdftex/jadetex.log \
385         ${TEXMFVARDIR}/web2c/pdftex/jadetex.fmt \
386         ${TEXMFVARDIR}/web2c/pdftex/pdfjadetex.log \
387         ${TEXMFVARDIR}/web2c/pdftex/pdfjadetex.fmt
388 TEX_FORMAT_JADETEX_BIN= \
389         bin/jadetex \
390         bin/pdfjadetex
391 TEX_FORMAT_JADETEX_DIRS= \
392         ${TEXMFVARDIR}/web2c/pdftex
393 post-install-jadetex:
394         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/jadetex
395         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfjadetex
396
397 TEX_FORMAT_LATEX-BIN?= \
398         "latex pdftex language.dat -translate-file=cp227.tcx *latex.ini" \
399         "pdflatex pdftex language.dat -translate-file=cp227.tcx *pdflatex.ini"
400 TEX_FORMAT_LATEX-BIN_FILES= \
401         ${TEXMFVARDIR}/web2c/pdftex/latex.log \
402         ${TEXMFVARDIR}/web2c/pdftex/latex.fmt \
403         ${TEXMFVARDIR}/web2c/pdftex/pdflatex.log \
404         ${TEXMFVARDIR}/web2c/pdftex/pdflatex.fmt
405 TEX_FORMAT_LATEX-BIN_BIN= \
406         bin/latex \
407         bin/pdflatex
408 TEX_FORMAT_LATEX-BIN_DIRS= \
409         ${TEXMFVARDIR}/web2c/pdftex
410 post-install-latex-bin:
411         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/latex
412         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdflatex
413
414 TEX_FORMAT_LUATEX?= \
415         "luatex luatex language.def,language.dat.lua luatex.ini" \
416         "dviluatex luatex language.def,language.dat.lua dviluatex.ini" \
417         "dvilualatex luatex language.dat,language.dat.lua dvilualatex.ini" \
418         "lualatex luatex language.dat,language.dat.lua lualatex.ini" \
419         "luajittex luajittex language.def,language.dat.lua luatex.ini" \
420         "pdfcsplain luatex - -etex csplain.ini" \
421         "lualollipop luatex - lualollipop.in"
422 TEX_FORMAT_LUATEX_FILES= \
423         ${TEXMFVARDIR}/web2c/luatex/dviluatex.log \
424         ${TEXMFVARDIR}/web2c/luatex/dviluatex.fmt \
425         ${TEXMFVARDIR}/web2c/luatex/dvilualatex.log \
426         ${TEXMFVARDIR}/web2c/luatex/dvilualatex.fmt \
427         ${TEXMFVARDIR}/web2c/luatex/luatex.log \
428         ${TEXMFVARDIR}/web2c/luatex/luatex.fmt \
429         ${TEXMFVARDIR}/web2c/luatex/lualatex.log \
430         ${TEXMFVARDIR}/web2c/luatex/lualatex.fmt \
431         ${TEXMFVARDIR}/web2c/luatex/pdfcsplain.log \
432         ${TEXMFVARDIR}/web2c/luatex/pdfcsplain.fmt \
433         ${TEXMFVARDIR}/web2c/luajittex/luajittex.log \
434         ${TEXMFVARDIR}/web2c/luajittex/luajittex.fmt
435 TEX_FORMAT_LUATEX_BIN= \
436         bin/dviluatex \
437         bin/dvilualatex \
438         bin/luajittex \
439         bin/lualatex \
440         bin/lualollipop \
441         bin/luatex \
442         bin/texlua \
443         bin/texluac \
444         bin/texluajit \
445         bin/texluajitc
446 TEX_FORMAT_LUATEX_DIRS= \
447         ${TEXMFVARDIR}/web2c/luatex \
448         ${TEXMFVARDIR}/web2c/luajittex
449 post-install-luatex:
450         ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/dviluatex
451         ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/dvilualatex
452         ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/lualatex
453         ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/lualollipop
454         ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/texlua
455         ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/texluac
456         ${LN} -sf luajittex ${STAGEDIR}${PREFIX}/bin/texluajit
457         ${LN} -sf luajittex ${STAGEDIR}${PREFIX}/bin/texluajitc
458
459 TEX_FORMAT_LOLLIPOP?= \
460         "lollipop pdftex - -translate-file=cp227.tcx *lollipop.ini"
461 TEX_FORMAT_LOLLIPOP_FILES= \
462         ${TEXMFVARDIR}/web2c/pdftex/lollipop.log \
463         ${TEXMFVARDIR}/web2c/pdftex/lollipop.fmt
464 TEX_FORMAT_LOLLIPOP_BIN= \
465         bin/lollipop
466 TEX_FORMAT_LOLLIPOP_DIRS= \
467         ${TEXMFVARDIR}/web2c/pdftex
468 post-install-lollipop-bin:
469         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/lollipop
470
471 TEX_FORMAT_METAFONT?= \
472         "mf mf-nowin - -translate-file=cp227.tcx mf.ini"
473 TEX_FORMAT_METAFONT_FILES= \
474         ${TEXMFVARDIR}/web2c/metafont/mf.log \
475         ${TEXMFVARDIR}/web2c/metafont/mf.base
476 TEX_FORMAT_METAFONT_DIRS= \
477         ${TEXMFVARDIR}/web2c/metafont
478 post-install-metafont:
479         @${DO_NADA}
480
481 TEX_FORMAT_MEX?= \
482         "mex pdftex mexconf.tex -translate-file=cp227.tcx *mex.ini" \
483         "pdfmex pdftex mexconf.tex -translate-file=cp227.tcx *pdfmex.ini" \
484         "utf8mex pdftex mexconf.tex -enc *utf8mex.ini"
485 TEX_FORMAT_MEX_FILES= \
486         ${TEXMFVARDIR}/web2c/pdftex/mex.log \
487         ${TEXMFVARDIR}/web2c/pdftex/mex.fmt \
488         ${TEXMFVARDIR}/web2c/pdftex/pdfmex.log \
489         ${TEXMFVARDIR}/web2c/pdftex/pdfmex.fmt \
490         ${TEXMFVARDIR}/web2c/pdftex/utf8mex.log \
491         ${TEXMFVARDIR}/web2c/pdftex/utf8mex.fmt
492 TEX_FORMAT_MEX_BIN= \
493         bin/mex \
494         bin/pdfmex \
495         bin/utf8mex
496 TEX_FORMAT_MEX_DIRS= \
497         ${TEXMFVARDIR}/web2c/pdftex
498 post-install-mex:
499         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/mex
500         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfmex
501         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/utf8mex
502
503 TEX_FORMAT_MLTEX?= \
504         "mllatex pdftex language.dat -translate-file=cp227.tcx -mltex mllatex.ini" \
505         "mltex pdftex - -translate-file=cp227.tcx -mltex mltex.ini"
506 TEX_FORMAT_MLTEX_FILES= \
507         ${TEXMFVARDIR}/web2c/pdftex/mllatex.log \
508         ${TEXMFVARDIR}/web2c/pdftex/mllatex.fmt \
509         ${TEXMFVARDIR}/web2c/pdftex/mltex.log \
510         ${TEXMFVARDIR}/web2c/pdftex/mltex.fmt
511 TEX_FORMAT_MLTEX_BIN= \
512         bin/mltex \
513         bin/mllatex
514 TEX_FORMAT_MLTEX_DIRS= \
515         ${TEXMFVARDIR}/web2c/pdftex
516 post-install-mltex:
517         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/mltex
518         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/mllatex
519
520 TEX_FORMAT_MPTOPDF?= \
521         "mptopdf pdftex - -translate-file=cp227.tcx mptopdf.tex"
522 TEX_FORMAT_MPTOPDF_FILES= \
523         ${TEXMFVARDIR}/web2c/pdftex/mptopdf.log \
524         ${TEXMFVARDIR}/web2c/pdftex/mptopdf.fmt
525 TEX_FORMAT_MPTOPDF_DIRS= \
526         ${TEXMFVARDIR}/web2c/pdftex
527 post-install-mptopdf:
528         @${DO_NADA}
529
530 TEX_FORMAT_PDFTEX?= \
531         "pdftex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini" \
532         "etex pdftex language.def -translate-file=cp227.tcx *etex.ini" \
533         "pdfetex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini"
534 TEX_FORMAT_PDFTEX_FILES= \
535         ${TEXMFVARDIR}/web2c/pdftex/pdftex.log \
536         ${TEXMFVARDIR}/web2c/pdftex/pdftex.fmt \
537         ${TEXMFVARDIR}/web2c/pdftex/etex.log \
538         ${TEXMFVARDIR}/web2c/pdftex/etex.fmt \
539         ${TEXMFVARDIR}/web2c/pdftex/pdfetex.log \
540         ${TEXMFVARDIR}/web2c/pdftex/pdfetex.fmt
541 TEX_FORMAT_PDFTEX_BIN= \
542         bin/etex \
543         bin/pdfetex
544 TEX_FORMAT_PDFTEX_DIRS= \
545         ${TEXMFVARDIR}/web2c/pdftex
546 post-install-pdftex:
547         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfetex
548         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/etex
549
550 TEX_FORMAT_PTEX?= \
551         "ptex ptex - ptex.ini" \
552         "ptex eptex language.def *eptex.ini" \
553         "platex eptex language.dat *platex.ini"
554 TEX_FORMAT_PTEX_FILES= \
555         ${TEXMFVARDIR}/web2c/ptex/ptex.log \
556         ${TEXMFVARDIR}/web2c/ptex/ptex.fmt \
557         ${TEXMFVARDIR}/web2c/eptex/ptex.log \
558         ${TEXMFVARDIR}/web2c/eptex/ptex.fmt \
559         ${TEXMFVARDIR}/web2c/eptex/platex.log \
560         ${TEXMFVARDIR}/web2c/eptex/platex.fmt
561 TEX_FORMAT_PTEX_BIN= \
562         bin/eptex \
563         bin/ptex \
564         bin/platex
565 TEX_FORMAT_PTEX_DIRS= \
566         ${TEXMFVARDIR}/web2c/ptex \
567         ${TEXMFVARDIR}/web2c/eptex
568 post-install-ptex:
569         ${LN} -sf eptex ${STAGEDIR}${PREFIX}/bin/platex
570
571 TEX_FORMAT_TEX?= \
572         "tex tex - tex.ini"
573 TEX_FORMAT_TEX_FILES= \
574         ${TEXMFVARDIR}/web2c/tex/tex.log \
575         ${TEXMFVARDIR}/web2c/tex/tex.fmt
576 TEX_FORMAT_TEX_DIRS= \
577         ${TEXMFVARDIR}/web2c/tex
578 post-install-tex:
579         @${DO_NADA}
580
581 TEX_FORMAT_TEXSIS?= \
582         "texsis pdftex - -translate-file=cp227.tcx texsis.ini"
583 TEX_FORMAT_TEXSIS_FILES= \
584         ${TEXMFVARDIR}/web2c/pdftex/texsis.log \
585         ${TEXMFVARDIR}/web2c/pdftex/texsis.fmt
586 TEX_FORMAT_TEXSIS_BIN= \
587         bin/texsis
588 TEX_FORMAT_TEXSIS_DIRS= \
589         ${TEXMFVARDIR}/web2c/pdftex
590 post-install-texsis:
591         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/texsis
592
593 TEX_FORMAT_UPTEX?= \
594         "uptex uptex - uptex.ini" \
595         "euptex euptex language.def *euptex.ini" \
596         "uplatex euptex language.dat *uplatex.ini"
597 TEX_FORMAT_UPTEX_FILES= \
598         ${TEXMFVARDIR}/web2c/euptex/euptex.log \
599         ${TEXMFVARDIR}/web2c/euptex/euptex.fmt \
600         ${TEXMFVARDIR}/web2c/uptex/uptex.log \
601         ${TEXMFVARDIR}/web2c/uptex/uptex.fmt \
602         ${TEXMFVARDIR}/web2c/euptex/uplatex.log \
603         ${TEXMFVARDIR}/web2c/euptex/uplatex.fmt
604 TEX_FORMAT_UPTEX_BIN= \
605         bin/euptex \
606         bin/uptex \
607         bin/uplatex
608 TEX_FORMAT_UPTEX_DIRS=  \
609         ${TEXMFVARDIR}/web2c/euptex \
610         ${TEXMFVARDIR}/web2c/uptex
611 post-install-uptex:
612         ${LN} -sf euptex ${STAGEDIR}${PREFIX}/bin/uplatex
613
614 TEX_FORMAT_XETEX?= \
615         "xetex xetex language.def -etex xetex.ini" \
616         "xelatex xetex language.dat -etex xelatex.ini" \
617         "pdfcsplain xetex - -etex csplain.ini" \
618         "cont-en xetex cont-usr.tex -8bit *cont-en.mkii" \
619         "xelollipop xetex - -etex xelollipop.ini"
620 TEX_FORMAT_XETEX_FILES= \
621         ${TEXMFVARDIR}/web2c/xetex/cont-en.log \
622         ${TEXMFVARDIR}/web2c/xetex/cont-en.fmt \
623         ${TEXMFVARDIR}/web2c/xetex/pdfcsplain.log \
624         ${TEXMFVARDIR}/web2c/xetex/pdfcsplain.fmt \
625         ${TEXMFVARDIR}/web2c/xetex/xetex.log \
626         ${TEXMFVARDIR}/web2c/xetex/xetex.fmt \
627         ${TEXMFVARDIR}/web2c/xetex/xelatex.log \
628         ${TEXMFVARDIR}/web2c/xetex/xelatex.fmt \
629         ${TEXMFVARDIR}/web2c/xetex/xelollipop.log \
630         ${TEXMFVARDIR}/web2c/xetex/xelollipop.fmt
631 TEX_FORMAT_XETEX_BIN=   \
632         bin/xetex \
633         bin/xelatex \
634         bin/xelollipop
635 TEX_FORMAT_XETEX_DIRS=  \
636         ${TEXMFVARDIR}/web2c/xetex
637 post-install-xetex:
638         ${LN} -sf xetex ${STAGEDIR}${PREFIX}/bin/xelatex
639         ${LN} -sf xetex ${STAGEDIR}${PREFIX}/bin/xelollipop
640
641 TEX_FORMAT_XMLTEX?= \
642         "xmltex pdftex language.dat *xmltex.ini" \
643         "pdfxmltex pdftex language.dat *pdfxmltex.ini"
644 TEX_FORMAT_XMLTEX_FILES= \
645         ${TEXMFVARDIR}/web2c/pdftex/xmltex.log \
646         ${TEXMFVARDIR}/web2c/pdftex/xmltex.fmt \
647         ${TEXMFVARDIR}/web2c/pdftex/pdfxmltex.log \
648         ${TEXMFVARDIR}/web2c/pdftex/pdfxmltex.fmt
649 TEX_FORMAT_XMLTEX_BIN= \
650         bin/xmltex \
651         bin/pdfxmltex
652 TEX_FORMAT_XMLTEX_DIRS= \
653         ${TEXMFVARDIR}/web2c/pdftex
654 post-install-xmltex:
655         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/xmltex
656         ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfxmltex