# $NetBSD: package.mk,v 1.8 2010/06/13 15:20:11 morr Exp $ # # This Makefile fragment is intended to be included by packages that build # TeX Live packages. # # Package-settable variables: # # REPLACE_TEXLUA # A list of texlua scripts to be installed, relative to ${WRKSRC}. # # TEX_FORMATS # See ../../print/texlive-tetex/format.mk. # # TEX_HYPHEN_DAT # See ../../print/texlive-tetex/hyphen.mk. # # TEX_HYPHEN_DEF # See ../../print/texlive-tetex/hyphen.mk. # # TEX_MAP_FILES # See ../../print/texlive-tetex/map.mk. # # TEX_MIXEDMAP_FILES # See ../../print/texlive-tetex/map.mk. # # TEX_TEXMF_DIRS # See ../../print/kpathsea/texmf.mk. # # TEXLIVE_IGNORE_PATTERNS # glob patterns for files and directories in ${WRKSRC} that # should not be installed. CATEGORIES?= print MASTER_SITES?= ${MASTER_SITE_TEX_CTAN:=systems/texlive/tlnet/archive/} .if empty(TEXLIVE_REV) DIST_SUBDIR?= ${PKGNAME_NOREV} .else DIST_SUBDIR?= ${PKGBASE:S/-doc//}-${TEXLIVE_REV} .endif EXTRACT_SUFX?= .tar.xz HOMEPAGE?= http://www.tug.org/texlive/ PKG_DESTDIR_SUPPORT= user-destdir USE_TOOLS+= pax NO_BUILD?= yes WRKSRC?= ${WRKDIR} .if defined(REPLACE_TEXLUA) DEPENDS+= luatex-[0-9]*:../../print/luatex REPLACE_INTERPRETER= texlua REPLACE.texlua.old= .*texlua REPLACE.texlua.new= ${LOCALBASE}/bin/texlua REPLACE_FILES.texlua= ${REPLACE_TEXLUA} .endif .if empty(TEX_TEXMF_DIRS) _dirs= bibtex doc dvips fonts makeindex metafont metapost \ omega scripts source tex vtex _topdir= ${DESTDIR}${PREFIX}/share/texmf-dist .else _dirs= texmf texmf-dist _topdir= ${DESTDIR}${PREFIX}/share .endif .PHONY: _texlive-set-permission _texlive-info _texlive-man _texlive-install _texlive-set-permission: .for _pat in ${TEXLIVE_IGNORE_PATTERNS} ${RM} -rf ${WRKSRC}/${_pat} .endfor .for _dir in ${_dirs} if [ -d ${WRKSRC}/${_dir} ]; then \ ${FIND} ${WRKSRC}/${_dir} -type d -exec ${CHMOD} ${PKGDIRMODE} {} \; ; \ ${FIND} ${WRKSRC}/${_dir} -type f -exec ${CHMOD} ${SHAREMODE} {} \; ; \ fi .endfor _texlive-info: if [ -d ${WRKSRC}/texmf/doc/info ]; then \ ${RM} -f ${WRKSRC}/texmf/doc/info/dir; \ ${MKDIR} ${WRKSRC}/info; \ ${MV} ${WRKSRC}/texmf/doc/info/* ${WRKSRC}/info; \ ${RMDIR} -p ${WRKSRC}/texmf/doc/info || ${TRUE}; \ fi _texlive-man: if [ -d ${WRKSRC}/texmf/doc/man ]; then \ ${MKDIR} ${WRKSRC}/man; \ ${MV} ${WRKSRC}/texmf/doc/man/* ${WRKSRC}/man; \ ${FIND} ${WRKSRC}/man -name \*.pdf -exec ${RM} {} \; ; \ ${RMDIR} -p ${WRKSRC}/texmf/doc/man || ${TRUE}; \ fi _texlive-install: .for _dir in ${_dirs} if [ -d ${WRKSRC}/${_dir} ]; then \ cd ${WRKSRC} && \ pax -rwpm -s ',.*\.orig$$,,' \ ${_dir} ${_topdir}; \ fi .endfor if [ -d ${WRKSRC}/bin ]; then \ ${FIND} ${WRKSRC}/bin -name \*.orig -exec ${RM} {} \; ; \ ${INSTALL_SCRIPT_DIR} ${DESTDIR}${PREFIX}/bin; \ for script in ${WRKSRC}/bin/*; do \ ${INSTALL_SCRIPT} $$script ${DESTDIR}${PREFIX}/bin; \ done; \ fi if [ -d ${WRKSRC}/info ]; then \ ${FIND} ${WRKSRC}/info -name \*.orig -exec ${RM} {} \; ; \ ${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/info; \ for script in ${WRKSRC}/info/*; do \ ${INSTALL_DATA} $$script ${DESTDIR}${PREFIX}/info; \ done; \ fi if [ -d ${WRKSRC}/man ]; then \ ${FIND} ${WRKSRC}/man -name \*.orig -exec ${RM} {} \; ; \ ${INSTALL_MAN_DIR} -p ${DESTDIR}${PREFIX}/${PKGMANDIR}; \ for f in ${WRKSRC}/man/*; do \ d=${DESTDIR}${PREFIX}/${PKGMANDIR}/`${BASENAME} $$f`; \ ${INSTALL_MAN_DIR} $$d; \ ${INSTALL_MAN} $$f/* $$d; \ done; \ fi .if empty(TEX_TEXMF_DIRS) || ${TEX_TEXMF_DIRS} != "none" . include "../../print/kpathsea/texmf.mk" .endif .if !empty(TEX_FORMATS) || !empty(TEX_FORMAT_NAMES) . include "../../print/texlive-tetex/format.mk" .endif .if !empty(TEX_HYPHEN_DAT) || !empty(TEX_HYPHEN_DEF) . include "../../print/texlive-tetex/hyphen.mk" .endif .if !empty(TEX_MAP_FILES) || !empty(TEX_MIXEDMAP_FILES) . include "../../print/texlive-tetex/map.mk" .endif post-extract: _texlive-set-permission _texlive-info _texlive-man do-install: _texlive-install