diff --git a/Mk/bsd.tex.mk b/Mk/Uses/tex.mk similarity index 92% rename from Mk/bsd.tex.mk rename to Mk/Uses/tex.mk index ce8efc912194..ec6c56e1d6e1 100644 --- a/Mk/bsd.tex.mk +++ b/Mk/Uses/tex.mk @@ -1,628 +1,650 @@ -# bsd.tex.mk - Common part for TeX related ports -# -TEX_MAINTAINER= freebsd-tex@FreeBSD.org +# Feature: tex +# Usage: USES=tex +# Valid ARGS: (none) +# MAINTAINER: tex@FreeBSD.org -# -# Ports which depend on TeX should use USE_TEX. -# -# USE_TEX= yes -# imports variables only, and -# USE_TEX= full +# This imports variables only, and USE_TEX= full # means full TeXLive dependency except for documentation and source. # -# The other valid keywords +# USE_TEX is used to enable additional specific features and +# fnctionalities for tex. # -# base: base part -# texmf: texmf tree (except for documentation and source) -# source: source -# docs: documentation -# -# web2c: WEB2C toolchain and TeX engines +# Valid keywords for USE_TEX are as following: + +# base: base part +# texmf: texmf tree (except for documentation and source) +# source: source +# docs: documentation +# web2c: WEB2C toolchain and TeX engines # kpathsea: kpathsea library -# ptexenc: character code conversion library for pTeX -# basic: basic TeX engines including tex and pdftex -# tlmgr: tlmgr dependency (Perl modules) -# texlua: texlua53 library +# ptexenc: character code conversion library for pTeX +# basic: basic TeX engines including tex and pdftex +# tlmgr: tlmgr dependency (Perl modules) +# texlua: texlua53 library # texluajit: texluajit library -# synctex: synctex library +# synctex: synctex library # xpdfopen: pdfopen/pdfclose utility -# -# dvipsk: dvipsk +# dvipsk: dvipsk # dvipdfmx: DVIPDFMx -# xdvik: XDvi +# xdvik: XDvi # gbklatex: gbklatex -# + # formats: TeX, LaTeX, AMSTeX, ConTeXT, EplainTeX, # CSplainTeX, METAFONT, MLTeX, PDFTeX, TeXsis # tex: TeX # latex: LaTeX # pdftex: PDFTeX # jadetex: JadeTeX # luatex: LuaTeX # ptex: pTeX # xetex: XeTeX # xmltex: XMLTeX # # texhash: directory search hash regeneration # updmap: font map regeneration # fmtutil: format regeneration # # Examples: # USE_TEX= latex:build # USE_TEX= formats # USE_TEX= latex:build dvipsk:build +.if !defined(_INCLUDE_USES_TEX_MK) +_INCLUDE_USES_TEX_MK= yes + +# List all valid USE_TEX features here +_VALID_TEX_FEATURES= base texmf source docs web2c kpathsea ptexenc basic \ + tlmgr texlua texluajit synctex xpdfopen dvipsk dvipdfmx \ + xdvik gbklatex formats tex latex pdftex jadetex luatex \ + ptex xetex xmltex texhash texhash-bootstrap updmap fmtutil full + +_INVALID_TEX_FEATURES= +. for var in ${USE_TEX:O:u:C/:(build|extract|lib|run|test)$//} +. if empty(_VALID_TEX_FEATURES:M${var}) +_INVALID_TEX_FEATURES+= ${var} +. endif +. endfor +. if !empty(_INVALID_TEX_FEATURES) +IGNORE= uses unknown USE_TEX features: ${_INVALID_TEX_FEATURES} +. endif + +. if !empty(tex_ARGS) +IGNORE= USES=tex takes no arguments +. endif + +# Make each individual feature available as _TEX_FEATURE_ +. for var in ${USE_TEX} +_TEX_FEATURE_${var:C/=.*$//:tu}= ${var:C/.*=//:S/,/ /g} +. endfor + # default TeX distribution. "texlive" TEX_DEFAULT?= texlive .if ${TEX_DEFAULT} != texlive IGNORE= Only 'texlive' is supported as value for TEX_DEFAULT .endif TEXMFDIR?= share/texmf TEXMFDISTDIR?= share/texmf-dist TEXMFLOCALDIR?= share/texmf-local TEXMFVARDIR?= share/texmf-var TEXMFCONFIGDIR?=share/texmf-config FMTUTIL_CNF?= ${TEXMFCONFIGDIR}/web2c/fmtutil.cnf TEXHASHDIRS?= ${TEXMFDIR} ${TEXMFDISTDIR} ${TEXMFLOCALDIR} ${TEXMFVARDIR} ${TEXMFCONFIGDIR} TEXLIVE_YEAR?= 2021 TEXLIVE_VERSION?= ${TEXLIVE_YEAR}0325 .for V in TEXMFDIR TEXMFDISTDIR TEXMFLOCALDIR TEXMFVARDIR TEXMFCONFIGDIR FMTUTIL_CNF PLIST_SUB+= $V="${$V}" .endfor -.if !empty(USE_TEX:tu:MTEXLIVE) -IGNORE= "texlive" must not be defined in USE_TEX -.endif - _USE_TEX_TEXMF_DEP= ${LOCALBASE}/${TEXMFDISTDIR}/README _USE_TEX_TEXMF_PORT= print/${_USE_TEX_TEXMF_PKGNAME} _USE_TEX_TEXMF_PKGNAME= texlive-texmf _USE_TEX_BASE_DEP= texconfig _USE_TEX_BASE_PORT= print/${_USE_TEX_BASE_PKGNAME} _USE_TEX_BASE_PKGNAME= texlive-base _USE_TEX_GBKLATEX_DEP= gbklatex _USE_TEX_GBKLATEX_PORT= ${_USE_TEX_BASE_PORT} _USE_TEX_GBKLATEX_PKGNAME=${_USE_TEX_BASE_PKGNAME} _USE_TEX_SOURCE_DEP= ${_USE_TEX_SOURCE_PKGNAME}>=${TEXLIVE_VERSION} _USE_TEX_SOURCE_PORT= print/${_USE_TEX_SOURCE_PKGNAME} _USE_TEX_SOURCE_PKGNAME=texlive-texmf-source _USE_TEX_DOCS_DEP= ${LOCALBASE}/${TEXMFDISTDIR}/doc/texlive/texlive-en/README _USE_TEX_DOCS_PORT= print/${_USE_TEX_DOCS_PKGNAME} _USE_TEX_DOCS_PKGNAME= texlive-docs _USE_TEX_TLMGR_DEP= ${LOCALBASE}/${TEXMFDISTDIR}/.texlive-tlmgr _USE_TEX_TLMGR_PORT= print/${_USE_TEX_TLMGR_PKGNAME} _USE_TEX_TLMGR_PKGNAME= texlive-tlmgr _USE_TEX_DVIPSK_DEP= dvips _USE_TEX_DVIPSK_PORT= print/${_USE_TEX_DVIPSK_PKGNAME} _USE_TEX_DVIPSK_PKGNAME=tex-dvipsk _USE_TEX_XDVIK_DEP= xdvi _USE_TEX_XDVIK_PORT= print/${_USE_TEX_XDVIK_PKGNAME} _USE_TEX_XDVIK_PKGNAME= tex-xdvik _USE_TEX_DVIPDFMX_DEP= dvipdfmx _USE_TEX_DVIPDFMX_PORT= print/${_USE_TEX_DVIPDFMX_PKGNAME} _USE_TEX_DVIPDFMX_PKGNAME=tex-dvipdfmx _USE_TEX_BASIC_DEP= tex _USE_TEX_BASIC_PORT= print/${_USE_TEX_BASIC_PKGNAME} _USE_TEX_BASIC_PKGNAME= tex-basic-engines .for _L in TEX LATEX PDFTEX _USE_TEX_${_L}_DEP= ${_USE_TEX_FORMATS_DEP} _USE_TEX_${_L}_PORT= ${_USE_TEX_FORMATS_PORT} _USE_TEX_${_L}_PKGNAME= ${_USE_TEX_FORMATS_PKGNAME} .endfor _USE_TEX_JADETEX_DEP= jadetex _USE_TEX_JADETEX_PORT= print/${_USE_TEX_JADETEX_PKGNAME} _USE_TEX_JADETEX_PKGNAME=tex-jadetex _USE_TEX_XMLTEX_DEP= xmltex _USE_TEX_XMLTEX_PORT= print/${_USE_TEX_XMLTEX_PKGNAME} _USE_TEX_XMLTEX_PKGNAME=tex-xmltex _USE_TEX_PTEX_DEP= ptex _USE_TEX_PTEX_PORT= japanese/${_USE_TEX_PTEX_PKGNAME} _USE_TEX_PTEX_PKGNAME= tex-ptex _USE_TEX_WEB2C_DEP= weave _USE_TEX_WEB2C_PORT= devel/${_USE_TEX_WEB2C_PKGNAME} _USE_TEX_WEB2C_PKGNAME= tex-web2c _USE_TEX_KPATHSEA_DEP= libkpathsea.so _USE_TEX_KPATHSEA_PORT= devel/${_USE_TEX_KPATHSEA_PKGNAME} _USE_TEX_KPATHSEA_PKGNAME=tex-kpathsea _USE_TEX_PTEXENC_DEP= libptexenc.so _USE_TEX_PTEXENC_PORT= print/${_USE_TEX_PTEXENC_PKGNAME} _USE_TEX_PTEXENC_PKGNAME=tex-ptexenc _USE_TEX_TEXLUA_DEP= libtexlua53.so _USE_TEX_TEXLUA_PORT= devel/${_USE_TEX_TEXLUA_PKGNAME} _USE_TEX_TEXLUA_PKGNAME=tex-libtexlua _USE_TEX_TEXLUAJIT_DEP= libtexluajit.so _USE_TEX_TEXLUAJIT_PORT= devel/${_USE_TEX_TEXLUAJIT_PKGNAME} _USE_TEX_TEXLUAJIT_PKGNAME=tex-libtexluajit _USE_TEX_FORMATS_DEP= ${LOCALBASE}/${TEXMFVARDIR}/web2c/tex/tex.fmt _USE_TEX_FORMATS_PORT= print/${_USE_TEX_FORMATS_PKGNAME} _USE_TEX_FORMATS_PKGNAME=tex-formats _USE_TEX_SYNCTEX_DEP= libsynctex.so _USE_TEX_SYNCTEX_PORT= devel/${_USE_TEX_SYNCTEX_PKGNAME} _USE_TEX_SYNCTEX_PKGNAME=tex-synctex _USE_TEX_XPDFOPEN_DEP= pdfopen _USE_TEX_XPDFOPEN_PORT= print/${_USE_TEX_XPDFOPEN_PKGNAME} _USE_TEX_XPDFOPEN_PKGNAME= xpdfopen _USE_TEX_LUATEX_DEP= luatex _USE_TEX_LUATEX_PORT= print/${_USE_TEX_LUATEX_PKGNAME} _USE_TEX_LUATEX_PKGNAME=tex-luatex _USE_TEX_XETEX_DEP= xetex _USE_TEX_XETEX_PORT= print/${_USE_TEX_XETEX_PKGNAME} _USE_TEX_XETEX_PKGNAME= tex-xetex _USE_TEX_FULLLIST= texmf>=${TEXLIVE_VERSION} base>=${TEXLIVE_VERSION} \ web2c tlmgr:run \ basic formats xetex jadetex luatex xmltex ptex \ dvipsk dvipdfmx xdvik xpdfopen:run \ kpathsea:lib ptexenc:lib texlua:lib texluajit:lib synctex:lib .if !empty(USE_TEX:tu:MFULL) USE_TEX:= ${USE_TEX:tu:NFULL} ${_USE_TEX_FULLLIST:tu} .endif .for _UU in ${USE_TEX:tu} _U:= ${_UU} # ugly but necessary in for loop _VOP:= . if !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MTEXMF) && empty(_U:M*[<>=]*) _U:= ${_U}>=${TEXLIVE_VERSION} . endif . if !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MBASE) && empty(_U:M*[<>=]*) _U:= ${_U}>=${TEXLIVE_VERSION} . endif . if !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MKPATHSEA) || \ !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MPTEXENC) || \ !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MTEXLUA) || \ !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MTEXLUAJIT) || \ !empty(_U:tu:C/[<>=][^\:]*//:C/\:.*$//:MSYNCTEX) _U:= ${_U}:lib . endif . if !empty(_U:M*[<>=]*) _VOP:= ${_U:C/^[^<>=]*//:C/\:.*$//} . endif . if empty(_U:M*\:*) _C:= BUILD RUN . else _C:= ${_U:C/.*://:S/,/ /g:C/[<>=][^\:]*//g} . endif -#. warning DEBUG: ${_U}: _VOP=${_VOP}, _C=${_C} . for _CC in ${_C:tu} _V:=${_UU:C/[<>=][^\:]*//:C/\:.*$//} . if defined(_USE_TEX_${_V}_PORT) . if !empty(_VOP) . for _T in ${_USE_TEX_${_V}_PKGNAME}${_VOP}:${_USE_TEX_${_V}_PORT} TEX_${_CC}_DEPENDS+= ${_T} . endfor . else . for _T in ${_USE_TEX_${_V}_DEP}:${_USE_TEX_${_V}_PORT} TEX_${_CC}_DEPENDS+= ${_T} . endfor . endif . endif . endfor .endfor -.for _C in EXTRACT BUILD LIB RUN +.for _C in EXTRACT BUILD LIB RUN TEST ${_C}_DEPENDS+= ${TEX_${_C}_DEPENDS:O:u} .endfor .ORDER: do-texhash do-fmtutil do-updmap .if !empty(USE_TEX:Mtexhash) || \ !empty(USE_TEX:Mtexhash-bootstrap) || \ !empty(USE_TEX:Mfmtutil) || \ !empty(USE_TEX:Mupdmap) .PHONY: do-texhash do-texhash: . if !empty(USE_TEX:Mtexhash-bootstrap) @${ECHO_CMD} "@postexec ${LOCALBASE}/bin/mktexlsr " \ "${TEXHASHDIRS:S,^,%D/,}" >> ${TMPPLIST} @for D in ${TEXHASHDIRS}; do \ ${ECHO_CMD} "@rmtry $$D/ls-R"; \ ${ECHO_CMD} "@dir $$D"; \ done >> ${TMPPLIST} . else @${ECHO_CMD} "@postexec for D in ${TEXHASHDIRS:S,^,${PREFIX}/,}; do " \ "if [ -r \$$D/ls-R ]; then " \ "${LOCALBASE}/bin/mktexlsr \$$D; " \ "fi; done" >> ${TMPPLIST} @${ECHO_CMD} "@preunexec for D in ${TEXHASHDIRS:S,^,${PREFIX}/,}; do " \ "if [ -r \$$D/ls-R ]; then " \ "${LOCALBASE}/bin/mktexlsr \$$D; " \ "fi; done" >> ${TMPPLIST} . endif post-install-script: do-texhash .endif .if !empty(USE_TEX:Mfmtutil) .PHONY: do-fmtutil . for F in ${TEX_FORMATS} do-fmtutil: post-install-$F do-fmtutil-$F do-fmtutil-$F: ${TEST} -n '${TEX_FORMAT_${F:tu}}' ${PRINTF} "%s\t#$F\n" ${TEX_FORMAT_${F:tu}} \ > ${WRKDIR}/fmtutil.cnf ${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFVARDIR}/web2c \ ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c ${LN} -f -s ${LOCALBASE}/${TEXMFDISTDIR}/web2c/texmf.cnf \ ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c/texmf.cnf ${LOCALBASE}/bin/mktexlsr ${TEXHASHDIRS:S,^,${STAGEDIR}${PREFIX}/,} ${CAT} ${WRKDIR}/fmtutil.cnf | \ while read format dum; do \ ${SETENV} PATH=${STAGEDIR}${PREFIX}/bin:${PATH}:${LOCALBASE}/bin \ TEXMFDIST=${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}:${LOCALBASE}/${TEXMFDISTDIR} \ ${LOCALBASE}/bin/fmtutil-sys \ --byfmt $$format \ --fmtdir ${STAGEDIR}${PREFIX}/${TEXMFVARDIR}/web2c \ --cnffile ${WRKDIR}/fmtutil.cnf; \ done # XXX #cd ${STAGEDIR}${PREFIX}/${TEXMFVARDIR}/web2c && \ # ${FIND} . -name "*.log" | ${XARGS} \ # ${REINPLACE_CMD:S/.bak/ ""/} "s,${STAGEDIR},,g" ${RM} ${TEXHASHDIRS:S,^,${STAGEDIR}${PREFIX}/,:S,$,/ls-R,} \ ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c/texmf.cnf ${RMDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c || ${TRUE} ${RMDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR} || ${TRUE} _PLIST_FILES+= ${TEX_FORMAT_${F:tu}_FILES} _PLIST_DIRS+=${TEX_FORMAT_${F:tu}_DIRS} _PLIST_FILES+= ${TEX_FORMAT_${F:tu}_BIN} . endfor post-install-script: do-fmtutil PLIST_FILES= ${_PLIST_FILES:O:u} PLIST_DIRS= ${_PLIST_DIRS:O:u} ${TEXMFVARDIR}/web2c .endif .if !empty(USE_TEX:Mupdmap) .PHONY: do-updmap do-updmap: @${ECHO_CMD} "@postexec ${SETENV} PATH=${PATH}:${LOCALBASE}/bin " \ "TEXMFMAIN=${LOCALBASE}/${TEXMFDIR} " \ "${LOCALBASE}/bin/updmap-sys" >> ${TMPPLIST} @${ECHO_CMD} "@preunexec ${SETENV} PATH=${PATH}:${LOCALBASE}/bin " \ "TEXMFMAIN=${LOCALBASE}/${TEXMFDIR} " \ "${LOCALBASE}/bin/updmap-sys" >> ${TMPPLIST} post-install-script: do-updmap .endif TEX_FORMAT_AMSTEX?= \ "amstex pdftex - -translate-file=cp227.tcx *amstex.ini" TEX_FORMAT_AMSTEX_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/amstex.log \ ${TEXMFVARDIR}/web2c/pdftex/amstex.fmt TEX_FORMAT_AMSTEX_BIN= \ bin/amstex TEX_FORMAT_AMSTEX_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-amstex: ${LN} -fs pdftex ${STAGEDIR}${PREFIX}/bin/amstex TEX_FORMAT_CONTEXT?= \ "cont-en pdftex cont-usr.tex -8bit *cont-en.mkii" # XXX # "metafun mpost - metafun.mp" TEX_FORMAT_CONTEXT_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/cont-en.log \ ${TEXMFVARDIR}/web2c/pdftex/cont-en.fmt # bin/metafun TEX_FORMAT_CONTEXT_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-context: @${DO_NADA} # ${LN} -sf mpost ${PREFIX}/bin/metafun TEX_FORMAT_CSPLAIN?= \ "csplain pdftex - -etex -enc csplain-utf8.ini" \ "pdfcsplain pdftex - -etex -enc csplain-utf8.ini" TEX_FORMAT_CSPLAIN_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/csplain.log \ ${TEXMFVARDIR}/web2c/pdftex/csplain.fmt \ ${TEXMFVARDIR}/web2c/pdftex/pdfcsplain.log \ ${TEXMFVARDIR}/web2c/pdftex/pdfcsplain.fmt TEX_FORMAT_CSPLAIN_BIN= \ bin/csplain TEX_FORMAT_CSPLAIN_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-csplain: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/csplain TEX_FORMAT_EPLAIN?= \ "eplain pdftex language.dat -translate-file=cp227.tcx *eplain.ini" TEX_FORMAT_EPLAIN_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/eplain.log \ ${TEXMFVARDIR}/web2c/pdftex/eplain.fmt TEX_FORMAT_EPLAIN_BIN= \ bin/eplain TEX_FORMAT_EPLAIN_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-eplain: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/eplain TEX_FORMAT_JADETEX?= \ "jadetex pdftex language.dat *jadetex.ini" \ "pdfjadetex pdftex language.dat *pdfjadetex.ini" TEX_FORMAT_JADETEX_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/jadetex.log \ ${TEXMFVARDIR}/web2c/pdftex/jadetex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/pdfjadetex.log \ ${TEXMFVARDIR}/web2c/pdftex/pdfjadetex.fmt TEX_FORMAT_JADETEX_BIN= \ bin/jadetex \ bin/pdfjadetex TEX_FORMAT_JADETEX_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-jadetex: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/jadetex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfjadetex TEX_FORMAT_LATEX-BIN?= \ "latex pdftex language.dat -translate-file=cp227.tcx *latex.ini" \ "pdflatex pdftex language.dat -translate-file=cp227.tcx *pdflatex.ini" TEX_FORMAT_LATEX-BIN_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/latex.log \ ${TEXMFVARDIR}/web2c/pdftex/latex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/pdflatex.log \ ${TEXMFVARDIR}/web2c/pdftex/pdflatex.fmt TEX_FORMAT_LATEX-BIN_BIN= \ bin/latex \ bin/pdflatex TEX_FORMAT_LATEX-BIN_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-latex-bin: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/latex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdflatex TEX_FORMAT_LUATEX?= \ "luatex luatex language.def,language.dat.lua luatex.ini" \ "dviluatex luatex language.def,language.dat.lua dviluatex.ini" \ "dvilualatex luatex language.dat,language.dat.lua dvilualatex.ini" \ "lualatex luatex language.dat,language.dat.lua lualatex.ini" \ "luajittex luajittex language.def,language.dat.lua luatex.ini" \ "pdfcsplain luatex - -etex csplain.ini" \ "lollipop luatex - lollipop.ini" TEX_FORMAT_LUATEX_FILES= \ ${TEXMFVARDIR}/web2c/luatex/dviluatex.log \ ${TEXMFVARDIR}/web2c/luatex/dviluatex.fmt \ ${TEXMFVARDIR}/web2c/luatex/dvilualatex.log \ ${TEXMFVARDIR}/web2c/luatex/dvilualatex.fmt \ ${TEXMFVARDIR}/web2c/luatex/luatex.log \ ${TEXMFVARDIR}/web2c/luatex/luatex.fmt \ ${TEXMFVARDIR}/web2c/luatex/lualatex.log \ ${TEXMFVARDIR}/web2c/luatex/lualatex.fmt \ ${TEXMFVARDIR}/web2c/luatex/pdfcsplain.log \ ${TEXMFVARDIR}/web2c/luatex/pdfcsplain.fmt \ ${TEXMFVARDIR}/web2c/luajittex/luajittex.log \ ${TEXMFVARDIR}/web2c/luajittex/luajittex.fmt TEX_FORMAT_LUATEX_BIN= \ bin/dviluatex \ bin/dvilualatex \ bin/luajittex \ bin/lualatex \ bin/lualollipop \ bin/luatex \ bin/texlua \ bin/texluac \ bin/texluajit \ bin/texluajitc TEX_FORMAT_LUATEX_DIRS= \ ${TEXMFVARDIR}/web2c/luatex \ ${TEXMFVARDIR}/web2c/luajittex post-install-luatex: ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/dviluatex ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/dvilualatex ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/lualatex ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/lualollipop ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/texlua ${LN} -sf luatex ${STAGEDIR}${PREFIX}/bin/texluac ${LN} -sf luajittex ${STAGEDIR}${PREFIX}/bin/texluajit ${LN} -sf luajittex ${STAGEDIR}${PREFIX}/bin/texluajitc TEX_FORMAT_LOLLIPOP?= \ "lollipop pdftex - -translate-file=cp227.tcx *lollipop.ini" TEX_FORMAT_LOLLIPOP_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/lollipop.log \ ${TEXMFVARDIR}/web2c/pdftex/lollipop.fmt TEX_FORMAT_LOLLIPOP_BIN= \ bin/lollipop TEX_FORMAT_LOLLIPOP_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-lollipop-bin: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/lollipop TEX_FORMAT_METAFONT?= \ "mf mf-nowin - -translate-file=cp227.tcx mf.ini" TEX_FORMAT_METAFONT_FILES= \ ${TEXMFVARDIR}/web2c/metafont/mf.log \ ${TEXMFVARDIR}/web2c/metafont/mf.base TEX_FORMAT_METAFONT_DIRS= \ ${TEXMFVARDIR}/web2c/metafont post-install-metafont: @${DO_NADA} TEX_FORMAT_MEX?= \ "mex pdftex mexconf.tex -translate-file=cp227.tcx *mex.ini" \ "pdfmex pdftex mexconf.tex -translate-file=cp227.tcx *pdfmex.ini" \ "utf8mex pdftex mexconf.tex -enc *utf8mex.ini" TEX_FORMAT_MEX_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/mex.log \ ${TEXMFVARDIR}/web2c/pdftex/mex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/pdfmex.log \ ${TEXMFVARDIR}/web2c/pdftex/pdfmex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/utf8mex.log \ ${TEXMFVARDIR}/web2c/pdftex/utf8mex.fmt TEX_FORMAT_MEX_BIN= \ bin/mex \ bin/pdfmex \ bin/utf8mex TEX_FORMAT_MEX_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-mex: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/mex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfmex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/utf8mex TEX_FORMAT_MLTEX?= \ "mllatex pdftex language.dat -translate-file=cp227.tcx -mltex mllatex.ini" \ "mltex pdftex - -translate-file=cp227.tcx -mltex mltex.ini" TEX_FORMAT_MLTEX_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/mllatex.log \ ${TEXMFVARDIR}/web2c/pdftex/mllatex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/mltex.log \ ${TEXMFVARDIR}/web2c/pdftex/mltex.fmt TEX_FORMAT_MLTEX_BIN= \ bin/mltex \ bin/mllatex TEX_FORMAT_MLTEX_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-mltex: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/mltex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/mllatex TEX_FORMAT_MPTOPDF?= \ "mptopdf pdftex - -translate-file=cp227.tcx mptopdf.tex" TEX_FORMAT_MPTOPDF_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/mptopdf.log \ ${TEXMFVARDIR}/web2c/pdftex/mptopdf.fmt TEX_FORMAT_MPTOPDF_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-mptopdf: @${DO_NADA} TEX_FORMAT_PDFTEX?= \ "pdftex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini" \ "etex pdftex language.def -translate-file=cp227.tcx *etex.ini" \ "pdfetex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini" TEX_FORMAT_PDFTEX_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/pdftex.log \ ${TEXMFVARDIR}/web2c/pdftex/pdftex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/etex.log \ ${TEXMFVARDIR}/web2c/pdftex/etex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/pdfetex.log \ ${TEXMFVARDIR}/web2c/pdftex/pdfetex.fmt TEX_FORMAT_PDFTEX_BIN= \ bin/etex \ bin/pdfetex TEX_FORMAT_PDFTEX_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-pdftex: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfetex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/etex TEX_FORMAT_PTEX?= \ "ptex ptex - ptex.ini" \ "ptex eptex language.def *eptex.ini" \ "platex eptex language.dat *platex.ini" TEX_FORMAT_PTEX_FILES= \ ${TEXMFVARDIR}/web2c/ptex/ptex.log \ ${TEXMFVARDIR}/web2c/ptex/ptex.fmt \ ${TEXMFVARDIR}/web2c/eptex/ptex.log \ ${TEXMFVARDIR}/web2c/eptex/ptex.fmt \ ${TEXMFVARDIR}/web2c/eptex/platex.log \ ${TEXMFVARDIR}/web2c/eptex/platex.fmt TEX_FORMAT_PTEX_BIN= \ bin/eptex \ bin/pbibtex \ bin/pdvitype \ bin/ptex \ bin/platex \ bin/ppltotf \ bin/ptftopl \ bin/upbibtex \ bin/updvitype \ bin/uppltotf \ bin/uptftopl TEX_FORMAT_PTEX_DIRS= \ ${TEXMFVARDIR}/web2c/ptex \ ${TEXMFVARDIR}/web2c/eptex post-install-ptex: ${LN} -sf eptex ${STAGEDIR}${PREFIX}/bin/platex TEX_FORMAT_TEX?= \ "tex tex - tex.ini" TEX_FORMAT_TEX_FILES= \ ${TEXMFVARDIR}/web2c/tex/tex.log \ ${TEXMFVARDIR}/web2c/tex/tex.fmt TEX_FORMAT_TEX_DIRS= \ ${TEXMFVARDIR}/web2c/tex post-install-tex: @${DO_NADA} TEX_FORMAT_TEXSIS?= \ "texsis pdftex - -translate-file=cp227.tcx texsis.ini" TEX_FORMAT_TEXSIS_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/texsis.log \ ${TEXMFVARDIR}/web2c/pdftex/texsis.fmt TEX_FORMAT_TEXSIS_BIN= \ bin/texsis TEX_FORMAT_TEXSIS_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-texsis: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/texsis TEX_FORMAT_UPTEX?= \ "uptex uptex - uptex.ini" \ "euptex euptex language.def *euptex.ini" \ "uplatex euptex language.dat *uplatex.ini" TEX_FORMAT_UPTEX_FILES= \ ${TEXMFVARDIR}/web2c/euptex/euptex.log \ ${TEXMFVARDIR}/web2c/euptex/euptex.fmt \ ${TEXMFVARDIR}/web2c/uptex/uptex.log \ ${TEXMFVARDIR}/web2c/uptex/uptex.fmt \ ${TEXMFVARDIR}/web2c/euptex/uplatex.log \ ${TEXMFVARDIR}/web2c/euptex/uplatex.fmt TEX_FORMAT_UPTEX_BIN= \ bin/euptex \ bin/uptex \ bin/uplatex TEX_FORMAT_UPTEX_DIRS= \ ${TEXMFVARDIR}/web2c/euptex \ ${TEXMFVARDIR}/web2c/uptex post-install-uptex: ${LN} -sf euptex ${STAGEDIR}${PREFIX}/bin/uplatex TEX_FORMAT_XETEX?= \ "xetex xetex language.def -etex xetex.ini" \ "xelatex xetex language.dat -etex xelatex.ini" \ "pdfcsplain xetex - -etex csplain.ini" \ "cont-en xetex cont-usr.tex -8bit *cont-en.mkii" \ "lollipop xetex - -etex lollipop.ini" TEX_FORMAT_XETEX_FILES= \ ${TEXMFVARDIR}/web2c/xetex/lollipop.fmt \ ${TEXMFVARDIR}/web2c/xetex/lollipop.log \ ${TEXMFVARDIR}/web2c/xetex/cont-en.log \ ${TEXMFVARDIR}/web2c/xetex/cont-en.fmt \ ${TEXMFVARDIR}/web2c/xetex/pdfcsplain.log \ ${TEXMFVARDIR}/web2c/xetex/pdfcsplain.fmt \ ${TEXMFVARDIR}/web2c/xetex/xetex.log \ ${TEXMFVARDIR}/web2c/xetex/xetex.fmt \ ${TEXMFVARDIR}/web2c/xetex/xelatex.log \ ${TEXMFVARDIR}/web2c/xetex/xelatex.fmt TEX_FORMAT_XETEX_BIN= \ bin/xetex \ bin/xelatex \ bin/xelollipop TEX_FORMAT_XETEX_DIRS= \ ${TEXMFVARDIR}/web2c/xetex post-install-xetex: ${LN} -sf xetex ${STAGEDIR}${PREFIX}/bin/xelatex ${LN} -sf xetex ${STAGEDIR}${PREFIX}/bin/xelollipop TEX_FORMAT_XMLTEX?= \ "xmltex pdftex language.dat *xmltex.ini" \ "pdfxmltex pdftex language.dat *pdfxmltex.ini" TEX_FORMAT_XMLTEX_FILES= \ ${TEXMFVARDIR}/web2c/pdftex/xmltex.log \ ${TEXMFVARDIR}/web2c/pdftex/xmltex.fmt \ ${TEXMFVARDIR}/web2c/pdftex/pdfxmltex.log \ ${TEXMFVARDIR}/web2c/pdftex/pdfxmltex.fmt TEX_FORMAT_XMLTEX_BIN= \ bin/xmltex \ bin/pdfxmltex TEX_FORMAT_XMLTEX_DIRS= \ ${TEXMFVARDIR}/web2c/pdftex post-install-xmltex: ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/xmltex ${LN} -sf pdftex ${STAGEDIR}${PREFIX}/bin/pdfxmltex + +.endif # !defined(_INCLUDE_USES_TEX_MK) diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk index 1600ed176739..457497a17e8a 100644 --- a/Mk/bsd.port.mk +++ b/Mk/bsd.port.mk @@ -1,5406 +1,5402 @@ #-*- tab-width: 4; -*- # ex:ts=4 # # bsd.port.mk - 940820 Jordan K. Hubbard. # This file is in the public domain. # # Please view me with 4 column tabs! # This is the master file for the most common elements to all port # Makefile in the ports system. For a more general overview of its # use and importance, see the Porter's Handbook. # There are two different types of "maintainers" in the ports framework. # The maintainer alias of the bsd.port.mk file is listed below in the # FreeBSD_MAINTAINER entry. You should consult them if you have any # questions/suggestions regarding this file. # # DO NOT COMMIT CHANGES TO THIS FILE BY YOURSELF, EVEN IF YOU DID NOT GET # A RESPONSE FROM THE MAINTAINER(S) WITHIN A REASONABLE TIMEFRAME! ALL # UNAUTHORISED CHANGES WILL BE UNCONDITIONALLY REVERTED! FreeBSD_MAINTAINER= portmgr@FreeBSD.org # For each port, the MAINTAINER variable is what you should consult for # contact information on the person(s) to contact if you have questions/ # suggestions about that specific port. By default (if no MAINTAINER # is listed), a port is maintained by the subscribers of the ports@FreeBSD.org # mailing list, and any correspondence should be directed there. # # MAINTAINER - The e-mail address of the contact person for this port. # Default: ports@FreeBSD.org # # These are meta-variables that are automatically set to the system # you are running on. These are provided in case you need to take # different actions for different values. # # ARCH - The architecture of the target machine, such as would be # returned by "uname -p". # OPSYS - Portability clause. This is the operating system the # makefile is being used on. Automatically set to # "FreeBSD," "NetBSD," or "OpenBSD" as appropriate. # OSREL - The release version of the operating system as a text # string (e.g., "12.3"). # OSVERSION - The operating system version as a comparable integer; # the value of __FreeBSD_version (e.g., 1203000). # # This is the beginning of the list of all variables that need to be # defined in a port, listed in order that they should be included # to fit in with existing conventions. (Exception: MAINTAINER actually # should appear after EXTRACT_ONLY and before MASTER_SITE_BACKUP). # # These variables are used to identify your port. # # PORTNAME - Name of software. Mandatory. # PORTVERSION - Version of software. Mandatory when no DISTVERSION is given. # PORTREVISION - Version of port. Optional. Commonly used to indicate # that an update has happened that affects the port # framework itself, but not the distributed software # (e.g., local patches or Makefile changes). # PORTEPOCH - Optional. In certain odd cases, the PORTREVISION logic # can be fooled by ports that appear to go backwards # numerically (e.g. if port-0.3 is newer than port-1998). # In this case, incrementing PORTEPOCH forces the revision. # Default: 0 (no effect). # PKGNAME - Always defined as # ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PKGVERSION}. # Do not define this in your Makefile. # PKGNAMEPREFIX - Prefix to specify that port is language-specific, etc. # Optional. # PKGNAMESUFFIX - Suffix to specify compilation options or a version # designator (in case there are different versions of # one port as is the case for Tcl). # Optional. # PKGVERSION - Version of package. # Do not define this in your Makefile. # DISTVERSION - Vendor version of the distribution. # Default: ${PORTVERSION} # DISTNAME - Name of port or distribution used in generating # WRKSRC and DISTFILES below. # Default: # ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX} # CATEGORIES - A list of descriptive categories into which this port falls. # Mandatory. # # These variable describe how to fetch files required for building the port. # # DISTFILES - Name(s) of archive file(s) containing distribution. # Set this to an empty string if the port doesn't require it. # Default: ${DISTNAME}${EXTRACT_SUFX} # EXTRACT_SUFX - Suffix for archive names # You never have to set both DISTFILES and EXTRACT_SUFX. # Default: .tar.bz2 if USES=tar:bzip2 is set, .tar.xz if # USES=tar:xz USE_XZ is set, .tar.gz otherwise). # MASTER_SITES - Primary location(s) for distribution files if not found # locally. See bsd.sites.mk for common choices for # MASTER_SITES. # MASTER_SITE_SUBDIR # - Subdirectory of MASTER_SITES. Will sometimes need to be # set to ${PORTNAME} for (e.g.) MASTER_SITE_SOURCEFORGE. # Only guaranteed to work for choices of ${MASTER_SITES} # defined in bsd.sites.mk. # Default: not set. # PATCHFILES - Name(s) of additional files that contain distribution # patches. Make will look for them at PATCH_SITES (see below). # They will automatically be uncompressed before patching if # the names end with ".gz", ".bz2" or ".Z". # For each file you can optionally specify a strip # flag of patch(1) after a colon if it has a different # base directory, e.g. "file1 file2:-p1 file3". # You can also use a :group at the end for matching up to # dist file groups. See Porters Handbook for more information. # Syntax: PATCHFILES= patch[:-pX][:group] # Default: not set. # PATCH_SITES - Primary location(s) for distribution patch files # if not found locally. # DIST_SUBDIR - Suffix to ${DISTDIR}. If set, all ${DISTFILES} and # ${PATCHFILES} will be put in this subdirectory of # ${DISTDIR} (see below). Also they will be fetched in this # subdirectory from FreeBSD mirror sites. # ALLFILES - All of ${DISTFILES} and ${PATCHFILES}. # EXTRACT_ONLY - If set, a subset of ${DISTFILES} you want to # actually extract. # # (NOTE: by convention, the MAINTAINER entry (see above) should go here.) # # COMMENT - A short description of the package (less than 70 characters) # WWW - URL users can get more information on the provided package # was previously part of pkg-descr # # The following variables are typically set in /etc/make.conf to indicate # the user's preferred location to fetch files from. You should rarely # need to set these. # # MASTER_SITE_BACKUP # - Backup location(s) for distribution files and patch # files if not found locally and ${MASTER_SITES}/${PATCH_SITES}. # This should *not* be changed. # Default: # http://distcache.FreeBSD.org/ports-distfiles/${DIST_SUBDIR}/ # MASTER_SITE_OVERRIDE # - If set, prepend the MASTER_SITES setting with this value. # MASTER_SITE_FREEBSD # - If set, prepend ${MASTER_SITE_BACKUP} in MASTER_SITES. # # Set these if your port should not be built under certain circumstances. # These are string variables; you should set them to the reason why # they are necessary. # # RESTRICTED - Prevent the distribution of distfiles and packages to # the FTP sites or on CDROM (e.g. forbidden by license # considerations). # NO_CDROM - Packages and distfiles may not go on CDROM (e.g. must # not be re-sold) but can go on FTP sites. # NO_PACKAGE - Port should not be packaged for ftp sites or CDROMs, # but distfiles can be put on ftp sites and CDROMs. # FORBIDDEN - Package build should not be attempted because of # security vulnerabilities. # LEGAL_TEXT - Port has legal issues (e.g., special permission to distribute, lacks a license). # LEGAL_PACKAGE - Port has no legal issues but defines NO_PACKAGE # IGNORE - Package build should be skipped entirely (e.g. # because of serious unfixable problems in the build, # because it cannot be manually fetched, etc). Error # logs will not appear on pointyhat, so this should be # used sparingly. # IGNORE_${ARCH} - Port should be ignored on ${ARCH}. # IGNORE_${OPSYS} - Port should be ignored on ${OPSYS}. # IGNORE_${OPSYS}_${OSREL:R} - Port should be ignored on a single # release of ${OPSYS}, e.g IGNORE_FreeBSD_13 # would affect all point releases of FreeBSD 13. # IGNORE_${OPSYS}_${OSREL:R}_${ARCH} - Port should be ignored on a # single release of ${OPSYS} and specific architecture, # e.g IGNORE_FreeBSD_13_i386 would affect all point # releases of FreeBSD 13 in i386. # BROKEN - Port is believed to be broken. Package builds can # still be attempted using TRYBROKEN to test this # assumption. # BROKEN_${ARCH} - Port is believed to be broken on ${ARCH}. Package builds # can still be attempted using TRYBROKEN to # test this assumption. # BROKEN_${OPSYS} - Port is believed to be broken on ${OPSYS}. Package builds # can still be attempted using TRYBROKEN to # test this assumption. # BROKEN_${OPSYS}_${OSREL:R} - Port is believed to be broken on a single # release of ${OPSYS}, e.g BROKEN_FreeBSD_13 # would affect all point releases of FreeBSD 13 # unless TRYBROKEN is also set. # BROKEN_${OPSYS}_${OSREL:R}_${ARCH} - Port is believed to be broken on a # single release of ${OPSYS} and specific architecture, # e.g BROKEN_FreeBSD_13 would affect all point # releases of FreeBSD 13 in i386 # unless TRYBROKEN is also set. # DEPRECATED - Port is deprecated to install. Advisory only. # EXPIRATION_DATE # - If DEPRECATED is set, determines a date when # the port is planed to remove. The date format is # ISO 8601 (YYYY-MM-DD). # # DISABLE_VULNERABILITIES # - If set, do not check if the port is listed in the # vulnerabilities database. # # In addition to RESTRICTED or NO_CDROM, if only a subset of distfiles # or patchfiles have redistribution restrictions, set the following # to the list of such files. # # RESTRICTED_FILES # - List of files that cannot be redistributed. # Default: "${DISTFILES} ${PATCHFILES}" if RESTRICTED # or NO_CDROM is set, empty otherwise. # # These variables are booleans, so you don't need to set them to the reason. # # IS_INTERACTIVE # - Set this if your port needs to interact with the user # during any step in a package build. User can then decide # to skip this port by setting ${BATCH}, or compiling only # the interactive ports by setting ${INTERACTIVE}. # Default: not set. # USE_SUBMAKE - Set this if you want that each of the port's main 7 targets # (extract, patch, configure, build, stage, install and # package) to be executed in a separate make(1) process. # Useful when one of the stages needs to influence make(1) # variables of the later stages using ${WRKDIR}/Makefile.inc # generated on the fly. # Default: not set. # # NO_ARCH - Set this if port is architecture neutral. # # NO_ARCH_IGNORE - Set this to a list files to ignore when NO_ARCH is checked # in stage-qa (i.e. architecture specific files that are # 'bundled' with the port). # # Set these if your port only makes sense to certain architectures. # They are lists containing names for them (e.g., "amd64 i386"). # (Defaults: not set.) # # ONLY_FOR_ARCHS # - Only build ports if ${ARCH} matches one of these. # NOT_FOR_ARCHS - Only build ports if ${ARCH} doesn't match one of these. # ONLY_FOR_ARCHS_REASON # ONLY_FOR_ARCHS_REASON_${ARCH} # - Reason why it's only for ${ONLY_FOR_ARCHS}s # NOT_FOR_ARCHS_REASON # NOT_FOR_ARCHS_REASON_${ARCH} # - Reason why it's not for ${NOT_FOR_ARCHS}s # IA32_BINARY_PORT # - Set this instead of ONLY_FOR_ARCHS if the given port # fetches and installs compiled i386 binaries. # # Dependency checking. Use these if your port requires another port # not in the list below. (Default: empty.) # # EXTRACT_DEPENDS # - A list of "path:dir[:target]" tuples of other ports this # package depends on in the "extract" stage. "path" is # the name of a file if it starts with a slash (/), an # executable otherwise. make will test for the existence # (if it is a full pathname) or search for it in your # $PATH (if it is an executable) and go into "dir" to do # a "make all install" if it's not found. If the third # field ("target") exists, it will be used instead of # ${DEPENDS_TARGET}. The first field also supports a # package name with a version range, in the form package>=1.2 # if a particular version is desired. # PATCH_DEPENDS - A list of "path:dir[:target]" tuples of other ports this # package depends on in the "patch" stage. "path" is the # name of a file if it starts with a slash (/), an # executable otherwise. make will test for the existence # (if it is a full pathname) or search for it in your # $PATH (if it is an executable) and go into "dir" to do # a "make all install" if it's not found. If the third # field ("target") exists, it will be used instead of # ${DEPENDS_TARGET}. The first field also supports a # package name with a version range, in the form package>=1.2 # if a particular version is desired. # FETCH_DEPENDS - A list of "path:dir[:target]" tuples of other ports this # package depends in the "fetch" stage. "path" is the # name of a file if it starts with a slash (/), an # executable otherwise. make will test for the # existence (if it is a full pathname) or search for # it in your $PATH (if it is an executable) and go # into "dir" to do a "make all install" if it's not # found. If the third field ("target") exists, it will # be used instead of ${DEPENDS_TARGET}. The first field # also supports a package name with a version range, in # the form package>=1.2 if a particular version is desired. # BUILD_DEPENDS - A list of "path:dir[:target]" tuples of other ports this # package depends to build (between the "extract" and # "build" stages, inclusive). The test done to # determine the existence of the dependency is the # same as FETCH_DEPENDS. If the third field ("target") # exists, it will be used instead of ${DEPENDS_TARGET}. # RUN_DEPENDS - A list of "path:dir[:target]" tuples of other ports this # package depends to run. The test done to determine # the existence of the dependency is the same as # FETCH_DEPENDS. This will be checked during the # "install" stage and the name of the dependency will # be put into the package as well. If the third field # ("target") exists, it will be used instead of # ${DEPENDS_TARGET}. The first field also supports a # package name with a version range, in the form package>=1.2 # if a particular version is desired. # LIB_DEPENDS - A list of "lib:dir[:target]" tuples of other ports this # package depends on. "lib" is the name of a shared library. # TEST_DEPENDS - A list of "path:dir[:target]" tuples of other ports this # package depends on in the "test" stage. "path" is the # name of a file if it starts with a slash (/), an # executable otherwise. make will test for the existence # (if it is a full pathname) or search for it in your # $PATH (if it is an executable) and go into "dir" to do # a "make all install" if it's not found. If the third # field ("target") exists, it will be used instead of # ${DEPENDS_TARGET}. The first field also supports a # package name with a version range, in the form package>=1.2 # if a particular version is desired. # DEPENDS_TARGET # - The default target to execute when a port is calling a # dependency. # Default: install # # These variables control options about how a port gets built and/or # are shorthand notations for common sets of dependencies. # Use these if your port uses some of the common software packages. By # convention these should be set to 'yes', although they only need to be # defined. Defaults: not set, unless explicitly indicated below. # # Note: the distinction between the USE_* and WANT_* variables, and the # WITH_* and WITHOUT_* variables, are that the former are restricted to # usage inside the ports framework, and the latter are reserved for user- # settable options. (Setting USE_* in /etc/make.conf is always wrong). # # WITH_DEBUG_PORTS - A list of origins for which WITH_DEBUG will be set # # WITHOUT_SSP - Disable SSP. # # SSP_CFLAGS - Defaults to -fstack-protector. This value # is added to CFLAGS and the necessary flags # are added to LDFLAGS. Note that SSP_UNSAFE # can be used in Makefiles by port maintainers # if a port breaks with it (it should be # extremely rare). # PIE_CFLAGS - Defaults to -fPIE -fPIC. This value # is added to CFLAGS and the necessary flags # are added to LDFLAGS. Note that PIE_UNSAFE # can be used in Makefiles by port maintainers # if a port breaks with it. ## # USE_LOCALE - LANG and LC_ALL are set to the value of this variable in # CONFIGURE_ENV and MAKE_ENV. Example: USE_LOCALE=en_US.UTF-8 ## # USE_GCC - If set, this port requires this version of gcc, either in # the system or installed from a port. # USE_CSTD - Override the default C language standard (gnu89, gnu99) # USE_CXXSTD Override the default C++ language standard # USE_BINUTILS - Use binutils suite from port instead of the version in base. # CFLAGS_${ARCH} Append the cflags to CFLAGS only on the specified architecture # CXXFLAGS_${ARCH} # Append the cxxflags to CXXFLAGS only on the specified architecture ## # LDFLAGS_${ARCH} Append the ldflags to LDFLAGS only on the specified architecture ## # USE_OPENLDAP - If set, this port uses the OpenLDAP libraries. # Implies: WANT_OPENLDAP_VER?=24 # WANT_OPENLDAP_VER # - Legal values are: 24 # If set to an unknown value, the port is marked BROKEN. ## # USE_JAVA - If set, this port relies on the Java language. # Implies inclusion of bsd.java.mk. (Also see # that file for more information on USE_JAVA_*). # USE_OCAML - If set, this port relies on the OCaml language. # Implies inclusion of bsd.ocaml.mk. (Also see # that file for more information on USE_OCAML*). # USE_RUBY - If set, this port relies on the Ruby language. # Implies inclusion of bsd.ruby.mk. (Also see # that file for more information on USE_RUBY_*). ## # USE_GECKO - If set, this port uses the Gecko/Mozilla product. # See bsd.gecko.mk for more details. ## # USE_WX - If set, this port uses the WxWidgets library and related # components. See bsd.wx.mk for more details. ## # USE_LINUX_PREFIX # - Controls the action of PREFIX (see above). Only use this # if the port is a Linux infrastructure port (e.g. contains libs # or a sound server which supports the FreeBSD native one), # use the default prefix if it's a leaf port (e.g. a game or # program). # Implies NO_LICENSES_INSTALL=yes, NO_MTREE=yes, and causes # Linux ldconfig to be used when USE_LDCONFIG is defined. ## # USE_TEX - A list of the TeX dependencies the port has. # ## # USE_RC_SUBR - If set, the ports startup/shutdown script uses the common # routines found in /etc/rc.subr. # If this is set to a list of files, these files will be # automatically added to ${SUB_FILES}, some %%VAR%%'s will # automatically be expanded, they will be installed in # ${PREFIX}/etc/rc.d if ${PREFIX} is not /usr, otherwise they # will be installed in /etc/rc.d/ and added to the packing list. ## # Conflict checking. Use if your port cannot be installed at the same time as # another package. # # CONFLICTS - A list of package name patterns that the port conflicts # with, separated by blanks. The names may include shell # pattern meta-characters "*", "?", "[", "]", and "!". # Example: apache*-1.2* apache*-1.3.[012345] apache-*+ssl_* # # CONFLICTS_BUILD # - Check conflict prior to the build. # # CONFLICTS_INSTALL # - Check conflict prior to the installation stage. # # Various directory definitions and variables to control them. # You rarely need to redefine any of these except WRKSRC and NO_WRKSUBDIR. # # LOCALBASE - Where ports install things. # Default: /usr/local # LINUXBASE - Where Linux ports install things. # Default: /compat/linux # PREFIX - Where *this* port installs its files. # Default: ${LINUXBASE} if USE_LINUX_PREFIX is set, # otherwise ${LOCALBASE} # # IGNORE_PATH_CHECKS # - There are some sanity checks against PREFIX. # You can disable these checks with defining # this variable, but this is not recommended! # Only do this if you really know what you are # doing. These sanity checks are the following: # - PREFIX has to be an absolute path. # - PREFIX can't have a trailing slash. # # BUNDLE_LIBS Teach pkg(8) to not automatically add all shared libraries # installed by a port as shared libraries "provided" for # other packages (i.e., do not expose them in the solver). # This has to be used for ports that bundle third party # libraries for internal usage. # MASTERDIR - Where the port finds patches, package files, etc. Define # this is you have two or more ports that share most of the # files. # Default: ${.CURDIR} # PORTSDIR - The root of the ports tree. # Default: /usr/ports # DISTDIR - Where to search for and store copies of original sources # Default: ${PORTSDIR}/distfiles # PACKAGES - A top level directory where all packages go (rather than # going locally to each port). # Default: ${PORTSDIR}/packages # WRKDIRPREFIX - The place to root the temporary working directory # hierarchy. This path must *not* end in '/'. # Default: none # WRKDIR - A temporary working directory that gets *clobbered* on clean # Default: ${WRKDIRPREFIX}${.CURDIR}/work # WRKSRC - A subdirectory of ${WRKDIR} where the distribution actually # unpacks to. # Default: ${WRKDIR}/${DISTNAME} # WRKSRC_SUBDIR - A subdirectory of ${WRKSRC} where the distribution actually # builds in. # Default: not set # NO_WRKSUBDIR - Assume port unpacks without a subdirectory, and extract it in # ${WRKSRC} instead of ${WRKDIR}. # PATCHDIR - A directory containing any additional patches you made # to port this software to FreeBSD. # Default: ${MASTERDIR}/files # SCRIPTDIR - A directory containing any auxiliary scripts # Default: ${MASTERDIR}/scripts # FILESDIR - A directory containing any miscellaneous additional files. # Default: ${MASTERDIR}/files # PKGDIR - A directory containing any package creation files. # Default: ${MASTERDIR} # SRC_BASE - The root of the src tree. (Some ports require this to get # kernel sources). Default: /usr/src # UID_FILES - A list of files containing information about registered UIDs. # Note that files have decreasing priority. # GID_FILES - A list of files containing information about registered GIDs. # Note that files have decreasing priority. # # Variables that serve as convenient "aliases" for your *-install targets. # Use these like: "${INSTALL_PROGRAM} ${WRKSRC}/prog ${PREFIX}/bin". # # INSTALL_PROGRAM # - A command to install binary executables. (By # default, also strips them, unless ${STRIP} is # overridden to be the empty string). # INSTALL_KLD - As INSTALL_PROGRAM, but without the STRIP. # INSTALL_LIB - As INSTALL_DATA, but also strips the file. # INSTALL_SCRIPT # - A command to install executable scripts. # INSTALL_DATA - A command to install sharable data and static libs. # INSTALL_MAN - A command to install manpages and documentation. # COPYTREE_BIN # COPYTREE_SHARE # - Similiar to INSTALL_PROGRAM and INSTALL_DATA commands but # working on whole trees of directories, takes 3 arguments, # last one is find(1) arguments and optional. # Example use: # cd ${WRKSRC}/doc && ${COPYTREE_SHARE} . ${DOCSDIR} "! -name *\.bak" # # Installs all directories and files from ${WRKSRC}/doc # to ${DOCSDIR} except sed(1) backup files. # # MANPREFIX - The directory prefix for manual pages. # Default: ${PREFIX} # MANPREFIX # - If manual pages of some sections install in different # locations than others, use these. # Default: ${MANPREFIX} # # Set the following to specify all .info files your port installs. # # INFO - A list of .info files (omitting the trailing ".info"); # only one entry per document! These files are listed in # the path relative to ${INFO_PATH}. # INFO_PATH - Path, where all .info files will be installed by your # port, relative to ${PREFIX} # # Set the following to specify all documentation your port installs into # ${DOCSDIR} # # PORTDOCS - A list of files and directories relative to DOCSDIR. # Shell glob patterns can be used, directories include # the entire subtree of contained files and directories. # Should not be set when no documentation files are # installed. # Useful for dynamically generated documentation. # # Set the following to specify all documentation your port installs into # ${EXAMPLESDIR} # # PORTEXAMPLES - A list of files and directories relative to EXAMPLESDIR. # Shell glob patterns can be used, directories include # the entire subtree of contained files and directories. # Should not be set when no examples files are # installed. # Useful for dynamically generated examples. # # Set the following to specify all files and directories your port installs into # ${DATADIR} # # PORTDATA - A list of files and directories relative to DATADIR. # Shell glob patterns can be used, directories include # the entire subtree of contained files and directories. # Should not be set when no data files are # installed. # Useful for dynamically generated data files. # # Default targets and their behaviors: # # fetch - Retrieves missing ${DISTFILES} and ${PATCHFILES} for this # port. # fetch-list - Show list of commands to retrieve missing ${DISTFILES} and # ${PATCHFILES} for this port. # fetch-recursive # - Retrieves missing ${DISTFILES} and ${PATCHFILES} for this # port and dependencies. # fetch-recursive-list # - Show list of commands to retrieve missing ${DISTFILES} and # ${PATCHFILES} for this port and dependencies. # fetch-required # - Retrieves missing ${DISTFILES} and ${PATCHFILES} for this # port and dependencies. # fetch-required-list # - Show list of commands to retrieve missing ${DISTFILES} and # ${PATCHFILES} for this port and dependencies. # fetch-url-list # - Show list of URLS to retrieve missing ${DISTFILES} and # ${PATCHFILES} for this port. # fetch-urlall-list # - Show list of URLS to retrieve ${DISTFILES} and # ${PATCHFILES} for this port. # # all-depends-list # - Show all directories which are dependencies # for this port. # build-depends-list # - Show all directories which are build-dependencies # for this port. # package-depends-list # - Show all directories which are package-dependencies # for this port. This is based upon the dependency # tree as recorded in the Makefiles of the ports # collection, not as recorded in the currently # installed ports. # actual-package-depends # - Like package-depends-list but with the difference # that the dependencies of the currently installed # ports are used instead of the dependencies as # recorded in the ports collection. # run-depends-list # - Show all directories which are run-dependencies # for this port. # test-depends-list # - Show all directories which are test-dependencies # for this port. # install-missing-packages # - Install missing dependencies from package and mark # them as automatically installed. # extract - Unpacks ${DISTFILES} into ${WRKDIR}. # patch - Apply any provided patches to the source. # configure - Runs either GNU configure, one or more local configure # scripts or nothing, depending on what's available. # build - Actually compile the sources. # install - Install the results of a build. # reinstall - Install the results of a build, deinstalling any previous # installation if needed. # deinstall - Remove the installation. # deinstall-all - Remove all installations with the same PKGORIGIN. # test - Run tests for the port. # package - Create a package from an _installed_ port. # package-recursive # - Create a package for a port and _all_ of its dependencies. # describe - Try to generate a one-line description for each port for # use in INDEX files and the like. # check-plist - Checks for files missing from the plist, and files in the plist # that are not installed by the port. # check-sanity - Perform some basic checks of the port layout. # checkpatch - Do a "patch -C" instead of a "patch". Note that it may # give incorrect results if multiple patches deal with # the same file. # checksum - Use distinfo to ensure that your distfiles are valid. # checksum-recursive # - Run checksum in this port and all dependencies. # makesum - Generate distinfo (only do this for your own ports!). # clean - Remove ${WRKDIR} and other temporary files used for building. # clean-depends - Do a "make clean" for all dependencies. # config - Configure options for this port (using ${DIALOG}). # Automatically run prior to extract, patch, configure, build, # install, and package. # config-recursive # - Configure options for this port for a port and all its # dependencies. # showconfig - Display options config for this port. # showconfig-recursive # - Display options config for this port and all its # dependencies. # rmconfig - Remove the options config for this port. # rmconfig-recursive # - Remove the options config for this port and all its # dependencies. # # Default sequence for "all" is: # # check-sanity fetch checksum extract patch configure build # # Please read the comments in the targets section below; you # should be able to use the pre-* or post-* targets/scripts # (which are available for every stage except checksum) or # override the do-* targets to do pretty much anything you want. # # The TARGET_ORDER_OVERRIDE variable can be set to multiple : # to change the ordering of targets, have a look at the _SEQ variables at the # end of this file for the default order and priorities. # # NEVER override the "regular" targets unless you want to open # a major can of worms. # # Set these variables if your port doesn't need some of the steps. # Note that there are no NO_PATCH or NO_CONFIGURE variables because # those steps are empty by default. NO_EXTRACT is not allowed anymore # since we need to at least create ${WRKDIR}. Also, NO_CHECKSUM is a user # variable and is not to be set in a port's Makefile. See above for NO_PACKAGE. # # NO_BUILD - Use a dummy (do-nothing) build target. # NO_INSTALL - Use a dummy (do-nothing) install target. # NO_TEST - Use a dummy (do-nothing) test target. # # Here are some variables used in various stages. # # For options see bsd.options.mk # # For fetch: # # FETCH_BINARY - Path to ftp/http fetch command if not in $PATH. # Default: "/usr/bin/fetch" # FETCH_ARGS - Arguments to ftp/http fetch command. # Default: "-Fpr" # FETCH_CMD - ftp/http fetch command. # Default: ${FETCH_BINARY} ${FETCH_ARGS} # FETCH_BEFORE_ARGS # - Arguments to ${FETCH_CMD} before filename. # Default: none # FETCH_AFTER_ARGS # - Arguments to ${FETCH_CMD} following filename. # Default: none # FETCH_ENV - Environment to pass to ${FETCH_CMD}. # Default: none # FETCH_REGET - Times to retry fetching of files on checksum errors. # Default: 1 # CLEAN_FETCH_ENV # - Disable package dependency in fetch target for mass # fetching. User settable. # # For extract: # # EXTRACT_CMD - Command for extracting archive # Default: ${TAR} # EXTRACT_BEFORE_ARGS # - Arguments to ${EXTRACT_CMD} before filename. # Default: "-xf" # EXTRACT_AFTER_ARGS # - Arguments to ${EXTRACT_CMD} following filename. # Default: "--no-same-owner --no-same-permissions" # For patch: # # EXTRA_PATCHES - Define this variable if you have patches not in # ${PATCHDIR}. This usually happens when you need to # do some pre-processing before some distribution # patches can be applied. In that case, fetch them as # extra distfiles, put the processed results in # ${WRKDIR}, then point EXTRA_PATCHES to them. # The patches specified by this variable will be # applied after the normal distribution patches but # before those in ${PATCHDIR}. This can also contain # directories, all the files named patch-* in those directories # will be applied. # EXTRA_PATCH_TREE - where to find extra 'out-of-tree' patches # Points to a directory hierarchy with the same layout # as the ports tree, where local patches can be found. # This allows a third party to keep their patches in # some other source control system if needed. # PATCH_WRKSRC - Directory to apply patches in. # Default: ${WRKSRC} # # For configure: # # HAS_CONFIGURE - If set, this port has its own configure script. The # configure stage will not do anything if this is not set. # GNU_CONFIGURE - If set, you are using GNU configure (optional). Implies # HAS_CONFIGURE. # CONFIGURE_OUTSOURCE - If set, this port builds in an empty ${CONFIGURE_WRKSRC} # not being under ${WRKSRC}. # CONFIGURE_WRKSRC # - Directory to run configure in. # Default: ${WRKSRC} # CONFIGURE_SCRIPT # - Name of configure script, relative to ${CONFIGURE_WRKSRC}. # Default: "Makefile.PL" if USES=perl5 and USE_PERL5=configure # are set, "configure" otherwise. # CONFIGURE_TARGET # - The name of target to call when GNU_CONFIGURE is # defined. # Default: ${ARCH}-portbld-${OPSYS:tl}${OSREL} # GNU_CONFIGURE_PREFIX # - The directory passed as prefix to the configure script if # GNU_CONFIGURE is set. # Default: ${PREFIX} # CONFIGURE_ARGS # - Pass these args to configure if ${HAS_CONFIGURE} is set. # Default: "--prefix=${GNU_CONFIGURE_PREFIX} # --infodir=${PREFIX}/${INFO_PATH} --localstatedir=/var # --mandir=${MANPREFIX}/man --build=${CONFIGURE_TARGET}" if # GNU_CONFIGURE is set, "CC=${CC} CFLAGS=${CFLAGS} # PREFIX=${PREFIX} INSTALLPRIVLIB=${PREFIX}/lib # INSTALLARCHLIB=${PREFIX}/lib" if USES=perl5 and # USE_PERL5=configure are set, empty otherwise. # CONFIGURE_ENV - Pass these env (shell-like) to configure if # ${HAS_CONFIGURE} is set. # CONFIGURE_LOG - The name of configure log file. It will be printed to # the screen if configure fails. # Default: config.log # CONFIGURE_FAIL_MESSAGE # - A message displayed to users when configure # fails (note: this assumes the do-configure # target has not been overwritten). This message # will be passed through /usr/bin/fmt before # being shown to the user. # # WITHOUT_FBSD10_FIX Disable FreeBSD 10.0 autotools workaround. # # For build and install: # # MAKEFILE - Name of the makefile. # Default: Makefile # ALL_TARGET - Default target for sub-make in build stage. # Default: all # BUILD_WRKSRC - Directory to do build in (default: ${WRKSRC}). # MAKE_ENV - Additional environment vars passed to sub-make in build # and install stages. # Default: see below # MAKE_ARGS - Any extra arguments to sub-make in build and install stages. # Default: none ## # MAKE_JOBS_UNSAFE # - Disallow multiple jobs even when user set a global override. # To be used with known bad ports. # DISABLE_MAKE_JOBS # - Set to disable the multiple jobs feature. User settable. # MAKE_JOBS_NUMBER # - Override the number of make jobs to be used. User settable. # MAKE_JOBS_NUMBER_LIMIT # - Set a limit for maximum number of make jobs allowed to be # used. ## ccache # # WITH_CCACHE_BUILD # - Enable CCACHE support (devel/ccache). User settable. # CCACHE_DIR # - Which directory to use for ccache (default: $HOME/.ccache) # NO_CCACHE # - Disable CCACHE support for example for certain ports if # CCACHE is enabled. User settable. # # For test: # # TEST_TARGET - Target for sub-make in test stage. If not defined, # no default test target is provided. # Default: (none) # TEST_WRKSRC - Directory to do test in (default: ${WRKSRC}). # TEST_ENV - Additional environment vars passed to sub-make in test # stage # Default: ${MAKE_ENV} # TEST_ARGS - Any extra arguments to sub-make in test stage # Default: ${MAKE_ARGS} # # For install: # # INSTALL_TARGET # - Default target for sub-make in install stage. # Default: install # INSTALL_WRKSRC # - Directory to install from # Default: ${WRKSRC} # NO_MTREE - If set, will not invoke mtree from bsd.port.mk from # the "install" target. # MTREE_FILE - The name of the mtree file. # Default: ${PORTSDIR}/Templates/BSD.local.dist or # /etc/mtree/BSD.usr.dist if ${PREFIX} == "/usr". # PLIST_DIRS - Directories to be added to packing list # PLIST_FILES - Files and symbolic links to be added to packing list # # PLIST - Name of the `packing list' file. # Change this to ${WRKDIR}/PLIST or something if you # need to write to it. (It is not a good idea for a port # to write to any file outside ${WRKDIR} during a normal # build.) # Default: ${PKGDIR}/pkg-plist # TMPPLIST - Name of the `packing list' file after processing # Default: ${WRKDIR}/.PLIST.mktmp # PLIST_SUB - List of "variable=value" pair for substitution in ${PLIST} # Default: see below # # SUB_FILES - Files that should be passed through sed(1) and redirected to # ${WRKDIR}. # - For each file specified in SUB_FILES, there must be a # corresponding file in ${FILESDIR} whose suffix is ".in". For # instance, if the Makefile specifies "SUB_FILES= pkg-message" # then there must be a file called pkg-message.in in # ${FILESDIR}. # - The substitution process is the same as PLIST_FILES, as # described below except that any line beginning with @comment # is deleted. # SUB_LIST - List of "variable=value" pair for substitution in ${SUB_FILES} # Some pairs are added by default: eg. PREFIX=${PREFIX} # # USE_LDCONFIG - If set to "yes", this adds ${PREFIX}/lib to the list of # directories to be searched for shared libraries. # Otherwise, this is a list of directories to be added to that # list. The directory names are written to # ${LOCALBASE}/libdata/ldconfig/${PKGBASE} which is then # used by the ldconfig startup script. # This mechanism replaces ldconfig scripts installed by some # ports, often under such names as 000.${UNQUENAME}.sh. # If USE_LINUX_PREFIX is defined, the Linux version of # ldconfig will be used instead of the native FreeBSD # version, and the directory list given will be ignored. # USE_LDCONFIG32 # - Same as USE_LDCONFIG but the target file is # ${LOCALBASE}/libdata/ldconfig32/${PKGBASE} instead. # Note: that should only be used on 64-bit architectures. # # DOCSDIR - Name of the directory to install the packages docs in. # Default: ${PREFIX}/share/doc/${PORTNAME} # DOCSDIR_REL - The DOCSDIR relative to ${PREFIX} # EXAMPLESDIR - Name of the directory to install the packages examples in. # Default: ${PREFIX}/share/examples/${PORTNAME} # EXAMPLESDIR_REL # - The EXAMPLESDIR relative to ${PREFIX} # DATADIR - Name of the directory to install the packages shared data in. # Default: ${PREFIX}/share/${PORTNAME} # DATADIR_REL - The DATADIR relative to ${PREFIX} # # WWWDIR - Name of the directory to install the packages www data in. # Default: ${PREFIX}/www/${PORTNAME} # WWWDIR_REL - The WWWDIR relative to ${PREFIX} # # USERS - List of users to create at install time. Each login must # have a corresponding entry in ${UID_FILES}. # GROUPS - List of groups to create at install time. Each group must # have a corresponding entry in ${GID_FILES}. # # DESKTOPDIR - Name of the directory to install ${DESKTOP_ENTRIES} in. # Default: ${PREFIX}/share/applications # DESKTOP_ENTRIES # - List of desktop entry files to generate and install in # ${DESKTOPDIR}. The format is # "Name" "Comment" "Icon" "Exec" "Categories" StartupNotify # Rules: # * Only add desktop entries for applications which do not # require a terminal (ie. X applications). # * If the upstream distribution already installs .desktop # files, you do not need to use this. # * If you require a more elaborate .desktop file than this # variable permits, write it yourself and install it # in ${DESKTOPDIR}. # Notes: # * Comment, Icon and StartupNotify may be empty # strings (""). Categories may be an empty string in some # cases (see below). The other fields are mandatory. # * If Comment is an empty string, port ${COMMENT} will be # used. # * If set, Icon must be either absolute path (usually # ${PREFIX}/share/pixmaps/${PORTNAME}.png) or icon name # without extension if installed icons follow Icon Theme # Specification. # * If Categories is an empty string, bsd.port.mk will try # to deduce a default value using the CATEGORIES variable. # If the deduction fails, you will have to set Categories # manually. You should check the generated value using # "make desktop-categories", and override it if necessary. # * Exec will also be used to name the .desktop file. # * StartupNotify may be true, false or empty (see Desktop # Entry Specification for details). # * The files will be automatically added to ${PLIST}. # Example: # "X Window Information" \ # "Get information about X windows" \ # "${PREFIX}/share/pixmaps/wininfo.png" \ # "${PREFIX}/bin/wininfo" \ # "System;" \ # "" # See http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html # for an explanation of the fields. If you need to create more # than one file, just chain them into a single variable. # # Note that the install target will automatically add manpages (see # above) and also substitute special sequences of characters (delimited # by "%%") as defined in PLIST_SUB to generate ${TMPPLIST}. For # instance, "OSREL=${OSREL}" in PLIST_SUB causes all occurrences of # "%%OSREL%%" in ${PLIST} to be substituted by the value of OSREL. # ${TMPPLIST} is generated before the do-install stage. If you are # generating the packing list on-the-fly, make sure it's generated before # do-install is called! # # This is used in all stages: # # SCRIPTS_ENV - Additional environment vars passed to scripts in # ${SCRIPTDIR} executed by bsd.port.mk. # Default: see below # # Finally, variables to change if you want a special behavior. These # are for debugging purposes. Don't set them in your Makefile. # # ECHO_MSG - Used to print all the '===>' style prompts - override this # to turn them off. # Default: ${ECHO_CMD} # PATCH_DEBUG - If set, print out more information about the patches as # it attempts to apply them. # PKG_DBDIR - Where package installation is recorded; this directory # must not contain anything else. # Default: /var/db/pkg # PORT_DBDIR - Where port configuration options are recorded. # Default: /var/db/ports # NO_PKG_REGISTER # - Don't register a port installation as a package. # FORCE_PKG_REGISTER # - If set, it will overwrite any existing package # registration information in ${PKG_DBDIR}/${PKGNAME}. # NO_DEPENDS - Don't verify build of dependencies. # STRICT_DEPENDS # - Verify dependencies but consider missing dependencies as # fatal. # CHECKSUM_ALGORITHMS # - Different checksum algorithms to check for verifying the # integrity of the distfiles. The absence of the algorithm # in distinfo doesn't make it fail. # Default: sha256 # NO_CHECKSUM - Don't verify the checksum. Typically used when # when you noticed the distfile you just fetched has # a different checksum and you intend to verify if # the port still works with it. # USE_PACKAGE_DEPENDS # - Try to install dependencies from existing packages instead # of building the port from scratch. Fallback on source # if an existing package is not present. # USE_PACKAGE_DEPENDS_ONLY # - Like USE_PACKAGE_DEPENDS, but do not fallback on source. # INSTALL_AS_USER # - Define this to install as the current user, intended # for systems where you have no root access. # DISABLE_SIZE - Do not check the size of a distfile even if the SIZE field # has been specified in distinfo. This is useful # when using an alternate FETCH_CMD. # PKG_CREATE_VERBOSE # - If set, pass the -v option to pkg create which # ensures periodic output during packaging and # will help prevent timeouts by build monitors # PKG_COMPRESSION_FORMAT # - the compression format used when creating a package, see # pkg-create(8) for valid formats # PKG_COMPRESSION_LEVEL # - the compression level to use when creating a package, see # pkg-create(8) for valid values # # End of the list of all variables that need to be defined in a port. # Most port authors should not need to understand anything after this point. # LANG= C LC_ALL= C .export LANG LC_ALL # These need to be absolute since we don't know how deep in the ports # tree we are and thus can't go relative. They can, of course, be overridden # by individual Makefiles or local system make configuration. _LIST_OF_WITH_FEATURES= debug lto ssp pie relro bind_now _DEFAULT_WITH_FEATURES= ssp PORTSDIR?= /usr/ports LOCALBASE?= /usr/local LINUXBASE?= /compat/linux DISTDIR?= ${PORTSDIR}/distfiles _DISTDIR?= ${DISTDIR}/${DIST_SUBDIR} INDEXDIR?= ${PORTSDIR} SRC_BASE?= /usr/src USESDIR?= ${PORTSDIR}/Mk/Uses SCRIPTSDIR?= ${PORTSDIR}/Mk/Scripts LIB_DIRS?= /lib /usr/lib ${LOCALBASE}/lib STAGEDIR?= ${WRKDIR}/stage NOTPHONY?= FLAVORS?= FLAVOR?= OVERLAYS?= REWARNFILE= ${WRKDIR}/reinplace_warnings.txt # Disallow forced FLAVOR as make argument since we cannot change it to the # proper default. .if empty(FLAVOR) && !empty(.MAKEOVERRIDES:MFLAVOR) .error FLAVOR may not be passed empty as a make argument. .endif # Store env FLAVOR for later .if !defined(_FLAVOR) _FLAVOR:= ${FLAVOR} .endif .if !defined(PORTS_FEATURES) && empty(${PORTS_FEATURES:MFLAVORS}) PORTS_FEATURES+= FLAVORS .endif MINIMAL_PKG_VERSION= 1.17.2 _PORTS_DIRECTORIES+= ${PKG_DBDIR} ${PREFIX} ${WRKDIR} ${EXTRACT_WRKDIR} \ ${STAGEDIR}${PREFIX} ${WRKDIR}/pkg ${BINARY_LINKDIR} \ ${PKGCONFIG_LINKDIR} # Ensure .CURDIR contains an absolute path without a trailing slash. Failed # builds can occur when PORTSDIR is a symbolic link, or with something like # make -C /usr/ports/category/port/. .CURDIR:= ${.CURDIR:tA} # make sure bmake treats -V as expected .MAKE.EXPAND_VARIABLES= yes .include "${PORTSDIR}/Mk/bsd.commands.mk" # Do not leak flavors to childs make .MAKEOVERRIDES:= ${.MAKEOVERRIDES:NFLAVOR} .if defined(CROSS_TOOLCHAIN) . if !defined(CROSS_SYSROOT) IGNORE= CROSS_SYSROOT should be defined . endif .include "${LOCALBASE}/share/toolchains/${CROSS_TOOLCHAIN}.mk" # Do not define CPP on purpose . if !defined(HOSTCC) HOSTCC:= ${CC} HOSTCXX:= ${CXX} . endif . if !defined(CC_FOR_BUILD) CC_FOR_BUILD:= ${HOSTCC} CXX_FOR_BUILD:= ${HOSTCXX} . endif CONFIGURE_ENV+= HOSTCC="${HOSTCC}" HOSTCXX="${HOSTCXX}" CC_FOR_BUILD="${CC_FOR_BUILD}" CXX_FOR_BUILD="${CXX_FOR_BUILD}" CC= ${XCC} --sysroot=${CROSS_SYSROOT} CXX= ${XCXX} --sysroot=${CROSS_SYSROOT} CPP= ${XCPP} --sysroot=${CROSS_SYSROOT} . for _tool in AS AR LD NM OBJCOPY RANLIB SIZE STRINGS ${_tool}= ${CROSS_BINUTILS_PREFIX}${_tool:tl} . endfor LD+= --sysroot=${CROSS_SYSROOT} STRIP_CMD= ${CROSS_BINUTILS_PREFIX}strip # only bmake support the below STRIPBIN= ${STRIP_CMD} .export.env STRIPBIN .endif # # DESTDIR section to start a chrooted process if invoked with DESTDIR set # .if defined(DESTDIR) && !empty(DESTDIR) && !defined(CHROOTED) && \ !defined(BEFOREPORTMK) && !defined(INOPTIONSMK) .include "${PORTSDIR}/Mk/bsd.destdir.mk" .else . if !target(makepatch) makepatch: @${SETENV} WRKDIR=${WRKDIR} PATCHDIR=${PATCHDIR} \ PATCH_WRKSRC=${PATCH_WRKSRC} \ STRIP_COMPONENTS="${PATCH_STRIP:S/-p//}" \ ${SH} ${SCRIPTSDIR}/smart_makepatch.sh . endif # Start of options section . if defined(INOPTIONSMK) || ( !defined(USEOPTIONSMK) && !defined(AFTERPORTMK) ) # Get the default maintainer MAINTAINER?= ports@FreeBSD.org # Get the architecture . if !defined(ARCH) ARCH!= ${UNAME} -p . endif HOSTARCH:= ${ARCH} . if defined(CROSS_TOOLCHAIN) ARCH= ${CROSS_TOOLCHAIN:C,-.*$,,} . endif _EXPORTED_VARS+= ARCH . if ${ARCH} == powerpc64 . if !defined(PPC_ABI) PPC_ABI!= ${CC} -dM -E - < /dev/null | ${AWK} '/_CALL_ELF/{print "ELFv"$$3}' . if ${PPC_ABI} != ELFv2 PPC_ABI= ELFv1 . endif . endif _EXPORTED_VARS+= PPC_ABI . endif # Get operating system versions for a cross build . if defined(CROSS_SYSROOT) . if !exists(${CROSS_SYSROOT}/usr/include/sys/param.h) .error CROSS_SYSROOT does not include /usr/include/sys/param.h. . endif OSVERSION!= ${AWK} '/^\#define[[:blank:]]__FreeBSD_version/ {print $$3}' < ${CROSS_SYSROOT}/usr/include/sys/param.h _OSRELEASE!= ${AWK} -v version=${OSVERSION} 'END { printf("%d.%d-CROSS", version / 100000, version / 1000 % 100) }' < /dev/null . endif # Get the operating system type . if !defined(OPSYS) OPSYS!= ${UNAME} -s . endif _EXPORTED_VARS+= OPSYS . if !defined(_OSRELEASE) _OSRELEASE!= ${UNAME} -r . endif _EXPORTED_VARS+= _OSRELEASE # Get the operating system revision OSREL?= ${_OSRELEASE:C/-.*//} _EXPORTED_VARS+= OSREL # Get __FreeBSD_version . if !defined(OSVERSION) . if exists(/usr/include/sys/param.h) OSVERSION!= ${AWK} '/^\#define[[:blank:]]__FreeBSD_version/ {print $$3}' < /usr/include/sys/param.h . elif exists(${SRC_BASE}/sys/sys/param.h) OSVERSION!= ${AWK} '/^\#define[[:blank:]]__FreeBSD_version/ {print $$3}' < ${SRC_BASE}/sys/sys/param.h . else .error Unable to determine OS version. Either define OSVERSION, install /usr/include/sys/param.h or define SRC_BASE. . endif . endif _EXPORTED_VARS+= OSVERSION . if ${OPSYS} == FreeBSD && (${OSVERSION} < 1203000 || (${OSVERSION} >= 1300000 && ${OSVERSION} < 1301000)) _UNSUPPORTED_SYSTEM_MESSAGE= Ports Collection support for your ${OPSYS} version has ended, and no ports\ are guaranteed to build on this system. Please upgrade to a supported release. . if defined(ALLOW_UNSUPPORTED_SYSTEM) WARNING+= "${_UNSUPPORTED_SYSTEM_MESSAGE}" . else show-unsupported-system-error: @${ECHO_MSG} "/!\\ ERROR: /!\\" @${ECHO_MSG} @${ECHO_MSG} "${_UNSUPPORTED_SYSTEM_MESSAGE}" | ${FMT_80} @${ECHO_MSG} @${ECHO_MSG} "No support will be provided if you silence this message by defining ALLOW_UNSUPPORTED_SYSTEM." | ${FMT_80} @${ECHO_MSG} @${FALSE} . endif . endif # Convert OSVERSION to major release number _OSVERSION_MAJOR= ${OSVERSION:C/([0-9]?[0-9])([0-9][0-9])[0-9]{3}/\1/} # Sanity checks for chroot/jail building. # Skip if OSVERSION specified on cmdline for testing. Only works for bmake. . if !defined(.MAKEOVERRIDES) || !${.MAKEOVERRIDES:MOSVERSION} . if ${_OSVERSION_MAJOR} != ${_OSRELEASE:R} . if !defined(I_DONT_CARE_IF_MY_BUILDS_TARGET_THE_WRONG_RELEASE) .error UNAME_r (${_OSRELEASE}) and OSVERSION (${OSVERSION}) do not agree on major version number. . endif . elif ${_OSVERSION_MAJOR} != ${OSREL:R} .error OSREL (${OSREL}) and OSVERSION (${OSVERSION}) do not agree on major version number. . endif . endif # Only define tools here (for transition period with between pkg tools) .include "${PORTSDIR}/Mk/bsd.commands.mk" . if !defined(_PKG_CHECKED) && !defined(PACKAGE_BUILDING) && exists(${PKG_BIN}) . if !defined(_PKG_VERSION) _PKG_VERSION!= ${PKG_BIN} -v . endif # XXX hack for smooth transition towards pkg 1.17 _PKG_BEFORE_PKGEXT!= ${PKG_BIN} version -t ${_PKG_VERSION:C/-.*//g} 1.17.0 . if ${_PKG_BEFORE_PKGEXT} == "<" _PKG_TRANSITIONING_TO_NEW_EXT= yes _EXPORTED_VARS+= _PKG_TRANSITIONING_TO_NEW_EXT WARNING+= "It is strongly recommended to upgrade to a newer version of pkg first" . endif # XXX End of hack _PKG_STATUS!= ${PKG_BIN} version -t ${_PKG_VERSION:C/-.*//g} ${MINIMAL_PKG_VERSION} . if ${_PKG_STATUS} == "<" IGNORE= pkg(8) must be version ${MINIMAL_PKG_VERSION} or greater, but you have ${_PKG_VERSION}. You must upgrade the ${PKG_ORIGIN} port first . endif _PKG_CHECKED= 1 . endif _EXPORTED_VARS+= _PKG_CHECKED MASTERDIR?= ${.CURDIR} . if ${MASTERDIR} != ${.CURDIR} SLAVE_PORT?= yes MASTER_PORT?=${MASTERDIR:C/[^\/]+\/\.\.\///:C/[^\/]+\/\.\.\///:C/^.*\/([^\/]+\/[^\/]+)$/\\1/} . else SLAVE_PORT?= no MASTER_PORT?= . endif # If they exist, include Makefile.inc, then architecture/operating # system specific Makefiles, then local Makefile.local. . if ${MASTERDIR} != ${.CURDIR} && exists(${.CURDIR}/../Makefile.inc) .include "${.CURDIR}/../Makefile.inc" USE_SUBMAKE= yes . endif . if exists(${MASTERDIR}/../Makefile.inc) .include "${MASTERDIR}/../Makefile.inc" USE_SUBMAKE= yes . endif . if exists(${MASTERDIR}/Makefile.${ARCH}-${OPSYS}) .include "${MASTERDIR}/Makefile.${ARCH}-${OPSYS}" USE_SUBMAKE= yes . elif exists(${MASTERDIR}/Makefile.${OPSYS}) .include "${MASTERDIR}/Makefile.${OPSYS}" USE_SUBMAKE= yes . elif exists(${MASTERDIR}/Makefile.${ARCH}) .include "${MASTERDIR}/Makefile.${ARCH}" USE_SUBMAKE= yes . endif . if exists(${MASTERDIR}/Makefile.local) .include "${MASTERDIR}/Makefile.local" USE_SUBMAKE= yes . elif ${MASTERDIR} != ${.CURDIR} && exists(${.CURDIR}/Makefile.local) .include "${.CURDIR}/Makefile.local" USE_SUBMAKE= yes . endif . for _CATEGORY in ${CATEGORIES} PKGCATEGORY?= ${_CATEGORY} . endfor _PORTDIRNAME= ${.CURDIR:T} PORTDIRNAME?= ${_PORTDIRNAME} PKGORIGIN?= ${PKGCATEGORY}/${PORTDIRNAME} # where 'make config' records user configuration options PORT_DBDIR?= /var/db/ports UID_FILES?= ${PORTSDIR}/UIDs GID_FILES?= ${PORTSDIR}/GIDs UID_OFFSET?= 0 GID_OFFSET?= 0 # predefined accounts from src/etc/master.passwd # alpha numeric sort order USERS_BLACKLIST= _dhcp _pflogd _ypldap auditdistd bin bind daemon games hast kmem mailnull man news nobody operator pop proxy root smmsp sshd toor tty unbound uucp www # predefined accounts from src/etc/group # alpha numeric sort order GROUPS_BLACKLIST= _dhcp _pflogd _ypldap audit authpf bin bind daemon dialer ftp games guest hast kmem mail mailnull man network news nobody nogroup operator proxy smmsp sshd staff sys tty unbound uucp wheel www LDCONFIG_DIR= libdata/ldconfig LDCONFIG32_DIR= libdata/ldconfig32 # At least KDE needs TMPDIR for the package building, # so we're setting it to the known default value. . if defined(PACKAGE_BUILDING) TMPDIR?= /tmp . endif # defined(PACKAGE_BUILDING) . if defined(WITH_DEBUG_PORTS) . if ${WITH_DEBUG_PORTS:M${PKGORIGIN}} WITH_DEBUG= yes . endif . endif . if defined(USE_LTO) WITH_LTO= ${USE_LTO} WARNING+= USE_LTO is deprecated in favor of WITH_LTO . endif .include "${PORTSDIR}/Mk/bsd.default-versions.mk" .include "${PORTSDIR}/Mk/bsd.options.mk" . endif # End of options section. # Start of pre-makefile section. . if !defined(AFTERPORTMK) && !defined(INOPTIONSMK) . if defined(_PREMKINCLUDED) DEV_ERROR+= "you cannot include bsd.port[.pre].mk twice" . endif _PREMKINCLUDED= yes . if defined(PORTVERSION) . if ${PORTVERSION:M*[-_,]*}x != x IGNORE= PORTVERSION ${PORTVERSION} may not contain '-' '_' or ',' . endif . if defined(DISTVERSION) DEV_ERROR+= "Defining both PORTVERSION and DISTVERSION is wrong, only set one, if necessary, set DISTNAME" . endif DISTVERSION?= ${PORTVERSION:S/:/::/g} . elif defined(DISTVERSION) PORTVERSION= ${DISTVERSION:tl:C/([a-z])[a-z]+/\1/g:C/([0-9])([a-z])/\1.\2/g:C/:(.)/\1/g:C/[^a-z0-9+]+/./g} . endif PORTREVISION?= 0 . if ${PORTREVISION} != 0 _SUF1= _${PORTREVISION} . endif PORTEPOCH?= 0 . if ${PORTEPOCH} != 0 _SUF2= ,${PORTEPOCH} . endif PKGVERSION= ${PORTVERSION:C/[-_,]/./g}${_SUF1}${_SUF2} PKGNAME= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PKGVERSION} DISTVERSIONFULL= ${DISTVERSIONPREFIX}${DISTVERSION:C/:(.)/\1/g}${DISTVERSIONSUFFIX} DISTNAME?= ${PORTNAME}-${DISTVERSIONFULL} INDEXFILE?= INDEX-${OSVERSION:C/([0-9]*)[0-9]{5}/\1/} PACKAGES?= ${PORTSDIR}/packages TEMPLATES?= ${PORTSDIR}/Templates KEYWORDS?= ${PORTSDIR}/Keywords WRAPPERSDIR?= ${PORTSDIR}/Mk/Wrappers/ PATCHDIR?= ${MASTERDIR}/files FILESDIR?= ${MASTERDIR}/files SCRIPTDIR?= ${MASTERDIR}/scripts PKGDIR?= ${MASTERDIR} PREFIX?= ${LOCALBASE} PKGCOMPATDIR?= ${LOCALBASE}/lib/compat/pkg . if defined(USE_LOCAL_MK) .include "${PORTSDIR}/Mk/bsd.local.mk" . endif . for odir in ${OVERLAYS} .sinclude "${odir}/Mk/bsd.overlay.mk" . endfor . if defined(USE_JAVA) .include "${PORTSDIR}/Mk/bsd.java.mk" . endif . if defined(USE_RUBY) .include "${PORTSDIR}/Mk/bsd.ruby.mk" . endif . if defined(USE_OCAML) .include "${PORTSDIR}/Mk/bsd.ocaml.mk" . endif . if defined(USE_APACHE_BUILD) USES+= apache:build,${USE_APACHE_BUILD:C/2([0-9])/2.\1/g} . elif defined(USE_APACHE_RUN) USES+= apache:run,${USE_APACHE_RUN:C/2([0-9])/2.\1/g} . elif defined(USE_APACHE) USE_APACHE:= ${USE_APACHE:S/common/server,/} USES+= apache:${USE_APACHE:C/2([0-9])/2.\1/g} . endif -. if defined(USE_TEX) -.include "${PORTSDIR}/Mk/bsd.tex.mk" -. endif - . if defined(USE_GECKO) .include "${PORTSDIR}/Mk/bsd.gecko.mk" . endif . if defined(USE_MYSQL) USE_MYSQL:= ${USE_MYSQL:N[yY][eE][sS]:Nclient} . if defined(WANT_MYSQL_VER) . if empty(USE_MYSQL) USE_MYSQL:=${WANT_MYSQL_VER} . else USE_MYSQL:=${USE_MYSQL},${WANT_MYSQL_VER} . endif . endif USES+=mysql:${USE_MYSQL} . endif . if defined(WANT_WX) || defined(USE_WX) || defined(USE_WX_NOT) .include "${PORTSDIR}/Mk/bsd.wx.mk" . endif . if !defined(UID) . if defined(.MAKE.UID) UID= ${.MAKE.UID} . else UID!= ${ID} -u . endif . endif DESTDIRNAME?= DESTDIR # setup empty variables for USES targets . for target in sanity fetch extract patch configure build install test package stage _USES_${target}?= . endfor # Loading features . for f in ${USES} _f:= ${f:C/\:.*//} . if !defined(${_f}_ARGS) ${_f}_ARGS:= ${f:C/^[^\:]*(\:|\$)//:S/,/ /g} . endif . endfor . for f in ${USES} .undef _usefound . for udir in ${OVERLAYS:C,$,/Mk/Uses,} ${USESDIR} _usefile= ${udir}/${f:C/\:.*//}.mk . if exists(${_usefile}) && !defined(_usefound) _usefound= .include "${_usefile}" . endif . endfor . if !defined(_usefound) ERROR+= "Unknown USES=${f:C/\:.*//}" . endif . endfor . if !empty(FLAVORS) . if ${FLAVORS:Mall} DEV_ERROR+= "FLAVORS cannot contain 'all', it is a reserved value" . endif . for f in ${FLAVORS} . if ${f:C/[[:lower:][:digit:]_]//g} _BAD_FLAVOR_NAMES+= ${f} . endif . endfor . if !empty(_BAD_FLAVOR_NAMES) DEV_ERROR+= "FLAVORS contains flavors that are not all [a-z0-9_]: ${_BAD_FLAVOR_NAMES}" . endif . endif . if !empty(FLAVOR) . if empty(FLAVORS) IGNORE= FLAVOR is defined (to ${FLAVOR}) while this port does not have FLAVORS . elif ! ${FLAVORS:M${FLAVOR}} IGNORE= Unknown flavor '${FLAVOR}', possible flavors: ${FLAVORS} . endif . endif . if !empty(FLAVORS) && empty(FLAVOR) FLAVOR= ${FLAVORS:[1]} . endif # Reorder FLAVORS so the default is first if set by the port. . if empty(_FLAVOR) && !empty(FLAVORS) && !empty(FLAVOR) FLAVORS:= ${FLAVOR} ${FLAVORS:N${FLAVOR}} . endif . if !empty(FLAVOR) && !defined(_DID_FLAVORS_HELPERS) _DID_FLAVORS_HELPERS= yes _FLAVOR_HELPERS_OVERRIDE= DESCR PLIST PKGNAMEPREFIX PKGNAMESUFFIX _FLAVOR_HELPERS_APPEND= CONFLICTS CONFLICTS_BUILD CONFLICTS_INSTALL \ PKG_DEPENDS EXTRACT_DEPENDS PATCH_DEPENDS \ FETCH_DEPENDS BUILD_DEPENDS LIB_DEPENDS \ RUN_DEPENDS TEST_DEPENDS # These overwrite the current value . for v in ${_FLAVOR_HELPERS_OVERRIDE} . if defined(${FLAVOR}_${v}) ${v}= ${${FLAVOR}_${v}} . endif . endfor # These append to the current value . for v in ${_FLAVOR_HELPERS_APPEND} . if defined(${FLAVOR}_${v}) ${v}+= ${${FLAVOR}_${v}} . endif . endfor . for v in BROKEN IGNORE . if defined(${FLAVOR}_${v}) ${v}= flavor "${FLAVOR}" ${${FLAVOR}_${v}} . endif . endfor . if defined(FLAVORS_SUB) PLIST_SUB+= ${FLAVORS:N${FLAVOR}:@v@${v:tu}="\@comment " NO_${v:tu}=""@} PLIST_SUB+= ${FLAVOR:tu}="" NO_${FLAVOR:tu}="@comment " SUB_LIST+= ${FLAVORS:N${FLAVOR}:@v@${v:tu}="\@comment " NO_${v:tu}=""@} SUB_LIST+= ${FLAVOR:tu}="" NO_${FLAVOR:tu}="@comment " . endif . endif # defined(${FLAVOR}) EXTRACT_SUFX?= .tar.gz . if defined(USE_LINUX_PREFIX) PREFIX= ${LINUXBASE} DATADIR?= ${PREFIX}/usr/share/${PORTNAME} DOCSDIR?= ${PREFIX}/usr/share/doc/${PORTNAME}-${PORTVERSION} NO_LICENSES_INSTALL= yes NO_MTREE= yes . endif # You can force skipping these test by defining IGNORE_PATH_CHECKS . if !defined(IGNORE_PATH_CHECKS) . if ! ${PREFIX:M/*} .BEGIN: @${ECHO_MSG} "PREFIX must be defined as an absolute path so that when 'make'" @${ECHO_MSG} "is invoked in the work area PREFIX points to the right place." @${FALSE} . endif . endif DATADIR?= ${PREFIX}/share/${PORTNAME} DOCSDIR?= ${PREFIX}/share/doc/${PORTNAME} ETCDIR?= ${PREFIX}/etc/${PORTNAME} EXAMPLESDIR?= ${PREFIX}/share/examples/${PORTNAME} WWWDIR?= ${PREFIX}/www/${PORTNAME} # Owner and group of the WWW user WWWOWN?= www WWWGRP?= www # Keep PKGNG_ORIGIN/WITH_PKGNG for compat with scripts which are looking for it PKG_ORIGIN?= ports-mgmt/pkg PKGNG_ORIGIN= ${PKG_ORIGIN} WITH_PKGNG?= yes WITH_PKG?= ${WITH_PKGNG} . endif # End of pre-makefile section. # Start of post-makefile section. . if !defined(BEFOREPORTMK) && !defined(INOPTIONSMK) . if defined(_POSTMKINCLUDED) DEV_ERROR+= "${PKGNAME}: Makefile error: you cannot include bsd.port[.post].mk twice" @${FALSE} . endif _POSTMKINCLUDED= yes . if defined(BUNDLE_LIBS) PKG_NOTES+= no_provide_shlib PKG_NOTE_no_provide_shlib= yes . endif . if defined(DEPRECATED) PKG_NOTES+= deprecated PKG_NOTE_deprecated=${DEPRECATED} . endif . if defined(EXPIRATION_DATE) PKG_NOTES+= expiration_date PKG_NOTE_expiration_date= ${EXPIRATION_DATE} . endif . if !empty(FLAVOR) PKG_NOTES+= flavor PKG_NOTE_flavor= ${FLAVOR} . endif TEST_ARGS?= ${MAKE_ARGS} TEST_ENV?= ${MAKE_ENV} PKG_ENV+= PORTSDIR=${PORTSDIR} CONFIGURE_ENV+= XDG_DATA_HOME=${WRKDIR} \ XDG_CONFIG_HOME=${WRKDIR} \ XDG_CACHE_HOME=${WRKDIR}/.cache \ HOME=${WRKDIR} MAKE_ENV+= XDG_DATA_HOME=${WRKDIR} \ XDG_CONFIG_HOME=${WRKDIR} \ XDG_CACHE_HOME=${WRKDIR}/.cache \ HOME=${WRKDIR} # Respect TMPDIR passed via make.conf or similar and pass it down # to configure and make. . if defined(TMPDIR) MAKE_ENV+= TMPDIR="${TMPDIR}" CONFIGURE_ENV+= TMPDIR="${TMPDIR}" . endif # defined(TMPDIR) QA_ENV+= STAGEDIR=${STAGEDIR} \ PREFIX=${PREFIX} \ LINUXBASE=${LINUXBASE} \ LOCALBASE=${LOCALBASE} \ REWARNFILE=${REWARNFILE} \ "STRIP=${STRIP}" \ TMPPLIST=${TMPPLIST} \ CURDIR='${.CURDIR}' \ PKGMESSAGES='${_PKGMESSAGES}' \ FLAVOR=${FLAVOR} \ FLAVORS='${FLAVORS}' \ BUNDLE_LIBS=${BUNDLE_LIBS} \ LDCONFIG_DIR="${LDCONFIG_DIR}" \ PKGORIGIN=${PKGORIGIN} \ LIB_RUN_DEPENDS='${_LIB_RUN_DEPENDS:C,[^:]*:([^:]*):?.*,\1,}' \ UNIFIED_DEPENDS=${_UNIFIED_DEPENDS:C,([^:]*:[^:]*):?.*,\1,:O:u:Q} \ PKGBASE=${PKGBASE} \ LICENSE="${LICENSE}" \ LICENSE_PERMS="${_LICENSE_PERMS}" \ DISABLE_LICENSES="${DISABLE_LICENSES:Dyes}" \ PORTNAME=${PORTNAME} \ NO_ARCH=${NO_ARCH} \ "NO_ARCH_IGNORE=${NO_ARCH_IGNORE}" \ USE_RUBY=${USE_RUBY} . if !empty(USES:Mssl) QA_ENV+= USESSSL=yes . endif . if !empty(USES:Mdesktop-file-utils) QA_ENV+= USESDESKTOPFILEUTILS=yes . endif . if !empty(USES:Mlibtool*) QA_ENV+= USESLIBTOOL=yes . endif . if !empty(USES:Mshared-mime-info) QA_ENV+= USESSHAREDMIMEINFO=yes . endif . if !empty(USES:Mterminfo) QA_ENV+= USESTERMINFO=yes . endif CO_ENV+= STAGEDIR=${STAGEDIR} \ PREFIX=${PREFIX} \ LOCALBASE=${LOCALBASE} \ WRKDIR=${WRKDIR} \ WRKSRC=${WRKSRC} \ MTREE_FILE=${MTREE_FILE} \ TMPPLIST=${TMPPLIST} \ SCRIPTSDIR=${SCRIPTSDIR} \ PLIST_SUB_SED="${PLIST_SUB_SED}" \ PORT_OPTIONS="${PORT_OPTIONS}" \ PORTSDIR="${PORTSDIR}" . if defined(CROSS_SYSROOT) PKG_ENV+= ABI_FILE=${CROSS_SYSROOT}/bin/sh MAKE_ENV+= NM=${NM} \ STRIPBIN=${STRIPBIN} \ PKG_CONFIG_SYSROOT_DIR="${CROSS_SYSROOT}" CONFIGURE_ENV+= PKG_CONFIG_SYSROOT_DIR="${CROSS_SYSROOT}" . endif . if empty(FLAVOR) _WRKDIR= work . else _WRKDIR= work-${FLAVOR} . endif WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/${_WRKDIR} BINARY_LINKDIR= ${WRKDIR}/.bin PATH:= ${BINARY_LINKDIR}:${PATH} . if !${MAKE_ENV:MPATH=*} && !${CONFIGURE_ENV:MPATH=*} MAKE_ENV+= PATH=${PATH} CONFIGURE_ENV+= PATH=${PATH} . endif PKGCONFIG_LINKDIR= ${WRKDIR}/.pkgconfig PKGCONFIG_BASEDIR= /usr/libdata/pkgconfig . if !${MAKE_ENV:MPKG_CONFIG_LIBDIR=*} && !${CONFIGURE_ENV:MPKG_CONFIG_LIBDIR=*} MAKE_ENV+= PKG_CONFIG_LIBDIR=${PKGCONFIG_LINKDIR}:${LOCALBASE}/libdata/pkgconfig:${LOCALBASE}/share/pkgconfig:${PKGCONFIG_BASEDIR} CONFIGURE_ENV+= PKG_CONFIG_LIBDIR=${PKGCONFIG_LINKDIR}:${LOCALBASE}/libdata/pkgconfig:${LOCALBASE}/share/pkgconfig:${PKGCONFIG_BASEDIR} . endif . if !defined(IGNORE_MASTER_SITE_GITHUB) && defined(USE_GITHUB) && empty(USE_GITHUB:Mnodefault) . if defined(WRKSRC) DEV_WARNING+= "You are using USE_GITHUB and WRKSRC is set which is wrong. Set GH_PROJECT correctly or set WRKSRC_SUBDIR and remove WRKSRC entirely." . endif WRKSRC?= ${WRKDIR}/${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT} . endif . if !default(IGNORE_MASTER_SITE_GITLAB) && defined(USE_GITLAB) && empty(USE_GITLAB:Mnodefault) . if defined(WRKSRC) DEV_WARNING+= "You are using USE_GITLAB and WRKSRC is set which is wrong. Set GL_PROJECT, GL_ACCOUNT correctly, and/or set WRKSRC_SUBDIR and remove WRKSRC entirely." . endif WRKSRC?= ${WRKDIR}/${GL_PROJECT}-${GL_COMMIT} . endif # If the distname is not extracting into a specific subdirectory, have the # ports framework force extract into a subdirectory so that metadata files # do not get in the way of the build, and vice-versa. . if defined(NO_WRKSUBDIR) # Some ports have DISTNAME=PORTNAME, and USE_RC_SUBR=PORTNAME, in those case, # the rc file will conflict with WRKSRC, as WRKSRC is artificial, make it the # most unlikely to conflict as we can. WRKSRC?= ${WRKDIR}/${PKGNAME} EXTRACT_WRKDIR:= ${WRKSRC} . else WRKSRC?= ${WRKDIR}/${DISTNAME} EXTRACT_WRKDIR:= ${WRKDIR} . endif . if defined(WRKSRC_SUBDIR) WRKSRC:= ${WRKSRC}/${WRKSRC_SUBDIR} . endif . if defined(CONFIGURE_OUTSOURCE) CONFIGURE_CMD?= ${WRKSRC}/${CONFIGURE_SCRIPT} CONFIGURE_WRKSRC?= ${WRKDIR}/.build BUILD_WRKSRC?= ${CONFIGURE_WRKSRC} INSTALL_WRKSRC?= ${CONFIGURE_WRKSRC} TEST_WRKSRC?= ${CONFIGURE_WRKSRC} . endif PATCH_WRKSRC?= ${WRKSRC} CONFIGURE_WRKSRC?= ${WRKSRC} BUILD_WRKSRC?= ${WRKSRC} INSTALL_WRKSRC?=${WRKSRC} TEST_WRKSRC?= ${WRKSRC} PLIST_SUB+= OSREL=${OSREL} PREFIX=%D LOCALBASE=${LOCALBASE} \ RESETPREFIX=${PREFIX} SUB_LIST+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} \ DATADIR=${DATADIR} DOCSDIR=${DOCSDIR} EXAMPLESDIR=${EXAMPLESDIR} \ WWWDIR=${WWWDIR} ETCDIR=${ETCDIR} # This is used for check-stagedir.sh and check_leftover.sh to replace # directories/files with PLIST_SUB %%KEYS%%. # Remove VARS which values are PLIST_SUB_SED_MIN long or shorter PLIST_SUB_SED_MIN?= 2 PLIST_SUB_SED_tmp1= ${PLIST_SUB:C/.*=.{1,${PLIST_SUB_SED_MIN}}$//g} # Remove VARS that are too generic # Remove empty values # Remove @comment values PLIST_SUB_SED_tmp2= ${PLIST_SUB_SED_tmp1:NEXTRACT_SUFX=*:NOSREL=*:NLIB32DIR=*:NPREFIX=*:NLOCALBASE=*:NRESETPREFIX=*:N*="":N*="@comment*} # Handle VARS for which there is a _regex entry PLIST_SUB_SED_tmp3?= ${PLIST_SUB_SED_tmp2:C/(${PLIST_SUB:M*_regex=*:C/_regex=.*/=.*/:Q:S/\\ /|/g:S/\\//g})//:C/(.*)_regex=(.*)/\1=\2/} # Remove quotes # Replace . with \. for later sed(1) usage PLIST_SUB_SED?= ${PLIST_SUB_SED_tmp3:C/([^=]*)="?([^"]*)"?/s!\2!%%\1%%!g;/g:C/\./[.]/g} # kludge to strip trailing whitespace from CFLAGS; # sub-configure will not # survive double space CFLAGS:= ${CFLAGS:C/ $//} . if defined(WITHOUT_CPU_CFLAGS) . if defined(_CPUCFLAGS) . if !empty(_CPUCFLAGS) CFLAGS:= ${CFLAGS:C/${_CPUCFLAGS}//} . endif . endif . endif . for f in ${_LIST_OF_WITH_FEATURES} . if defined(WITH_${f:tu}) || ( ${_DEFAULT_WITH_FEATURES:M${f}} && !defined(WITHOUT_${f:tu}) ) .include "${PORTSDIR}/Mk/Features/$f.mk" . endif . endfor # We will control debug files. Don't let builds that use /usr/share/mk # split out debug symbols since the plist won't know to expect it. MAKE_ENV+= MK_DEBUG_FILES=no MAKE_ENV+= MK_KERNEL_SYMBOLS=no CONFIGURE_SHELL?= ${SH} MAKE_SHELL?= ${SH} CONFIGURE_ENV+= SHELL=${CONFIGURE_SHELL} CONFIG_SHELL=${CONFIGURE_SHELL} MAKE_ENV+= SHELL=${MAKE_SHELL} NO_LINT=YES . if defined(PATCHFILES) && ${PATCHFILES:M*.zip} PATCH_DEPENDS+= ${LOCALBASE}/bin/unzip:archivers/unzip . endif # Check the compatibility layer for amd64 . if ${ARCH} == "amd64" . if exists(/usr/lib32) HAVE_COMPAT_IA32_LIBS?= YES . endif . if !defined(HAVE_COMPAT_IA32_KERN) HAVE_COMPAT_IA32_KERN!= if ${SYSCTL} -n compat.ia32.maxvmem >/dev/null 2>&1; then echo YES; fi; echo . if empty(HAVE_COMPAT_IA32_KERN) .undef HAVE_COMPAT_IA32_KERN . endif . endif . endif _EXPORTED_VARS+= HAVE_COMPAT_IA32_KERN . if defined(IA32_BINARY_PORT) && ${ARCH} != "i386" . if ${ARCH} == "amd64" . if !defined(HAVE_COMPAT_IA32_KERN) IGNORE= requires a kernel with compiled-in IA32 compatibility . elif !defined(HAVE_COMPAT_IA32_LIBS) IGNORE= requires 32-bit libraries installed under /usr/lib32 . endif _LDCONFIG_FLAGS=-32 LIB32DIR= lib32 . else IGNORE= requires i386 (or compatible) platform to run . endif . else LIB32DIR= lib . endif PLIST_SUB+= LIB32DIR=${LIB32DIR} . if ${WITH_PKG} == devel PKG_ORIGIN= ports-mgmt/pkg-devel . endif . if !defined(PKG_DEPENDS) && !defined(CLEAN_FETCH_ENV) PKG_DEPENDS+= ${LOCALBASE}/sbin/pkg:${PKG_ORIGIN} . endif . if defined(USE_GCC) .include "${PORTSDIR}/Mk/bsd.gcc.mk" . endif . if defined(LLD_UNSAFE) && ${/usr/bin/ld:L:tA} == /usr/bin/ld.lld LDFLAGS+= -fuse-ld=bfd BINARY_ALIAS+= ld=${LD} . if !defined(USE_BINUTILS) . if exists(/usr/bin/ld.bfd) LD= /usr/bin/ld.bfd CONFIGURE_ENV+= LD=${LD} MAKE_ENV+= LD=${LD} . else USE_BINUTILS= yes . endif . endif . endif . if defined(USE_BINUTILS) && !defined(DISABLE_BINUTILS) BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils BINUTILS?= ADDR2LINE AR AS CPPFILT GPROF LD NM OBJCOPY OBJDUMP RANLIB \ READELF SIZE STRINGS BINUTILS_NO_MAKE_ENV?= . for b in ${BINUTILS} ${b}= ${LOCALBASE}/bin/${b:C/PP/++/:tl} . if defined(GNU_CONFIGURE) || defined(BINUTILS_CONFIGURE) CONFIGURE_ENV+= ${b}="${${b}}" . endif . if ${BINUTILS_NO_MAKE_ENV:M${b}} == "" MAKE_ENV+= ${b}="${${b}}" . endif . endfor . endif . if defined(USE_OPENLDAP) || defined(WANT_OPENLDAP_VER) .include "${PORTSDIR}/Mk/bsd.ldap.mk" . endif . if defined(USE_RC_SUBR) SUB_FILES+= ${USE_RC_SUBR} . endif . if defined(USE_LDCONFIG) && ${USE_LDCONFIG:tl} == "yes" USE_LDCONFIG= ${PREFIX}/lib . endif . if defined(USE_LDCONFIG32) && ${USE_LDCONFIG32:tl} == "yes" IGNORE= has USE_LDCONFIG32 set to yes, which is not correct . endif . if defined(USE_LDCONFIG) || defined(USE_LDCONFIG32) . if defined(USE_LINUX_PREFIX) PLIST_FILES+= "@ldconfig-linux ${LINUXBASE}" . else PLIST_FILES+= "@ldconfig" . endif . endif PKG_IGNORE_DEPENDS?= 'this_port_does_not_exist' . if defined(_DESTDIR_VIA_ENV) MAKE_ENV+= ${DESTDIRNAME}=${STAGEDIR} . else MAKE_ARGS+= ${DESTDIRNAME}=${STAGEDIR} . endif . if defined(NO_PREFIX_RMDIR) CO_ENV+= NO_PREFIX_RMDIR=1 . else CO_ENV+= NO_PREFIX_RMDIR=0 . endif METADIR= ${WRKDIR}/.metadir PKGPREINSTALL?= ${PKGDIR}/pkg-pre-install PKGPOSTINSTALL?= ${PKGDIR}/pkg-post-install PKGPREDEINSTALL?= ${PKGDIR}/pkg-pre-deinstall PKGPOSTDEINSTALL?= ${PKGDIR}/pkg-post-deinstall . if defined(USE_LOCAL_MK) .include "${PORTSDIR}/Mk/bsd.local.mk" . endif . for odir in ${OVERLAYS} .sinclude "${odir}/Mk/bsd.overlay.mk" . endfor . if defined(USE_JAVA) .include "${PORTSDIR}/Mk/bsd.java.mk" . endif . if defined(USE_OCAML) .include "${PORTSDIR}/Mk/bsd.ocaml.mk" . endif . if defined(USE_WX) || defined(USE_WX_NOT) .include "${PORTSDIR}/Mk/bsd.wx.mk" . endif . if defined(USE_GECKO) .include "${PORTSDIR}/Mk/bsd.gecko.mk" . endif . if exists(${PORTSDIR}/Makefile.inc) .include "${PORTSDIR}/Makefile.inc" USE_SUBMAKE= yes . endif # Loading features . for f in ${_USES_POST} _f:= ${f:C/\:.*//} . if !defined(${_f}_ARGS) ${_f}_ARGS:= ${f:C/^[^\:]*(\:|\$)//:S/,/ /g} . endif . endfor . for f in ${_USES_POST} .undef _usefound . for udir in ${OVERLAYS:C,$,/Mk/Uses,} ${USESDIR} _usefile= ${udir}/${f:C/\:.*//}.mk . if exists(${_usefile}) && !defined(_usefound) _usefound= .include "${_usefile}" . endif . endfor . if !defined(_usefound) ERROR+= "Unknown USES=${f:C/\:.*//}" . endif . endfor . if defined(PORTNAME) .include "${PORTSDIR}/Mk/bsd.sanity.mk" . endif . if defined(USE_LOCALE) CONFIGURE_ENV+= LANG=${USE_LOCALE} LC_ALL=${USE_LOCALE} MAKE_ENV+= LANG=${USE_LOCALE} LC_ALL=${USE_LOCALE} . endif # Macro for doing in-place file editing using regexps. REINPLACE_ARGS may only # be used to set or override the -i argument. Any other use is considered # invalid. REINPLACE_ARGS?= -i.bak . if defined(DEVELOPER) REINPLACE_CMD?= ${SETENV} WRKSRC=${WRKSRC} REWARNFILE=${REWARNFILE} ${SH} ${SCRIPTSDIR}/sed_checked.sh . else REINPLACE_CMD?= ${SED} ${REINPLACE_ARGS} . endif FRAMEWORK_REINPLACE_CMD?= ${SED} -i.bak # Names of cookies used to skip already completed stages EXTRACT_COOKIE?= ${WRKDIR}/.extract_done.${PORTNAME}.${PREFIX:S/\//_/g} CONFIGURE_COOKIE?= ${WRKDIR}/.configure_done.${PORTNAME}.${PREFIX:S/\//_/g} INSTALL_COOKIE?= ${WRKDIR}/.install_done.${PORTNAME}.${PREFIX:S/\//_/g} BUILD_COOKIE?= ${WRKDIR}/.build_done.${PORTNAME}.${PREFIX:S/\//_/g} PATCH_COOKIE?= ${WRKDIR}/.patch_done.${PORTNAME}.${PREFIX:S/\//_/g} PACKAGE_COOKIE?= ${WRKDIR}/.package_done.${PORTNAME}.${PREFIX:S/\//_/g} STAGE_COOKIE?= ${WRKDIR}/.stage_done.${PORTNAME}.${PREFIX:S/\//_/g} # How to do nothing. Override if you, for some strange reason, would rather # do something. # In general, however, DO_NADA is a relic of the past in the ports # infrastructure, and most of its usage has been removed. If you need to define # a target with DO_NADA, then there is a high chance that the ports # infrastructure should be fixed instead. DO_NADA?= ${TRUE} # Use this as the first operand to always build dependency. NONEXISTENT?= /nonexistent CHECKSUM_ALGORITHMS?= sha256 DISTINFO_FILE?= ${MASTERDIR}/distinfo MAKE_FLAGS?= -f MAKEFILE?= Makefile MAKE_CMD?= ${BSDMAKE} MAKE_ENV+= PREFIX=${PREFIX} \ LOCALBASE=${LOCALBASE} \ CC="${CC}" CFLAGS="${CFLAGS}" \ CPP="${CPP}" CPPFLAGS="${CPPFLAGS}" \ LDFLAGS="${LDFLAGS}" LIBS="${LIBS}" \ CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \ MANPREFIX="${MANPREFIX}" # Add -fno-strict-aliasing to CFLAGS with optimization level -O2 or higher. # gcc 4.x enable strict aliasing optimization with -O2 which is known to break # a lot of ports. . if !defined(WITHOUT_NO_STRICT_ALIASING) . if ${CC} != "icc" . if empty(CFLAGS:M-fno-strict-aliasing) CFLAGS+= -fno-strict-aliasing . endif . endif . endif . for lang in C CXX . if defined(USE_${lang}STD) ${lang}FLAGS:= ${${lang}FLAGS:N-std=*} -std=${USE_${lang}STD} . endif ${lang}FLAGS+= ${${lang}FLAGS_${ARCH}} . endfor LDFLAGS+= ${LDFLAGS_${ARCH}} # Multiple make jobs support . if defined(DISABLE_MAKE_JOBS) || defined(MAKE_JOBS_UNSAFE) _MAKE_JOBS?= # MAKE_JOBS_NUMBER= 1 . else . if defined(MAKE_JOBS_NUMBER) _MAKE_JOBS_NUMBER:= ${MAKE_JOBS_NUMBER} . else . if !defined(_SMP_CPUS) _SMP_CPUS!= ${SYSCTL} -n kern.smp.cpus . endif _EXPORTED_VARS+= _SMP_CPUS _MAKE_JOBS_NUMBER= ${_SMP_CPUS} . endif . if defined(MAKE_JOBS_NUMBER_LIMIT) && ( ${MAKE_JOBS_NUMBER_LIMIT} < ${_MAKE_JOBS_NUMBER} ) MAKE_JOBS_NUMBER= ${MAKE_JOBS_NUMBER_LIMIT} . else MAKE_JOBS_NUMBER= ${_MAKE_JOBS_NUMBER} . endif _MAKE_JOBS?= -j${MAKE_JOBS_NUMBER} BUILD_FAIL_MESSAGE+= Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. . endif .include "${PORTSDIR}/Mk/bsd.ccache.mk" . if !make(makesum) FETCH_ENV?= SSL_NO_VERIFY_PEER=1 SSL_NO_VERIFY_HOSTNAME=1 . endif FETCH_BINARY?= /usr/bin/fetch FETCH_ARGS?= -Fpr FETCH_REGET?= 1 FETCH_CMD?= ${FETCH_BINARY} ${FETCH_ARGS} . if defined(RANDOMIZE_MASTER_SITES) . if exists(/usr/games/random) RANDOM_CMD?= /usr/games/random . elif exists(/usr/bin/random) RANDOM_CMD?= /usr/bin/random . endif . if defined(RANDOM_CMD) && !empty(RANDOM_CMD) RANDOM_ARGS?= -w -f - _RANDOMIZE_SITES= ${RANDOM_CMD} ${RANDOM_ARGS} . endif . endif TOUCH?= /usr/bin/touch TOUCH_FLAGS?= -f DISTORIG?= .bak.orig PATCH?= /usr/bin/patch PATCH_STRIP?= -p0 PATCH_DIST_STRIP?= -p0 . if defined(PATCH_DEBUG) PATCH_DEBUG_TMP= yes PATCH_ARGS?= --forward -E ${PATCH_STRIP} PATCH_DIST_ARGS?= --suffix ${DISTORIG} --forward -E ${PATCH_DIST_STRIP} . else PATCH_ARGS?= --forward --quiet -E ${PATCH_STRIP} PATCH_DIST_ARGS?= --suffix ${DISTORIG} --forward --quiet -E ${PATCH_DIST_STRIP} . endif . if !defined(QUIET) PATCH_SILENT= PATCH_SILENT=yes . endif . if defined(BATCH) PATCH_ARGS+= --batch PATCH_DIST_ARGS+= --batch . endif # Prevent breakage with VERSION_CONTROL=numbered PATCH_ARGS+= -V simple PATCH_DIST_ARGS+= -V simple . if defined(PATCH_CHECK_ONLY) PATCH_ARGS+= -C PATCH_DIST_ARGS+= -C . endif . if ${PATCH} == "/usr/bin/patch" PATCH_ARGS+= --suffix .orig PATCH_DIST_ARGS+= --suffix .orig . endif TAR?= /usr/bin/tar # EXTRACT_SUFX is defined in .pre.mk section EXTRACT_CMD?= ${TAR} EXTRACT_BEFORE_ARGS?= -xf EXTRACT_AFTER_ARGS?= --no-same-owner --no-same-permissions # Figure out where the local mtree file is . if !defined(MTREE_FILE) && !defined(NO_MTREE) . if ${PREFIX} == /usr MTREE_FILE= /etc/mtree/BSD.usr.dist . else MTREE_FILE= ${PORTSDIR}/Templates/BSD.local.dist . endif . endif MTREE_CMD?= /usr/sbin/mtree MTREE_ARGS?= -U ${MTREE_FOLLOWS_SYMLINKS} -f ${MTREE_FILE} -d -e -p _SHAREMODE?= 0644 # A few aliases for *-install targets INSTALL_PROGRAM= ${INSTALL} ${COPY} ${STRIP} -m ${BINMODE} INSTALL_KLD= ${INSTALL} ${COPY} -m ${BINMODE} INSTALL_LIB= ${INSTALL} ${COPY} ${STRIP} -m ${_SHAREMODE} INSTALL_SCRIPT= ${INSTALL} ${COPY} -m ${BINMODE} INSTALL_DATA= ${INSTALL} ${COPY} -m ${_SHAREMODE} INSTALL_MAN= ${INSTALL} ${COPY} -m ${MANMODE} INSTALL_MACROS= BSD_INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ BSD_INSTALL_LIB="${INSTALL_LIB}" \ BSD_INSTALL_SCRIPT="${INSTALL_SCRIPT}" \ BSD_INSTALL_DATA="${INSTALL_DATA}" \ BSD_INSTALL_MAN="${INSTALL_MAN}" MAKE_ENV+= ${INSTALL_MACROS} SCRIPTS_ENV+= ${INSTALL_MACROS} # Macro for copying entire directory tree with correct permissions # In the -exec shell commands, we add add a . as the first argument, it would # end up being $0 aka the script name, which is not part of $@, so we force it # to be able to use $@ directly. COPYTREE_BIN= ${SH} -c '(${FIND} -Ed $$1 $$3 | ${CPIO} -dumpl $$2 >/dev/null 2>&1) && \ ${FIND} -Ed $$1 $$3 \( -type d -exec ${SH} -c '\''cd '\''$$2'\'' && chmod 755 "$$@"'\'' . {} + \ -o -type f -exec ${SH} -c '\''cd '\''$$2'\'' && chmod ${BINMODE} "$$@"'\'' . {} + \)' COPYTREE_BIN COPYTREE_SHARE= ${SH} -c '(${FIND} -Ed $$1 $$3 | ${CPIO} -dumpl $$2 >/dev/null 2>&1) && \ ${FIND} -Ed $$1 $$3 \( -type d -exec ${SH} -c '\''cd '\''$$2'\'' && chmod 755 "$$@"'\'' . {} + \ -o -type f -exec ${SH} -c '\''cd '\''$$2'\'' && chmod ${_SHAREMODE} "$$@"'\'' . {} + \)' COPYTREE_SHARE # The user can override the NO_PACKAGE by specifying this from # the make command line . if defined(FORCE_PACKAGE) .undef NO_PACKAGE . endif DESCR?= ${PKGDIR}/pkg-descr PLIST?= ${PKGDIR}/pkg-plist PKGHELP?= ${PKGDIR}/pkg-help PKGINSTALL?= ${PKGDIR}/pkg-install PKGDEINSTALL?= ${PKGDIR}/pkg-deinstall PKGMESSAGE?= ${PKGDIR}/pkg-message _PKGMESSAGES+= ${PKGMESSAGE} TMPPLIST?= ${WRKDIR}/.PLIST.mktmp # backward compatibility for users . if defined(_PKG_TRANSITIONING_TO_NEW_EXT) . if defined(PKG_NOCOMPRESS) PKG_SUFX?= .tar . else PKG_SUFX?= .txz . endif PKG_COMPRESSION_FORMAT?= ${PKG_SUFX:S/.//} . else . if defined(PKG_SUFX) PKG_COMPRESSION_FORMAT?= ${PKG_SUFX:S/.//} WARNING+= "PKG_SUFX is defined, it should be replaced with PKG_COMPRESSION_FORMAT" . endif PKG_SUFX= .pkg . endif . if defined(PKG_NOCOMPRESS) PKG_COMPRESSION_FORMAT?= tar . else . if ${OSVERSION} > 1400000 PKG_COMPRESSION_FORMAT?= tzst . else PKG_COMPRESSION_FORMAT?= txz . endif . endif # where pkg(8) stores its data PKG_DBDIR?= /var/db/pkg ALL_TARGET?= all INSTALL_TARGET?= install INSTALL_TARGET+= ${LATE_INSTALL_ARGS} # Integrate with the license auditing framework . if !defined (DISABLE_LICENSES) .include "${PORTSDIR}/Mk/bsd.licenses.mk" . endif # Popular master sites .include "${PORTSDIR}/Mk/bsd.sites.mk" # Empty declaration to avoid "variable MASTER_SITES recursive" error MASTER_SITES?= PATCH_SITES?= _MASTER_SITES_DEFAULT?= _PATCH_SITES_DEFAULT?= # Feed internal _{MASTER,PATCH}_SITES_n where n is a group designation # as per grouping rules (:something) # Organize _{MASTER,PATCH}_SITES_{DEFAULT,[^/:]+} according to grouping # rules (:something) . for _S in ${MASTER_SITES} _S_TEMP= ${_S:S/^${_S:C@/?:[^/:]+$@/@}//:S/^://} . if !empty(_S_TEMP) . for _group in ${_S_TEMP:S/,/ /g} _G_TEMP= ${_group} . if ${_G_TEMP:C/[a-zA-Z0-9_]//g} check-makevars:: @${ECHO_MSG} "The ${_S} MASTER_SITES line has" @${ECHO_MSG} "a group with invalid characters, only use [a-zA-Z0-9_]" @${FALSE} . endif . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be" @${ECHO_MSG} "used in group definitions. Please fix your MASTER_SITES" @${FALSE} . endif _MASTER_SITES_${_group}+= ${_S:C@^(.*/):[^/:]+$@\1@} . endfor . else _MASTER_SITES_DEFAULT+= ${_S:C@^(.*/):[^/:]+$@\1@} . endif . endfor . for _S in ${PATCH_SITES} _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} . if !empty(_S_TEMP) . for _group in ${_S_TEMP:S/,/ /g} _G_TEMP= ${_group} . if ${_G_TEMP:C/[a-zA-Z0-9_]//g} check-makevars:: @${ECHO_MSG} "The ${_S} PATCH_SITES line has" @${ECHO_MSG} "a group with invalid characters, only use [a-zA-Z0-9_]" @${FALSE} . endif . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: @${ECHO_MSG} "The words all, ALL and default are reserved and cannot be" @${ECHO_MSG} "used in group definitions. Please fix your PATCH_SITES" @${FALSE} . endif _PATCH_SITES_${_group}+= ${_S:C@^(.*/):[^/:]+$@\1@} . endfor . else _PATCH_SITES_DEFAULT+= ${_S:C@^(.*/):[^/:]+$@\1@} . endif . endfor # Feed internal _{MASTER,PATCH}_SITE_SUBDIR_n where n is a group designation # as per grouping rules (:something) # Organize _{MASTER,PATCH}_SITE_SUBDIR_{DEFAULT,[^/:]+} according to grouping # rules (:something) . for _S in ${MASTER_SITE_SUBDIR} _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} . if !empty(_S_TEMP) . for _group in ${_S_TEMP:S/,/ /g} _G_TEMP= ${_group} . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be" @${ECHO_MSG} "used in group definitions. Please fix your MASTER_SITE_SUBDIR" @${FALSE} . endif . if defined(_MASTER_SITES_${_group}) _MASTER_SITE_SUBDIR_${_group}+= ${_S:C@^(.*)/:[^/:]+$@\1@} . endif . endfor . else . if defined(_MASTER_SITES_DEFAULT) _MASTER_SITE_SUBDIR_DEFAULT+= ${_S:C@^(.*)/:[^/:]+$@\1@} . endif . endif . endfor . for _S in ${PATCH_SITE_SUBDIR} _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} . if !empty(_S_TEMP) . for _group in ${_S_TEMP:S/,/ /g} _G_TEMP= ${_group} . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be" @${ECHO_MSG} "used in group definitions. Please fix your PATCH_SITE_SUBDIR" @${FALSE} . endif . if defined(_PATCH_SITES_${_group}) _PATCH_SITE_SUBDIR_${_group}+= ${_S:C@^(.*)/:[^/:]+$@\1@} . endif . endfor . else . if defined(_PATCH_SITES_DEFAULT) _PATCH_SITE_SUBDIR_DEFAULT+= ${_S:C@^(.*)/:[^/:]+$@\1@} . endif . endif . endfor # Substitute subdirectory names # XXX simpler/faster solution but not the best space wise, suggestions please . for _S in ${MASTER_SITES} _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} . if !empty(_S_TEMP) . for _group in ${_S_TEMP:S/,/ /g} . if !defined(_MASTER_SITE_SUBDIR_${_group}) MASTER_SITES_TMP= ${_MASTER_SITES_${_group}:S^%SUBDIR%/^^} . else _S_TEMP_TEMP= ${_MASTER_SITES_${_group}:M*%SUBDIR%/*} . if empty(_S_TEMP_TEMP) MASTER_SITES_TMP= ${_MASTER_SITES_${_group}} . else MASTER_SITES_TMP= . for site in ${_MASTER_SITES_${_group}} _S_TEMP_TEMP= ${site:M*%SUBDIR%/*} . if empty(_S_TEMP_TEMP) MASTER_SITES_TMP+= ${site} . else . for dir in ${_MASTER_SITE_SUBDIR_${_group}} MASTER_SITES_TMP+= ${site:S^%SUBDIR%^\${dir}^} . endfor . endif . endfor . endif . endif _MASTER_SITES_${_group}:= ${MASTER_SITES_TMP} . endfor . endif . endfor . if defined(_MASTER_SITE_SUBDIR_DEFAULT) _S_TEMP= ${_MASTER_SITES_DEFAULT:M*%SUBDIR%/*} . if empty(_S_TEMP) MASTER_SITES_TMP= ${_MASTER_SITES_DEFAULT} . else MASTER_SITES_TMP= . for site in ${_MASTER_SITES_DEFAULT} _S_TEMP_TEMP= ${site:M*%SUBDIR%/*} . if empty(_S_TEMP_TEMP) MASTER_SITES_TMP+= ${site} . else . for dir in ${_MASTER_SITE_SUBDIR_DEFAULT} MASTER_SITES_TMP+= ${site:S^%SUBDIR%^\${dir}^} . endfor . endif . endfor . endif . else MASTER_SITES_TMP= ${_MASTER_SITES_DEFAULT:S^%SUBDIR%/^^} . endif _MASTER_SITES_DEFAULT:= ${MASTER_SITES_TMP} MASTER_SITES_TMP= . for _S in ${PATCH_SITES} _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} . if !empty(_S_TEMP) . for _group in ${_S_TEMP:S/,/ /g} . if !defined(_PATCH_SITE_SUBDIR_${_group}) PATCH_SITES_TMP= ${_PATCH_SITES_${_group}:S^%SUBDIR%/^^} . else _S_TEMP_TEMP= ${_PATCH_SITES_${_group}:M*%SUBDIR%/*} . if empty(_S_TEMP_TEMP) PATCH_SITES_TMP= ${_PATCH_SITES_${_group}} . else PATCH_SITES_TMP= . for site in ${_PATCH_SITES_${_group}} _S_TEMP_TEMP= ${site:M*%SUBDIR%/*} . if empty(_S_TEMP_TEMP) PATCH_SITES_TMP+= ${site} . else . for dir in ${_PATCH_SITE_SUBDIR_${_group}} PATCH_SITES_TMP+= ${site:S^%SUBDIR%^\${dir}^} . endfor . endif . endfor . endif . endif _PATCH_SITES_${_group}:= ${PATCH_SITES_TMP} . endfor . endif . endfor . if defined(_PATCH_SITE_SUBDIR_DEFAULT) _S_TEMP= ${_PATCH_SITES_DEFAULT:M*%SUBDIR%/*} . if empty(_S_TEMP) PATCH_SITES_TMP= ${_PATCH_SITES_DEFAULT} . else PATCH_SITES_TMP= . for site in ${_PATCH_SITES_DEFAULT} _S_TEMP_TEMP= ${site:M*%SUBDIR%/*} . if empty(_S_TEMP_TEMP) PATCH_SITES_TMP+= ${site} . else . for dir in ${_PATCH_SITE_SUBDIR_DEFAULT} PATCH_SITES_TMP+= ${site:S^%SUBDIR%^\${dir}^} . endfor . endif . endfor . endif . else PATCH_SITES_TMP= ${_PATCH_SITES_DEFAULT:S^%SUBDIR%/^^} . endif _PATCH_SITES_DEFAULT:= ${PATCH_SITES_TMP} PATCH_SITES_TMP= # The primary backup site. MASTER_SITE_BACKUP?= \ http://distcache.FreeBSD.org/ports-distfiles/${DIST_SUBDIR}/ MASTER_SITE_BACKUP:= ${MASTER_SITE_BACKUP:S^\${DIST_SUBDIR}/^^} # If the user has MASTER_SITE_FREEBSD set, go to the FreeBSD repository # for everything, but don't search it twice by appending it to the end. . if defined(MASTER_SITE_FREEBSD) _MASTER_SITE_OVERRIDE:= ${MASTER_SITE_BACKUP} _MASTER_SITE_BACKUP:= # empty . else _MASTER_SITE_OVERRIDE= ${MASTER_SITE_OVERRIDE} _MASTER_SITE_BACKUP= ${MASTER_SITE_BACKUP} . endif # Organize DISTFILES, PATCHFILES, _MASTER_SITES_ALL, _PATCH_SITES_ALL # according to grouping rules (:something) DISTFILES?= ${DISTNAME}${EXTRACT_SUFX} _MASTER_SITES_ALL= ${_MASTER_SITES_DEFAULT} _PATCH_SITES_ALL= ${_PATCH_SITES_DEFAULT} _G_TEMP= DEFAULT . for _D in ${DISTFILES} _D_TEMP= ${_D:S/^${_D:C/:[^:]+$//}//} . if !empty(_D_TEMP) . for _group in ${_D_TEMP:S/^://:S/,/ /g} . if !defined(_MASTER_SITES_${_group}) _G_TEMP_TEMP= ${_G_TEMP:M/${_group}/} . if empty(_G_TEMP_TEMP) _G_TEMP+= ${_group} _MASTER_SITES_ALL+= ${_MASTER_SITES_${_group}} . endif . endif . endfor _DISTFILES+= ${_D:C/:[^:]+$//} . else _DISTFILES+= ${_D} . endif . endfor _G_TEMP= DEFAULT . for _P in ${PATCHFILES} _P_TEMP= ${_P:C/:[^-:][^:]*$//} _P_groups= ${_P:S/^${_P:C/:[^:]+$//}//:S/^://} _P_file= ${_P_TEMP:C/:-[^:]+$//} _P_strip= ${_P_TEMP:S/^${_P_TEMP:C/:-[^:]*$//}//:S/^://} . if !empty(_P_groups) . for _group in ${_P_groups:S/,/ /g} . if !defined(_PATCH_SITES_${_group}) _G_TEMP_TEMP= ${_G_TEMP:M/${_group}/} . if empty(_G_TEMP_TEMP) _G_TEMP+= ${_group} _PATCH_SITES_ALL+= ${_PATCH_SITES_${_group}} . endif . endif . endfor . endif _PATCHFILES:= ${_PATCHFILES} ${_P_file} . if empty(_P_strip) _PATCHFILES2:= ${_PATCHFILES2} ${_P_file} . else _PATCHFILES2:= ${_PATCHFILES2} ${_P_file}:${_P_strip} . endif . endfor _P_groups= _P_file= _P_strip= _G_TEMP= _G_TEMP_TEMP= ALLFILES?= ${_DISTFILES} ${_PATCHFILES} # # Sort the master site list according to the patterns in MASTER_SORT # MASTER_SORT?= MASTER_SORT_REGEX?= MASTER_SORT_REGEX+= ${MASTER_SORT:S|.|\\.|g:S|^|://[^/]*|:S|$|/|} MASTER_SORT_AWK= BEGIN { RS = " "; ORS = " "; IGNORECASE = 1 ; gl = "${MASTER_SORT_REGEX:S|\\|\\\\|g}"; } . for srt in ${MASTER_SORT_REGEX} MASTER_SORT_AWK+= /${srt:S|/|\\/|g}/ { good["${srt:S|\\|\\\\|g}"] = good["${srt:S|\\|\\\\|g}"] " " $$0 ; next; } . endfor MASTER_SORT_AWK+= { rest = rest " " $$0; } END { n=split(gl, gla); for(i=1;i<=n;i++) { print good[gla[i]]; } print rest; } # # Hackery to enable simple fetch targets with several dynamic MASTER_SITES # _MASTER_SITES_ENV= _MASTER_SITES_DEFAULT=${_MASTER_SITES_DEFAULT:Q} . for _F in ${DISTFILES} _F_TEMP= ${_F:S/^${_F:C/:[^:]+$//}//:S/^://} . if !empty(_F_TEMP) . for _group in ${_F_TEMP:S/,/ /g} . if defined(_MASTER_SITES_${_group}) _MASTER_SITES_ENV+= _MASTER_SITES_${_group}=${_MASTER_SITES_${_group}:Q} . endif . endfor . endif . endfor _PATCH_SITES_ENV= _PATCH_SITES_DEFAULT=${_PATCH_SITES_DEFAULT:Q} . for _F in ${PATCHFILES} _F_TEMP= ${_F:S/^${_F:C/:[^-:][^:]*$//}//:S/^://} . if !empty(_F_TEMP) . for _group in ${_F_TEMP:S/,/ /g} . if defined(_PATCH_SITES_${_group}) _PATCH_SITES_ENV+= _PATCH_SITES_${_group}=${_PATCH_SITES_${_group}:Q} . endif . endfor . endif . endfor CKSUMFILES= ${ALLFILES} # List of all files, with ${DIST_SUBDIR} in front. Used for checksum. . if defined(DIST_SUBDIR) . if defined(CKSUMFILES) && ${CKSUMFILES}!="" _CKSUMFILES?= ${CKSUMFILES:S/^/${DIST_SUBDIR}\//} . endif . else _CKSUMFILES?= ${CKSUMFILES} . endif # This is what is actually going to be extracted, and is overridable # by user. EXTRACT_ONLY?= ${_DISTFILES} . if !target(maintainer) maintainer: @${ECHO_CMD} "${MAINTAINER}" . endif . if !defined(CATEGORIES) check-categories: @${ECHO_MSG} "${PKGNAME}: Makefile error: CATEGORIES is mandatory." @${FALSE} . else VALID_CATEGORIES+= accessibility afterstep arabic archivers astro audio \ benchmarks biology cad chinese comms converters \ databases deskutils devel dns docs \ editors education elisp emulators enlightenment finance french ftp \ games geography german gnome gnustep graphics \ hamradio haskell hebrew hungarian irc japanese java \ kde ${_KDE_CATEGORIES_SUPPORTED} kld korean \ lang linux lisp \ mail mate math mbone misc multimedia \ net net-im net-mgmt net-p2p net-vpn news \ parallel pear perl5 plan9 polish ports-mgmt portuguese \ print python ruby rubygems russian \ scheme science security shells spanish sysutils \ tcl textproc tk \ ukrainian vietnamese wayland windowmaker www \ x11 x11-clocks x11-drivers x11-fm x11-fonts x11-servers x11-themes \ x11-toolkits x11-wm xfce zope base check-categories: . for cat in ${CATEGORIES} . if empty(VALID_CATEGORIES:M${cat}) @${ECHO_MSG} "${PKGNAME}: Makefile error: category ${cat} not in list of valid categories."; \ ${FALSE}; . endif . endfor . endif PKGREPOSITORYSUBDIR?= All PKGREPOSITORY?= ${PACKAGES}/${PKGREPOSITORYSUBDIR} . if exists(${PACKAGES}) PACKAGES:= ${PACKAGES:S/:/\:/g} _HAVE_PACKAGES= yes PKGFILE?= ${PKGREPOSITORY}/${PKGNAME}${PKG_SUFX} . else PKGFILE?= ${.CURDIR}/${PKGNAME}${PKG_SUFX} . endif WRKDIR_PKGFILE= ${WRKDIR}/pkg/${PKGNAME}${PKG_SUFX} # The "latest version" link -- ${PKGNAME} minus everthing after the last '-' PKGLATESTREPOSITORY?= ${PACKAGES}/Latest PKGBASE?= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX} PKGLATESTFILE= ${PKGLATESTREPOSITORY}/${PKGBASE}${PKG_SUFX} . if ${PKG_COMPRESSION_FORMAT} == txz PKGOLDLATESTFILE= ${PKGLATESTREPOSITORY}/${PKGBASE}.${PKG_COMPRESSION_FORMAT} # Temporary workaround to be deleted once every supported version of FreeBSD # have a bootstrap which handles the pkg extension. PKGOLDSIGFILE= ${PKGLATESTREPOSITORY}/${PKGBASE}.${PKG_COMPRESSION_FORMAT}.sig . endif CONFIGURE_SCRIPT?= configure CONFIGURE_CMD?= ./${CONFIGURE_SCRIPT} CONFIGURE_TARGET?= ${HOSTARCH}-portbld-${OPSYS:tl}${OSREL} CONFIGURE_TARGET:= ${CONFIGURE_TARGET:S/--build=//} CONFIGURE_LOG?= config.log # A default message to print if do-configure fails. CONFIGURE_FAIL_MESSAGE?= "Please report the problem to ${MAINTAINER} [maintainer] and attach the \"${CONFIGURE_WRKSRC}/${CONFIGURE_LOG}\" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. a ${PKG_INFO} -Ea)." CONFIG_SITE?= ${PORTSDIR}/Templates/config.site . if defined(GNU_CONFIGURE) # Maximum command line length . if !defined(CONFIGURE_MAX_CMD_LEN) CONFIGURE_MAX_CMD_LEN!= ${SYSCTL} -n kern.argmax . endif _EXPORTED_VARS+= CONFIGURE_MAX_CMD_LEN GNU_CONFIGURE_PREFIX?= ${PREFIX} GNU_CONFIGURE_MANPREFIX?= ${MANPREFIX} CONFIGURE_ARGS+= --prefix=${GNU_CONFIGURE_PREFIX} $${_LATE_CONFIGURE_ARGS} . if defined(CROSS_TOOLCHAIN) CROSS_HOST= ${ARCH:S/amd64/x86_64/}-unknown-${OPSYS:tl}${OSREL} CONFIGURE_ARGS+= --host=${CROSS_HOST} . endif CONFIGURE_ENV+= CONFIG_SITE=${CONFIG_SITE} lt_cv_sys_max_cmd_len=${CONFIGURE_MAX_CMD_LEN} HAS_CONFIGURE= yes SET_LATE_CONFIGURE_ARGS= \ _LATE_CONFIGURE_ARGS="" ; \ if [ -z "${CONFIGURE_ARGS:M--localstatedir=*:Q}" ] && \ ${CONFIGURE_CMD} --help 2>&1 | ${GREP} -- --localstatedir > /dev/null; then \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} --localstatedir=/var" ; \ fi ; \ if [ ! -z "`${CONFIGURE_CMD} --help 2>&1 | ${GREP} -- '--mandir'`" ]; then \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} --mandir=${GNU_CONFIGURE_MANPREFIX}/man" ; \ fi ; \ if [ ! -z "`${CONFIGURE_CMD} --help 2>&1 | ${GREP} -- '--disable-silent-rules'`" ]; then \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} --disable-silent-rules" ; \ fi ; \ if [ ! -z "`${CONFIGURE_CMD} --help 2>&1 | ${GREP} -- '--enable-jobserver\[.*\#\]'`" ]; then \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} --enable-jobserver=${MAKE_JOBS_NUMBER}" ; \ fi ; \ if [ ! -z "`${CONFIGURE_CMD} --help 2>&1 | ${GREP} -- '--infodir'`" ]; then \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} --infodir=${GNU_CONFIGURE_PREFIX}/${INFO_PATH}/${INFO_SUBDIR}" ; \ fi ; \ if [ -z "`${CONFIGURE_CMD} --version 2>&1 | ${EGREP} -i '(autoconf.*2\.13|Unrecognized option)'`" ]; then \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} --build=${CONFIGURE_TARGET}" ; \ else \ _LATE_CONFIGURE_ARGS="$${_LATE_CONFIGURE_ARGS} ${CONFIGURE_TARGET}" ; \ fi ; . endif # Passed to most of script invocations SCRIPTS_ENV+= CURDIR=${MASTERDIR} DISTDIR=${DISTDIR} \ WRKDIR=${WRKDIR} WRKSRC=${WRKSRC} PATCHDIR=${PATCHDIR} \ SCRIPTDIR=${SCRIPTDIR} FILESDIR=${FILESDIR} \ PORTSDIR=${PORTSDIR} PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} . if defined(BATCH) SCRIPTS_ENV+= BATCH=yes . endif . if ${PREFIX} == /usr MANPREFIX?= /usr/share . else MANPREFIX?= ${PREFIX} MANDIRS+= ${PREFIX}/share/man . endif MANDIRS+= ${MANPREFIX}/man . for sect in 1 2 3 4 5 6 7 8 9 MAN${sect}PREFIX?= ${MANPREFIX} . endfor MANLPREFIX?= ${MANPREFIX} MANNPREFIX?= ${MANPREFIX} INFO_PATH?= share/info . if defined(INFO) RUN_DEPENDS+= indexinfo:print/indexinfo . for D in ${INFO:H} RD:= ${D} . if ${RD} != "." . if !defined(INFO_SUBDIR) INFO_SUBDIR:= ${RD} . elif ${INFO_SUBDIR} != ${RD} BROKEN= only one subdirectory in INFO is allowed . endif . endif .undef RD . endfor . endif DOCSDIR_REL?= ${DOCSDIR:S,^${PREFIX}/,,} EXAMPLESDIR_REL?= ${EXAMPLESDIR:S,^${PREFIX}/,,} DATADIR_REL?= ${DATADIR:S,^${PREFIX}/,,} WWWDIR_REL?= ${WWWDIR:S,^${PREFIX}/,,} ETCDIR_REL?= ${ETCDIR:S,^${PREFIX}/,,} PLIST_SUB+= DOCSDIR="${DOCSDIR_REL}" \ EXAMPLESDIR="${EXAMPLESDIR_REL}" \ DATADIR="${DATADIR_REL}" \ WWWDIR="${WWWDIR_REL}" \ ETCDIR="${ETCDIR_REL}" DESKTOPDIR?= ${PREFIX}/share/applications .MAIN: all ################################################################ # Many ways to disable a port. # # If we're in BATCH mode and the port is interactive, or we're # in interactive mode and the port is non-interactive, skip all # the important targets. The reason we have two modes is that # one might want to leave a build in BATCH mode running # overnight, then come back in the morning and do _only_ the # interactive ones that required your intervention. # # Ignore ports that can't be resold if building for a CDROM. # # Don't build a port if it's restricted and we don't want to get # into that. # # Don't build a port if it's broken, unless we're running a parallel # build (in case it's fixed). # # Don't build a port if it's forbidden for whatever reason. # # Don't build a port if the system is too old. ################################################################ # Check the machine architectures . if defined(ONLY_FOR_ARCHS) . for __ARCH in ${ONLY_FOR_ARCHS} . if ${ARCH:M${__ARCH}} != "" __ARCH_OK?= 1 . endif . endfor . else __ARCH_OK?= 1 . endif . if defined(NOT_FOR_ARCHS) . for __NARCH in ${NOT_FOR_ARCHS} . if ${ARCH:M${__NARCH}} != "" .undef __ARCH_OK . endif . endfor . endif . if !defined(__ARCH_OK) . if defined(ONLY_FOR_ARCHS) IGNORE= is only for ${ONLY_FOR_ARCHS:O}, . else # defined(NOT_FOR_ARCHS) IGNORE= does not run on ${NOT_FOR_ARCHS:O}, . endif IGNORE+= while you are running ${ARCH} . if defined(ONLY_FOR_ARCHS_REASON_${ARCH}) IGNORE+= (reason: ${ONLY_FOR_ARCHS_REASON_${ARCH}}) . elif defined(ONLY_FOR_ARCHS_REASON) IGNORE+= (reason: ${ONLY_FOR_ARCHS_REASON}) . endif . if defined(NOT_FOR_ARCHS_REASON_${ARCH}) IGNORE+= (reason: ${NOT_FOR_ARCHS_REASON_${ARCH}}) . elif defined(NOT_FOR_ARCHS_REASON) IGNORE+= (reason: ${NOT_FOR_ARCHS_REASON}) . endif . endif # Check the user interaction and legal issues . if !defined(NO_IGNORE) . for v in ${OSREL} ${OSREL:R} . for f in ${FLAVOR} . if defined($f_IGNORE_${OPSYS}_${v}) IGNORE+= "${${f}_IGNORE_${OPSYS}_${v}}" . endif . endfor . endfor . if (defined(IS_INTERACTIVE) && defined(BATCH)) IGNORE= is an interactive port . elif (!defined(IS_INTERACTIVE) && defined(INTERACTIVE)) IGNORE= is not an interactive port . elif (defined(NO_CDROM) && defined(FOR_CDROM)) IGNORE= may not be placed on a CDROM: ${NO_CDROM} . elif (defined(RESTRICTED) && defined(NO_RESTRICTED)) IGNORE= is restricted: ${RESTRICTED} . elif (defined(NO_PACKAGE) && defined(PACKAGE_BUILDING)) IGNORE= may not be packaged: ${NO_PACKAGE} . elif defined(IGNORE_${ARCH}) IGNORE= ${IGNORE_${ARCH}} . elif defined(IGNORE_${OPSYS}_${OSREL:R}_${ARCH}) IGNORE= ${IGNORE_${OPSYS}_${OSREL:R}_${ARCH}} . elif defined(IGNORE_${OPSYS}_${OSREL:R}) IGNORE= ${IGNORE_${OPSYS}_${OSREL:R}} . elif defined(IGNORE_${OPSYS}) IGNORE= ${IGNORE_${OPSYS}} . elif defined(BROKEN) . if !defined(TRYBROKEN) IGNORE= is marked as broken: ${BROKEN} . endif . elif defined(BROKEN_${ARCH}) . if !defined(TRYBROKEN) IGNORE= is marked as broken on ${ARCH}: ${BROKEN_${ARCH}} . endif . elif defined(BROKEN_${OPSYS}_${OSREL:R}_${ARCH}) . if !defined(TRYBROKEN) IGNORE= is marked as broken on ${OPSYS} ${OSREL} ${ARCH}: ${BROKEN_${OPSYS}_${OSREL:R}_${ARCH}} . endif . elif defined(BROKEN_${OPSYS}_${OSREL:R}) . if !defined(TRYBROKEN) IGNORE= is marked as broken on ${OPSYS} ${OSREL}: ${BROKEN_${OPSYS}_${OSREL:R}} . endif . elif defined(BROKEN_${OPSYS}) . if !defined(TRYBROKEN) IGNORE= is marked as broken on ${OPSYS}: ${BROKEN_${OPSYS}} . endif . elif defined(FORBIDDEN) IGNORE= is forbidden: ${FORBIDDEN} . endif # Define the text to be output to LEGAL . if defined(LEGAL_TEXT) LEGAL= ${LEGAL_TEXT} . elif defined(RESTRICTED) LEGAL= ${RESTRICTED} . elif defined(NO_CDROM) LEGAL= ${NO_CDROM} . elif defined(NO_PACKAGE) && ! defined(LEGAL_PACKAGE) LEGAL= ${NO_PACKAGE} . endif . if (defined(MANUAL_PACKAGE_BUILD) && defined(PACKAGE_BUILDING)) IGNORE= has to be built manually: ${MANUAL_PACKAGE_BUILD} clean: @${IGNORECMD} . endif . if defined(IGNORE) . if defined(IGNORE_SILENT) IGNORECMD= ${DO_NADA} . else IGNORECMD= ${ECHO_MSG} "===> ${PKGNAME} "${IGNORE:Q}. | ${FMT_80} ; exit 1 . endif _TARGETS= check-sanity fetch checksum extract patch configure all build \ install reinstall test package stage restage . for target in ${_TARGETS} . if !target(${target}) ${target}: @${IGNORECMD} . if defined(INSTALLS_DEPENDS) @${FALSE} . endif . endif . endfor . endif . endif # !defined(NO_IGNORE) ignorelist: . if defined(IGNORE) || defined(NO_PACKAGE) ignorelist: package-name . endif ignorelist-verbose: . if defined(IGNORE) @${ECHO_CMD} "${PKGNAME}|IGNORE: "${IGNORE:Q} . elif defined(NO_PACKAGE) @${ECHO_CMD} "${PKGNAME}|NO_PACKAGE: "${NO_PACKAGE:Q} . endif ################################################################ # Clean directories for ftp or CDROM. ################################################################ . if !defined(LICENSE) . if defined(RESTRICTED) clean-restricted: delete-distfiles delete-package clean-restricted-list: delete-distfiles-list delete-package-list RESTRICTED_FILES?= ${_DISTFILES} ${_PATCHFILES} . else clean-restricted: clean-restricted-list: . endif . if defined(NO_CDROM) clean-for-cdrom: delete-distfiles delete-package clean-for-cdrom-list: delete-distfiles-list delete-package-list RESTRICTED_FILES?= ${_DISTFILES} ${_PATCHFILES} . else clean-for-cdrom: clean-for-cdrom-list: . endif . endif # !defined(LICENSE) . if defined(ALL_HOOK) all: @cd ${.CURDIR} && ${SETENV} CURDIR=${.CURDIR} DISTNAME=${DISTNAME} \ DISTDIR=${DISTDIR} WRKDIR=${WRKDIR} WRKSRC=${WRKSRC} \ PATCHDIR=${PATCHDIR} SCRIPTDIR=${SCRIPTDIR} \ FILESDIR=${FILESDIR} PORTSDIR=${PORTSDIR} PREFIX=${PREFIX} \ BUILD_DEPENDS="${BUILD_DEPENDS}" RUN_DEPENDS="${RUN_DEPENDS}" \ CONFLICTS="${CONFLICTS}" \ ${ALL_HOOK} . endif . if !target(all) all: stage . endif . if !defined(DEPENDS_TARGET) . if defined(DEPENDS_PRECLEAN) DEPENDS_TARGET= clean DEPENDS_ARGS= NOCLEANDEPENDS=yes . endif . if make(reinstall) DEPENDS_TARGET+= reinstall . else DEPENDS_TARGET+= install . endif . if defined(DEPENDS_CLEAN) DEPENDS_TARGET+= clean DEPENDS_ARGS+= NOCLEANDEPENDS=yes . endif . endif . if defined(USE_GITLAB) && !${USE_GITLAB:Mnodefault} && empty(GL_COMMIT_DEFAULT) check-makevars:: @${ECHO_MSG} "GL_COMMIT is a required 40 character hash for use USE_GITLAB" @${FALSE} . endif ################################################################ # # Do preliminary work to detect if we need to run the config # target or not. # ################################################################ . if ((!defined(OPTIONS_DEFINE) && !defined(OPTIONS_SINGLE) && !defined(OPTIONS_MULTI)) \ && !defined(OPTIONS_GROUP) && !defined(OPTIONS_RADIO) \ || defined(CONFIG_DONE_${PKGBASE:tu}) || \ defined(PACKAGE_BUILDING) || defined(BATCH)) _OPTIONS_OK=yes . endif ################################################################ # The following are used to create easy dummy targets for # disabling some bit of default target behavior you don't want. # They still check to see if the target exists, and if so don't # do anything, since you might want to set this globally for a # group of ports in a Makefile.inc, but still be able to # override from an individual Makefile. ################################################################ # Disable build . if defined(NO_BUILD) && !target(build) build: configure @${TOUCH} ${TOUCH_FLAGS} ${BUILD_COOKIE} . endif # Disable package . if defined(NO_PACKAGE) && !target(package) package: . if !defined(IGNORE_SILENT) @${ECHO_MSG} "===> ${PKGNAME} may not be packaged: "${NO_PACKAGE:Q}. . endif . endif ################################################################ # More standard targets start here. # # These are the body of the build/install framework. If you are # not happy with the default actions, and you can't solve it by # adding pre-* or post-* targets/scripts, override these. ################################################################ . if defined(TRYBROKEN) && defined(BROKEN) buildanyway-message: @${ECHO_MSG} "Trying build of ${PKGNAME} even though it is marked BROKEN." . endif # Warn user about deprecated packages. Advisory only. . if !target(check-deprecated) # Try and keep these messages in sync with the ones in Mk/Scripts/create-manifest.sh check-deprecated: . if ${MAINTAINER} == "ports@FreeBSD.org" @${ECHO_MSG} "===> NOTICE:" @${ECHO_MSG} @${ECHO_MSG} "The ${PORTNAME} port currently does not have a maintainer. As a result, it is" @${ECHO_MSG} "more likely to have unresolved issues, not be up-to-date, or even be removed in" @${ECHO_MSG} "the future. To volunteer to maintain this port, please create an issue at:" @${ECHO_MSG} @${ECHO_MSG} "https://bugs.freebsd.org/bugzilla" @${ECHO_MSG} @${ECHO_MSG} "More information about port maintainership is available at:" @${ECHO_MSG} @${ECHO_MSG} "https://docs.freebsd.org/en/articles/contributing/#ports-contributing" @${ECHO_MSG} . endif . if defined(DEPRECATED) @${ECHO_MSG} "===> NOTICE:" @${ECHO_MSG} @${ECHO_MSG} "This port is deprecated; you may wish to reconsider installing it:" @${ECHO_MSG} @${ECHO_MSG} ${DEPRECATED:Q}. @${ECHO_MSG} . if defined(EXPIRATION_DATE) @${ECHO_MSG} "It is scheduled to be removed on or after ${EXPIRATION_DATE}." @${ECHO_MSG} . endif . endif . endif # Check if the port is listed in the vulnerability database AUDITFILE?= ${PKG_DBDIR}/vuln.xml check-vulnerable: . if !defined(DISABLE_VULNERABILITIES) && !defined(PACKAGE_BUILDING) \ && exists(${AUDITFILE}) @${SETENV} \ dp_ECHO_MSG="${ECHO_MSG}" \ dp_PKG_BIN="${PKG_BIN}" \ dp_PORTNAME="${PORTNAME}" \ dp_PKGNAME="${PKGNAME}" \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ ${SH} ${SCRIPTSDIR}/check-vulnerable.sh . endif # Quote simply quote all variables, except FETCH_ENV, some ports are creative # with it, and it needs to be quoted twice to pass through the echo/eval in # do-fetch. _DO_FETCH_ENV= \ dp_DISABLE_SIZE='${DISABLE_SIZE}' \ dp_DISTDIR='${_DISTDIR}' \ dp_DISTINFO_FILE='${DISTINFO_FILE}' \ dp_DIST_SUBDIR='${DIST_SUBDIR}' \ dp_ECHO_MSG='${ECHO_MSG}' \ dp_FETCH_AFTER_ARGS='${FETCH_AFTER_ARGS}' \ dp_FETCH_BEFORE_ARGS='${FETCH_BEFORE_ARGS}' \ dp_FETCH_CMD='${FETCH_CMD}' \ dp_FETCH_ENV=${FETCH_ENV:Q} \ dp_FORCE_FETCH_ALL='${FORCE_FETCH_ALL}' \ dp_FORCE_FETCH_LIST='${FORCE_FETCH_LIST}' \ dp_MASTER_SITE_BACKUP='${_MASTER_SITE_BACKUP}' \ dp_MASTER_SITE_OVERRIDE='${_MASTER_SITE_OVERRIDE}' \ dp_MASTER_SORT_AWK='${MASTER_SORT_AWK}' \ dp_NO_CHECKSUM='${NO_CHECKSUM}' \ dp_RANDOMIZE_SITES='${_RANDOMIZE_SITES}' \ dp_SCRIPTSDIR='${SCRIPTSDIR}' \ dp_TARGET='${.TARGET}' . if defined(DEVELOPER) _DO_FETCH_ENV+= dp_DEVELOPER=yes . else _DO_FETCH_ENV+= dp_DEVELOPER= . endif # Fetch . if !target(do-fetch) do-fetch: . if !empty(DISTFILES) @${SETENV} \ ${_DO_FETCH_ENV} ${_MASTER_SITES_ENV} \ dp_SITE_FLAVOR=MASTER \ ${SH} ${SCRIPTSDIR}/do-fetch.sh ${DISTFILES:C/.*/'&'/} . endif . if defined(PATCHFILES) && !empty(PATCHFILES) @${SETENV} \ ${_DO_FETCH_ENV} ${_PATCH_SITES_ENV} \ dp_SITE_FLAVOR=PATCH \ ${SH} ${SCRIPTSDIR}/do-fetch.sh ${PATCHFILES:C/:-p[0-9]//:C/.*/'&'/} . endif . endif # # Prints out a list of files to fetch (useful to do a batch fetch) . if !target(fetch-list) fetch-list: . if !empty(DISTFILES) @${SETENV} \ ${_DO_FETCH_ENV} ${_MASTER_SITES_ENV} \ dp_SITE_FLAVOR=MASTER \ ${SH} ${SCRIPTSDIR}/do-fetch.sh ${DISTFILES:C/.*/'&'/} . endif . if defined(PATCHFILES) && !empty(PATCHFILES) @${SETENV} \ ${_DO_FETCH_ENV} ${_PATCH_SITES_ENV} \ dp_SITE_FLAVOR=PATCH \ ${SH} ${SCRIPTSDIR}/do-fetch.sh ${PATCHFILES:C/:-p[0-9]//:C/.*/'&'/} . endif . endif # Used by fetch-urlall-list and fetch-url-list . if !target(fetch-url-list-int) fetch-url-list-int: . if !empty(DISTFILES) @${SETENV} \ ${_DO_FETCH_ENV} ${_MASTER_SITES_ENV} \ dp_SITE_FLAVOR=MASTER \ ${SH} ${SCRIPTSDIR}/do-fetch.sh ${DISTFILES:C/.*/'&'/} . endif . if defined(PATCHFILES) && !empty(PATCHFILES) @${SETENV} \ ${_DO_FETCH_ENV} ${_PATCH_SITES_ENV} \ dp_SITE_FLAVOR=PATCH \ ${SH} ${SCRIPTSDIR}/do-fetch.sh ${PATCHFILES:C/:-p[0-9]//:C/.*/'&'/} . endif . endif # Prints out all the URL for all the DISTFILES and PATCHFILES. . if !target(fetch-urlall-list) fetch-urlall-list: @cd ${.CURDIR} && ${SETENV} FORCE_FETCH_ALL=yes ${MAKE} fetch-url-list-int . endif # Prints the URL for all the DISTFILES and PATCHFILES that are not here . if !target(fetch-url-list) fetch-url-list: fetch-url-list-int . endif # Extract clean-wrkdir: @${RM} -r ${WRKDIR} . if !target(do-extract) do-extract: ${EXTRACT_WRKDIR} @for file in ${EXTRACT_ONLY}; do \ if ! (cd ${EXTRACT_WRKDIR} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/$$file ${EXTRACT_AFTER_ARGS});\ then \ ${ECHO_MSG} "===> Failed to extract \"${_DISTDIR}/$$file\"."; \ exit 1; \ fi; \ done @if [ ${UID} = 0 ]; then \ ${CHMOD} -R ug-s ${WRKDIR}; \ ${CHOWN} -R 0:0 ${WRKDIR}; \ fi . endif # Patch . if !target(do-patch) do-patch: @${SETENV} \ dp_BZCAT="${BZCAT}" \ dp_CAT="${CAT}" \ dp_DISTDIR="${_DISTDIR}" \ dp_ECHO_MSG="${ECHO_MSG}" \ dp_EXTRA_PATCHES="${EXTRA_PATCHES}" \ dp_EXTRA_PATCH_TREE="${EXTRA_PATCH_TREE}" \ dp_GZCAT="${GZCAT}" \ dp_OPSYS="${OPSYS}" \ dp_PATCH="${PATCH}" \ dp_PATCHDIR="${PATCHDIR}" \ dp_PATCHFILES="${_PATCHFILES2}" \ dp_PATCH_ARGS=${PATCH_ARGS:Q} \ dp_PATCH_DEBUG_TMP="${PATCH_DEBUG_TMP}" \ dp_PATCH_DIST_ARGS="${PATCH_DIST_ARGS}" \ dp_PATCH_CONTINUE_ON_FAIL=${PATCH_CONTINUE_ON_FAIL:Dyes} \ dp_PATCH_SILENT="${PATCH_SILENT}" \ dp_PATCH_WRKSRC=${PATCH_WRKSRC} \ dp_PKGNAME="${PKGNAME}" \ dp_PKGORIGIN="${PKGORIGIN}" \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ dp_UNZIP_NATIVE_CMD="${UNZIP_NATIVE_CMD}" \ dp_XZCAT="${XZCAT}" \ ${SH} ${SCRIPTSDIR}/do-patch.sh . endif . if !target(run-autotools-fixup) run-autotools-fixup: # Work around an issue where FreeBSD 10.0 is detected as FreeBSD 1.x. . if !defined(WITHOUT_FBSD10_FIX) -@for f in `${FIND} ${WRKDIR} -type f \( -name config.libpath -o \ -name config.rpath -o -name configure -o -name libtool.m4 -o \ -name ltconfig -o -name libtool -o -name aclocal.m4 -o \ -name acinclude.m4 \)` ; do \ ${SED} -i.fbsd10bak \ -e 's|freebsd1\*)|freebsd1.\*)|g' \ -e 's|freebsd\[12\]\*)|freebsd[12].*)|g' \ -e 's|freebsd\[123\]\*)|freebsd[123].*)|g' \ -e 's|freebsd\[\[12\]\]\*)|freebsd[[12]].*)|g' \ -e 's|freebsd\[\[123\]\]\*)|freebsd[[123]].*)|g' \ $${f} ; \ cmp -s $${f}.fbsd10bak $${f} || \ ${ECHO_MSG} "===> FreeBSD 10 autotools fix applied to $${f}"; \ ${TOUCH} ${TOUCH_FLAGS} -mr $${f}.fbsd10bak $${f} ; \ ${RM} $${f}.fbsd10bak ; \ done . endif . endif # Configure . if !target(do-configure) do-configure: @if [ -f ${SCRIPTDIR}/configure ]; then \ cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \ ${SCRIPTDIR}/configure; \ fi . if defined(GNU_CONFIGURE) @CONFIG_GUESS_DIRS=$$(${FIND} ${WRKDIR} -name config.guess -o -name config.sub \ | ${XARGS} -n 1 ${DIRNAME}); \ for _D in $${CONFIG_GUESS_DIRS}; do \ ${RM} $${_D}/config.guess; \ ${CP} ${TEMPLATES}/config.guess $${_D}/config.guess; \ ${CHMOD} a+rx $${_D}/config.guess; \ ${RM} $${_D}/config.sub; \ ${CP} ${TEMPLATES}/config.sub $${_D}/config.sub; \ ${CHMOD} a+rx $${_D}/config.sub; \ done . endif . if defined(HAS_CONFIGURE) @${MKDIR} ${CONFIGURE_WRKSRC} @(cd ${CONFIGURE_WRKSRC} && \ ${SET_LATE_CONFIGURE_ARGS} \ if ! ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \ CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" CXXFLAGS="${CXXFLAGS}" \ LDFLAGS="${LDFLAGS}" LIBS="${LIBS}" \ INSTALL="/usr/bin/install -c" \ INSTALL_DATA="${INSTALL_DATA}" \ INSTALL_LIB="${INSTALL_LIB}" \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ INSTALL_SCRIPT="${INSTALL_SCRIPT}" \ ${CONFIGURE_ENV} ${CONFIGURE_CMD} ${CONFIGURE_ARGS}; then \ ${ECHO_MSG} "===> Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \ (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | ${FMT_80} ; \ ${FALSE}; \ fi) . endif . endif # Build DO_MAKE_BUILD?= ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} ${MAKE_ARGS:N${DESTDIRNAME}=*} . if !target(do-build) do-build: @(cd ${BUILD_WRKSRC}; if ! ${DO_MAKE_BUILD} ${ALL_TARGET}; then \ if [ -n "${BUILD_FAIL_MESSAGE}" ] ; then \ ${ECHO_MSG} "===> Compilation failed unexpectedly."; \ (${ECHO_CMD} "${BUILD_FAIL_MESSAGE}") | ${FMT_80} ; \ fi; \ ${FALSE}; \ fi) . endif # Check conflicts . if !target(check-conflicts) check-conflicts: check-build-conflicts check-install-conflicts . endif . if !target(check-build-conflicts) check-build-conflicts: . if ( defined(CONFLICTS) || defined(CONFLICTS_BUILD) ) && !defined(DISABLE_CONFLICTS) && !defined(DEFER_CONFLICTS_CHECK) @conflicts_with=$$(${PKG_QUERY} -ge "%n != ${PKGBASE}" "%n-%v" ${CONFLICTS:C/.+/'&'/} ${CONFLICTS_BUILD:C/.+/'&'/} 2>/dev/null || : ; ) ; \ if [ -n "$${conflicts_with}" ]; then \ ${ECHO_MSG}; \ ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ for entry in $${conflicts_with}; do \ ${ECHO_MSG} " $${entry}"; \ done; \ ${ECHO_MSG}; \ ${ECHO_MSG} " They will not build together."; \ ${ECHO_MSG} " Please remove them first with pkg delete."; \ exit 1;\ fi . endif . endif . if !target(identify-install-conflicts) CONFLICT_WARNING_WAIT?= 10 identify-install-conflicts: . if ( defined(CONFLICTS) || defined(CONFLICTS_INSTALL) ) && !defined(DISABLE_CONFLICTS) @conflicts_with=$$(${PKG_QUERY} -ge "%n != ${PKGBASE}" "%n-%v" ${CONFLICTS:C/.+/'&'/} ${CONFLICTS_INSTALL:C/.+/'&'/} 2>/dev/null || : ; ) ; \ if [ -n "$${conflicts_with}" ]; then \ ${ECHO_MSG}; \ ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ for entry in $${conflicts_with}; do \ ${ECHO_MSG} " $${entry}"; \ done; \ ${ECHO_MSG}; \ ${ECHO_MSG} " They install files into the same place."; \ ${ECHO_MSG} " You may want to stop build with Ctrl + C."; \ sleep ${CONFLICT_WARNING_WAIT}; \ fi . endif . endif . if !target(check-install-conflicts) check-install-conflicts: . if ( defined(CONFLICTS) || defined(CONFLICTS_INSTALL) || ( defined(CONFLICTS_BUILD) && defined(DEFER_CONFLICTS_CHECK) ) ) && !defined(DISABLE_CONFLICTS) . if defined(DEFER_CONFLICTS_CHECK) @conflicts_with=$$(${PKG_QUERY} -ge "%n != ${PKGBASE}" "%n-%v" ${CONFLICTS:C/.+/'&'/} ${CONFLICTS_BUILD:C/.+/'&'/} ${CONFLICTS_INSTALL:C/.+/'&'/} 2>/dev/null || : ; ) ; \ if [ -n "$${conflicts_with}" ]; then \ ${ECHO_MSG}; \ ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ for entry in $${conflicts_with}; do \ ${ECHO_MSG} " $${entry}"; \ done; \ ${ECHO_MSG}; \ ${ECHO_MSG} " Please remove them first with pkg delete."; \ exit 1; \ fi . else @conflicts_with=$$(${PKG_QUERY} -ge "%n != ${PKGBASE}" "%n-%v" ${CONFLICTS:C/.+/'&'/} ${CONFLICTS_INSTALL:C/.+/'&'/} 2>/dev/null || : ; ) ; \ if [ -n "$${conflicts_with}" ]; then \ ${ECHO_MSG}; \ ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ for entry in $${conflicts_with}; do \ ${ECHO_MSG} " $${entry}"; \ done; \ ${ECHO_MSG}; \ ${ECHO_MSG} " They install files into the same place."; \ ${ECHO_MSG} " Please remove them first with pkg delete."; \ exit 1; \ fi . endif # defined(DEFER_CONFLICTS_CHECK) . endif . endif # Install . if !target(do-install) && !defined(NO_INSTALL) do-install: @(cd ${INSTALL_WRKSRC} && ${SETENV} ${MAKE_ENV} ${FAKEROOT} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}) . endif # Test . if !target(do-test) && defined(TEST_TARGET) DO_MAKE_TEST?= ${SETENV} ${TEST_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${TEST_ARGS:N${DESTDIRNAME}=*} do-test: @(cd ${TEST_WRKSRC}; if ! ${DO_MAKE_TEST} ${TEST_TARGET}; then \ if [ -n "${TEST_FAIL_MESSAGE}" ] ; then \ ${ECHO_MSG} "===> Tests failed unexpectedly."; \ (${ECHO_CMD} "${TEST_FAIL_MESSAGE}") | ${FMT_80} ; \ fi; \ ${FALSE}; \ fi) . endif # Package . if defined(_HAVE_PACKAGES) _EXTRA_PACKAGE_TARGET_DEP+= ${PKGFILE} _PORTS_DIRECTORIES+= ${PKGREPOSITORY} ${PKGFILE}: ${WRKDIR_PKGFILE} ${PKGREPOSITORY} @${LN} -f ${WRKDIR_PKGFILE} ${PKGFILE} 2>/dev/null \ || ${CP} -f ${WRKDIR_PKGFILE} ${PKGFILE} . if ${PKGORIGIN} == "ports-mgmt/pkg" || ${PKGORIGIN} == "ports-mgmt/pkg-devel" _EXTRA_PACKAGE_TARGET_DEP+= ${PKGLATESTREPOSITORY} _PORTS_DIRECTORIES+= ${PKGLATESTREPOSITORY} _EXTRA_PACKAGE_TARGET_DEP+= ${PKGLATESTFILE} ${PKGLATESTFILE}: ${PKGFILE} ${PKGLATESTREPOSITORY} ${INSTALL} -l rs ${PKGFILE} ${PKGLATESTFILE} . if !defined(_PKG_TRANSITIONING_TO_NEW_EXT) && ${PKG_COMPRESSION_FORMAT} == txz _EXTRA_PACKAGE_TARGET_DEP+= ${PKGOLDLATESTFILE} ${PKGOLDSIGFILE} ${PKGOLDLATESTFILE}: ${PKGFILE} ${PKGLATESTREPOSITORY} ${INSTALL} -l rs ${PKGFILE} ${PKGOLDLATESTFILE} # Temporary workaround to be deleted once every supported version of FreeBSD # have a bootstrap which handles the pkg extension. ${PKGOLDSIGFILE}: ${PKGLATESTREPOSITORY} ${INSTALL} -l rs pkg.pkg.sig ${PKGOLDSIGFILE} . endif . endif . endif # from here this will become a loop for subpackages ${WRKDIR_PKGFILE}: ${TMPPLIST} create-manifest ${WRKDIR}/pkg @if ! ${SETENV} ${PKG_ENV} ${PKG_CREATE} ${PKG_CREATE_ARGS} -m ${METADIR} -p ${TMPPLIST} -o ${WRKDIR}/pkg ${PKGNAME}; then \ cd ${.CURDIR} && eval ${MAKE} delete-package >/dev/null; \ exit 1; \ fi # # Temporary will be later dynamically added per subpackages _EXTRA_PACKAGE_TARGET_DEP+= ${WRKDIR_PKGFILE} # This will be the end of the loop . if !target(do-package) PKG_CREATE_ARGS+= -f ${PKG_COMPRESSION_FORMAT} . if defined(PKG_COMPRESSION_LEVEL) PKG_CREATE_ARGS+= -l ${PKG_COMPRESSION_LEVEL} . endif PKG_CREATE_ARGS+= -r ${STAGEDIR} . if defined(PKG_CREATE_VERBOSE) PKG_CREATE_ARGS+= -v . endif do-package: ${_EXTRA_PACKAGE_TARGET_DEP} ${WRKDIR}/pkg . endif . if !target(delete-package) delete-package: @${ECHO_MSG} "===> Deleting package for ${PKGNAME}" # When staging, the package may only be in the workdir if not root @${RM} ${PKGFILE} ${WRKDIR_PKGFILE} 2>/dev/null || : . endif . if !target(delete-package-list) delete-package-list: @${ECHO_CMD} "[ -f ${PKGFILE} ] && (${ECHO_CMD} deleting ${PKGFILE}; ${RM} ${PKGFILE})" . endif # Used by scripts and users to install a package from local repository. # Poudriere -i uses this, please keep. . if !target(install-package) . if defined(FORCE_PKG_REGISTER) _INSTALL_PKG_ARGS= -f . endif . if defined(INSTALLS_DEPENDS) _INSTALL_PKG_ARGS+= -A . endif install-package: @if [ -f "${WRKDIR}/pkg/${PKGNAME}${PKG_SUFX}" ]; then \ _pkgfile="${WRKDIR_PKGFILE}"; \ else \ _pkgfile="${PKGFILE}"; \ fi; \ ${PKG_ADD} ${_INSTALL_PKG_ARGS} $${_pkgfile} . endif # Utility targets follow . if !target(check-already-installed) . if !defined(NO_PKG_REGISTER) && !defined(FORCE_PKG_REGISTER) check-already-installed: @${ECHO_MSG} "===> Checking if ${PKGBASE} is already installed"; \ pkgname=`${PKG_INFO} -q -O ${PKGBASE}`; \ if [ -n "$${pkgname}" ]; then \ v=`${PKG_VERSION} -t $${pkgname} ${PKGNAME}`; \ if [ "$${v}" = "<" ]; then \ ${ECHO_CMD} "===> An older version of ${PKGBASE} is already installed ($${pkgname})"; \ else \ ${ECHO_CMD} "===> ${PKGNAME} is already installed"; \ fi; \ ${ECHO_MSG} " You may wish to \`\`make deinstall'' and install this port again"; \ ${ECHO_MSG} " by \`\`make reinstall'' to upgrade it properly."; \ ${ECHO_MSG} " If you really wish to overwrite the old port of ${PKGBASE}"; \ ${ECHO_MSG} " without deleting it first, set the variable \"FORCE_PKG_REGISTER\""; \ ${ECHO_MSG} " in your environment or the \"make install\" command line."; \ exit 1; \ fi . endif . endif . if !target(check-umask) check-umask: @if [ `${SH} -c umask` != 0022 ]; then \ ${ECHO_MSG} "===> Warning: your umask is \"`${SH} -c umask`"\".; \ ${ECHO_MSG} " If this is not desired, set it to an appropriate value"; \ ${ECHO_MSG} " and install this port again by \`\`make reinstall''."; \ fi . endif # Needed for poudriere wait for at least a year before removing # XXX 2017-04-09 . if !target(install-mtree) install-mtree: . endif . if !target(install-ldconfig-file) install-ldconfig-file: . if defined(USE_LDCONFIG) || defined(USE_LDCONFIG32) . if defined(USE_LDCONFIG) . if !defined(USE_LINUX_PREFIX) . if ${USE_LDCONFIG} != "${LOCALBASE}/lib" && !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Installing ldconfig configuration file" . if defined(NO_MTREE) || ${PREFIX} != ${LOCALBASE} @${MKDIR} ${STAGEDIR}${LOCALBASE}/${LDCONFIG_DIR} . endif @${ECHO_CMD} ${USE_LDCONFIG} | ${TR} ' ' '\n' \ > ${STAGEDIR}${LOCALBASE}/${LDCONFIG_DIR}/${PKGBASE} @${ECHO_CMD} ${LOCALBASE}/${LDCONFIG_DIR}/${PKGBASE} >> ${TMPPLIST} . if ${PREFIX} != ${LOCALBASE} @${ECHO_CMD} "@dir ${LOCALBASE}/${LDCONFIG_DIR}" >> ${TMPPLIST} . endif . endif . endif . endif . if defined(USE_LDCONFIG32) . if !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Installing 32-bit ldconfig configuration file" . if defined(NO_MTREE) || ${PREFIX} != ${LOCALBASE} @${MKDIR} ${STAGEDIR}${LOCALBASE}/${LDCONFIG32_DIR} . endif @${ECHO_CMD} ${USE_LDCONFIG32} | ${TR} ' ' '\n' \ > ${STAGEDIR}${LOCALBASE}/${LDCONFIG32_DIR}/${PKGBASE} @${ECHO_CMD} ${LOCALBASE}/${LDCONFIG32_DIR}/${PKGBASE} >> ${TMPPLIST} . if ${PREFIX} != ${LOCALBASE} @${ECHO_CMD} "@dir ${LOCALBASE}/${LDCONFIG32_DIR}" >> ${TMPPLIST} . endif . endif . endif . endif . endif . if !defined(USE_LINUX_PREFIX) . if !target(fixup-lib-pkgconfig) fixup-lib-pkgconfig: @if [ -d ${STAGEDIR}${PREFIX}/lib/pkgconfig ]; then \ if [ -z "$$(${FIND} ${STAGEDIR}${PREFIX}/lib/pkgconfig -maxdepth 0 -empty)" ]; then \ ${MKDIR} ${STAGEDIR}${PREFIX}/libdata/pkgconfig; \ ${MV} ${STAGEDIR}${PREFIX}/lib/pkgconfig/* ${STAGEDIR}${PREFIX}/libdata/pkgconfig; \ fi; \ ${RMDIR} ${STAGEDIR}${PREFIX}/lib/pkgconfig; \ fi . endif . endif . if !target(create-users-groups) . if defined(GROUPS) || defined(USERS) _UG_INSTALL= ${WRKDIR}/users-groups-install.sh _UG_DEINSTALL= ${WRKDIR}/users-groups-deinstall.sh PKGPREINSTALL+= ${_UG_INSTALL} PKGPOSTDEINSTALL+= ${_UG_DEINSTALL} create-users-groups: @${SETENV} \ dp_ECHO_MSG="${ECHO_MSG}" \ dp_GID_FILES="${GID_FILES}" \ dp_GID_OFFSET="${GID_OFFSET}" \ dp_GROUPS_BLACKLIST="${GROUPS_BLACKLIST}" \ dp_INSTALL="${INSTALL}" \ dp_OPSYS="${OPSYS}" \ dp_OSVERSION="${OSVERSION}" \ dp_PREFIX="${PREFIX}" \ dp_PW="${PW}" \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ dp_UG_DEINSTALL="${_UG_DEINSTALL}" \ dp_UG_INSTALL="${_UG_INSTALL}" \ dp_UID_FILES="${UID_FILES}" \ dp_UID_OFFSET="${UID_OFFSET}" \ dp_USERS_BLACKLIST="${USERS_BLACKLIST}" \ ${SH} ${SCRIPTSDIR}/do-users-groups.sh "${USERS}" "${GROUPS}" . endif . endif _WWW= ${WWW:[1]} . if !defined(DISABLE_SECURITY_CHECK) . if !target(security-check) security-check: ${TMPPLIST} # Scan PLIST for: # 1. setugid files # 2. accept()/recvfrom() which indicates network listening capability # 3. insecure functions (gets/mktemp/tempnam/[XXX]) # 4. startup scripts, in conjunction with 2. # 5. world-writable files/dirs # # The ${NONEXISTENT} argument of ${READELF} is there so that there are always # at least two file arguments, and forces it to always output the "File: foo" # header lines. # -@${RM} ${WRKDIR}/.PLIST.setuid ${WRKDIR}/.PLIST.writable ${WRKDIR}/.PLIST.readelf; \ ${AWK} -v prefix='${PREFIX}' ' \ match($$0, /^@cwd /) { prefix = substr($$0, RSTART + RLENGTH); if (prefix == "/") prefix=""; next; } \ /^@/ { next; } \ /^\// { print; next; } \ { print prefix "/" $$0; } \ ' ${TMPPLIST} > ${WRKDIR}/.PLIST.flattened; \ ${TR} '\n' '\0' < ${WRKDIR}/.PLIST.flattened \ | ${XARGS} -0 -J % ${FIND} % -prune ! -type l -type f \( -perm -4000 -o -perm -2000 \) \( -perm -0010 -o -perm -0001 \) 2> /dev/null > ${WRKDIR}/.PLIST.setuid; \ ${TR} '\n' '\0' < ${WRKDIR}/.PLIST.flattened \ | ${XARGS} -0 -J % ${FIND} % -prune -perm -0002 \! -type l 2> /dev/null > ${WRKDIR}/.PLIST.writable; \ ${TR} '\n' '\0' < ${WRKDIR}/.PLIST.flattened \ | ${XARGS} -0 -J % ${FIND} % -prune ! -type l -type f -print0 2> /dev/null \ | ${XARGS} -0 ${READELF} -r ${NONEXISTENT} 2> /dev/null > ${WRKDIR}/.PLIST.readelf; \ if \ ! ${AWK} -v audit="$${PORTS_AUDIT}" -f ${SCRIPTSDIR}/security-check.awk \ ${WRKDIR}/.PLIST.flattened ${WRKDIR}/.PLIST.readelf ${WRKDIR}/.PLIST.setuid ${WRKDIR}/.PLIST.writable; \ then \ if [ ! -z "${_WWW}" ]; then \ ${ECHO_MSG}; \ ${ECHO_MSG} " For more information, and contact details about the security"; \ ${ECHO_MSG} " status of this software, see the following webpage: "; \ ${ECHO_MSG} "${_WWW}"; \ fi; \ fi . endif . else # i.e. defined(DISABLE_SECURITY_CHECK) security-check: @${ECHO_MSG} " WARNING: Security check has been disabled." . endif # !defined(DISABLE_SECURITY_CHECK) ################################################################ # Skeleton targets start here # # You shouldn't have to change these. Either add the pre-* or # post-* targets/scripts or redefine the do-* targets. These # targets don't do anything other than checking for cookies and # call the necessary targets/scripts. ################################################################ extract-message: @${ECHO_MSG} "===> Extracting for ${PKGNAME}" patch-message: @${ECHO_MSG} "===> Patching for ${PKGNAME}" configure-message: @${ECHO_MSG} "===> Configuring for ${PKGNAME}" build-message: @${ECHO_MSG} "===> Building for ${PKGNAME}" stage-message: @${ECHO_MSG} "===> Staging for ${PKGNAME}" install-message: @${ECHO_MSG} "===> Installing for ${PKGNAME}" test-message: @${ECHO_MSG} "===> Testing for ${PKGNAME}" package-message: @${ECHO_MSG} "===> Building package for ${PKGNAME}" # Empty pre-* and post-* targets . if exists(${SCRIPTDIR}) . for stage in pre post . for name in pkg check-sanity fetch extract patch configure build stage install package . if !target(${stage}-${name}-script) . if exists(${SCRIPTDIR}/${stage}-${name}) ${stage}-${name}-script: @ cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \ ${SCRIPTDIR}/${.TARGET:S/-script$//} . endif . endif . endfor . endfor . endif . if !target(pretty-print-www-site) pretty-print-www-site: @if [ -n "${_WWW}" ]; then \ ${ECHO_MSG} -n " and/or visit the "; \ ${ECHO_MSG} -n "web site"; \ ${ECHO_MSG} " for further information"; \ fi . endif ################################################################ # Some more targets supplied for users' convenience ################################################################ # Checkpatch # # Special target to verify patches . if !target(checkpatch) checkpatch: @cd ${.CURDIR} && ${MAKE} ${PATCH_SILENT} PATCH_CHECK_ONLY=yes ${_PATCH_DEP} ${_PATCH_REAL_SEQ} . endif # Reinstall # # Special target to re-run install . if !target(reinstall) reinstall: @${RM} ${INSTALL_COOKIE} ${PACKAGE_COOKIE} @cd ${.CURDIR} && DEPENDS_TARGET="${DEPENDS_TARGET}" ${MAKE} deinstall install . endif . if !target(restage) restage: @${RM} -r ${STAGEDIR} ${STAGE_COOKIE} ${INSTALL_COOKIE} ${PACKAGE_COOKIE} @cd ${.CURDIR} && ${MAKE} stage . endif # Deinstall # # Special target to remove installation . if !target(deinstall) deinstall: . if defined(UID) && ${UID} != 0 && !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Switching to root credentials for '${.TARGET}' target" @cd ${.CURDIR} && \ ${SU_CMD} "${MAKE} ${.TARGET}" @${ECHO_MSG} "===> Returning to user credentials" . else @${ECHO_MSG} "===> Deinstalling for ${PKGBASE}" @if ${PKG_INFO} -e ${PKGBASE}; then \ p=`${PKG_INFO} -q -O ${PKGBASE}`; \ ${ECHO_MSG} "===> Deinstalling $${p}"; \ ${PKG_DELETE} -f ${PKGBASE} ; \ else \ ${ECHO_MSG} "===> ${PKGBASE} not installed, skipping"; \ fi @${RM} ${INSTALL_COOKIE} ${PACKAGE_COOKIE} . endif . endif # Deinstall-all # # Special target to remove installation of all ports of the same origin . if !target(deinstall-all) deinstall-all: . if ${UID} != 0 && !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Switching to root credentials for '${.TARGET}' target" @cd ${.CURDIR} && \ ${SU_CMD} "${MAKE} ${.TARGET}" @${ECHO_MSG} "===> Returning to user credentials" . else @${ECHO_MSG} "===> Deinstalling for ${PKGORIGIN}" @deinstall_names=`${PKG_INFO} -q -O ${PKGORIGIN}`; \ for oldpkgorigin in $$(${GREP} "|${PKGORIGIN}|" ${PORTSDIR}/MOVED | ${CUT} -f 1 -d '|' | ${SORT} -u); do \ deinstall_names="$${deinstall_names} $$(${PKG_INFO} -q -O $${oldpkgorigin})"; \ done; \ if [ -n "$${deinstall_names}" ]; then \ for d in $${deinstall_names}; do \ ${ECHO_MSG} "===> Deinstalling $${d}"; \ ${PKG_DELETE} -f $${d}; \ done; \ else \ ${ECHO_MSG} "===> ${PKGORIGIN} not installed, skipping"; \ fi; \ ${RM} ${INSTALL_COOKIE} ${PACKAGE_COOKIE} . endif . endif # Cleaning up . if !target(do-clean) do-clean: @if [ -d ${WRKDIR} ]; then \ if [ -w ${WRKDIR} ]; then \ ${RM} -r ${WRKDIR}; \ else \ ${ECHO_MSG} "===> ${WRKDIR} not writable, skipping"; \ fi; \ fi . endif . if !target(clean) pre-clean: clean-msg clean-msg: @${ECHO_MSG} "===> Cleaning for ${PKGNAME}" . if empty(FLAVORS) CLEAN_DEPENDENCIES= . if !defined(NOCLEANDEPENDS) CLEAN_DEPENDENCIES+= limited-clean-depends-noflavor limited-clean-depends-noflavor: @cd ${.CURDIR} && ${MAKE} limited-clean-depends . endif . if target(pre-clean) CLEAN_DEPENDENCIES+= pre-clean-noflavor pre-clean-noflavor: @cd ${.CURDIR} && ${SETENV} ${MAKE} pre-clean . endif CLEAN_DEPENDENCIES+= do-clean-noflavor do-clean-noflavor: @cd ${.CURDIR} && ${SETENV} ${MAKE} do-clean . if target(post-clean) CLEAN_DEPENDENCIES+= post-clean-noflavor post-clean-noflavor: @cd ${.CURDIR} && ${SETENV} ${MAKE} post-clean . endif .ORDER: ${CLEAN_DEPENDENCIES} clean: ${CLEAN_DEPENDENCIES} . endif . if !empty(_FLAVOR) _CLEANFLAVORS= ${_FLAVOR} . else _CLEANFLAVORS= ${FLAVORS} . endif . for _f in ${_CLEANFLAVORS} CLEAN_DEPENDENCIES= . if !defined(NOCLEANDEPENDS) CLEAN_DEPENDENCIES+= limited-clean-depends-${_f} limited-clean-depends-${_f}: @cd ${.CURDIR} && ${SETENV} FLAVOR=${_f} ${MAKE} limited-clean-depends . endif . if target(pre-clean) CLEAN_DEPENDENCIES+= pre-clean-${_f} pre-clean-${_f}: @cd ${.CURDIR} && ${SETENV} FLAVOR=${_f} ${MAKE} pre-clean . endif CLEAN_DEPENDENCIES+= do-clean-${_f} do-clean-${_f}: @cd ${.CURDIR} && ${SETENV} FLAVOR=${_f} ${MAKE} do-clean . if target(post-clean) CLEAN_DEPENDENCIES+= post-clean-${_f} post-clean-${_f}: @cd ${.CURDIR} && ${SETENV} FLAVOR=${_f} ${MAKE} post-clean . endif .ORDER: ${CLEAN_DEPENDENCIES} clean: ${CLEAN_DEPENDENCIES} . endfor . endif . if !target(distclean) distclean: clean @cd ${.CURDIR} && ${MAKE} delete-distfiles RESTRICTED_FILES="${_DISTFILES:Q} ${_PATCHFILES:Q}" . endif . if !target(delete-distfiles) delete-distfiles: @${ECHO_MSG} "===> Deleting distfiles for ${PKGNAME}" @(if [ "X${RESTRICTED_FILES}" != "X" -a -d ${_DISTDIR} ]; then \ cd ${_DISTDIR}; \ for file in ${RESTRICTED_FILES}; do \ ${RM} $${file}; \ dir=$${file%/*}; \ if [ "$${dir}" != "$${file}" ]; then \ ${RMDIR} -p $${dir} >/dev/null 2>&1 || :; \ fi; \ done; \ fi) . if defined(DIST_SUBDIR) -@${RMDIR} ${_DISTDIR} >/dev/null 2>&1 || ${TRUE} . endif . endif . if !target(delete-distfiles-list) delete-distfiles-list: @${ECHO_CMD} "# ${PKGNAME}" @if [ "X${RESTRICTED_FILES}" != "X" ]; then \ for file in ${RESTRICTED_FILES}; do \ ${ECHO_CMD} "[ -f ${_DISTDIR}/$$file ] && (${ECHO_CMD} deleting ${_DISTDIR}/$$file; ${RM} ${_DISTDIR}/$$file)"; \ dir=$${file%/*}; \ if [ "$${dir}" != "$${file}" ]; then \ ${ECHO_CMD} "(cd ${_DISTDIR} && ${RMDIR} -p $${dir} 2>/dev/null)"; \ fi; \ done; \ fi . if defined(DIST_SUBDIR) @${ECHO_CMD} "${RMDIR} ${_DISTDIR} 2>/dev/null || ${TRUE}" . endif . endif # Checksumming utilities # List all algorithms here, all the variables name must begin with dp_ _CHECKSUM_INIT_ENV= \ dp_SHA256=${SHA256} . if !target(makesum) # Some port change the options with OPTIONS_*_FORCE when make(makesum) to be # able to add all distfiles in one go. # For this to work, we need to call the do-fetch script directly here so that # the options consistent when fetching and when makesum'ing. # As we're fetching new distfiles, that are not in the distinfo file, disable # checksum and sizes checks. makesum: check-sanity @cd ${.CURDIR} && ${MAKE} fetch NO_CHECKSUM=yes \ DISABLE_SIZE=yes DISTFILES="${DISTFILES}" \ MASTER_SITES="${MASTER_SITES}" \ PATCH_SITES="${PATCH_SITES}" @${SETENV} \ ${_CHECKSUM_INIT_ENV} \ dp_CHECKSUM_ALGORITHMS='${CHECKSUM_ALGORITHMS:tu}' \ dp_CKSUMFILES='${_CKSUMFILES}' \ dp_DISTDIR='${DISTDIR}' \ dp_DISTINFO_FILE='${DISTINFO_FILE}' \ dp_ECHO_MSG='${ECHO_MSG}' \ dp_SCRIPTSDIR='${SCRIPTSDIR}' \ ${SH} ${SCRIPTSDIR}/makesum.sh ${DISTFILES:C/.*/'&'/} . endif . if !target(checksum) checksum: fetch . if !empty(_CKSUMFILES) && !defined(NO_CHECKSUM) @${SETENV} \ ${_CHECKSUM_INIT_ENV} \ dp_CHECKSUM_ALGORITHMS='${CHECKSUM_ALGORITHMS:tu}' \ dp_CURDIR='${.CURDIR}' \ dp_DISTDIR='${DISTDIR}' \ dp_DISTINFO_FILE='${DISTINFO_FILE}' \ dp_DIST_SUBDIR='${DIST_SUBDIR}' \ dp_ECHO_MSG='${ECHO_MSG}' \ dp_FETCH_REGET='${FETCH_REGET}' \ dp_MAKE='${MAKE}' \ dp_MAKEFLAGS='${.MAKEFLAGS}' \ dp_SCRIPTSDIR='${SCRIPTSDIR}' \ dp_DISABLE_SIZE='${DISABLE_SIZE}' \ dp_NO_CHECKSUM='${NO_CHECKSUM}' \ ${SH} ${SCRIPTSDIR}/checksum.sh ${_CKSUMFILES:C/.*/'&'/} . endif . endif # Some port's archives contains files modes that are a bit too restrictive for # some usage. For example: # BUILD_DEPENDS= ${NONEXISTENT}:foo/bar:configure # When building as a regular user, dependencies are installed/built as root, so # if the archive contains files that have a mode of, say, 600, they will not be # readable by the port requesting the dependency. # This will also fix broken distribution files where directories don't have the # executable bit on. extract-fixup-modes: @${CHMOD} -R u+w,a+rX ${WRKDIR} ################################################################ # The special package-building targets # You probably won't need to touch these ################################################################ # Nobody should want to override this unless PKGNAME is simply bogus. . if !target(package-name) package-name: @${ECHO_CMD} ${PKGNAME} . endif # Build a package but don't check the package cookie . if !target(repackage) repackage: pre-repackage package pre-repackage: @${RM} ${PACKAGE_COOKIE} . endif # Build a package but don't check the cookie for installation, also don't # install package cookie . if !target(package-noinstall) package-noinstall: package . endif ################################################################ # Dependency checking ################################################################ . if !target(depends) depends: pkg-depends extract-depends patch-depends lib-depends fetch-depends build-depends run-depends . for deptype in PKG EXTRACT PATCH FETCH BUILD LIB RUN TEST ${deptype:tl}-depends: . if defined(${deptype}_DEPENDS) && !defined(NO_DEPENDS) @${SETENV} \ dp_RAWDEPENDS="${${deptype}_DEPENDS}" \ dp_DEPTYPE="${deptype}_DEPENDS" \ dp_DEPENDS_TARGET="${DEPENDS_TARGET}" \ dp_DEPENDS_PRECLEAN="${DEPENDS_PRECLEAN}" \ dp_DEPENDS_CLEAN="${DEPENDS_CLEAN}" \ dp_DEPENDS_ARGS="${DEPENDS_ARGS}" \ dp_USE_PACKAGE_DEPENDS="${USE_PACKAGE_DEPENDS}" \ dp_USE_PACKAGE_DEPENDS_ONLY="${USE_PACKAGE_DEPENDS_ONLY}" \ dp_PKG_ADD="${PKG_ADD}" \ dp_PKG_INFO="${PKG_INFO}" \ dp_WRKDIR="${WRKDIR}" \ dp_PKGNAME="${PKGNAME}" \ dp_STRICT_DEPENDS="${STRICT_DEPENDS}" \ dp_LOCALBASE="${LOCALBASE}" \ dp_LIB_DIRS="${LIB_DIRS}" \ dp_SH="${SH}" \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ PORTSDIR="${PORTSDIR}" \ dp_OVERLAYS="${OVERLAYS}" \ dp_MAKE="${MAKE}" \ dp_MAKEFLAGS='${.MAKEFLAGS}' \ ${SH} ${SCRIPTSDIR}/do-depends.sh . endif . endfor . endif # Dependency lists: both build and runtime, recursive. Print out directory names. _UNIFIED_DEPENDS=${PKG_DEPENDS} ${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS} ${RUN_DEPENDS} ${TEST_DEPENDS} _DEPEND_SPECIALS= ${_UNIFIED_DEPENDS:M*\:*\:*:C,^[^:]*:([^:]*):.*$,\1,} . for d in ${_UNIFIED_DEPENDS:M*\:/*} _PORTSDIR_STR= $${PORTSDIR}/ DEV_WARNING+= "It looks like the ${d} depends line has an absolute port origin, make sure to remove \$${_PORTSDIR_STR} from it." . endfor all-depends-list: @${ALL-DEPENDS-LIST} _FLAVOR_RECURSIVE_SH= \ if [ -z "$${recursive_cmd}" ]; then \ ${ECHO_MSG} "_FLAVOR_RECURSIVE_SH requires recursive_cmd to be set to the recursive make target to run." >&2; \ ${FALSE}; \ fi; \ if [ "$${recursive_dirs-null}" = "null" ]; then \ ${ECHO_MSG} "_FLAVOR_RECURSIVE_SH requires recursive_dirs to be set to the directories to recurse." >&2; \ ${FALSE}; \ fi; \ for dir in $${recursive_dirs}; do \ unset flavor FLAVOR; \ case $${dir} in \ *@*/*) ;; \ *@*) \ flavor=$${dir\#*@}; \ dir=$${dir%@*}; \ ;; \ esac; \ case $$dir in \ /*) ;; \ *) dir=${PORTSDIR}/$$dir ;; \ esac; \ (cd $$dir; ${SETENV} $${flavor:+FLAVOR=$${flavor}} ${MAKE} $${recursive_cmd}); \ done # This script is shared among several dependency list variables. See file for # usage. DEPENDS-LIST= \ ${SETENV} \ PORTSDIR="${PORTSDIR}" \ dp_MAKE="${MAKE}" \ dp_PKGNAME="${PKGNAME}" \ dp_PKG_INFO="${PKG_INFO}" \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ dp_OVERLAYS="${OVERLAYS}" \ ${SH} ${SCRIPTSDIR}/depends-list.sh \ ${DEPENDS_SHOW_FLAVOR:D-f} ALL-DEPENDS-LIST= ${DEPENDS-LIST} -r ${_UNIFIED_DEPENDS:Q} ALL-DEPENDS-FLAVORS-LIST= ${DEPENDS-LIST} -f -r ${_UNIFIED_DEPENDS:Q} DEINSTALL-DEPENDS-FLAVORS-LIST= ${DEPENDS-LIST} -f -r ${_UNIFIED_DEPENDS:N${PKG_DEPENDS}:Q} MISSING-DEPENDS-LIST= ${DEPENDS-LIST} -m ${_UNIFIED_DEPENDS:Q} BUILD-DEPENDS-LIST= ${DEPENDS-LIST} "${PKG_DEPENDS} ${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" RUN-DEPENDS-LIST= ${DEPENDS-LIST} "${LIB_DEPENDS} ${RUN_DEPENDS}" TEST-DEPENDS-LIST= ${DEPENDS-LIST} ${TEST_DEPENDS:Q} CLEAN-DEPENDS-LIST= ${DEPENDS-LIST} -wr ${_UNIFIED_DEPENDS:Q} CLEAN-DEPENDS-LIMITED-LIST= ${DEPENDS-LIST} -w ${_UNIFIED_DEPENDS:Q} . if !target(clean-depends) clean-depends: @for dir in $$(${CLEAN-DEPENDS-LIST}); do \ (cd $$dir; ${MAKE} NOCLEANDEPENDS=yes clean); \ done . endif . if !target(limited-clean-depends) limited-clean-depends: @for dir in $$(${CLEAN-DEPENDS-LIMITED-LIST}); do \ (cd $$dir; ${MAKE} NOCLEANDEPENDS=yes clean); \ done . endif . if !target(deinstall-depends) deinstall-depends: @recursive_cmd="deinstall"; \ recursive_dirs="$$(${DEINSTALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif . if !target(fetch-specials) fetch-specials: @${ECHO_MSG} "===> Fetching all distfiles required by ${PKGNAME} for building" @recursive_cmd="fetch"; \ recursive_dirs="${_DEPEND_SPECIALS}"; \ ${_FLAVOR_RECURSIVE_SH} . endif . if !target(fetch-recursive) fetch-recursive: @${ECHO_MSG} "===> Fetching all distfiles for ${PKGNAME} and dependencies" @recursive_cmd="fetch"; \ recursive_dirs="${.CURDIR}${FLAVOR:D@${FLAVOR}} $$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif . if !target(fetch-recursive-list) fetch-recursive-list: @recursive_cmd="fetch-list"; \ recursive_dirs="${.CURDIR}${FLAVOR:D@${FLAVOR}} $$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif # Used by fetch-required and fetch-required list, this script looks # at each of the dependencies. If 3 items are specified in the tuple, # such as foo:graphics/foo:extract, the first item (foo) # is examined. Only if it begins with a / and does not exist on the # file-system will ``make targ'' proceed. # For more usual (dual-item) dependency tuples, the ``make targ'' # proceeds, if the exact package, which the directory WOULD'VE installed, # is not yet installed. # This is the exact behaviour of the old code, and it may need # revisiting. For example, the entire first case seems dubious, and in # the second case we, probably, should be satisfied with _any_ (earlier) # package, with the same origin as that of the dir. # # -mi FETCH_LIST?= for i in $$deps; do \ prog=$${i%%:*}; dir=$${i\#*:}; \ case $$dir in \ /*) ;; \ *) dir=${PORTSDIR}/$$dir ;; \ esac; \ case $$dir in \ *:*) if [ $$prog != $${prog\#/} -o ! -e $$prog ]; then \ dir=$${dir%%:*}; \ else \ continue; \ fi;; \ *) if [ -d ${PKG_DBDIR}/$$(cd $$dir; ${MAKE} -V PKGNAME) ]; then \ continue; \ fi;; \ esac; \ echo cd $$dir; cd $$dir; ${MAKE} $$targ; \ done . if !target(fetch-required) fetch-required: fetch . if defined(NO_DEPENDS) @${ECHO_MSG} "===> NO_DEPENDS is set, not fetching any other distfiles for ${PKGNAME}" . else @${ECHO_MSG} "===> Fetching all required distfiles for ${PKGNAME} and dependencies" . for deptype in PKG EXTRACT PATCH FETCH BUILD RUN . if defined(${deptype}_DEPENDS) @targ=fetch; deps="${${deptype}_DEPENDS}"; ${FETCH_LIST} . endif . endfor . endif . endif . if !target(fetch-required-list) fetch-required-list: fetch-list . if !defined(NO_DEPENDS) . for deptype in PKG EXTRACT PATCH FETCH BUILD RUN . if defined(${deptype}_DEPENDS) @targ=fetch-list; deps="${${deptype}_DEPENDS}"; ${FETCH_LIST} . endif . endfor . endif . endif . if !target(checksum-recursive) checksum-recursive: @${ECHO_MSG} "===> Fetching and checking checksums for ${PKGNAME} and dependencies" @recursive_cmd="checksum"; \ recursive_dirs="${.CURDIR}${FLAVOR:D@${FLAVOR}} $$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif # Dependency lists: build and runtime. Print out directory names. build-depends-list: . if defined(PKG_DEPENDS) || defined(EXTRACT_DEPENDS) || defined(PATCH_DEPENDS) || defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || defined(LIB_DEPENDS) @${BUILD-DEPENDS-LIST} . endif run-depends-list: . if defined(LIB_DEPENDS) || defined(RUN_DEPENDS) @${RUN-DEPENDS-LIST} . endif test-depends-list: . if defined(TEST_DEPENDS) @${TEST-DEPENDS-LIST} . endif # Package (recursive runtime) dependency list. Print out both directory names # and package names. package-depends-list: . if defined(CHILD_DEPENDS) || defined(LIB_DEPENDS) || defined(RUN_DEPENDS) @${PACKAGE-DEPENDS-LIST} . endif _LIB_RUN_DEPENDS= ${LIB_DEPENDS} ${RUN_DEPENDS} PACKAGE-DEPENDS-LIST?= \ if [ "${CHILD_DEPENDS}" ]; then \ installed=$$(${PKG_INFO} -qO ${PKGORIGIN} 2>/dev/null || \ ${TRUE}); \ if [ "$$installed" ]; then \ break; \ fi; \ if [ -z "$$installed" ]; then \ installed="${PKGNAME}"; \ fi; \ for pkgname in $$installed; do \ ${ECHO_CMD} "$$pkgname ${.CURDIR} ${PKGORIGIN}"; \ done; \ fi; \ checked="${PARENT_CHECKED}"; \ for dir in ${_LIB_RUN_DEPENDS:C,[^:]*:([^:]*):?.*,\1,}; do \ unset flavor; \ case $${dir} in \ *@*) \ flavor=$${dir\#*@}; \ dir=$${dir%@*}; \ ;; \ esac; \ case "$$dir" in \ /*) ;; \ *) dir=${PORTSDIR}/$$dir ;; \ esac ; \ dir=$$(${REALPATH} $$dir); \ if [ -d $$dir ]; then \ case $$checked in \ $$dir|$$dir\ *|*\ $$dir|*\ $$dir\ *) continue;; \ esac; \ childout=$$(cd $$dir; ${SETENV} FLAVOR=$${flavor} ${MAKE} CHILD_DEPENDS=yes PARENT_CHECKED="$$checked" package-depends-list); \ set -- $$childout; \ childdir=""; \ while [ $$\# != 0 ]; do \ childdir="$$childdir $$2"; \ ${ECHO_CMD} "$$1 $$2 $$3"; \ shift 3; \ done; \ checked="$$dir $$childdir $$checked"; \ else \ ${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \ fi; \ done ACTUAL-PACKAGE-DEPENDS?= \ depfiles="" ; \ for lib in ${LIB_DEPENDS:C/\:.*//}; do \ depfiles="$$depfiles `${SETENV} LIB_DIRS="${LIB_DIRS}" LOCALBASE="${LOCALBASE}" ${SH} ${SCRIPTSDIR}/find-lib.sh $${lib}`" ; \ done ; \ ${SETENV} PKG_BIN="${PKG_BIN}" ${SH} ${SCRIPTSDIR}/actual-package-depends.sh $${depfiles} ${RUN_DEPENDS:C/(.*)\:.*/"\1"/} PKG_NOTES_ENV?= . for note in ${PKG_NOTES} PKG_NOTES_ENV+= dp_PKG_NOTE_${note}=${PKG_NOTE_${note}:Q} . endfor create-manifest: @${SETENV} \ dp_SCRIPTSDIR='${SCRIPTSDIR}' \ dp_ACTUAL_PACKAGE_DEPENDS='${ACTUAL-PACKAGE-DEPENDS}' \ dp_CATEGORIES='${CATEGORIES:u:S/$/,/}' \ dp_COMMENT=${COMMENT:Q} \ dp_COMPLETE_OPTIONS_LIST='${COMPLETE_OPTIONS_LIST}' \ dp_DEPRECATED=${DEPRECATED:Q} \ dp_DESCR='${DESCR}' \ dp_EXPIRATION_DATE='${EXPIRATION_DATE}' \ dp_GROUPS='${GROUPS:u:S/$/,/}' \ dp_LICENSE='${LICENSE:u:S/$/,/}' \ dp_LICENSE_COMB='${LICENSE_COMB}' \ dp_MAINTAINER='${MAINTAINER}' \ dp_METADIR='${METADIR}' \ dp_NO_ARCH='${NO_ARCH}' \ dp_PKGBASE='${PKGBASE}' \ dp_PKGDEINSTALL='${PKGDEINSTALL}' \ dp_PKGINSTALL='${PKGINSTALL}' \ dp_PKGMESSAGES='${_PKGMESSAGES}' \ dp_PKGORIGIN='${PKGORIGIN}' \ dp_PKGPOSTDEINSTALL='${PKGPOSTDEINSTALL}' \ dp_PKGPOSTINSTALL='${PKGPOSTINSTALL}' \ dp_PKGPREDEINSTALL='${PKGPREDEINSTALL}' \ dp_PKGPREINSTALL='${PKGPREINSTALL}' \ dp_PKGVERSION='${PKGVERSION}' \ dp_PKG_BIN='${PKG_BIN}' \ dp_PKG_IGNORE_DEPENDS='${PKG_IGNORE_DEPENDS}' \ dp_PKG_NOTES='${PKG_NOTES}' \ dp_PORT_OPTIONS='${PORT_OPTIONS}' \ dp_PREFIX='${PREFIX}' \ dp_USERS='${USERS:u:S/$/,/}' \ dp_WWW='${WWW}' \ ${PKG_NOTES_ENV} \ ${SH} ${SCRIPTSDIR}/create-manifest.sh # Print out package names. package-depends: @${PACKAGE-DEPENDS-LIST} | ${AWK} '{print $$1":"$$3}' actual-package-depends: @${ACTUAL-PACKAGE-DEPENDS} # Build packages for port and dependencies package-recursive: package @recursive_cmd="package-noinstall"; \ recursive_dirs="$$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} # Show missing dependencies missing: @for dir in $$(${MISSING-DEPENDS-LIST}); do \ echo $${dir#${PORTSDIR}/}; \ done # Show missing dependencies by name missing-packages: @_packages=$$(${PKG_INFO} -aq); \ for dir in $$(${ALL-DEPENDS-LIST}); do \ _p=$$(cd $$dir; ${MAKE} -VPKGNAME); \ if ! $$(${ECHO_CMD} $${_packages} | ${GREP} -q $${_p}); then \ ${ECHO_CMD} $${_p}; \ fi; \ done # Install missing dependencies from package install-missing-packages: @_dirs=$$(${MISSING-DEPENDS-LIST}); \ ${ECHO_CMD} "$${_dirs}" | ${SED} "s%${PORTSDIR}/%%g" | \ ${SU_CMD} "${XARGS} -o ${PKG_BIN} install -A" ################################################################ # Everything after here are internal targets and really # shouldn't be touched by anybody but the release engineers. ################################################################ # This target generates an index entry suitable for aggregation into # a large index. Format is: # # distribution-name|port-path|installation-prefix|comment| \ # description-file|maintainer|categories|extract-depends| \ # patch-depends|fetch-depends|build-depends|run-depends|www site # # If this ever changes, portmgr should contact the portsnap maintainer # first to avoid gratuitous breakage. . if !target(describe) _EXTRACT_DEPENDS=${EXTRACT_DEPENDS:C/^[^ :]+:([^ :@]+)(@[^ :]+)?(:[^ :]+)?/\1/:O:u:C,(^[^/]),${PORTSDIR}/\1,} _PATCH_DEPENDS=${PATCH_DEPENDS:C/^[^ :]+:([^ :@]+)(@[^ :]+)?(:[^ :]+)?/\1/:O:u:C,(^[^/]),${PORTSDIR}/\1,} _FETCH_DEPENDS=${FETCH_DEPENDS:C/^[^ :]+:([^ :@]+)(@[^ :]+)?(:[^ :]+)?/\1/:O:u:C,(^[^/]),${PORTSDIR}/\1,} _LIB_DEPENDS=${LIB_DEPENDS:C/^[^ :]+:([^ :@]+)(@[^ :]+)?(:[^ :]+)?/\1/:O:u:C,(^[^/]),${PORTSDIR}/\1,} _BUILD_DEPENDS=${BUILD_DEPENDS:C/^[^ :]+:([^ :@]+)(@[^ :]+)?(:[^ :]+)?/\1/:O:u:C,(^[^/]),${PORTSDIR}/\1,} ${_LIB_DEPENDS} _RUN_DEPENDS=${RUN_DEPENDS:C/^[^ :]+:([^ :@]+)(@[^ :]+)?(:[^ :]+)?/\1/:O:u:C,(^[^/]),${PORTSDIR}/\1,} ${_LIB_DEPENDS} . if exists(${DESCR}) _DESCR=${DESCR} . else _DESCR=/dev/null . endif . if defined(BUILDING_INDEX) && defined(INDEX_PORTS) INDEX_OUT=${INDEX_TMPDIR}/${INDEXFILE}.desc.aggr . else INDEX_OUT=/dev/stdout . endif . if empty(FLAVORS) || defined(_DESCRIBE_WITH_FLAVOR) describe: @(${ECHO_CMD} "${PKGNAME}|${.CURDIR}|${PREFIX}|"${COMMENT:Q}"|${_DESCR}|${MAINTAINER}|${CATEGORIES}|${_EXTRACT_DEPENDS}|${_PATCH_DEPENDS}|${_FETCH_DEPENDS}|${_BUILD_DEPENDS:O:u}|${_RUN_DEPENDS:O:u}|${_WWW}" >> ${INDEX_OUT}) . else # empty(FLAVORS) describe: ${FLAVORS:S/^/describe-/} . for f in ${FLAVORS} describe-${f}: @cd ${.CURDIR} && ${SETENV} FLAVOR=${f} ${MAKE} -B -D_DESCRIBE_WITH_FLAVOR describe . endfor . endif # empty(FLAVORS) . endif www-site: @${ECHO_CMD} ${_WWW} . if !target(readmes) readmes: readme . endif . if !target(readme) readme: @${RM} ${.CURDIR}/README.html @cd ${.CURDIR} && ${MAKE} ${.CURDIR}/README.html . endif ${.CURDIR}/README.html: @${ECHO_MSG} "===> Creating README.html for ${PKGNAME}" @${SED} -e 's|%%PORT%%|'$$(${ECHO_CMD} ${.CURDIR} | \ ${SED} -e 's|.*/\([^/]*/[^/]*\)$$|\1|')'|g' \ -e 's|%%PKG%%|${PKGNAME}|g' \ -e 's|%%COMMENT%%|'"$$(${ECHO_CMD} ${COMMENT:Q})"'|' \ -e '/%%COMMENT%%/d' \ -e 's|%%DESCR%%|'"$$(${ECHO_CMD} ${DESCR} | \ ${SED} -e 's|${.CURDIR}/||')"'|' \ -e 's|%%EMAIL%%|'"$$(${ECHO_CMD} "${MAINTAINER}" | \ ${SED} -e 's/([^)]*)//;s/.*.*//')"'|g' \ -e 's|%%MAINTAINER%%|${MAINTAINER}|g' \ -e 's|%%WEBSITE%%|'"$$(cd ${.CURDIR} && eval ${MAKE} pretty-print-www-site)"'|' \ -e 's|%%BUILD_DEPENDS%%|'"$$(cd ${.CURDIR} && eval ${MAKE} pretty-print-build-depends-list)"'|' \ -e 's|%%RUN_DEPENDS%%|'"$$(cd ${.CURDIR} && eval ${MAKE} pretty-print-run-depends-list)"'|' \ -e 's|%%TOP%%|'"$$(${ECHO_CMD} ${CATEGORIES} | \ ${SED} -e 's| .*||' -e 's|[^/]*|..|g')"'/..|' \ ${TEMPLATES}/README.port >> ${.TARGET} # The following two targets require an up-to-date INDEX in ${PORTSDIR} _PRETTY_PRINT_DEPENDS_LIST=\ if [ ! -r ${INDEXDIR}/${INDEXFILE} ] ; then \ ${ECHO_MSG} "${.TARGET} requires an INDEX file (${INDEXFILE}). Please run make index or make fetchindex."; \ else \ target=${.TARGET:C/pretty-print-(.*)-depends-list/\1/} ; \ if [ "$$target" = "build" ] ; then fldnum=8 ; else fldnum=9 ; fi; \ ${ECHO_MSG} -n 'This port requires package(s) "' ; \ ${ECHO_MSG} -n `${AWK} -F\| "\\$$1 ~ /^${PKGNAME}/ {print \\$$$${fldnum};}" ${INDEXDIR}/${INDEXFILE}` ; \ ${ECHO_MSG} "\" to $$target."; \ fi; . if !target(pretty-print-build-depends-list) pretty-print-build-depends-list: . if defined(PKG_DEPENDS) || defined(EXTRACT_DEPENDS) || defined(PATCH_DEPENDS) || \ defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || defined(LIB_DEPENDS) @${_PRETTY_PRINT_DEPENDS_LIST} . endif . endif . if !target(pretty-print-run-depends-list) pretty-print-run-depends-list: . if defined(RUN_DEPENDS) || defined(LIB_DEPENDS) @${_PRETTY_PRINT_DEPENDS_LIST} . endif . endif _SUB_LIST_TEMP= ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} . if !target(apply-slist) && defined(SUB_FILES) apply-slist: . for file in ${SUB_FILES} . if !exists(${FILESDIR}/${file}.in) @${ECHO_MSG} "** Missing ${FILESDIR}/${file}.in for ${PKGNAME}."; exit 1 . else @${SED} ${_SUB_LIST_TEMP} -e '/^@comment /d' ${FILESDIR}/${file}.in > ${WRKDIR}/${file} . endif . endfor . for i in pkg-message pkg-install pkg-deinstall pkg-req . if ${SUB_FILES:M${i}*}!="" ${i:S/-//:tu}= ${WRKDIR}/${SUB_FILES:M${i}*} . endif . endfor . endif # Generate packing list. Also tests to make sure all required package # files exist. PLIST_SUB_SANITIZED= ${PLIST_SUB:N*_regex=*} . if !target(generate-plist) generate-plist: ${WRKDIR} @${ECHO_MSG} "===> Generating temporary packing list" @${MKDIR} ${TMPPLIST:H} @if [ ! -f ${DESCR} ]; then ${ECHO_MSG} "** Missing pkg-descr for ${PKGNAME}."; exit 1; fi @>${TMPPLIST} @for file in ${PLIST_FILES}; do \ ${ECHO_CMD} $${file} | ${SED} ${PLIST_SUB_SANITIZED:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} >> ${TMPPLIST}; \ done . if !empty(PLIST) . for f in ${PLIST} @if [ -f "${f}" ]; then \ ${SED} ${PLIST_SUB_SANITIZED:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} ${f} >> ${TMPPLIST}; \ for i in owner group mode; do ${ECHO_CMD} "@$$i"; done >> ${TMPPLIST}; \ fi . endfor . endif . for dir in ${PLIST_DIRS} @${ECHO_CMD} ${dir} | ${SED} ${PLIST_SUB_SANITIZED:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} -e 's,^,@dir ,' >> ${TMPPLIST} . endfor . endif ${TMPPLIST}: @cd ${.CURDIR} && ${MAKE} generate-plist . for _type in EXAMPLES DOCS . if !empty(_REALLY_ALL_POSSIBLE_OPTIONS:M${_type}) . if !target(add-plist-${_type:tl}) . if defined(PORT${_type}) && !empty(PORT_OPTIONS:M${_type}) add-plist-${_type:tl}: . for x in ${PORT${_type}} @if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \ if [ ! -e ${STAGEDIR}${${_type}DIR}/${x} ]; then \ ${ECHO_CMD} ${${_type}DIR}/${x} >> ${TMPPLIST}; \ fi;fi . endfor @${FIND} -P ${PORT${_type}:S/^/${STAGEDIR}${${_type}DIR}\//} ! -type d 2>/dev/null | \ ${SED} -ne 's,^${STAGEDIR},,p' >> ${TMPPLIST} . endif . endif . endif . endfor . if !target(add-plist-data) . if defined(PORTDATA) add-plist-data: . for x in ${PORTDATA} @if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \ if [ ! -e ${STAGEDIR}${DATADIR}/${x} ]; then \ ${ECHO_CMD} ${DATADIR}/${x} >> ${TMPPLIST}; \ fi;fi . endfor @${FIND} -P ${PORTDATA:S/^/${STAGEDIR}${DATADIR}\//} ! -type d 2>/dev/null | \ ${SED} -ne 's,^${STAGEDIR},,p' >> ${TMPPLIST} . endif . endif . if !target(add-plist-info) . if defined(INFO) add-plist-info: . for i in ${INFO} @${LS} ${STAGEDIR}${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${STAGEDIR}:@info\ :g >> ${TMPPLIST} . endfor . endif . endif # If we're installing into a non-standard PREFIX, we need to remove that directory at # deinstall-time . if !target(add-plist-post) . if (${PREFIX} != ${LOCALBASE} && ${PREFIX} != ${LINUXBASE} && \ ${PREFIX} != "/usr" && ${PREFIX} != "/" && !defined(NO_PREFIX_RMDIR)) add-plist-post: @${ECHO_CMD} "@dir ${PREFIX}" >> ${TMPPLIST} . endif . endif . if !target(install-rc-script) . if defined(USE_RC_SUBR) install-rc-script: @${ECHO_MSG} "===> Staging rc.d startup script(s)" @for i in ${USE_RC_SUBR}; do \ _prefix=${PREFIX}; \ [ "${PREFIX}" = "/usr" ] && _prefix="" ; \ ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${STAGEDIR}$${_prefix}/etc/rc.d/$${i%.sh}; \ ${ECHO_CMD} "@(root,wheel,0755) $${_prefix}/etc/rc.d/$${i%.sh}" >> ${TMPPLIST}; \ done . endif . endif . if !target(check-man) check-man: stage @${ECHO_MSG} "====> Checking man pages (check-man)" @mdirs= ; \ for dir in ${MANDIRS:S/^/${STAGEDIR}/} ; do \ [ -d $$dir ] && mdirs="$$mdirs $$dir" ;\ done ; \ err=0 ; \ for dir in $$mdirs; do \ for f in $$(find $$dir -name "*.gz"); do \ ${ECHO_CMD} "===> Checking $${f##*/}" ; \ gunzip -c $$f | mandoc -Tlint -Werror && continue ; \ err=1 ; \ done ; \ done ; \ exit $$err . endif # Compress all manpage not already compressed which are not hardlinks # Find all manpages which are not compressed and are hardlinks, and only get the list of inodes concerned, for each of them compress the first one found and recreate the hardlinks for the others # Fixes all dead symlinks left by the previous round . if !target(compress-man) compress-man: @${ECHO_MSG} "====> Compressing man pages (compress-man)" @mdirs= ; \ for dir in ${MANDIRS:S/^/${STAGEDIR}/} ; do \ [ -d $$dir ] && mdirs="$$mdirs $$dir" ;\ done ; \ for dir in $$mdirs; do \ ${FIND} $$dir -type f \! -name "*.gz" -links 1 -exec ${GZIP_CMD} {} \; ; \ ${FIND} $$dir -type f \! -name "*.gz" \! -links 1 -exec ${STAT} -f '%i' {} \; | \ ${SORT} -u | while read inode ; do \ unset ref ; \ for f in $$(${FIND} $$dir -type f -inum $${inode} -print); do \ if [ -z $$ref ]; then \ ref=$${f}.gz ; \ ${GZIP_CMD} $${f} ; \ continue ; \ fi ; \ ${RM} $${f} ; \ (cd $${f%/*}; ${LN} -f $${ref##*/} $${f##*/}.gz) ; \ done ; \ done ; \ ${FIND} $$dir -type l \! -name "*.gz" | while read link ; do \ ${LN} -sf $$(readlink $$link).gz $$link.gz ;\ ${RM} $$link ; \ done; \ done . endif . if !target(stage-dir) stage-dir: ${STAGEDIR}${PREFIX} . if !defined(NO_MTREE) @${MTREE_CMD} ${MTREE_ARGS} ${STAGEDIR}${PREFIX} > /dev/null . endif . endif . if !target(makeplist) makeplist: stage @${SETENV} ${CO_ENV} ${SH} ${SCRIPTSDIR}/check-stagedir.sh makeplist . endif . if !target(check-plist) check-plist: stage @${ECHO_MSG} "====> Checking for pkg-plist issues (check-plist)" @${SETENV} ${CO_ENV} ${SH} ${SCRIPTSDIR}/check-stagedir.sh checkplist @${ECHO_MSG} "===> No pkg-plist issues found (check-plist)" . endif . if !target(check-orphans) check-orphans: check-plist . endif . if !target(stage-qa) stage-qa: @${ECHO_MSG} "====> Running Q/A tests (stage-qa)" @${SETENV} ${QA_ENV} ${SH} ${SCRIPTSDIR}/qa.sh . if !defined(DEVELOPER) @${ECHO_MSG} "/!\\ To run stage-qa automatically add DEVELOPER=yes to your environment /!\\" . endif . endif pretty-flavors-package-names: .PHONY . if empty(FLAVORS) @${ECHO_CMD} "no flavor: ${PKGNAME}" . else . for f in ${FLAVORS} @${ECHO_CMD} -n "${f}: " @cd ${.CURDIR} && ${SETENV} FLAVOR=${f} ${MAKE} -B -V PKGNAME . endfor . endif flavors-package-names: .PHONY . if empty(FLAVORS) @${ECHO_CMD} "${PKGNAME}" . else . for f in ${FLAVORS} @cd ${.CURDIR} && ${SETENV} FLAVOR=${f} ${MAKE} -B -V PKGNAME . endfor . endif # Fake installation of package so that user can pkg delete it later. . if !target(fake-pkg) STAGE_ARGS= -i ${STAGEDIR} . if defined(NO_PKG_REGISTER) STAGE_ARGS= -N . endif fake-pkg: . if defined(INSTALLS_DEPENDS) . if !defined(NO_PKG_REGISTER) @${ECHO_MSG} "===> Registering installation for ${PKGNAME} as automatic" . endif @${SETENV} ${PKG_ENV} FORCE_POST="${_FORCE_POST_PATTERNS}" ${PKG_REGISTER} -d ${STAGE_ARGS} -m ${METADIR} -f ${TMPPLIST} . else . if !defined(NO_PKG_REGISTER) @${ECHO_MSG} "===> Registering installation for ${PKGNAME}" . endif @${SETENV} ${PKG_ENV} FORCE_POST="${_FORCE_POST_PATTERNS}" ${PKG_REGISTER} ${STAGE_ARGS} -m ${METADIR} -f ${TMPPLIST} . endif @${RM} -r ${METADIR} . endif # Depend is generally meaningless for arbitrary ports, but if someone wants # one they can override this. This is just to catch people who've gotten into # the habit of typing `make depend all install' as a matter of course. # Same goes for tags . for _t in depend tags . if !target(${_t}) ${_t}: . endif . endfor . if !defined(NOPRECIOUSMAKEVARS) # These won't change, so we can pass them through the environment . for var in ${_EXPORTED_VARS} . if empty(.MAKEFLAGS:M${var}=*) && !empty(${var}) .MAKEFLAGS: ${var}=${${var}:Q} . endif . endfor . endif PORTS_ENV_VARS+= ${_EXPORTED_VARS} . if !target(pre-check-config) pre-check-config: _CHECK_OPTIONS_NAMES= OPTIONS_DEFINE OPTIONS_GROUP OPTIONS_MULTI \ OPTIONS_RADIO OPTIONS_SINGLE _CHECK_OPTIONS_NAMES+= ${OPTIONS_GROUP:S/^/OPTIONS_GROUP_/} _CHECK_OPTIONS_NAMES+= ${OPTIONS_MULTI:S/^/OPTIONS_MULTI_/} _CHECK_OPTIONS_NAMES+= ${OPTIONS_RADIO:S/^/OPTIONS_RADIO_/} _CHECK_OPTIONS_NAMES+= ${OPTIONS_SINGLE:S/^/OPTIONS_SINGLE_/} . for var in ${_CHECK_OPTIONS_NAMES} . if defined(${var}) . for o in ${${var}} . if ${o:C/[-_[:upper:][:digit:]]//g} OPTIONS_BAD_NAMES+= ${o} . endif . endfor . endif . endfor . if defined(OPTIONS_BAD_NAMES) && !empty(OPTIONS_BAD_NAMES) DEV_WARNING+= "These options name have characters outside of [-_A-Z0-9]:" DEV_WARNING+= "${OPTIONS_BAD_NAMES:O:u}" . endif . for single in ${OPTIONS_SINGLE} . for opt in ${OPTIONS_SINGLE_${single}} . if empty(ALL_OPTIONS:M${single}) || !empty(PORT_OPTIONS:M${single}) . if !empty(PORT_OPTIONS:M${opt}) OPTIONS_WRONG_SINGLE_${single}+= ${opt} . if defined(OPTFOUND) OPTIONS_WRONG_SINGLE+= ${single} . else OPTFOUND= true . endif . endif . else # if conditional and if the condition is unchecked, remove opt from the list of # set options PORT_OPTIONS:= ${PORT_OPTIONS:N${opt}} OPTNOCHECK= true . endif . endfor . if !defined(OPTFOUND) && !defined(OPTNOCHECK) OPTIONS_WRONG_SINGLE+= ${single} . endif . undef OPTFOUND . undef OPTNOCHECK . endfor .undef single . for radio in ${OPTIONS_RADIO} . for opt in ${OPTIONS_RADIO_${radio}} . if !empty(PORT_OPTIONS:M${opt}) OPTIONS_WRONG_RADIO_${radio}+= ${opt} . if defined(OPTFOUND) OPTIONS_WRONG_RADIO+= ${radio} . else OPTFOUND= true . endif . endif . endfor . undef OPTFOUND . endfor . for multi in ${OPTIONS_MULTI} . for opt in ${OPTIONS_MULTI_${multi}} . if empty(ALL_OPTIONS:M${multi}) || !empty(PORT_OPTIONS:M${multi}) . if !empty(PORT_OPTIONS:M${opt}) OPTFOUND= true . endif . else # if conditional and if the condition is unchecked, remove opt from the list of # set options PORT_OPTIONS:= ${PORT_OPTIONS:N${opt}} OPTNOCHECK= true . endif . endfor . if !defined(OPTFOUND) && !defined(OPTNOCHECK) OPTIONS_WRONG_MULTI+= ${multi} . endif . undef OPTFOUND . undef OPTNOCHECK . endfor .undef multi . for opt in ${PORT_OPTIONS} . for conflict in ${${opt}_PREVENTS} . if ${PORT_OPTIONS:M${conflict}} . if empty(OPTIONS_WRONG_PREVENTS:M${opt}) OPTIONS_WRONG_PREVENTS+= ${opt} . endif OPTIONS_WRONG_PREVENTS_${opt}+= ${conflict} . endif . endfor . endfor .undef conflict .undef opt . endif #pre-check-config . if !target(_check-config) _check-config: pre-check-config . for multi in ${OPTIONS_WRONG_MULTI} @${ECHO_MSG} "====> You must check at least one option in the ${multi} multi" . endfor . for single in ${OPTIONS_WRONG_SINGLE} @${ECHO_MSG} "====> You must select one and only one option from the ${single} single" . if defined(OPTIONS_WRONG_SINGLE_${single}) @${ECHO_MSG} "=====> Only one of these must be defined: ${OPTIONS_WRONG_SINGLE_${single}}" . else @${ECHO_MSG} "=====> No option was selected (and one must be)" . endif . endfor . for radio in ${OPTIONS_WRONG_RADIO} @${ECHO_MSG} "====> You cannot select multiple options from the ${radio} radio" @${ECHO_MSG} "=====> Only one of these must be defined: ${OPTIONS_WRONG_RADIO_${radio}}" . endfor . if defined(OPTIONS_WRONG_PREVENTS) @${ECHO_MSG} "====> Two or more enabled options conflict with each other" . for prevents in ${OPTIONS_WRONG_PREVENTS} @${ECHO_MSG} "=====> Option ${prevents} conflicts with ${OPTIONS_WRONG_PREVENTS_${prevents}} (select only one)" . if defined(${prevents}_PREVENTS_MSG) @${ECHO_MSG} "======> ${${prevents}_PREVENTS_MSG}" . endif . endfor . endif . if !empty(OPTIONS_WRONG_MULTI) || !empty(OPTIONS_WRONG_SINGLE) || !empty(OPTIONS_WRONG_RADIO) || !empty(OPTIONS_WRONG_PREVENTS) _CHECK_CONFIG_ERROR= true . endif . endif # _check-config . if !target(check-config) check-config: _check-config . if !empty(_CHECK_CONFIG_ERROR) @${FALSE} . endif . endif # check-config . if !target(sanity-config) sanity-config: _check-config . if !empty(_CHECK_CONFIG_ERROR) @echo -n "Config is invalid. Re-edit? [Y/n] "; \ read answer; \ case $$answer in \ [Nn]|[Nn][Oo]) \ exit 0; \ esac; \ cd ${.CURDIR} && ${MAKE} config . endif . endif # sanity-config . if !target(pre-config) pre-config: D4P_ENV= PKGNAME="${PKGNAME}" \ PORT_OPTIONS="${PORT_OPTIONS}" \ ALL_OPTIONS="${ALL_OPTIONS}" \ OPTIONS_MULTI="${OPTIONS_MULTI}" \ OPTIONS_SINGLE="${OPTIONS_SINGLE}" \ OPTIONS_RADIO="${OPTIONS_RADIO}" \ OPTIONS_GROUP="${OPTIONS_GROUP}" \ NEW_OPTIONS="${NEW_OPTIONS}" \ DIALOG4PORTS="${DIALOG4PORTS}" \ PREFIX="${PREFIX}" \ LOCALBASE="${LOCALBASE}" \ PORTSDIR="${PORTSDIR}" \ MAKE="${MAKE}" \ D4PHEIGHT="${D4PHEIGHT}" \ D4PMINHEIGHT="${D4PMINHEIGHT}" \ D4PWIDTH="${D4PWIDTH}" \ D4PFULLSCREEN="${D4PFULLSCREEN}" \ D4PALIGNCENTER="${D4PALIGNCENTER}" \ D4PASCIILINES="${D4PASCIILINES}" . if exists(${PKGHELP}) D4P_ENV+= PKGHELP="${PKGHELP}" . endif . for opt in ${ALL_OPTIONS} D4P_ENV+= ${opt}_DESC=""${${opt}_DESC:Q}"" . endfor . for otype in MULTI GROUP SINGLE RADIO . for m in ${OPTIONS_${otype}} D4P_ENV+= OPTIONS_${otype}_${m}="${OPTIONS_${otype}_${m}}" \ ${m}_DESC=""${${m}_DESC:Q}"" . for opt in ${OPTIONS_${otype}_${m}} D4P_ENV+= ${opt}_DESC=""${${opt}_DESC:Q}"" . endfor . endfor . endfor .undef m .undef otype .undef opt . endif # pre-config . if !target(do-config) do-config: . if empty(ALL_OPTIONS) && empty(OPTIONS_SINGLE) && empty(OPTIONS_MULTI) && empty(OPTIONS_RADIO) && empty(OPTIONS_GROUP) @${ECHO_MSG} "===> No options to configure" . else @optionsdir=${OPTIONS_FILE:H}; \ if [ ! -w "${PORT_DBDIR}" -a "`stat -f %u ${PORT_DBDIR:H}`" = 0 ]; \ then \ ${ECHO_MSG} "===> Switching to root credentials to create $${optionsdir}"; \ (${SU_CMD} "${SH} -c \"${MKDIR} $${optionsdir} 2> /dev/null\"") || \ (${ECHO_MSG} "===> Cannot create $${optionsdir}, check permissions"; exit 1); \ ${ECHO_MSG} "===> Returning to user credentials" ; \ else \ ${MKDIR} $${optionsdir} 2> /dev/null || \ (${ECHO_MSG} "===> Cannot create $${optionsdir}, check permissions"; exit 1) ; \ fi @TMPOPTIONSFILE=$$(mktemp -t portoptions); \ trap "${RM} $${TMPOPTIONSFILE}; exit 1" 1 2 3 5 10 13 15; \ ${SETENV} ${D4P_ENV} ${SH} ${SCRIPTSDIR}/dialog4ports.sh $${TMPOPTIONSFILE} || { \ ${RM} $${TMPOPTIONSFILE}; \ ${ECHO_CMD}; \ ${ECHO_MSG} "===> Options unchanged"; \ exit 0; \ }; \ ${ECHO_CMD}; \ if [ ! -e $${TMPOPTIONSFILE} ]; then \ ${ECHO_MSG} "===> No user-specified options to save for ${PKGNAME}"; \ exit 0; \ fi; \ SELOPTIONS=$$(${CAT} $${TMPOPTIONSFILE}); \ ${RM} $${TMPOPTIONSFILE}; \ TMPOPTIONSFILE=$$(mktemp -t portoptions); \ trap "${RM} $${TMPOPTIONSFILE}; exit 1" 1 2 3 5 10 13 15; \ ${ECHO_CMD} "# This file is auto-generated by 'make config'." > $${TMPOPTIONSFILE}; \ ${ECHO_CMD} "# Options for ${PKGNAME}" >> $${TMPOPTIONSFILE}; \ ${ECHO_CMD} "_OPTIONS_READ=${PKGNAME}" >> $${TMPOPTIONSFILE}; \ ${ECHO_CMD} "_FILE_COMPLETE_OPTIONS_LIST=${COMPLETE_OPTIONS_LIST}" >> $${TMPOPTIONSFILE}; \ for i in ${COMPLETE_OPTIONS_LIST}; do \ if ${ECHO_CMD} $${SELOPTIONS} | ${GREP} -qw $${i}; then \ ${ECHO_CMD} "OPTIONS_FILE_SET+=$${i}" >> $${TMPOPTIONSFILE}; \ else \ ${ECHO_CMD} "OPTIONS_FILE_UNSET+=$${i}" >> $${TMPOPTIONSFILE}; \ fi; \ done; \ if [ ! -w "${OPTIONS_FILE:H}" -a "`stat -f %u ${OPTIONS_FILE:H}`" != ${UID} ]; \ then \ ${ECHO_MSG} "===> Switching to root credentials to write ${OPTIONS_FILE}"; \ ${SU_CMD} "${CAT} $${TMPOPTIONSFILE} > ${OPTIONS_FILE}"; \ ${ECHO_MSG} "===> Returning to user credentials"; \ else \ ${CAT} $${TMPOPTIONSFILE} > ${OPTIONS_FILE}; \ fi; \ ${RM} $${TMPOPTIONSFILE} @cd ${.CURDIR} && ${MAKE} sanity-config . endif . endif # do-config . if !target(config) . if !defined(NO_DIALOG) config: pre-config do-config . else config: @${ECHO_MSG} "===> Skipping 'config' as NO_DIALOG is defined" . endif . endif # config . if !target(config-recursive) config-recursive: @${ECHO_MSG} "===> Setting user-specified options for ${PKGNAME} and dependencies"; @recursive_cmd="config-conditional"; \ recursive_dirs="${.CURDIR}${FLAVOR:D@${FLAVOR}} $$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif # config-recursive . if !target(config-conditional) config-conditional: . if !empty(NEW_OPTIONS) @cd ${.CURDIR} && ${MAKE} config; . endif . endif # config-conditional . if !target(showconfig) && (make(*config*) || (!empty(.MAKEFLAGS:M-V) && !empty(.MAKEFLAGS:M*_DESC))) .include "${PORTSDIR}/Mk/bsd.options.desc.mk" MULTI_EOL= : you have to choose at least one of them SINGLE_EOL= : you have to select exactly one of them RADIO_EOL= : you can only select none or one of them showconfig: check-config . if !empty(COMPLETE_OPTIONS_LIST) @${ECHO_MSG} "===> The following configuration options are available for ${PKGNAME}": . for opt in ${ALL_OPTIONS} @[ -z "${PORT_OPTIONS:M${opt}}" ] || match="on" ; ${ECHO_MSG} -n " ${opt}=$${match:-off}" . if !empty(${opt}_DESC) @${ECHO_MSG} -n ": "${${opt}_DESC:Q} . endif @${ECHO_MSG} "" . endfor #multi and conditional multis . for otype in MULTI GROUP SINGLE RADIO . for m in ${OPTIONS_${otype}} . if empty(${m}_DESC) @${ECHO_MSG} "====> Options available for the ${otype:tl} ${m}${${otype}_EOL}" . else @${ECHO_MSG} "====> ${${m}_DESC}${${otype}_EOL}" . endif . for opt in ${OPTIONS_${otype}_${m}} @[ -z "${PORT_OPTIONS:M${opt}}" ] || match="on" ; ${ECHO_MSG} -n " ${opt}=$${match:-off}" . if !empty(${opt}_DESC) @${ECHO_MSG} -n ": "${${opt}_DESC:Q} . endif @${ECHO_MSG} "" . endfor . endfor . endfor .undef otype .undef m .undef opt @${ECHO_MSG} "===> Use 'make config' to modify these settings" . endif . endif # showconfig . if !target(showconfig-recursive) showconfig-recursive: @${ECHO_MSG} "===> The following configuration options are available for ${PKGNAME} and its dependencies"; @recursive_cmd="showconfig"; \ recursive_dirs="${.CURDIR}${FLAVOR:D@${FLAVOR}} $$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif # showconfig-recursive . if !target(rmconfig) rmconfig: . if exists(${OPTIONS_FILE}) -@${ECHO_MSG} "===> Removing user-configured options for ${PKGNAME}"; \ optionsdir=${OPTIONS_FILE:H}; \ if [ ${UID} != 0 -a "x${INSTALL_AS_USER}" = "x" -a ! -w "${OPTIONS_FILE}" ]; then \ ${ECHO_MSG} "===> Switching to root credentials to remove ${OPTIONS_FILE} and $${optionsdir}"; \ ${SU_CMD} "${RM} ${OPTIONS_FILE} ; \ ${RMDIR} $${optionsdir}"; \ ${ECHO_MSG} "===> Returning to user credentials"; \ else \ ${RM} ${OPTIONS_FILE}; \ ${RMDIR} $${optionsdir} 2>/dev/null || return 0; \ fi . else @${ECHO_MSG} "===> No user-specified options configured for ${PKGNAME}" . endif . endif # rmconfig . if !target(rmconfig-recursive) rmconfig-recursive: @${ECHO_MSG} "===> Removing user-specified options for ${PKGNAME} and its dependencies"; @recursive_cmd="rmconfig"; \ recursive_dirs="${.CURDIR}${FLAVOR:D@${FLAVOR}} $$(${ALL-DEPENDS-FLAVORS-LIST})"; \ ${_FLAVOR_RECURSIVE_SH} . endif # rmconfig-recursive . if !target(pretty-print-config) MULTI_START= [ MULTI_END= ] GROUP_START= [ GROUP_END= ] SINGLE_START= ( SINGLE_END= ) RADIO_START= ( RADIO_END= ) pretty-print-config: . for opt in ${ALL_OPTIONS} @[ -z "${PORT_OPTIONS:M${opt}}" ] || match="+" ; ${ECHO_MSG} -n "$${match:--}${opt} " . endfor . for otype in MULTI GROUP SINGLE RADIO . for m in ${OPTIONS_${otype}} @${ECHO_MSG} -n "${m}${${otype}_START} " . for opt in ${OPTIONS_${otype}_${m}} @[ -z "${PORT_OPTIONS:M${opt}}" ] || match="+" ; ${ECHO_MSG} -n "$${match:--}${opt} " . endfor @${ECHO_MSG} -n "${${otype}_END} " . endfor . endfor .undef otype .undef m .undef opt @${ECHO_MSG} "" . endif # pretty-print-config desktop-categories: @${SETENV} \ dp_CATEGORIES="${CATEGORIES}" \ dp_ECHO_CMD=${ECHO_CMD} \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ dp_SORT="${SORT}" \ dp_TR="${TR}" \ ${SH} ${SCRIPTSDIR}/desktop-categories.sh . if defined(DESKTOP_ENTRIES) check-desktop-entries: @${SETENV} \ dp_CURDIR="${.CURDIR}" \ dp_ECHO_CMD=${ECHO_CMD} \ dp_ECHO_MSG=${ECHO_MSG} \ dp_EXPR="${EXPR}" \ dp_GREP="${GREP}" \ dp_MAKE="${MAKE}" \ dp_PKGNAME="${PKGNAME}" \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ dp_SED="${SED}" \ dp_VALID_DESKTOP_CATEGORIES="${VALID_DESKTOP_CATEGORIES}" \ dp_TR="${TR}" \ ${SH} ${SCRIPTSDIR}/check-desktop-entries.sh ${DESKTOP_ENTRIES} . endif . if !target(install-desktop-entries) . if defined(DESKTOP_ENTRIES) install-desktop-entries: @${SETENV} \ dp_CURDIR="${.CURDIR}" \ dp_ECHO_CMD=${ECHO_CMD} \ dp_SCRIPTSDIR="${SCRIPTSDIR}" \ dp_STAGEDIR="${STAGEDIR}" \ dp_DESKTOPDIR="${DESKTOPDIR}" \ dp_TMPPLIST="${TMPPLIST}" \ dp_MAKE="${MAKE}" \ dp_SED="${SED}" \ ${SH} ${SCRIPTSDIR}/install-desktop-entries.sh ${DESKTOP_ENTRIES} . endif . endif . if !empty(BINARY_ALIAS) . if !target(create-binary-alias) create-binary-alias: ${BINARY_LINKDIR} . for target src in ${BINARY_ALIAS:C/=/ /} @if srcpath=`which -- ${src}`; then \ ${RLN} $${srcpath} ${BINARY_LINKDIR}/${target}; \ else \ ${ECHO_MSG} "===> Missing \"${src}\" to create a binary alias at \"${BINARY_LINKDIR}/${target}\""; \ ${FALSE}; \ fi . endfor . endif . endif . if !empty(PKGCONFIG_BASE) . if !target(create-base-pkgconfig) create-base-pkgconfig: ${PKGCONFIG_LINKDIR} . for pcfile in ${PKGCONFIG_BASE:S/$/.pc/} @if `test -f ${PKGCONFIG_BASEDIR}/${pcfile}`; then \ ${RLN} ${PKGCONFIG_BASEDIR}/${pcfile} ${PKGCONFIG_LINKDIR}/${pcfile}; \ else \ ${ECHO_MSG} "===> Missing \"${pcfile}\" to create a link at \"${PKGCONFIG_LINKDIR}/${pcfile}\" "; \ ${FALSE}; \ fi . endfor . endif . endif . if !empty(BINARY_WRAPPERS) . if !target(create-binary-wrappers) create-binary-wrappers: ${BINARY_LINKDIR} . for bin in ${BINARY_WRAPPERS} @${INSTALL_SCRIPT} ${WRAPPERSDIR}/${bin} ${BINARY_LINKDIR} . endfor . endif . endif . if defined(WARNING) WARNING_WAIT?= 10 show-warnings: @${ECHO_MSG} "/!\\ WARNING /!\\" @${ECHO_MSG} . for m in ${WARNING} @${ECHO_MSG} "${m}" | ${FMT_80} @${ECHO_MSG} . endfor @sleep ${WARNING_WAIT} . endif . if defined(ERROR) show-errors: @${ECHO_MSG} "/!\\ ERRORS /!\\" @${ECHO_MSG} . for m in ${ERROR} @${ECHO_MSG} "${m}" | ${FMT_80} @${ECHO_MSG} . endfor @${FALSE} . endif . if defined(DEVELOPER) . if defined(DEV_WARNING) DEV_WARNING_WAIT?= 10 show-dev-warnings: @${ECHO_MSG} "/!\\ ${PKGNAME}: Makefile warnings, please consider fixing /!\\" @${ECHO_MSG} . for m in ${DEV_WARNING} @${ECHO_MSG} ${m} | ${FMT_80} @${ECHO_MSG} . endfor . if defined(DEV_WARNING_FATAL) @${FALSE} . else @sleep ${DEV_WARNING_WAIT} . endif . endif . if defined(DEV_ERROR) show-dev-errors: @${ECHO_MSG} "/!\\ ${PKGNAME}: Makefile errors /!\\" @${ECHO_MSG} . for m in ${DEV_ERROR} @${ECHO_MSG} "${m}" | ${FMT_80} @${ECHO_MSG} . endfor @${FALSE} . endif . endif #DEVELOPER ${_PORTS_DIRECTORIES}: @${MKDIR} ${.TARGET} # Please note that the order of the following targets is important, and # should not be modified. _TARGETS_STAGES= SANITY PKG FETCH EXTRACT PATCH CONFIGURE BUILD INSTALL TEST PACKAGE STAGE # Define the SEQ of actions to take when each target is ran, and which targets # it depends on before running its SEQ. # # Main target has a priority of 500, pre-target 300, post-target 700, # target-depends 150. Other targets are spaced in between those # # If you change the pre-foo and post-foo values here, go and keep them in sync # in _OPTIONS_TARGETS in bsd.options.mk _SANITY_SEQ= 050:post-chroot 100:pre-everything \ 125:show-unsupported-system-error 150:check-makefile \ 190:show-errors 200:show-warnings \ 210:show-dev-errors 220:show-dev-warnings \ 250:check-categories 300:check-makevars \ 350:check-desktop-entries 400:check-depends \ 500:check-deprecated \ 550:check-vulnerable 600:check-license 650:check-config \ 700:buildanyway-message 750:options-message ${_USES_sanity} _PKG_DEP= check-sanity _PKG_SEQ= 500:pkg-depends _FETCH_DEP= pkg _FETCH_SEQ= 150:fetch-depends 300:pre-fetch 450:pre-fetch-script \ 500:do-fetch 550:fetch-specials 700:post-fetch \ 850:post-fetch-script \ ${_OPTIONS_fetch} ${_USES_fetch} _EXTRACT_DEP= fetch _EXTRACT_SEQ= 010:check-build-conflicts 050:extract-message 100:checksum \ 150:extract-depends 190:clean-wrkdir 200:${EXTRACT_WRKDIR} \ 300:pre-extract 450:pre-extract-script 500:do-extract \ 700:post-extract 850:post-extract-script \ 999:extract-fixup-modes \ ${_OPTIONS_extract} ${_USES_extract} ${_SITES_extract} _PATCH_DEP= extract _PATCH_SEQ= 050:ask-license 100:patch-message 150:patch-depends \ 300:pre-patch 450:pre-patch-script 500:do-patch \ 700:post-patch 850:post-patch-script \ ${_OPTIONS_patch} ${_USES_patch} _CONFIGURE_DEP= patch _CONFIGURE_SEQ= 150:build-depends 151:lib-depends 160:create-binary-alias \ 161:create-binary-wrappers 170:create-base-pkgconfig \ 200:configure-message 210:apply-slist \ 300:pre-configure 450:pre-configure-script \ 490:run-autotools-fixup 500:do-configure 700:post-configure \ 850:post-configure-script \ ${_OPTIONS_configure} ${_USES_configure} _BUILD_DEP= configure _BUILD_SEQ= 100:build-message 300:pre-build 450:pre-build-script \ 500:do-build 700:post-build 850:post-build-script \ ${_OPTIONS_build} ${_USES_build} _STAGE_DEP= build # STAGE is special in its numbering as it has install and stage, so install is # the main, and stage goes after. _STAGE_SEQ= 050:stage-message 100:stage-dir 150:run-depends \ 300:pre-install \ 400:generate-plist 450:pre-su-install 475:create-users-groups \ 500:do-install 550:kmod-post-install 600:fixup-lib-pkgconfig 700:post-install \ 750:post-install-script 800:post-stage 850:compress-man \ 860:install-rc-script 870:install-ldconfig-file \ 880:install-license 890:install-desktop-entries \ 900:add-plist-info 910:add-plist-docs 920:add-plist-examples \ 930:add-plist-data 940:add-plist-post ${POST_PLIST:C/^/990:/} \ ${_OPTIONS_install} ${_USES_install} \ ${_OPTIONS_stage} ${_USES_stage} . if defined(DEVELOPER) _STAGE_SEQ+= 995:stage-qa . else stage-qa: stage . endif _TEST_DEP= stage _TEST_SEQ= 100:test-message 150:test-depends 300:pre-test 500:do-test \ 800:post-test \ ${_OPTIONS_test} ${_USES_test} _INSTALL_DEP= stage _INSTALL_SEQ= 100:install-message \ 150:identify-install-conflicts \ 200:check-already-installed \ 300:create-manifest _INSTALL_SUSEQ= 400:fake-pkg 500:security-check _PACKAGE_DEP= stage _PACKAGE_SEQ= 100:package-message 300:pre-package 450:pre-package-script \ 500:do-package 850:post-package-script \ ${_OPTIONS_package} ${_USES_package} # Enforce order for -jN builds . for _t in ${_TARGETS_STAGES} # Check if the port need to change the default order of some targets... . if defined(TARGET_ORDER_OVERRIDE) _tmp_seq:= . for _entry in ${_${_t}_SEQ} # for _target because :M${_target} does not work with fmake . for _target in ${_entry:C/^[0-9]+://} . if ${TARGET_ORDER_OVERRIDE:M*\:${_target}} _tmp_seq:= ${_tmp_seq} ${TARGET_ORDER_OVERRIDE:M*\:${_target}} . else _tmp_seq:= ${_tmp_seq} ${_entry} . endif . endfor . endfor _${_t}_SEQ:= ${_tmp_seq} . endif . for s in ${_${_t}_SEQ:O:C/^[0-9]+://} . if target(${s}) . if ! ${NOTPHONY:M${s}} _PHONY_TARGETS+= ${s} . endif _${_t}_REAL_SEQ+= ${s} . endif . endfor . for s in ${_${_t}_SUSEQ:O:C/^[0-9]+://} . if target(${s}) . if ! ${NOTPHONY:M${s}} _PHONY_TARGETS+= ${s} . endif _${_t}_REAL_SUSEQ+= ${s} . endif . endfor .ORDER: ${_${_t}_DEP} ${_${_t}_REAL_SEQ} . endfor # Define all of the main targets which depend on a sequence of other targets. # See above *_SEQ and *_DEP. The _DEP will run before this defined target is # ran. The _SEQ will run as this target once _DEP is satisfied. . for target in extract patch configure build stage install package # Check if config dialog needs to show and execute it if needed. If is it not # needed (_OPTIONS_OK), then just depend on the cookie which is defined later # to depend on the *_DEP and execute the *_SEQ. # If options are required, execute config-conditional and then re-execute the # target noting that config is no longer needed. . if !target(${target}) && defined(_OPTIONS_OK) _PHONY_TARGETS+= ${target} ${target}: ${${target:tu}_COOKIE} . elif !target(${target}) ${target}: config-conditional @cd ${.CURDIR} && ${MAKE} CONFIG_DONE_${PKGBASE:tu}=1 ${${target:tu}_COOKIE} . elif target(${target}) && defined(IGNORE) . endif . if !exists(${${target:tu}_COOKIE}) # Define the real target behavior. Depend on the target's *_DEP. Execute # the target's *_SEQ. Also handle su and USE_SUBMAKE needs. . if ${UID} != 0 && defined(_${target:tu}_REAL_SUSEQ) && !defined(INSTALL_AS_USER) . if defined(USE_SUBMAKE) ${${target:tu}_COOKIE}: ${_${target:tu}_DEP} @cd ${.CURDIR} && ${MAKE} ${_${target:tu}_REAL_SEQ} . else # !USE_SUBMAKE ${${target:tu}_COOKIE}: ${_${target:tu}_DEP} ${_${target:tu}_REAL_SEQ} . endif # USE_SUBMAKE @${ECHO_MSG} "===> Switching to root credentials for '${target}' target" @cd ${.CURDIR} && \ ${SU_CMD} "${MAKE} ${_${target:tu}_REAL_SUSEQ}" @${ECHO_MSG} "===> Returning to user credentials" @${TOUCH} ${TOUCH_FLAGS} ${.TARGET} . else # No SU needed . if defined(USE_SUBMAKE) ${${target:tu}_COOKIE}: ${_${target:tu}_DEP} @cd ${.CURDIR} && \ ${MAKE} ${_${target:tu}_REAL_SEQ} ${_${target:tu}_REAL_SUSEQ} @${TOUCH} ${TOUCH_FLAGS} ${.TARGET} . else # !USE_SUBMAKE ${${target:tu}_COOKIE}: ${_${target:tu}_DEP} ${_${target:tu}_REAL_SEQ} ${_${target:tu}_REAL_SUSEQ} @${TOUCH} ${TOUCH_FLAGS} ${.TARGET} . endif # USE_SUBMAKE . endif # SU needed . else # exists(cookie) ${${target:tu}_COOKIE}:: @if [ ! -e ${.TARGET} ]; then \ cd ${.CURDIR} && ${MAKE} ${.TARGET}; \ fi . endif # !exists(cookie) . endfor # foreach(targets) .PHONY: ${_PHONY_TARGETS} check-sanity fetch pkg . if !target(check-sanity) check-sanity: ${_SANITY_REAL_SEQ} . endif . if !target(fetch) fetch: ${_FETCH_DEP} ${_FETCH_REAL_SEQ} . endif . if !target(pkg) pkg: ${_PKG_DEP} ${_PKG_REAL_SEQ} . endif . if !target(test) test: ${_TEST_DEP} . if !defined(NO_TEST) test: ${_TEST_REAL_SEQ} . endif . endif . endif # End of post-makefile section. .endif # End of the DESTDIR if statement diff --git a/arabic/arabtex/Makefile b/arabic/arabtex/Makefile index af97d258a3cb..04ee20ab0336 100644 --- a/arabic/arabtex/Makefile +++ b/arabic/arabtex/Makefile @@ -1,32 +1,32 @@ PORTNAME= arabtex PORTVERSION= 3.11 PORTREVISION= 6 CATEGORIES= arabic print MASTER_SITES= ftp://ftp.informatik.uni-stuttgart.de/pub/${PORTNAME}/ DISTNAME= arab${PORTVERSION:S/.//} MAINTAINER= nivit@FreeBSD.org COMMENT= TeX/LaTeX package to generate Arabic writing WWW= http://www2.informatik.uni-stuttgart.de/ivi/bs/research/arab_e.htm LICENSE= LPPL10 -USES= tar:tgz +USES= tar:tgz tex USE_TEX= base texmf NO_WRKSUBDIR= yes NO_BUILD= yes PLIST_SUB= MKTEXLSR=${LOCALBASE}/bin/mktexlsr OPTIONS_DEFINE= DOCS do-install: (cd ${WRKSRC} && ${COPYTREE_SHARE} "fonts tex" \ ${STAGEDIR}${PREFIX}/${TEXMFLOCALDIR}) do-install-DOCS-on: (cd ${WRKSRC} && ${COPYTREE_SHARE} doc \ ${STAGEDIR}${PREFIX}/${TEXMFLOCALDIR}) .include diff --git a/astro/pp3/Makefile b/astro/pp3/Makefile index b061a7c9f393..2d3b87c7997a 100644 --- a/astro/pp3/Makefile +++ b/astro/pp3/Makefile @@ -1,37 +1,37 @@ PORTNAME= pp3 PORTVERSION= 1.3.3 PORTREVISION= 6 CATEGORIES= astro MASTER_SITES= SF/${PORTNAME}/PP3/${PORTVERSION} MAINTAINER= ports@FreeBSD.org COMMENT= Creates celestial charts WWW= http://pp3.sourceforge.net/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING -USES= tar:bzip2 +USES= tar:bzip2 tex USE_TEX= latex OPTIONS_DEFINE= DOCS EXAMPLES do-build: (cd ${WRKSRC} \ && ${CXX} ${CXXFLAGS} -DPP3DATA=\"${DATADIR}\" pp3.cc -o pp3) do-install: ${INSTALL_PROGRAM} ${WRKSRC}/pp3 ${STAGEDIR}${PREFIX}/bin @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/*.dat ${STAGEDIR}${DATADIR} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/WHATSNEW ${STAGEDIR}${DOCSDIR} do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${WRKSRC}/examples/* ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/cad/alliance/Makefile b/cad/alliance/Makefile index b14ea8020cf6..04d9855e7e1b 100644 --- a/cad/alliance/Makefile +++ b/cad/alliance/Makefile @@ -1,73 +1,73 @@ PORTNAME= alliance DISTVERSION= 5.1.1 PORTREVISION= 3 CATEGORIES= cad MAINTAINER= ports@FreeBSD.org COMMENT= Complete set of CAD tools and libraries for VLSI design WWW= http://coriolis.lip6.fr/ LICENSE= Alliance LICENSE_NAME= Alliance VLSI Cad System License LICENSE_FILE= ${WRKSRC}/LICENCE LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BROKEN_aarch64= fails to link: collect2: error: ld returned 1 exit status BUILD_DEPENDS= fig2dev:print/fig2dev USE_GITLAB= yes GL_SITE= https://gitlab.lip6.fr GL_ACCOUNT= vlsi-eda GL_COMMIT= ebece102e15c110fc79f1da50524c68fd9523f0c -USES= autoreconf:build gmake libtool magick:build motif tar:bz2 xorg +USES= autoreconf:build gmake libtool magick:build motif tar:bz2 tex xorg USE_GCC= yes USE_TEX= dvipsk:build latex:build USE_XORG= ice sm x11 xext xt HAS_CONFIGURE= yes CONFIGURE_ENV+= ALLIANCE_TOP=${ALLIANCE_TOP} YACC=${YACC} CONFIGURE_ARGS+=--mandir=${MANPREFIX}/man \ --prefix=${ALLIANCE_TOP} \ --enable-alc-shared \ --enable-shared USE_LDCONFIG= ${ALLIANCE_TOP}/lib MAKE_JOBS_UNSAFE= yes INSTALL_TARGET= install-strip CFLAGS+= -fcommon CONFLICTS_INSTALL= ocp publib SUB_FILES= pkg-message WRKSRC_SUBDIR= alliance/src ALLIANCE_TOP= ${PREFIX}/alliance OPTIONS_DEFINE= DOCS EXAMPLES pre-configure: ${REINPLACE_CMD} -e '/include /d' \ ${WRKSRC}/xgra/src/XSB_parse.c # Recursive make commands should always use the variable MAKE, not the # explicit command name `make' (see the GNU make manual, section 5.7.1) ${REINPLACE_CMD} -e 's/; make/; $$(MAKE)/' \ ${WRKSRC}/documentation/Makefile.am \ ${WRKSRC}/documentation/alliance-examples/Makefile \ ${WRKSRC}/documentation/tutorials/Makefile.am ${RM} ${WRKSRC}/documentation/tutorials/Makefile.am.bak \ ${WRKSRC}/documentation/alliance-examples/Makefile.bak cd ${WRKSRC} && ./autostuff post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${ALLIANCE_TOP}/tutorials (cd ${WRKSRC}/documentation/tutorials && \ ${COPYTREE_SHARE} . ${STAGEDIR}${ALLIANCE_TOP}/tutorials) post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${ALLIANCE_TOP}/examples (cd ${WRKSRC}/documentation/alliance-examples && \ ${COPYTREE_SHARE} . ${STAGEDIR}${ALLIANCE_TOP}/examples) .include diff --git a/cad/opencascade/Makefile b/cad/opencascade/Makefile index 325e005c58d2..4a07f1c2f670 100644 --- a/cad/opencascade/Makefile +++ b/cad/opencascade/Makefile @@ -1,186 +1,187 @@ PORTNAME= opencascade DISTVERSION= 7.7.0 CATEGORIES= cad science MASTER_SITES= LOCAL/thierry MAINTAINER= thierry@FreeBSD.org COMMENT= Open CASCADE Technology, 3D modeling & numerical simulation WWW= https://www.opencascade.org/ LICENSE= OCTPL LICENSE_NAME= LGPL21 with exception LICENSE_FILE= ${WRKSRC}/OCCT_LGPL_EXCEPTION.txt LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BUILD_DEPENDS= rapidjson>0:devel/rapidjson \ ${LOCALBASE}/lib/qt5/bin/qmake:devel/qt5-qmake \ ${LOCALBASE}/lib/qt5/bin/moc:devel/qt5-buildtools LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libexpat.so:textproc/expat2 \ libdraco.so:archivers/draco \ libpng16.so:graphics/png \ libvtksys-${VTK_VER}.so:math/vtk${VTK_VER:R} RUN_DEPENDS= bash:shells/bash # Check ${WRKSRC}/dox/overview/overview.md # and ${WRKSRC}/dox/dev_guides/building USES= alias:10 cmake compiler:c++14-lang dos2unix gettext-runtime \ gl gnome localbase python qt:5 shebangfix tk tar:tgz xorg USE_XORG= ice sm x11 xau xcb xdmcp xext xft xi xmu xrender xscrnsaver xt USE_GL= egl gl glesv2 glu USE_GNOME= libxml2 DOS2UNIX_FILES= adm/templates/* SHEBANG_FILES= adm/templates/*.sh \ adm/templates/*.sh.in \ adm/templates/*.sh.main \ adm/genconf.tcl \ adm/start.tcl \ gendoc ENVSH= adm/templates/env.sh OPTIONS_DEFINE= DOCS DOXYGEN FFMPEG VIS VIS_DESC= Build Visualizazion module (requires OpenGL, freetype, ftgl) OPTIONS_DEFAULT=FFMPEG VIS OPTIONS_SUB= yes REINPLACE_ARGS= -i "" LDFLAGS+= -Wl,--allow-shlib-undefined -lexecinfo CMAKE_ARGS+= -DINSTALL_DIR=${OCCROOT} \ -DINSTALL_DIR_INCLUDE=${PREFIX}/include/OpenCASCADE \ -DINSTALL_DIR_LIB=${PREFIX}/lib \ -DINSTALL_DIR_CMAKE=${PREFIX}/lib/cmake \ -DINSTALL_DIR_DATA=${OCCROOT}/data \ -DINSTALL_DIR_RESOURCE=${OCCROOT}/resources \ -DINSTALL_DIR_SAMPLES=${OCCROOT}/samples \ -DINSTALL_DIR_TESTS=${OCCROOT}/tests \ -DINSTALL_TEST_CASES:BOOL=ON \ -DUSE_FREETYPE:BOOL=ON \ -DUSE_TBB:BOOL=OFF \ -DUSE_RAPIDJSON:BOOL=ON \ -DUSE_DRACO:BOOL=ON \ -DUSE_VTK:BOOL=ON \ -D3RDPARTY_DRACO_LIBRARY_DIR:PATH=${LOCALBASE}/lib \ -D3RDPARTY_DRACO_INCLUDE_DIR:PATH=${LOCALBASE}/include/draco \ -D3RDPARTY_VTK_INCLUDE_DIR:PATH=${LOCALBASE}/include/vtk-${VTK_VER} CONFIGURE_ENV+= DESTDIR=${STAGEDIR} .if defined(MAINTAINER_MODE) CMAKE_ARGS+= -DCMAKE_MESSAGE_CONTEXT_SHOW:BOOL=ON \ -DCMAKE_MESSAGE_LOG_LEVEL:STRING=DEBUG .endif # TODO: TBB to be replaced by onetbb later #CMAKE_ARGS+= -DUSE_EIGEN:BOOL=ON -DUSE_TBB:BOOL=ON #USES+= eigen:3 #LIB_DEPENDS+= libtbb.so:devel/tbb USE_LDCONFIG= yes CONFLICTS_INSTALL= opencascade740 # OpenCAS/bin/DRAWEXE LOCCROOT= OpenCAS OCCROOT= ${PREFIX}/${LOCCROOT} PLIST_SUB= OCCROOT="${LOCCROOT}" BITS=${BITS} CC=${CHOSEN_COMPILER_TYPE} \ VE=${PORTVERSION:R} VER=${DISTVERSION:C/-beta//} FFMPEG_CMAKE_ON= -DUSE_FFMPEG:BOOL=ON FFMPEG_CMAKE_OFF= -DUSE_FFMPEG:BOOL=OFF FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libtheoraenc.so:multimedia/libtheora \ libunistring.so:devel/libunistring \ libvdpau.so:multimedia/libvdpau \ libxvidcore.so:multimedia/xvid \ libp11-kit.so:security/p11-kit \ libx264.so:multimedia/libx264 \ libtasn1.so:security/libtasn1 \ libvorbis.so:audio/libvorbis \ libdav1d.so:multimedia/dav1d \ libnettle.so:security/nettle \ libgnutls.so:security/gnutls \ libvpx.so:multimedia/libvpx \ libx265.so:multimedia/x265 \ libdrm.so:graphics/libdrm \ libva.so:multimedia/libva \ libaom.so:multimedia/aom \ libmp3lame.so:audio/lame \ libffi.so:devel/libffi \ libidn2.so:dns/libidn2 \ libogg.so:audio/libogg \ libopus.so:audio/opus \ libgmp.so:math/gmp VIS_CMAKE_ON= -DUSE_FREEIMAGE:BOOL=ON \ -DUSE_GLES2:BOOL=ON \ -D3RDPARTY_FREETYPE_DIR=${LOCALBASE} VIS_CMAKE_OFF= -DUSE_FREEIMAGE:BOOL=OFF \ -DUSE_GLES2:BOOL=OFF VIS_LIB_DEPENDS= libftgl.so:graphics/ftgl \ libfreeimageplus.so:graphics/freeimage VIS_USE= GL=glesv2 DOXYGEN_IMPLIES= DOCS +DOXYGEN_USES= tex DOXYGEN_USE= TEX=latex:build DOXYGEN_BUILD_DEPENDS= bash:shells/bash \ doxygen:devel/doxygen \ dot:graphics/graphviz \ pdftex:print/tex-basic-engines \ inkscape:graphics/inkscape DOXYGEN_RUN_DEPENDS= ${LOCALBASE}/www/MathJax/MathJax.js:www/mathjax .include .if ${ARCH} == armv6 || ${ARCH} == armv7 || ${ARCH} == mips || ${ARCH} == powerpc || ${ARCH} == powerpcspe || ${ARCH} == "i386" BITS= 32 .else BITS= 64 .endif pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "Warning: to build OpenCascade, you should have at least" @${ECHO_MSG} "2.6 Gb of free disk space in build area!" @${ECHO_MSG} pre-patch: ${REINPLACE_CMD} 's|||' \ ${WRKSRC}/src/BRepMesh/delabella.cpp\ ${WRKSRC}/src/OSD/OSD_MemInfo.cxx pre-configure: ${REINPLACE_CMD} -e 's|tclsh|${TCLSH}|' ${WRKSRC}/gendoc ${REINPLACE_CMD} -e 's|/usr/bin/|${LOCALBASE}/bin/|' ${WRKSRC}/adm/genconfdeps.tcl ${GREP} -rl x86_64 ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} \ -e 's|x86_64|amd64|' .for es in ${ENVSH} ${REINPLACE_CMD} -e 's|lin|bsd|' ${WRKSRC}/${es} .endfor post-build-DOXYGEN-on: (cd ${WRKSRC} && ./gendoc -overview) post-install: ${MV} ${STAGEDIR}${OCCROOT}/bin/DRAWEXE-${DISTVERSION:C/-beta//} ${STAGEDIR}${PREFIX}/bin/DRAWEXE (cd ${STAGEDIR}${PREFIX}/bin && \ ${LN} -sf DRAWEXE ${STAGEDIR}${OCCROOT}/bin/DRAWEXE) post-install-DOXYGEN-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} (cd ${WRKSRC}/doc/overview && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) ${RM} -r ${STAGEDIR}${DOCSDIR}/latex ${RM} ${STAGEDIR}${DOCSDIR}/html/build_upgrade_building_3rdparty.html.bak .if defined(MAINTAINER_MODE) regression-test: install ${RM} -rf /tmp/testOCC ${MKDIR} /tmp/testOCC bash -c "\ cd ${OCCROOT} && . ${OCCROOT}/bin/env.sh && \ CSF_TestScriptsPath=${OCCROOT}/tests \ CSF_TestDataPath=${OCCROOT}/data \ DRAWEXE -f ${FILESDIR}/regtest " .endif .include <../../math/vtk9/Makefile.version> .include diff --git a/cad/opencascade740/Makefile b/cad/opencascade740/Makefile index e065194e27bc..8eef300d1e2e 100644 --- a/cad/opencascade740/Makefile +++ b/cad/opencascade740/Makefile @@ -1,143 +1,144 @@ PORTNAME= opencascade PORTVERSION= 7.4.0 # resurrected because science/chrono only builds with opencascade-7.4.0, see https://github.com/projectchrono/chrono/issues/359#issuecomment-1023478083 PORTREVISION= 1 CATEGORIES= cad science PKGNAMESUFFIX= 740 MAINTAINER= thierry@FreeBSD.org COMMENT= Open CASCADE Technology, 3D modeling & numerical simulation WWW= https://www.opencascade.org/ LICENSE= OCTPL LICENSE_NAME= LGPL21 with exception LICENSE_FILE= ${WRKSRC}/OCCT_LGPL_EXCEPTION.txt LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BUILD_DEPENDS= ${LOCALBASE}/lib/qt5/bin/qmake:devel/qt5-qmake \ ${LOCALBASE}/lib/qt5/bin/moc:devel/qt5-buildtools LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 RUN_DEPENDS= bash:shells/bash # Check ${WRKSRC}/dox/overview/overview.md # and ${WRKSRC}/dox/dev_guides/building USES= alias:10 cmake compiler:c++14-lang dos2unix \ gl python qt:5 shebangfix tk tar:tgz xorg USE_XORG= ice sm x11 xext xi xmu xt USE_GL= gl glu DOS2UNIX_FILES= adm/templates/* SHEBANG_FILES= adm/templates/*.sh \ adm/templates/*.sh.in \ adm/templates/*.sh.main \ adm/genconf.tcl \ adm/start.tcl \ gendoc ENVSH= adm/templates/env.sh OPTIONS_DEFINE= DOCS DOXYGEN FFMPEG VIS VIS_DESC= Build Visualizazion module (requires OpenGL, freetype, ftgl and gl2ps) OPTIONS_DEFAULT=FFMPEG VIS OPTIONS_SUB= yes REINPLACE_ARGS= -i "" CFLAGS+= -I${LOCALBASE}/include CMAKE_ARGS+= -DINSTALL_DIR=${OCCROOT} \ -DINSTALL_DIR_INCLUDE=${PREFIX}/include/OpenCASCADE \ -DINSTALL_DIR_LIB=${PREFIX}/lib \ -DINSTALL_DIR_CMAKE=${PREFIX}/lib/cmake \ -DINSTALL_DIR_DATA=${OCCROOT}/data \ -DINSTALL_DIR_RESOURCE=${OCCROOT}/resources \ -DINSTALL_DIR_SAMPLES=${OCCROOT}/samples \ -DINSTALL_DIR_TESTS=${OCCROOT}/tests \ -DINSTALL_TEST_CASES:BOOL=ON \ -DUSE_TBB:BOOL=OFF \ -DUSE_VTK:BOOL=OFF USE_LDCONFIG= yes CONFLICTS_INSTALL= opencascade # OpenCAS/bin/DRAWEXE LOCCROOT= OpenCAS OCCROOT= ${PREFIX}/${LOCCROOT} PLIST_SUB= OCCROOT="${LOCCROOT}" BITS=${BITS} CC=${CHOSEN_COMPILER_TYPE} \ VE=${PORTVERSION:R:R} VER=${PORTVERSION} FFMPEG_CMAKE_ON= -DUSE_FFMPEG:BOOL=ON FFMPEG_CMAKE_OFF= -DUSE_FFMPEG:BOOL=OFF FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg VIS_CMAKE_ON= -DUSE_FREEIMAGE:BOOL=ON -DUSE_GL2PS:BOOL=ON \ -DUSE_FREETYPE:BOOL=ON -D3RDPARTY_FREETYPE_DIR=${LOCALBASE} VIS_CMAKE_OFF= -DUSE_FREEIMAGE:BOOL=OFF -DUSE_GL2PS:BOOL=OFF \ -DUSE_FREETYPE:BOOL=OFF VIS_LIB_DEPENDS= libftgl.so:graphics/ftgl \ libgl2ps.so:print/gl2ps \ libfreeimageplus.so:graphics/freeimage DOXYGEN_IMPLIES= DOCS +DOXYGEN_USES= tex DOXYGEN_USE= TEX=latex:build DOXYGEN_BUILD_DEPENDS= bash:shells/bash \ doxygen:devel/doxygen \ dot:graphics/graphviz \ pdftex:print/tex-basic-engines \ inkscape:graphics/inkscape DOXYGEN_RUN_DEPENDS= ${LOCALBASE}/www/MathJax/MathJax.js:www/mathjax .include .if ${ARCH} == "i386" BITS= 32 .else BITS= 64 .endif pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "Warning: to build OpenCascade, you should have at least" @${ECHO_MSG} "2.6 Gb of free disk space in build area!" @${ECHO_MSG} pre-configure: ${REINPLACE_CMD} -e 's|tclsh|${TCLSH}|' ${WRKSRC}/gendoc ${REINPLACE_CMD} -e 's|/usr/bin/|${LOCALBASE}/bin/|' ${WRKSRC}/adm/genconfdeps.tcl ${GREP} -rl x86_64 ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} \ -e 's|x86_64|amd64|' .for es in ${ENVSH} ${REINPLACE_CMD} -e 's|lin|bsd|' ${WRKSRC}/${es} .endfor pre-patch: @${REINPLACE_CMD} 's|||' \ ${WRKSRC}/src/OSD/OSD_MemInfo.cxx \ ${WRKSRC}/src/StepFile/step.tab.c \ ${WRKSRC}/src/StepFile/step.yacc post-build-DOXYGEN-on: (cd ${WRKSRC} && ./gendoc -overview) post-install: ${MV} ${STAGEDIR}${OCCROOT}/bin/DRAWEXE-${PORTVERSION} ${STAGEDIR}${PREFIX}/bin/DRAWEXE (cd ${STAGEDIR}${PREFIX}/bin && \ ${LN} -sf DRAWEXE ${STAGEDIR}${OCCROOT}/bin/DRAWEXE) # autoplist @cd ${STAGEDIR}${PREFIX} && \ ${FIND} * -type f -or -type l >> ${TMPPLIST} post-install-DOXYGEN-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} (cd ${WRKSRC}/doc/overview && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) ${RM} -r ${STAGEDIR}${DOCSDIR}/latex .if defined(MAINTAINER_MODE) regression-test: install ${RM} -rf /tmp/testOCC ${MKDIR} /tmp/testOCC bash -c "\ cd ${OCCROOT} && . ${OCCROOT}/bin/env.sh && \ CSF_TestScriptsPath=${OCCROOT}/tests \ CSF_TestDataPath=${OCCROOT}/data \ DRAWEXE -f ${FILESDIR}/regtest " .endif .include diff --git a/converters/p5-LaTeXML/Makefile b/converters/p5-LaTeXML/Makefile index bf1f8dfeef73..95be14eefa43 100644 --- a/converters/p5-LaTeXML/Makefile +++ b/converters/p5-LaTeXML/Makefile @@ -1,50 +1,50 @@ PORTNAME= LaTeXML PORTVERSION= 0.8.7 CATEGORIES= converters perl5 MASTER_SITES= CPAN \ http://dlmf.nist.gov/LaTeXML/releases/ MASTER_SITE_SUBDIR= CPAN:BRMILLER PKGNAMEPREFIX= p5- MAINTAINER= wen@FreeBSD.org COMMENT= LaTeX to XML/HTML/MathML converter in Perl WWW= https://metacpan.org/release/LaTeXML LICENSE= PD CC0-1.0 LICENSE_COMB= dual LICENSE_FILE_CC0-1.0= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${RUN_DEPENDS} RUN_DEPENDS= p5-Archive-Zip>=0:archivers/p5-Archive-Zip \ p5-JSON-XS>=0:converters/p5-JSON-XS \ p5-Text-Unidecode>=0:converters/p5-Text-Unidecode \ p5-IO-String>=0:devel/p5-IO-String \ p5-Parse-RecDescent>=0:devel/p5-Parse-RecDescent \ p5-Pod-Parser>=0:textproc/p5-Pod-Parser \ p5-Image-Size>=0:graphics/p5-Image-Size \ p5-URI>=0:net/p5-URI \ p5-File-Which>=0:sysutils/p5-File-Which \ p5-XML-LibXML>=1.62:textproc/p5-XML-LibXML \ p5-XML-LibXSLT>=1.58:textproc/p5-XML-LibXSLT \ p5-libwww>=0:www/p5-libwww -USES= perl5 +USES= perl5 tex USE_PERL5= configure USE_TEX= kpathsea NO_ARCH= yes NO_BUILD= yes PORTDOCS= Changes README.pod manual.pdf OPTIONS_DEFINE= DOCS post-install: ${FIND} ${STAGEDIR}/${PREFIX} -name .packlist | \ ${XARGS} ${REINPLACE_CMD} -e 's|^${STAGEDIR}||' ${RM} ${STAGEDIR}${PREFIX}/share/texmf-local/tex/latex/latexml/.packlist.bak post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} .include diff --git a/databases/bbdb/Makefile b/databases/bbdb/Makefile index 894d65c82aa9..3d8062842dd7 100644 --- a/databases/bbdb/Makefile +++ b/databases/bbdb/Makefile @@ -1,55 +1,56 @@ PORTNAME= bbdb DISTVERSIONPREFIX= v DISTVERSION= 3.2.2a PORTREVISION= 3 CATEGORIES= databases elisp PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= emacs@FreeBSD.org COMMENT= Big Brother Database WWW= https://savannah.nongnu.org/projects/bbdb/ LICENSE= GPLv3+ BUILD_DEPENDS= texi2dvi:print/texinfo USES= autoreconf emacs USE_GITHUB= yes GH_ACCOUNT= emacsmirror GH_TAGNAME= a50c89a BBDB_LISPDIR= ${EMACS_SITE_LISPDIR}/${PORTNAME} GNU_CONFIGURE= yes CONFLICTS_INSTALL= bbdb bbdb-emacs_* # share/doc/bbdb/bbdb.pdf # Do not install the info file. Upstream has yet to add any real content to it. #INFO= bbdb PORTDOCS= bbdb.pdf NO_ARCH= yes PLIST_SUB+= BBDB_LISPDIR=${BBDB_LISPDIR} OPTIONS_DEFINE= DOCS +DOCS_USES= tex DOCS_USE= TEX=latex:build DOCS_CONFIGURE_ENABLE= docs # See http://lists.nongnu.org/archive/html/bbdb-user/2018-11/msg00003.html .if ${FLAVOR:U} != devel_full && ${FLAVOR:U} != devel_nox post-configure: ${REINPLACE_CMD} -e '/[[:blank:]]*--eval '\''(setq byte-compile-dest-file-function (lambda (_) "$$@"))'\'' \\/d' \ ${WRKSRC}/lisp/Makefile .endif do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${BBDB_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el ${WRKSRC}/lisp/*.elc \ ${STAGEDIR}${PREFIX}/${BBDB_LISPDIR} # Do not install the info file. Upstream has yet to add any real content to it. # ${INSTALL_DATA} ${WRKSRC}/doc/${PORTNAME}.info \ # ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/doc/bbdb.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/deskutils/recoll/Makefile b/deskutils/recoll/Makefile index 84d3e5bda28c..a1d0ef6cc9c8 100644 --- a/deskutils/recoll/Makefile +++ b/deskutils/recoll/Makefile @@ -1,93 +1,93 @@ PORTNAME= recoll PORTVERSION= 1.33.1 PORTREVISION= 2 CATEGORIES= deskutils MASTER_SITES= https://www.lesbonscomptes.com/recoll/ MAINTAINER= danfe@FreeBSD.org COMMENT= Personal full text search package, based on Xapian WWW= https://www.lesbonscomptes.com/recoll/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR} LIB_DEPENDS= libxapian.so:databases/xapian-core RUN_DEPENDS= antiword:textproc/antiword \ catdoc:textproc/catdoc \ unrar:archivers/unrar \ unrtf:textproc/unrtf \ wpd2html:textproc/libwpd010 USES= bison compiler:c++11-lang gmake gnome iconv libtool localbase \ pkgconfig python:3.5+ shebangfix USE_GNOME= libxslt USE_LDCONFIG= yes USE_PYTHON= py3kplist PYDISTUTILS_PKGNAME= Recoll PYDISTUTILS_PKGVERSION= 1.0 USE_QT= core gui printsupport widgets xml buildtools:build qmake:build SHEBANG_FILES= desktop/hotrecoll.py filters/*.py filters/rclimg GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-recollq \ --enable-xadump MAKE_ENV= PYTHON_CMD=${PYTHON_CMD} BINARY_ALIAS= python2=${FALSE} python3=${PYTHON_CMD} PLIST_SUB= PYDISTUTILS_EGGINFO="${PYDISTUTILS_EGGINFO}" \ VERSION="${PORTVERSION}" OPTIONS_DEFINE= ASPELL CHM DJVU IMAGE LATEX PDF PS QT5 SOUND X11MON OPTIONS_DEFAULT= ASPELL CHM IMAGE PDF PS QT5 SOUND X11MON OPTIONS_SUB= yes CHM_DESC= Python bindings for Microsoft ITSS/CHM format IMAGE_DESC= Store personal tags or textual descriptions in images X11MON_DESC= X11 session monitoring support ASPELL_LIB_DEPENDS= libaspell.so:textproc/aspell ASPELL_CONFIGURE_WITH= aspell CHM_LIB_DEPENDS= libchm.so:misc/chmlib CHM_CONFIGURE_OFF= --disable-python-chm DJVU_RUN_DEPENDS= djvutxt:graphics/djvulibre IMAGE_RUN_DEPENDS= exiftool:graphics/p5-Image-ExifTool -LATEX_USE= dvipsk:run \ - latex:run +LATEX_USES= tex +LATEX_USE= TEX=dvipsk:run,latex:run PDF_RUN_DEPENDS= pdftotext:graphics/poppler-utils PS_RUN_DEPENDS= pstotext:print/pstotext QT5_USES= gl qt:5 QT5_USE= GL=gl QT5_CONFIGURE_ON= --disable-webkit QT5_CONFIGURE_ENABLE= qtgui QT5_CONFIGURE_ENV= QMAKE="${QMAKE}" \ QMAKESPEC="${QMAKESPEC}" \ QTDIR="${PREFIX}" SOUND_RUN_DEPENDS= mutagen-pony-${PYTHON_VER}:audio/py-mutagen@${PY_FLAVOR} X11MON_USES= fam xorg X11MON_USE= XORG=ice,sm,x11 X11MON_CONFIGURE_ENABLE= x11mon X11MON_CONFIGURE_WITH= fam post-patch: @${REINPLACE_CMD} -e 's|@QMAKE@|${TRUE}|' \ ${WRKSRC}/Makefile.in @${REINPLACE_CMD} -e 's|/usr/local/lib|${LOCALBASE}/lib|' \ ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|override const|const override|' \ ${WRKSRC}/index/rclmonrcv.cpp pre-build-QT5-on: @cd ${WRKSRC}/qtgui && \ ${SETENV} ${QMAKE_ENV} ${QMAKE} ${QMAKE_ARGS} recoll.pro post-install: @${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/recoll/*.so \ ${STAGEDIR}${PREFIX}/lib/recoll/*.so # Remove systemd unit files (useless on FreeBSD) @${RM} ${STAGEDIR}${DATADIR}/examples/recollindex*.service post-install-CHM-on: @${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/recollchm/*.so .include diff --git a/deskutils/zim/Makefile b/deskutils/zim/Makefile index ce5c0848b1f1..80220762bd42 100644 --- a/deskutils/zim/Makefile +++ b/deskutils/zim/Makefile @@ -1,49 +1,50 @@ PORTNAME= zim DISTVERSION= 0.75.1 CATEGORIES= deskutils python MASTER_SITES= https://www.zim-wiki.org/downloads/ MAINTAINER= rm@FreeBSD.org COMMENT= Desktop wiki editor WWW= https://www.zim-wiki.org LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}xdg>0:devel/py-xdg@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}xdg>0:devel/py-xdg@${PY_FLAVOR} \ xdg-open:devel/xdg-utils \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} USES= cpe desktop-file-utils gettext gnome python:3.6+ shared-mime-info CPE_VENDOR= zim-wiki USE_GNOME= gtk30 pygobject3 USE_PYTHON= autoplist distutils noflavors NO_ARCH= yes OPTIONS_DEFINE= DITAA GIT GNUPLOT GNUR GRAPHVIZ LATEX \ MERCURIAL SCROT DITAA_DESC= Diagram editor support DITAA_RUN_DEPENDS= ditaa:graphics/ditaa GIT_DESC= Version control for notebooks using git GIT_RUN_DEPENDS= git:devel/git GNUPLOT_RUN_DEPENDS= gnuplot:math/gnuplot GNUR_DESC= Support of plot editor based on GNU R GNUR_RUN_DEPENDS= R:math/R GRAPHVIZ_RUN_DEPENDS= fdp:graphics/graphviz -LATEX_USE= tex=latex:run +LATEX_USES= tex +LATEX_USE= TEX=latex:run MERCURIAL_DESC= Version control for notebooks using hg MERCURIAL_RUN_DEPENDS= ${PY_MERCURIAL} SCROT_DESC= Screenshot taking and inserting support SCROT_RUN_DEPENDS= scrot:graphics/scrot post-patch: @${REINPLACE_CMD} -e \ '/.command.install /s|distutils|setuptools| ; \ s|share/man|man|' \ ${WRKSRC}/setup.py .include diff --git a/devel/avr-libc/Makefile b/devel/avr-libc/Makefile index cb04ee003ca2..836146e84b52 100644 --- a/devel/avr-libc/Makefile +++ b/devel/avr-libc/Makefile @@ -1,85 +1,86 @@ PORTNAME= avr-libc PORTVERSION= 2.0.0 PORTREVISION= 4 PORTEPOCH= 1 CATEGORIES= devel MASTER_SITES= SAVANNAH MAINTAINER= joerg@FreeBSD.org COMMENT= C and math library for the Atmel AVR controller family WWW= https://savannah.nongnu.org/projects/avr-libc LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= avr-as:devel/binutils@avr \ avr-ld:devel/binutils@avr \ avr-gcc:devel/avr-gcc RUN_DEPENDS= avr-as:devel/binutils@avr \ avr-ld:devel/binutils@avr \ avr-gcc:devel/avr-gcc OPTIONS_DEFINE= DOXYGEN .include .if ! ${PORT_OPTIONS:MDOXYGEN} .undef WITHOUT_AVRLIBCDOCS= true .endif .if ${PORT_OPTIONS:MDOXYGEN} +USES+= tex USE_TEX= latex:build BUILD_DEPENDS+= doxygen:devel/doxygen \ fig2dev:print/fig2dev \ jpegtopnm:graphics/netpbm \ dvips:print/tex-dvipsk .endif USES= gettext-tools tar:bzip2 gmake HAS_CONFIGURE= yes CONFIGURE_ENV= CC=avr-gcc PREFIX=${PREFIX} .if ${PORT_OPTIONS:MDOXYGEN} CONFIGURE_ARGS= --build=`./config.guess` --host=avr \ --enable-doc --disable-versioned-doc --prefix=${PREFIX} \ --mandir=${PREFIX}/share/doc/avr-libc/man PLIST_DOC= ${PKGDIR}/pkg-plist.doc .else CONFIGURE_ARGS= --build=`./config.guess` --host=avr --prefix=${PREFIX} PLIST_DOC= .endif post-patch: .if ! ${PORT_OPTIONS:MDOXYGEN} ${REINPLACE_CMD} -e '/SUBDIRS/s,examples,,' ${WRKSRC}/doc/Makefile.in .endif do-install: ${RM} ${TMPPLIST} .if ${PORT_OPTIONS:MDOXYGEN} (cd ${BUILD_WRKSRC}/doc/api/avr-libc-user-manual && \ ${FIND} . -type f \ \( -name '*.html' -or -name '*.css' -or \ -name '*.jpg' -or -name '*.png' \) |\ ${GREP} -v '/search/' |\ ${SORT} |\ ${SED} -e 's|^\.|share/doc/avr-libc/avr-libc-user-manual|' \ >> ${TMPPLIST}) (cd ${BUILD_WRKSRC}/doc/api/man/man3 && \ ${FIND} . -type f |\ ${SORT} |\ ${SED} -e 's|^\.|share/doc/avr-libc/man/man3|' \ >> ${TMPPLIST}) ${CAT} ${PLIST_DOC} >> ${TMPPLIST} .endif ${CAT} ${PLIST} >> ${TMPPLIST} @for file in ${PLIST_FILES}; do \ ${ECHO_CMD} $${file} >> ${TMPPLIST}; \ done (cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} \ ${MAKE_CMD} ${MAKE_ARGS} install) ${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/AUTHORS \ ${STAGEDIR}/${DOCSDIR} .include diff --git a/devel/cl-alexandria/Makefile b/devel/cl-alexandria/Makefile index b8da5389757d..0b8c30784c22 100644 --- a/devel/cl-alexandria/Makefile +++ b/devel/cl-alexandria/Makefile @@ -1,50 +1,50 @@ PORTNAME= alexandria DISTVERSION= 1.2 PORTEPOCH= 1 CATEGORIES= devel lisp PKGNAMEPREFIX= cl- MAINTAINER= olgeni@FreeBSD.org COMMENT= Collection of portable public domain utilities for Common Lisp WWW= https://common-lisp.net/project/alexandria/ LICENSE= PD LICENSE_FILE= ${WRKSRC}/LICENCE USE_ASDF= yes USE_GITLAB= yes GL_SITE= https://gitlab.common-lisp.net GL_COMMIT= f35e232ceb2ada8d10e7fdf27ccac07f781eea0e OPTIONS_DEFINE= DOCS DOCS_BUILD_DEPENDS= sbcl:lang/sbcl \ texi2pdf:print/texinfo - +DOCS_USES= tex DOCS_USE= TEX=latex:build DOCS_INFO= doc/${PORTNAME} do-build: @${DO_NADA} do-build-DOCS-on: cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} doc do-install: @${MKDIR} ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}-1 \ ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}-2 \ ${STAGEDIR}${ASDF_REGISTRY} ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}-1/*.lisp ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}-1 ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}-2/*.lisp ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}-2 ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.asd ${STAGEDIR}${ASDF_PATHNAME} ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}-tests.asd ${STAGEDIR}${ASDF_PATHNAME} ${RLN} ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}.asd ${STAGEDIR}${ASDF_REGISTRY} ${RLN} ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}-tests.asd ${STAGEDIR}${ASDF_REGISTRY} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/doc/${PORTNAME}.html ${WRKSRC}/doc/${PORTNAME}.pdf \ ${STAGEDIR}${DOCSDIR} .include "${.CURDIR}/../../devel/cl-asdf/bsd.cl-asdf.mk" .include diff --git a/devel/doxygen/Makefile b/devel/doxygen/Makefile index 6ec8055a4458..3ad72d7641d8 100644 --- a/devel/doxygen/Makefile +++ b/devel/doxygen/Makefile @@ -1,60 +1,61 @@ PORTNAME= doxygen PORTVERSION= 1.9.5 PORTEPOCH= 2 CATEGORIES= devel MASTER_SITES= SF/${PORTNAME}/rel-${PORTVERSION} \ http://doxygen.nl/files/ EXTRACT_SUFX= .src.tar.gz MAINTAINER= fluffy@FreeBSD.org COMMENT= Documentation system for C, C++, and other languages WWW= https://www.doxygen.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE USES= bison cmake:noninja compiler:c++17-lang cpe dos2unix \ iconv python shebangfix ALL_TARGET= all CMAKE_ARGS+= -DDOC_INSTALL_DIR:PATH=${DOCSDIR_REL} EXTRACT_AFTER_ARGS= --exclude '*/libmd5' DOS2UNIX_FILES= doc/translator.py PLIST_FILES= bin/doxygen OPTIONS_DEFINE= DOCS GRAPHVIZ LATEX SEARCH QT5 OPTIONS_DEFAULT= GRAPHVIZ QT5_DESC= Install Doxywizard GUI with Qt5 SEARCH_DESC= Build external search tools (doxysearch and doxyindexer) -DOCS_USES= ghostscript:build +DOCS_USES= ghostscript:build tex DOCS_USE= TEX=base:build,dvipsk:build,pdftex:build DOCS_ALL_TARGET= docs DOCS_BUILD_DEPENDS= dot:graphics/graphviz DOCS_CMAKE_BOOL= build_doc DOCS_PLIST_FILES= man/man1/doxygen.1.gz \ man/man1/doxyindexer.1.gz \ man/man1/doxysearch.1.gz \ man/man1/doxywizard.1.gz # Parallel jobs break when the DOCS option is on DOCS_VARS= MAKE_JOBS_UNSAFE=yes PORTDOCS= * GRAPHVIZ_RUN_DEPENDS= dot:graphics/graphviz +LATEX_USES= tex LATEX_USE= TEX=base,dvipsk,pdftex QT5_USES= qt:5 QT5_USE= QT=core,widgets,gui,xml,qmake:build,buildtools:build QT5_CMAKE_BOOL= build_wizard QT5_PLIST_FILES= bin/doxywizard SEARCH_CMAKE_BOOL= build_search SEARCH_LIB_DEPENDS= libxapian.so:databases/xapian-core SEARCH_PLIST_FILES= bin/doxyindexer \ bin/doxysearch.cgi .include diff --git a/devel/forge-devel/Makefile b/devel/forge-devel/Makefile index 9894955f4eeb..ffecddb9e066 100644 --- a/devel/forge-devel/Makefile +++ b/devel/forge-devel/Makefile @@ -1,86 +1,87 @@ PORTNAME= forge DISTVERSIONPREFIX= v DISTVERSION= 0.3.2-72 DISTVERSIONSUFFIX= -g9fc0745 CATEGORIES= devel elisp PKGNAMESUFFIX= -devel${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Work with Git forges from the comfort of Magit (Development Version) WWW= https://github.com/magit/forge LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= closql${EMACS_PKGNAMESUFFIX}>=1.2.0:databases/closql@${EMACS_FLAVOR} \ compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} \ dash.el${EMACS_PKGNAMESUFFIX}>=2.19.1:devel/dash.el@${EMACS_FLAVOR} \ emacsql${EMACS_PKGNAMESUFFIX}>=3.0.0:databases/emacsql@${EMACS_FLAVOR} \ ghub-devel${EMACS_PKGNAMESUFFIX}>=3.5.4:devel/ghub-devel@${EMACS_FLAVOR} \ magit-devel${EMACS_PKGNAMESUFFIX}>=3.3.0:devel/magit-devel@${EMACS_FLAVOR} \ markdown-mode.el${EMACS_PKGNAMESUFFIX}>=2.4:textproc/markdown-mode.el@${EMACS_FLAVOR} \ transient-devel${EMACS_PKGNAMESUFFIX}>=0.3.6:devel/transient-devel@${EMACS_FLAVOR} \ yaml.el${EMACS_PKGNAMESUFFIX}>=0.3.4:textproc/yaml.el@${EMACS_FLAVOR} RUN_DEPENDS= closql${EMACS_PKGNAMESUFFIX}>=1.2.0:databases/closql@${EMACS_FLAVOR} \ compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} \ dash.el${EMACS_PKGNAMESUFFIX}>=2.19.1:devel/dash.el@${EMACS_FLAVOR} \ emacsql${EMACS_PKGNAMESUFFIX}>=3.0.0:databases/emacsql@${EMACS_FLAVOR} \ ghub-devel${EMACS_PKGNAMESUFFIX}>=3.5.4:devel/ghub-devel@${EMACS_FLAVOR} \ magit-devel${EMACS_PKGNAMESUFFIX}>=3.3.0:devel/magit-devel@${EMACS_FLAVOR} \ markdown-mode.el${EMACS_PKGNAMESUFFIX}>=2.4:textproc/markdown-mode.el@${EMACS_FLAVOR} \ transient-devel${EMACS_PKGNAMESUFFIX}>=0.3.6:devel/transient-devel@${EMACS_FLAVOR} \ yaml.el${EMACS_PKGNAMESUFFIX}>=0.3.4:textproc/yaml.el@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit MAKE_ENV+= INSTALL_INFO=install-info \ LOAD_PATH="${LOAD_PATH}" # Parallel build fails if Emacs is built with native compilation enabled MAKE_JOBS_UNSAFE= yes ALL_TARGET= lisp info CONFLICTS= forge-emacs* NO_ARCH= yes INFO= forge PORTDOCS= CHANGELOG README.org forge.html OPTIONS_DEFINE= DOCS PDF OPTIONS_SUB= yes PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf LOAD_PATH= -L ${PREFIX}/${EMACS_SITE_LISPDIR} -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/closql -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/compat -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/emacsql -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/ghub -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/magit do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el* \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/docs/*.info ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/CHANGELOG ${WRKSRC}/README.org \ ${WRKSRC}/docs/forge.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/forge.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/forge/Makefile b/devel/forge/Makefile index 37d7ba9dbd78..8feca75957c5 100644 --- a/devel/forge/Makefile +++ b/devel/forge/Makefile @@ -1,83 +1,84 @@ PORTNAME= forge DISTVERSIONPREFIX= v DISTVERSION= 0.3.1 PORTREVISION= 4 CATEGORIES= devel elisp PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Work with Git forges from the comfort of Magit WWW= https://github.com/magit/forge LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= closql${EMACS_PKGNAMESUFFIX}>=1.2.0:databases/closql@${EMACS_FLAVOR} \ dash.el${EMACS_PKGNAMESUFFIX}>=2.19.1:devel/dash.el@${EMACS_FLAVOR} \ emacsql${EMACS_PKGNAMESUFFIX}>=3.0.0:databases/emacsql@${EMACS_FLAVOR} \ ghub${EMACS_PKGNAMESUFFIX}>=3.5.4:devel/ghub@${EMACS_FLAVOR} \ magit${EMACS_PKGNAMESUFFIX}>=3.3.0:devel/magit@${EMACS_FLAVOR} \ markdown-mode.el${EMACS_PKGNAMESUFFIX}>=2.4:textproc/markdown-mode.el@${EMACS_FLAVOR} \ transient${EMACS_PKGNAMESUFFIX}>=0.3.6:devel/transient@${EMACS_FLAVOR} \ yaml.el${EMACS_PKGNAMESUFFIX}>=0.3.4:textproc/yaml.el@${EMACS_FLAVOR} RUN_DEPENDS= closql${EMACS_PKGNAMESUFFIX}>=1.2.0:databases/closql@${EMACS_FLAVOR} \ dash.el${EMACS_PKGNAMESUFFIX}>=2.19.1:devel/dash.el@${EMACS_FLAVOR} \ emacsql${EMACS_PKGNAMESUFFIX}>=3.0.0:databases/emacsql@${EMACS_FLAVOR} \ ghub${EMACS_PKGNAMESUFFIX}>=3.5.4:devel/ghub@${EMACS_FLAVOR} \ magit${EMACS_PKGNAMESUFFIX}>=3.3.0:devel/magit@${EMACS_FLAVOR} \ markdown-mode.el${EMACS_PKGNAMESUFFIX}>=2.4:textproc/markdown-mode.el@${EMACS_FLAVOR} \ transient${EMACS_PKGNAMESUFFIX}>=0.3.6:devel/transient@${EMACS_FLAVOR} \ yaml.el${EMACS_PKGNAMESUFFIX}>=0.3.4:textproc/yaml.el@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit MAKE_ENV+= INSTALL_INFO=install-info \ LOAD_PATH="${LOAD_PATH}" # Parallel build fails if Emacs is built with native compilation enabled MAKE_JOBS_UNSAFE= yes ALL_TARGET= lisp info CONFLICTS= forge-devel* NO_ARCH= yes INFO= forge PORTDOCS= CHANGELOG README.md forge.html OPTIONS_DEFINE= DOCS PDF OPTIONS_SUB= yes PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf LOAD_PATH= -L ${PREFIX}/${EMACS_SITE_LISPDIR} -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/closql -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/emacsql -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/ghub -L \ ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/magit do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el* \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/docs/*.info ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/CHANGELOG ${WRKSRC}/README.md \ ${WRKSRC}/docs/forge.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/forge.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/gcc-arm-embedded/Makefile b/devel/gcc-arm-embedded/Makefile index 1f093b356517..ceb6685c82fe 100644 --- a/devel/gcc-arm-embedded/Makefile +++ b/devel/gcc-arm-embedded/Makefile @@ -1,147 +1,148 @@ PORTNAME= gcc-arm-embedded PORTVERSION= 10.3.20210921 PORTREVISION= 0 CATEGORIES= devel MASTER_SITES= https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/${FULL_VERSION}/ DISTNAME= ${ORIGINAL_PACKAGE_NAME}-src MAINTAINER= lev@FreeBSD.org COMMENT= Complete gcc-based toolcahin for embedded ARM development WWW= https://launchpad.net/gcc-arm-embedded LICENSE= GPLv2 LGPL20 LGPL21 GPLv3 LGPL3 LICENSE_COMB= multi NOT_FOR_ARCHS= arm armeb armv6 armv7 \ mips mips64 mips64el mipsel mipsn32 NOT_FOR_ARCHS_REASON= Very slow to build on emulator BUILD_DEPENDS= objdump:devel/binutils OPTIONS_DEFINE= APROFILE PURE PYGDB EXAMPLES HTML PDF DOCS SYMLINK OPTIONS_DEFAULT=PURE PYGDB SYMLINK APROFILE_DESC= Add support for Cortex-A profiles PURE_DESC= Use all libraries from bundle, do not depend on anything HTML_DESC= Install HTML documentation PDF_DESC= Install PDF documentation (requires TeX, it is huge) PYGDB_DESC= Build and install python-enabled gdb in addition to standard one SYMLINK_DESC= Make version-independent symlink ${LOCALBASE}/${PORTNAME} PURE_LIB_DEPENDS_OFF= libexpat.so:textproc/expat2 \ libgmp.so:math/gmp \ libmpfr.so:math/mpfr \ libmpc.so:math/mpc \ libisl.so:devel/isl +PDF_USES= tex PDF_USE= TEX=base:build,tex:build,dvipsk:build PDF_BUILD_DEPENDS= texi2dvi:print/texinfo PYGDB_USES= python OPTIONS_SUB= yes USES= bison compiler:c++11-lang cpe gmake gettext-runtime \ makeinfo tar:bzip2 iconv GNU_CONFIGURE= yes PATCH_WRKSRC= ${WRKDIR}/${ORIGINAL_PACKAGE_NAME} BUILD_WRKSRC= ${WRKDIR} GCC_VERSION= 10.3.1 FULL_VERSION= 10.3-2021.10 TARGET= arm-none-eabi ORIGINAL_PACKAGE_NAME= gcc-${TARGET}-${FULL_VERSION} CPE_PRODUCT= gcc CPE_VENDOR= gnu CPE_VERSION= ${GCC_VERSION} INFO_PATH= ${PORTNAME}-${FULL_VERSION}/share/doc/gcc-${TARGET}/info INFO= annotate as bfd binutils cpp cppinternals gcc \ gccinstall gccint gdb gprof ld stabs MANPREFIX= ${PREFIX}/${PORTNAME}-${FULL_VERSION}/${DOCS_SUFFIX} DOCSDIR= ${PREFIX}/${PORTNAME}-${FULL_VERSION}/${DOCS_SUFFIX} EXAMPLESDIR= ${PREFIX}/${PORTNAME}-${FULL_VERSION}/share/gcc-${TARGET}/samples PLIST_SUB+= TARGET=${TARGET} FULL_VERSION=${FULL_VERSION} \ GCC_VERSION=${GCC_VERSION} DOCS_SUFFIX= share/doc/gcc-${TARGET} SRC_DIR= ${WRKDIR}/${ORIGINAL_PACKAGE_NAME}/src BUILD_DIR= ${WRKDIR}/build INTERIM_WORLD= ${WRKDIR}/install INTERIM_PREFIX= ${INTERIM_WORLD}/${PORTNAME}-${FULL_VERSION} BUNDLED_LIBS= EXPAT:bz2 ZLIB:gz LIBELF:gz \ GMP:bz2 MPFR:bz2 MPC:gz ISL:xz BUNDLED_VERSION_EXPAT= 2.1.1 BUNDLED_VERSION_ZLIB= 1.2.8 BUNDLED_VERSION_LIBELF= 0.8.13 BUNDLED_VERSION_GMP= 6.1.0 BUNDLED_VERSION_MPFR= 3.1.4 BUNDLED_VERSION_MPC= 1.0.3 BUNDLED_VERSION_ISL= 0.18 VAR_TO_SUBMAKE= BUILD_DIR CC CFLAGS CHOSEN_COMPILER_TYPE CONFIG_SITE \ CONFIGURE_MAX_CMD_LEN CONFIGURE_SHELL CP CPP CPPFLAGS CXX \ CXXFLAGS DOCS_SUFFIX ECHO_MSG EXAMPLESDIR FILE FIND GMAKE \ GCC_VERSION GREP MAKE_CMD MAKE_SHELL PATCH \ INSTALL_MACROS INTERIM_PREFIX INTERIM_WORLD LD LDFLAGS LIBDIR \ LN LOCALBASE MAKE_JOBS_NUMBER MKDIR ORIGINAL_PACKAGE_NAME \ PORT_OPTIONS PREFIX PYTHON_CMD RM SED SH SRC_DIR STRIP_CMD TAR \ TARGET WRKDIR CONFIGURE_TARGET VAR_TO_SUBMAKE_NOEXPAND= CONFIGURE_ENV MAKE_ENV .include #.if ${PORT_OPTIONS:MPURE} #IGNORE= PURE option is not valid anymore, no libraries are bundled #.endif post-extract: .if ${PORT_OPTIONS:MPURE} .for L in ${BUNDLED_LIBS} @${ECHO_MSG} "====> Extracting bundled ${L:C/[:].+//:tl}" @${TAR} -xf ${SRC_DIR}/${L:C/[:].+//:tl}-${BUNDLED_VERSION_${L:C/[:].+//}}.tar.${L:C/.+[:]//} -C ${SRC_DIR} .endfor .endif @${ECHO_MSG} "====> Extracting bundled binutils" @${TAR} -xf ${SRC_DIR}/binutils.tar.bz2 -C ${SRC_DIR} @${ECHO_MSG} "====> Extracting bundled gcc" @${TAR} -xf ${SRC_DIR}/gcc.tar.bz2 -C ${SRC_DIR} @${ECHO_MSG} "====> Extracting bundled gdb" @${TAR} -xf ${SRC_DIR}/gdb.tar.bz2 -C ${SRC_DIR} @${ECHO_MSG} "====> Extracting bundled newlib" @${TAR} -xf ${SRC_DIR}/newlib.tar.bz2 -C ${SRC_DIR} do-configure: @${RM} -r ${BUILD_DIR} @${MKDIR} ${BUILD_DIR} @${RM} -r ${INTERIM_PREFIX} @${MKDIR} ${INTERIM_PREFIX} @${CP} ${FILESDIR}/Makefile ${WRKDIR} @${RM} ${WRKDIR}/Makefile.inc .for VAR in ${VAR_TO_SUBMAKE} @${ECHO} '${VAR}=${${VAR}}' >> ${WRKDIR}/Makefile.inc .endfor .for L in ${BUNDLED_LIBS} @${ECHO} -n 'BUNDLED_VERSION_${L:C/[:].+//}=' >> ${WRKDIR}/Makefile.inc @${ECHO} '${BUNDLED_VERSION_${L:C/[:].+//}}' >> ${WRKDIR}/Makefile.inc .endfor .for VAR in ${VAR_TO_SUBMAKE_NOEXPAND} @${ECHO} -n '${VAR}=' >> ${WRKDIR}/Makefile.inc @${MAKE} .MAKE.EXPAND_VARIABLES=0 -X -V ${VAR} >> ${WRKDIR}/Makefile.inc .endfor do-build: @${MAKE} -C ${WRKDIR} do-install: @${TAR} -cf - -C ${WRKDIR}/install ${PORTNAME}-${FULL_VERSION} | ${TAR} -xf - -C ${STAGEDIR}${PREFIX} .if ${PORT_OPTIONS:MSYMLINK} @${LN} -s ${PORTNAME}-${FULL_VERSION} ${STAGEDIR}${PREFIX}/${PORTNAME} .endif .include diff --git a/devel/ghub-devel/Makefile b/devel/ghub-devel/Makefile index c9c23029c890..3783d712ac6b 100644 --- a/devel/ghub-devel/Makefile +++ b/devel/ghub-devel/Makefile @@ -1,66 +1,67 @@ PORTNAME= ghub DISTVERSIONPREFIX= v DISTVERSION= 3.5.6-41 DISTVERSIONSUFFIX= -g141987e CATEGORIES= devel elisp PKGNAMESUFFIX= -devel${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Client libraries for the APIs of various Git forges WWW= https://github.com/magit/ghub LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} \ treepy.el${EMACS_PKGNAMESUFFIX}>=0.1.1:devel/treepy.el@${EMACS_FLAVOR} RUN_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} \ treepy.el${EMACS_PKGNAMESUFFIX}>=0.1.1:devel/treepy.el@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit MAKE_ARGS= LOAD_PATH="-L ${PREFIX}/${EMACS_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/compat -L ." MAKE_JOBS_UNSAFE= yes ALL_TARGET= lisp info CONFLICTS_INSTALL= ghub-emacs* NO_ARCH= yes INFO= ghub PORTDOCS= CHANGELOG README.org ghub.html OPTIONS_DEFINE= DOCS PDF PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf PDF_PLIST_FILES= ${DOCSDIR}/ghub.pdf ELISP_FILES= buck.el buck.elc ghub-autoloads.el ghub-graphql.el \ ghub-graphql.elc ghub.el ghub.elc glab.el glab.elc gogs.el \ gogs.elc gsexp.el gsexp.elc gtea.el gtea.elc do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${ELISP_FILES:C/^/${WRKSRC}\/lisp\//} \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/docs/*.info ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/CHANGELOG ${WRKSRC}/README.org \ ${WRKSRC}/docs/ghub.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/ghub.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/ghub/Makefile b/devel/ghub/Makefile index 28d1f144715a..07bfbeff7daf 100644 --- a/devel/ghub/Makefile +++ b/devel/ghub/Makefile @@ -1,63 +1,64 @@ PORTNAME= ghub DISTVERSIONPREFIX= v DISTVERSION= 3.5.6 PORTREVISION= 3 CATEGORIES= devel elisp PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Client libraries for the APIs of various Git forges WWW= https://github.com/magit/ghub LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= treepy.el${EMACS_PKGNAMESUFFIX}>=0.1.1:devel/treepy.el@${EMACS_FLAVOR} RUN_DEPENDS= treepy.el${EMACS_PKGNAMESUFFIX}>=0.1.1:devel/treepy.el@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit MAKE_ARGS= LOAD_PATH="-L ${PREFIX}/${EMACS_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L ." ALL_TARGET= lisp info CONFLICTS_INSTALL= ghub-emacs* NO_ARCH= yes INFO= ghub PORTDOCS= CHANGELOG README.md ghub.html OPTIONS_DEFINE= DOCS PDF PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf PDF_PLIST_FILES= ${DOCSDIR}/ghub.pdf ELISP_FILES= buck.el buck.elc ghub-autoloads.el ghub-graphql.el \ ghub-graphql.elc ghub.el ghub.elc glab.el glab.elc gogs.el \ gogs.elc gsexp.el gsexp.elc gtea.el gtea.elc do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${ELISP_FILES:C/^/${WRKSRC}\/lisp\//} \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/docs/*.info ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/CHANGELOG ${WRKSRC}/README.md \ ${WRKSRC}/docs/ghub.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/ghub.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/magit-devel/Makefile b/devel/magit-devel/Makefile index b03de85329fe..2287db951725 100644 --- a/devel/magit-devel/Makefile +++ b/devel/magit-devel/Makefile @@ -1,75 +1,76 @@ PORTNAME= magit DISTVERSIONPREFIX= v DISTVERSION= 3.3.0-476 DISTVERSIONSUFFIX= -g3cf308c1 CATEGORIES= devel elisp PKGNAMESUFFIX= -devel${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Interface to Git for Emacs (Development Version) WWW= https://magit.vc/ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} \ dash.el${EMACS_PKGNAMESUFFIX}>=2.19.1:devel/dash.el@${EMACS_FLAVOR} \ transient-devel${EMACS_PKGNAMESUFFIX}>=0.3.7:devel/transient-devel@${EMACS_FLAVOR} \ with-editor-devel${EMACS_PKGNAMESUFFIX}>=3.0.5:editors/with-editor-devel@${EMACS_FLAVOR} RUN_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} \ dash.el${EMACS_PKGNAMESUFFIX}>=2.19.1:devel/dash.el@${EMACS_FLAVOR} \ transient-devel${EMACS_PKGNAMESUFFIX}>=0.3.7:devel/transient-devel@${EMACS_FLAVOR} \ with-editor-devel${EMACS_PKGNAMESUFFIX}>=3.0.5:editors/with-editor-devel@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes MAKE_ENV+= docdir=${DOCSDIR} \ infodir=${PREFIX}/${INFO_PATH} \ INSTALL_INFO=install-info \ lispdir=${PREFIX}/${ELISPDIR} \ LOAD_PATH="-L ${WRKSRC}/lisp -L ${PREFIX}/${EMACS_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/compat -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/ghub" \ VERSION=${PORTVERSION} # Parallel build fails if Emacs is built with native compilation enabled MAKE_JOBS_UNSAFE= yes ALL_TARGET= lisp info INSTALL_TARGET= install-lisp install-info CONFLICTS_INSTALL= magit-emacs* NO_ARCH= yes INFO= magit magit-section PLIST_SUB+= ELISPDIR=${ELISPDIR} PORTDOCS= *.html *.md RelNotes/* OPTIONS_DEFINE= DOCS LIBEGIT2 PDF OPTIONS_SUB= yes LIBEGIT2_DESC= Use libegit2 as backend (EXPERIMENTAL) PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed LIBEGIT2_BUILD_DEPENDS= libegit2${EMACS_PKGNAMESUFFIX}>=g20200515:devel/libegit2@${EMACS_FLAVOR} LIBEGIT2_BUILD_DEPENDS_OFF= git:devel/git LIBEGIT2_RUN_DEPENDS= libegit2${EMACS_PKGNAMESUFFIX}>=g20200515:devel/libegit2@${EMACS_FLAVOR} LIBEGIT2_RUN_DEPENDS_OFF= git:devel/git LIBEGIT2_VARS= MAKE_ENV+=BUILD_MAGIT_LIBGIT=true PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf ELISPDIR= ${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR}/RelNotes ${INSTALL_DATA} ${WRKSRC}/docs/*.md ${STAGEDIR}${DOCSDIR} ${COPYTREE_SHARE} ${WRKSRC}/docs/RelNotes ${STAGEDIR}${DOCSDIR}/RelNotes do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/*.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/magit/Makefile b/devel/magit/Makefile index 356ce58b069b..3f0242aa6cec 100644 --- a/devel/magit/Makefile +++ b/devel/magit/Makefile @@ -1,75 +1,76 @@ PORTNAME= magit DISTVERSIONPREFIX= v DISTVERSION= 3.3.0 PORTREVISION= 5 CATEGORIES= devel elisp PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Interface to Git for Emacs WWW= https://magit.vc/ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= dash.el${EMACS_PKGNAMESUFFIX}>=2.18.1:devel/dash.el@${EMACS_FLAVOR} \ transient${EMACS_PKGNAMESUFFIX}>=0.3.6:devel/transient@${EMACS_FLAVOR} \ with-editor${EMACS_PKGNAMESUFFIX}>=3.0.4:editors/with-editor@${EMACS_FLAVOR} RUN_DEPENDS= dash.el${EMACS_PKGNAMESUFFIX}>=2.18.1:devel/dash.el@${EMACS_FLAVOR} \ transient${EMACS_PKGNAMESUFFIX}>=0.3.6:devel/transient@${EMACS_FLAVOR} \ with-editor${EMACS_PKGNAMESUFFIX}>=3.0.4:editors/with-editor@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes MAKE_ENV+= docdir=${DOCSDIR} \ infodir=${PREFIX}/${INFO_PATH} \ INSTALL_INFO=install-info \ lispdir=${PREFIX}/${ELISPDIR} \ LOAD_PATH="-L ${WRKSRC}/lisp -L ${PREFIX}/${EMACS_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/ghub" \ VERSION=${PORTVERSION} # Parallel build fails if Emacs is built with native compilation enabled MAKE_JOBS_UNSAFE= yes ALL_TARGET= lisp info INSTALL_TARGET= install-lisp install-info CONFLICTS_INSTALL= magit-devel-emacs* NO_ARCH= yes INFO= magit magit-section PLIST_SUB+= ELISPDIR=${ELISPDIR} PORTDOCS= *.html *.md RelNotes/* OPTIONS_DEFINE= DOCS LIBEGIT2 PDF OPTIONS_SUB= yes LIBEGIT2_DESC= Use libegit2 as backend (EXPERIMENTAL) PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed LIBEGIT2_BUILD_DEPENDS= libegit2${EMACS_PKGNAMESUFFIX}>=g20200515:devel/libegit2@${EMACS_FLAVOR} LIBEGIT2_BUILD_DEPENDS_OFF= git:devel/git LIBEGIT2_RUN_DEPENDS= libegit2${EMACS_PKGNAMESUFFIX}>=g20200515:devel/libegit2@${EMACS_FLAVOR} LIBEGIT2_RUN_DEPENDS_OFF= git:devel/git LIBEGIT2_VARS_OFF= MAKE_ENV+=BUILD_MAGIT_LIBGIT=false PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf ELISPDIR= ${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR}/RelNotes ${INSTALL_DATA} ${WRKSRC}/Documentation/*.md \ ${WRKSRC}/Documentation/*.html ${STAGEDIR}${DOCSDIR} ${COPYTREE_SHARE} ${WRKSRC}/Documentation/RelNotes \ ${STAGEDIR}${DOCSDIR}/RelNotes do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/Documentation/*.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/ragel/Makefile b/devel/ragel/Makefile index 6d898003ba4b..d28da5768397 100644 --- a/devel/ragel/Makefile +++ b/devel/ragel/Makefile @@ -1,38 +1,39 @@ PORTNAME= ragel PORTVERSION= 6.10 PORTREVISION= 1 CATEGORIES= devel MASTER_SITES= http://www.colm.net/files/${PORTNAME}/ MAINTAINER= adridg@FreeBSD.org COMMENT= Compile regular languages into executable C/C++ code WWW= http://www.complang.org/ragel/ LICENSE= GPLv2 GPLv3 LICENSE_COMB= dual USES= gmake GNU_CONFIGURE= yes OPTIONS_DEFINE= TEXDOCS EXAMPLES OPTIONS_SUB= yes TEXDOCS_CONFIGURE_ENABLE= manual TEXDOCS_DESC= Build pdf documentation (requires LaTeX) +TEXDOCS_USES= tex TEXDOCS_USE= TEX=latex:build TEXDOCS_BUILD_DEPENDS= fig2dev:print/transfig .include do-install: ${INSTALL_PROGRAM} ${WRKSRC}/ragel/${PORTNAME} ${STAGEDIR}${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/doc/${PORTNAME}.1 ${STAGEDIR}${MANPREFIX}/man/man1 do-install-TEXDOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/doc/*.pdf ${STAGEDIR}${DOCSDIR} do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} @(cd ${WRKSRC}/test; ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}) .include diff --git a/devel/tex-kpathsea/Makefile b/devel/tex-kpathsea/Makefile index 1c89ae9a8040..06dd5d76d70f 100644 --- a/devel/tex-kpathsea/Makefile +++ b/devel/tex-kpathsea/Makefile @@ -1,43 +1,42 @@ PORTNAME= kpathsea PORTVERSION= 6.3.3 CATEGORIES= devel MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= Path searching library for TeX LICENSE= LGPL21+ -USES= libtool pathfix tar:xz +USES= libtool pathfix tar:xz tex USE_LDCONFIG= yes -USE_TEX= yes GNU_CONFIGURE= yes INSTALL_TARGET= install-strip EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux texk/kpathsea texk/texlive/tl_support \ texk/texlive/linked_scripts/texlive-extra \ texk/texlive/linked_scripts/texlive WRKSRC= ${WRKDIR}/${DISTNAME}/texk/kpathsea INFO= kpathsea post-install: (cd ${WRKDIR}/${DISTNAME}/texk/texlive/linked_scripts/texlive-extra && \ for f in kpsetool kpsewhere; do \ ${INSTALL_SCRIPT} $${f}.sh ${STAGEDIR}${PREFIX}/bin/$$f; \ ${INSTALL_MAN} ../../tl_support/$${f}.1 \ ${STAGEDIR}${MANPREFIX}/man/man1/$${f}.1; \ done; \ for l in kpsexpand kpsepath; do \ ${LN} -sf kpsetool ${STAGEDIR}${PREFIX}/bin/$$l; \ ${LN} -sf kpsetool.1 ${STAGEDIR}${MANPREFIX}/man/man1/$${l}.1; \ done) .include diff --git a/devel/tex-libtexlua/Makefile b/devel/tex-libtexlua/Makefile index 9c80ae72aeea..b08794aa305e 100644 --- a/devel/tex-libtexlua/Makefile +++ b/devel/tex-libtexlua/Makefile @@ -1,31 +1,30 @@ PORTNAME= libtexlua PORTVERSION= 5.3.6 CATEGORIES= devel MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR} PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= Lua library for TeXLive LICENSE= MIT LICENSE_FILE= ${WRKDIR}/LICENSE.MIT -USES= libtool pathfix pkgconfig tar:xz +USES= libtool pathfix pkgconfig tar:xz tex USE_LDCONFIG= yes -USE_TEX= yes GNU_CONFIGURE= yes INSTALL_TARGET= install-strip EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux libs/lua53 WRKSRC= ${WRKDIR}/${DISTNAME}/libs/lua53 post-extract: ${SED} -e '/\*\ Copyright/,/\*\//!d;s/^\*//;/^\*\*/d' \ ${WRKSRC}/lua53-src/src/lua.h > ${WRKDIR}/LICENSE.MIT .include diff --git a/devel/tex-libtexluajit/Makefile b/devel/tex-libtexluajit/Makefile index 717aa32ad02b..d751bae68cc6 100644 --- a/devel/tex-libtexluajit/Makefile +++ b/devel/tex-libtexluajit/Makefile @@ -1,39 +1,38 @@ PORTNAME= libtexluajit PORTVERSION= 2.1.0 CATEGORIES= devel MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR} PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= LuaJIT library for TeXLive LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LuaJIT-src/COPYRIGHT BROKEN_mips= Does not configure: error: Sorry, cannot preprocess lj_arch.h BROKEN_mips64= Does not configure: error: Sorry, cannot preprocess lj_arch.h BROKEN_powerpc64= Does not build: uninitialized constant Config (NameError) BROKEN_riscv64= Does not configure: error: Sorry, cannot preprocess lj_arch.h BROKEN_sparc64= Does not configure: error: Sorry, cannot preprocess lj_arch.h -USES= libtool pathfix pkgconfig tar:xz +USES= libtool pathfix pkgconfig tar:xz tex USE_LDCONFIG= yes -USE_TEX= yes GNU_CONFIGURE= yes INSTALL_TARGET= install-strip EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux libs/luajit WRKSRC= ${WRKDIR}/${DISTNAME}/libs/luajit .include .if ${ARCH} == powerpc USES+= compiler:gcc-c++11-lib .endif .include diff --git a/devel/tex-synctex/Makefile b/devel/tex-synctex/Makefile index 663e8b8d2ec6..b787334520cc 100644 --- a/devel/tex-synctex/Makefile +++ b/devel/tex-synctex/Makefile @@ -1,59 +1,59 @@ PORTNAME= synctex PORTVERSION= 2.0.0 PORTREVISION= 1 CATEGORIES= devel MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= Synchronization TeXnology parser library WWW= http://itexmac.sourceforge.net/SyncTeX.html LICENSE= MIT LICENSE_FILE= ${WRKSRC}/synctexdir/README.txt -USES= libtool localbase pathfix pkgconfig tar:xz +USES= libtool localbase pathfix pkgconfig tar:xz tex USE_LDCONFIG= yes USE_TEX= kpathsea GNU_CONFIGURE= yes CONFIGURE_ARGS= ${EXCLUDE_ENGINES:S/^/--disable-/} \ --with-system-kpathsea \ --with-system-zlib \ --without-gmp-includes \ --without-gmp-libdir \ --without-mf-x-toolkit \ --without-mpfr-includes \ --without-mpfr-libdir \ --without-system-cairo \ --without-system-freetype2 \ --without-system-gmp \ --without-system-graphite2 \ --without-system-harfbuzz \ --without-system-icu \ --without-system-libpng \ --without-system-mpfr \ --without-system-pixman \ --without-system-ptexenc \ --without-system-teckit \ --without-system-zziplib \ --without-x INSTALL_TARGET= install-strip EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} WRKSRC= ${WRKDIR}/${DISTNAME}/texk/web2c EXTRACT_FILES= build-aux texk/web2c EXCLUDE_ENGINES= etex aleph luatex luajittex pdftex mf mf-nowin ptex \ eptex uptex euptex xetex tex otangle mp pmp upmp web2c \ web-progs luahbtex luajithbtex mflua mfluajit latex \ pdftex post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete .include diff --git a/devel/tex-web2c/Makefile b/devel/tex-web2c/Makefile index c89393aff2a6..1b3d068d0b0e 100644 --- a/devel/tex-web2c/Makefile +++ b/devel/tex-web2c/Makefile @@ -1,73 +1,73 @@ PORTNAME= web2c PORTVERSION= ${TEXLIVE_VERSION} CATEGORIES= devel MASTER_SITES= TEX_CTAN/systems/texlive/Source/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${PORTVERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= TeX implementation translating WEB to C LIB_DEPENDS= libgmp.so:math/gmp \ libmpfr.so:math/mpfr \ libopenjp2.so:graphics/openjpeg \ libpng.so:graphics/png \ libzzip.so:devel/zziplib -USES= gnome libtool localbase pathfix pkgconfig tar:xz xorg +USES= gnome libtool localbase pathfix pkgconfig tar:xz tex xorg USE_GNOME= cairo USE_LDCONFIG= yes USE_TEX= kpathsea ptexenc USE_XORG= pixman GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-aleph \ --disable-eptex \ --disable-euptex \ --disable-latex \ --disable-luahbtex \ --disable-luajithbtex \ --disable-luajittex \ --disable-luatex \ --disable-mflua \ --disable-mfluajit \ --disable-pdftex \ --disable-ptex \ --disable-synctex \ --disable-tex \ --disable-uptex \ --disable-xetex \ --with-system-zlib \ --with-system-zziplib \ --with-x=no \ --without-mf-x-toolkit .for L in pixman cairo gmp mpfr libpng icu kpathsea ptexenc CONFIGURE_ARGS+= --with-$L-include=${LOCALBASE}/include \ --with-$L-libdir=${LOCALBASE}/lib \ --with-system-$L .endfor INSTALL_TARGET= install-strip CONFLICTS_INSTALL= cweb EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux libs/xpdf texk/web2c WRKSRC= ${WRKDIR}/${DISTNAME}/texk/web2c INFO= web2c post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete pre-configure: for D in libs/xpdf; do \ cd ${WRKDIR}/${DISTNAME}/$$D && \ ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \ CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" CXXFLAGS="${CXXFLAGS}" \ LDFLAGS="${LDFLAGS}" LIBS="${LIBS}" \ ${CONFIGURE_ENV} ${SH} ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}; \ done .include diff --git a/devel/transient-devel/Makefile b/devel/transient-devel/Makefile index 179289b52e49..2df0805a11ac 100644 --- a/devel/transient-devel/Makefile +++ b/devel/transient-devel/Makefile @@ -1,62 +1,63 @@ PORTNAME= transient DISTVERSIONPREFIX= v DISTVERSION= 0.3.7-181 DISTVERSIONSUFFIX= -g72d3028 CATEGORIES= devel elisp PKGNAMESUFFIX= -devel${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Emacs key and popup interface for complex keybindings WWW= https://github.com/magit/transient LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} RUN_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit MAKE_ENV+= LOAD_PATH="-L ${WRKSRC}/lisp -L ${PREFIX}/${EMACS_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/compat" ALL_TARGET= lisp info CONFLICTS_INSTALL= transient-emacs* NO_ARCH= yes INFO= transient PORTDOCS= CHANGELOG README.org transient.html OPTIONS_DEFINE= DOCS PDF PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf PDF_PLIST_FILES= ${DOCSDIR}/transient.pdf do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el* \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/docs/*.info \ ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README.org ${WRKSRC}/CHANGELOG \ ${WRKSRC}/docs/transient.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/transient.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/devel/transient/Makefile b/devel/transient/Makefile index 11deddc4a3b1..ee47e0efd008 100644 --- a/devel/transient/Makefile +++ b/devel/transient/Makefile @@ -1,57 +1,58 @@ PORTNAME= transient DISTVERSIONPREFIX= v DISTVERSION= 0.3.7 PORTREVISION= 5 CATEGORIES= devel elisp PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Emacs key and popup interface for complex keybindings WWW= https://github.com/magit/transient LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit ALL_TARGET= lisp info CONFLICTS_INSTALL= transient-devel-emacs* NO_ARCH= yes INFO= transient PORTDOCS= CHANGELOG README.md transient.html OPTIONS_DEFINE= DOCS PDF PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf PDF_PLIST_FILES= ${DOCSDIR}/transient.pdf do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el* \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/docs/*.info \ ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README.md ${WRKSRC}/docs/CHANGELOG \ ${WRKSRC}/docs/transient.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/transient.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/editors/gnome-latex/Makefile b/editors/gnome-latex/Makefile index d03067557b8d..4e3c760d346a 100644 --- a/editors/gnome-latex/Makefile +++ b/editors/gnome-latex/Makefile @@ -1,35 +1,35 @@ PORTNAME= gnome-latex PORTVERSION= 3.42.0 CATEGORIES= editors MASTER_SITES= GNOME DIST_SUBDIR= gnome MAINTAINER= gnome@FreeBSD.org COMMENT= Integrated LaTeX environment WWW= https://wiki.gnome.org/Apps/LaTeXila LICENSE= GPLv3 BUILD_DEPENDS= itstool:textproc/itstool \ gsettings-desktop-schemas>=0:devel/gsettings-desktop-schemas LIB_DEPENDS= libgee-0.8.so:devel/libgee \ libfribidi.so:converters/fribidi \ libenchant-2.so:textproc/enchant2 \ libtepl-6.so:x11-toolkits/tepl6 \ libgspell-1.so:textproc/gspell USES= compiler:c11 desktop-file-utils gettext gmake gnome \ - pkgconfig tar:xz vala:build + pkgconfig tar:xz tex vala:build GNU_CONFIGURE= yes USE_GNOME= cairo dconf intltool gtksourceview4 USE_TEX= latex dvipsk INSTALL_TARGET= install-strip OPTIONS_DEFINE= NLS NLS_USES= gettext-runtime NLS_CONFIGURE_ENABLE= nls OPTIONS_SUB= yes GLIB_SCHEMAS= org.gnome.gnome-latex.gschema.xml .include diff --git a/editors/texmacs/Makefile b/editors/texmacs/Makefile index acc5b2f6a055..7e276b3463c4 100644 --- a/editors/texmacs/Makefile +++ b/editors/texmacs/Makefile @@ -1,92 +1,92 @@ PORTNAME= texmacs PORTVERSION= 1.99.4 PORTREVISION= 5 CATEGORIES= editors print MASTER_SITES= http://www.texmacs.org/Download/ftp/tmftp/source/ DISTNAME= TeXmacs-${PORTVERSION}-src MAINTAINER= ports@FreeBSD.org COMMENT= WYSIWYG scientific text editor WWW= https://www.texmacs.org/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_FreeBSD_13= assigning to 'bool' from incompatible type 'nullptr_t' BROKEN_FreeBSD_14= assigning to 'bool' from incompatible type 'nullptr_t' LIB_DEPENDS= libltdl.so:devel/libltdl \ libguile.so:lang/guile1 \ libgmp.so:math/gmp RUN_DEPENDS= fig2dev:print/transfig BROKEN_armv6= fails to compile: call to min is ambiguous BROKEN_armv7= fails to compile: call to min is ambiguous USES= cpe desktop-file-utils gmake iconv localbase pkgconfig python \ - shared-mime-info shebangfix xorg + shared-mime-info shebangfix tex xorg USE_TEX= tex:run dvipsk:run USE_XORG= xext GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-optimize="${CXXFLAGS}" --disable-qt MAKE_ARGS= CP="${CP} -R -f" ALL_TARGET= ${PORTNAME:tu} SHEBANG_FILES= plugins/asymptote/bin/* plugins/dratex/bin/* \ plugins/eukleides/bin/* plugins/feynmf/bin/* \ plugins/mupad/bin/* plugins/texgraph/bin/* \ plugins/xypic/bin/* \ plugins/python/bin/tm_python plugins/sage/bin/tm_sage \ plugins/mathematica/bin/realpath.py DATADIR= ${PREFIX}/share/TeXmacs OPTIONS_DEFINE= ASPELL FREETYPE GHOSTSCRIPT IMLIB2 PDF SQLITE OPTIONS_DEFAULT=ASPELL FREETYPE GHOSTSCRIPT IMLIB2 PDF SQLITE OPTIONS_SUB= yes ASPELL_RUN_DEPENDS= aspell:textproc/aspell FREETYPE_LIB_DEPENDS= libfreetype.so:print/freetype2 FREETYPE_CONFIGURE_ENABLE= freetype FREETYPE_CONFIGURE_ENV_OFF= FREETYPE_CFLAGS=" " FREETYPE_LDFLAGS=" " \ ac_cv_header_ft2build_h=no GHOSTSCRIPT_USES= ghostscript:x11 GHOSTSCRIPT_CONFIGURE_ON= --with-gs=yes GHOSTSCRIPT_CONFIGURE_OFF= --with-gs=no IMLIB2_LIB_DEPENDS= libImlib2.so:graphics/imlib2 IMLIB2_CONFIGURE_WITH= imlib2 PDF_CONFIGURE_ENABLE= pdf-renderer PDF_LDFLAGS= -lz PDF_IMPLIES= FREETYPE GHOSTSCRIPT SQLITE_USES= sqlite SQLITE_CONFIGURE_ON= --with-sqlite3 post-patch: @${REINPLACE_CMD} -e \ '/SVNREV\//s|^|#| ; \ s|LIBS="-liconv"|LIBS="-liconv $$LIBS"| ; \ s|/-liconv}|}| ; \ s|"-Wl,-rpath,"|""| ; \ s|\[\[ |[ |g ; \ s| \]\]| ]|g ; \ s|== no|= no| ; \ s|$${QT_PLUGINS_LIST/,/ }|${QT_PLUGINS_LIST}|' \ ${WRKSRC}/configure @${REINPLACE_CMD} -e \ '/require/s|"python"|"${PYTHON_CMD:T}"|' \ ${WRKSRC}/plugins/python/progs/init-python.scm @${REINPLACE_CMD} -e \ 's|int tab=.*)|int tab)|' \ ${WRKSRC}/src/Kernel/Types/tree.hpp @${REINPLACE_CMD} -e \ 's|int dpi=.*)|int dpi)|' \ ${WRKSRC}/src/Typeset/boxes.hpp post-install: @${FIND} ${STAGEDIR}${DATADIR} -name "._*" -delete @${FIND} ${STAGEDIR}${DATADIR} -name "*.bak" -delete .for f in realpath texmacs.bin tm_axiom tm_graphviz tm_maple_5 tm_r tm_shell ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/TeXmacs/bin/${f} .endfor .include diff --git a/editors/texmaker/Makefile b/editors/texmaker/Makefile index ba3f688af3bb..2676de4cdf16 100644 --- a/editors/texmaker/Makefile +++ b/editors/texmaker/Makefile @@ -1,28 +1,28 @@ PORTNAME= texmaker PORTVERSION= 5.0.3 PORTREVISION= 4 PORTEPOCH= 3 CATEGORIES= editors MASTER_SITES= http://www.xm1math.net/texmaker/ MAINTAINER= hrs@FreeBSD.org COMMENT= LaTeX Development Environment WWW= https://www.xm1math.net/texmaker/ LICENSE= GPLv2+ LIB_DEPENDS= libhunspell-1.7.so:textproc/hunspell USES= compiler:c++11-lang desktop-file-utils ghostscript:x11,run \ - gl pkgconfig qmake qt:5 tar:bzip2 + gl pkgconfig qmake qt:5 tar:bzip2 tex USE_GL= gl USE_QT= concurrent core gui network printsupport script widgets \ xml buildtools:build USE_TEX= latex dvipsk EXTRACT_AFTER_ARGS= --exclude hunspell QMAKE_ARGS= ICONDIR=${PREFIX}/share/pixmaps \ DESKTOPDIR=${DESKTOPDIR} \ METAINFODIR=${PREFIX}/share/metainfo .include diff --git a/editors/texstudio/Makefile b/editors/texstudio/Makefile index 940f42c3af07..568eddf3963e 100644 --- a/editors/texstudio/Makefile +++ b/editors/texstudio/Makefile @@ -1,48 +1,48 @@ PORTNAME= texstudio DISTVERSION= 4.4.1 PORTREVISION= 1 CATEGORIES= editors MAINTAINER= rigoletto@FreeBSD.org COMMENT= Integrated writing environment for LaTeX documents WWW= http://texstudio.sourceforge.net/ LICENSE= GPLv2 BROKEN_armv6= fails to compile: error: no member named mc_eip in __mcontext LIB_DEPENDS= libhunspell-1.7.so:textproc/hunspell \ libpoppler.so:graphics/poppler \ libpoppler-qt5.so:graphics/poppler-qt5 \ libquazip1-qt5.so:archivers/quazip USES= compiler:c++11-lang desktop-file-utils dos2unix \ - ghostscript:run gl pkgconfig qmake qt:5 xorg + ghostscript:run gl pkgconfig qmake qt:5 tex xorg USE_GITHUB= yes GH_ACCOUNT= ${PORTNAME}-org USE_QT = concurrent core declarative gui linguisttools network \ printsupport script svg uitools widgets xml \ buildtools:build QTVER_SUFFIX= 5 USE_XORG= x11 USE_GL= gl USE_TEX= latex dvipsk DOS2UNIX_FILES= ${PORTNAME}.pro \ src/manhattanstyle.cpp \ src/pdfviewer/PDFDocument.h \ src/qcodeedit/lib/widgets/qfoldpanel.cpp QMAKE_ARGS+= USE_SYSTEM_HUNSPELL=true USE_SYSTEM_QUAZIP=true post-patch: @${REINPLACE_CMD} -e 's,^\(utilities.path =\).*,\1 ${DATADIR},' \ -e 's,/usr/include,${LOCALBASE}/include,g' \ -e 's,/usr/lib,${LOCALBASE}/lib,g' \ -e '/appdata.path/s,\/usr,${PREFIX},' \ ${WRKSRC}/${PORTNAME}.pro .include diff --git a/editors/texworks/Makefile b/editors/texworks/Makefile index 842bb7e06d14..af8406f271e3 100644 --- a/editors/texworks/Makefile +++ b/editors/texworks/Makefile @@ -1,55 +1,55 @@ PORTNAME= texworks DISTVERSIONPREFIX= release- DISTVERSION= 0.6.2 PORTREVISION= 47 CATEGORIES= editors MAINTAINER= hrs@FreeBSD.org COMMENT= Simple TeX front-end program WWW= https://www.tug.org/texworks/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= hunspell:textproc/hunspell LIB_DEPENDS= libhunspell-1.7.so:textproc/hunspell \ libpoppler.so:graphics/poppler \ libpoppler-qt5.so:graphics/poppler-qt5 USES= compiler:c++11-lang cmake desktop-file-utils pkgconfig \ - qt:5 + qt:5 tex USE_GITHUB= yes GH_ACCOUNT= TeXworks USE_QT= buildtools:build designer:build qmake:build \ core concurrent dbus gui linguisttools script \ scripttools uitools widgets xml USE_TEX= synctex USE_LDCONFIG= yes CMAKE_ARGS= -DTeXworks_DIC_DIR:PATH=${LOCALBASE}/share/hunspell \ -DTeXworks_DOCS_DIR:PATH=${DOCSDIR_REL} \ -DTeXworks_HELP_DIR:PATH=${DOCSDIR_REL} \ -DTeXworks_MAN_DIR:PATH=man/man1 PORTDOCS= * PLIST_FILES= bin/texworks \ man/man1/texworks.1.gz \ share/appdata/texworks.appdata.xml \ share/applications/texworks.desktop \ share/pixmaps/TeXworks.png OPTIONS_DEFINE= DOCS LUA PYTHON LUA_USES= lua LUA_CMAKE_BOOL= WITH_LUA LUA_PLIST_FILES= lib/texworks/libTWLuaPlugin.so PYTHON_USES= python:3.4+ PYTHON_CMAKE_BOOL= WITH_PYTHON PYTHON_PLIST_FILES= lib/texworks/libTWPythonPlugin.so post-patch: @${FIND} ${WRKSRC}/src -type f | ${XARGS} ${REINPLACE_CMD} 's|synctex_next_result|synctex_scanner_next_result|g' .include diff --git a/editors/with-editor-devel/Makefile b/editors/with-editor-devel/Makefile index 66863787b8cd..30c1242564d1 100644 --- a/editors/with-editor-devel/Makefile +++ b/editors/with-editor-devel/Makefile @@ -1,63 +1,64 @@ PORTNAME= with-editor DISTVERSIONPREFIX= v DISTVERSION= 3.2.0-29 DISTVERSIONSUFFIX= -g4da1097 CATEGORIES= editors elisp PKGNAMESUFFIX= -devel${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Use the Emacsclient as the $$EDITOR of child processes WWW= https://github.com/magit/with-editor LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} RUN_DEPENDS= compat.el${EMACS_PKGNAMESUFFIX}>=28.1.1.0:misc/compat.el@${EMACS_FLAVOR} USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit MAKE_ENV+= LOAD_PATH="-L ${WRKSRC}/lisp -L ${PREFIX}/${EMACS_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} -L ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/compat" MAKE_JOBS_UNSAFE= yes ALL_TARGET= lisp info CONFLICTS_INSTALL= with-editor-emacs* NO_ARCH= yes INFO= with-editor PLIST_FILES= ${EMACS_VERSION_SITE_LISPDIR}/with-editor-autoloads.el \ ${EMACS_VERSION_SITE_LISPDIR}/with-editor.el \ ${EMACS_VERSION_SITE_LISPDIR}/with-editor.elc PORTDOCS= README.org with-editor.html OPTIONS_DEFINE= DOCS PDF PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf PDF_PLIST_FILES= ${DOCSDIR}/with-editor.pdf do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el* \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/docs/*.info ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README.org \ ${WRKSRC}/docs/with-editor.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/with-editor.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/editors/with-editor/Makefile b/editors/with-editor/Makefile index d3480496c4b8..ac532c910bcc 100644 --- a/editors/with-editor/Makefile +++ b/editors/with-editor/Makefile @@ -1,58 +1,59 @@ PORTNAME= with-editor DISTVERSIONPREFIX= v DISTVERSION= 3.2.0 PORTREVISION= 4 CATEGORIES= editors elisp PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= yasu@FreeBSD.org COMMENT= Use the Emacsclient as the $$EDITOR of child processes WWW= https://github.com/magit/with-editor LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE USES= emacs gmake makeinfo USE_GITHUB= yes GH_ACCOUNT= magit ALL_TARGET= lisp info CONFLICTS_INSTALL= with-editor-devel-emacs* NO_ARCH= yes INFO= with-editor PLIST_FILES= ${EMACS_VERSION_SITE_LISPDIR}/with-editor-autoloads.el \ ${EMACS_VERSION_SITE_LISPDIR}/with-editor.el \ ${EMACS_VERSION_SITE_LISPDIR}/with-editor.elc PORTDOCS= AUTHORS.md README.md with-editor.html OPTIONS_DEFINE= DOCS PDF PDF_DESC= Build and install PDF document DOCS_BUILD_DEPENDS= gsed:textproc/gsed DOCS_ALL_TARGET= html DOCS_BINARY_ALIAS= sed=gsed PDF_BUILD_DEPENDS= texi2pdf:print/texinfo +PDF_USES= tex PDF_USE= TEX=dvipdfmx:build PDF_ALL_TARGET= pdf PDF_PLIST_FILES= ${DOCSDIR}/with-editor.pdf do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/lisp/*.el* \ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} ${INSTALL_DATA} ${WRKSRC}/docs/*.info ${STAGEDIR}${PREFIX}/${INFO_PATH} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README.md ${WRKSRC}/docs/AUTHORS.md \ ${WRKSRC}/docs/with-editor.html ${STAGEDIR}${DOCSDIR} do-install-PDF-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/with-editor.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/emulators/virtualbox-ose-legacy/Makefile b/emulators/virtualbox-ose-legacy/Makefile index 78e0d874e71b..52f7a0a7e456 100644 --- a/emulators/virtualbox-ose-legacy/Makefile +++ b/emulators/virtualbox-ose-legacy/Makefile @@ -1,429 +1,430 @@ PORTNAME= virtualbox-ose PORTVERSION= 5.2.44 PORTREVISION= 11 CATEGORIES= emulators MASTER_SITES= https://download.oracle.com/virtualbox/${PORTVERSION}/ PKGNAMESUFFIX?= -legacy DISTFILES= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} ${GUESTADDITIONS} EXTRACT_ONLY= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} MAINTAINER= vbox@FreeBSD.org COMMENT= General-purpose full virtualizer for x86 hardware WWW= https://www.virtualbox.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING PATCH_DEPENDS+= ${LOCALBASE}/share/kBuild/tools/GXX3.kmk:devel/kBuild BUILD_DEPENDS= yasm:devel/yasm \ xsltproc:textproc/libxslt \ kmk:devel/kBuild \ gtar:archivers/gtar LIB_DEPENDS= libpng.so:graphics/png \ libxslt.so:textproc/libxslt \ libcurl.so:ftp/curl RUN_DEPENDS= ${LOCALBASE}/etc/rc.d/vboxnet:emulators/virtualbox-ose-kmod-legacy CPE_VENDOR= oracle CPE_PRODUCT= vm_virtualbox WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} ONLY_FOR_ARCHS= i386 amd64 USES= compiler:c++14-lang cpe gnome iconv pkgconfig ssl tar:bzip2 USE_GNOME= libidl libxml2 HAS_CONFIGURE= yes CONFIGURE_ARGS= --disable-java --passive-mesa CONFIGURE_ARGS+= --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-additions-* \ virtualbox-ose-devel \ virtualbox-ose \ virtualbox-ose-lite PORTSCOUT= limit:^5\. LDFLAGS= -lpthread VBOXUSER?= vboxusers VBOXWSUSER?= vboxusers VBOXGROUP?= vboxusers USERS= ${VBOXUSER} GROUPS= ${VBOXGROUP} VBOX_DIR= ${PREFIX}/${VBOX_DIR_REL} VBOX_DIR_REL= lib/virtualbox VBOX_LINKS= VBoxVRDP VBOX_PROGS= VBoxAutostart VBoxBalloonCtrl VBoxBugReport VBoxHeadless \ VBoxManage VBOX_UTILS= VBoxExtPackHelperApp VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT \ VBoxSVC VBoxXPCOMIPCD OPTIONS_DEFINE= ALSA DBUS DEBUG GUESTADDITIONS MANUAL NLS PULSEAUDIO \ PYTHON QT5 R0LOGGING UDPTUNNEL VDE VNC WEBSERVICE VPX X11 OPTIONS_DEFAULT= DBUS QT5 UDPTUNNEL VNC WEBSERVICE X11 OPTIONS_SUB= yes DEBUG_DESC= Debug symbols, additional logs and assertions GUESTADDITIONS_DESC= Build with Guest Additions MANUAL_DESC= Build with user manual NLS_DESC= Native language support (requires QT5) QT5_DESC= Build with QT5 frontend (requires X11) R0LOGGING_DESC= Enable R0 logging (requires DEBUG) UDPTUNNEL_DESC= Build with UDP tunnel support VDE_DESC= Build with VDE support VNC_DESC= Build with VNC support VPX_DESC= Use libvpx for video recording WEBSERVICE_DESC= Build Webservice ALSA_CONFIGURE_OFF= --disable-alsa ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib DBUS_CONFIGURE_OFF= --disable-dbus DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DEBUG_CONFIGURE_ON= --build-debug MANUAL_BUILD_DEPENDS= ${LOCALBASE}/share/xml/docbook/4.4/docbookx.dtd:textproc/docbook-xml MANUAL_CONFIGURE_OFF= --disable-docs NLS_IMPLIES= QT5 PULSEAUDIO_CONFIGURE_OFF= --disable-pulse PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PYTHON_CONFIGURE_OFF= --disable-python QT5_IMPLIES= X11 R0LOGGING_IMPLIES= DEBUG UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel VDE_CONFIGURE_ON= --enable-vde VDE_RUN_DEPENDS= vde_switch:net/vde2 VNC_CONFIGURE_ON= --enable-vnc VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver VPX_CONFIGURE_OFF= --disable-libvpx VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx X11_CONFIGURE_OFF= --build-headless ENV= .export ENV PLIST_SUB= GUEST_VER=${PORTVERSION} \ PYTHON_VERU=${PYTHON_VER:S/./_/}${PYTHON_ABIVER} \ VBOXGROUP=${VBOXGROUP} SUB_LIST= VBOXDIR=${VBOX_DIR} \ VBOXGROUP=${VBOXGROUP} \ VBOXUSER=${VBOXUSER} \ VBOXWSUSER=${VBOXWSUSER} USE_RC_SUBR= vboxheadless vboxwatchdog .include .if ${SLAVE_PORT} == no CONFLICTS_INSTALL+= virtualbox-ose-nox11 OPTIONS_DEFAULT+= PYTHON .else CONFLICTS_INSTALL+= virtualbox-ose .endif .if ${ARCH} == "amd64" _ELF32!= kldstat -q -m elf32 && echo yes || echo no .endif .if ${PORT_OPTIONS:MDEBUG} KMK_BUILDTYPE= debug KMK_FLAGS+= BUILD_TYPE=debug .else KMK_BUILDTYPE= release .endif .if ${PORT_OPTIONS:MGUESTADDITIONS} GUESTADDITIONS= VBoxGuestAdditions_${PORTVERSION}.iso LICENSE+= Additions LICENSE_COMB= multi LICENSE_NAME_Additions= Guest Additions LICENSE_PERMS_Additions= auto-accept LICENSE_DISTFILES_Additions= ${GUESTADDITIONS} .endif .if ${PORT_OPTIONS:MMANUAL} DBKXMLDIR= ${LOCALBASE}/share/xml/docbook/4.4 DBKXSLDIR= ${LOCALBASE}/share/xsl/docbook +USES+= tex USE_TEX= dvipsk:build formats:build .endif .if ${PORT_OPTIONS:MPYTHON} USES+= python USE_PYTHON= distutils noegginfo noflavors PYDISTUTILS_PKGNAME= vboxapi PYDISTUTILS_PKGVERSION= 1.0 .else USES+= python:build .endif .if ${PORT_OPTIONS:MQT5} CONFIGURE_ARGS+= --enable-qt5 PLIST_SUB+= QT="" USES+= gl qmake:no_env qt:5 xorg USE_GL= gl glu USE_QT= buildtools:build core dbus gui linguisttools:build opengl USE_QT+= printsupport widgets x11extras USE_XORG= xcb VBOX_PROGS+= VirtualBox VBOX_UTILS+= VBoxTestOGL VBOX_WITH_QT= 1 .else CONFIGURE_ARGS+= --disable-qt PLIST_SUB+= QT="@comment " .endif .if ${PORT_OPTIONS:MWEBSERVICE} BUILD_DEPENDS+= soapcpp2:devel/gsoap USE_RC_SUBR+= vboxwebsrv VBOX_LINKS+= vboxwebsrv VBOX_UTILS+= vboxwebsrv webtest .endif .if ${PORT_OPTIONS:MX11} USES+= sdl USE_SDL= sdl USE_XORG+= xorgproto x11 xcursor xext xinerama xmu xt VBOX_PROGS+= VBoxSDL .endif .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} PLIST_SUB+= SDK="" .else PLIST_SUB+= SDK="@comment " .endif .if ${ARCH} == i386 KMK_ARCH= freebsd.x86 PLIST_SUB+= I386="" .else KMK_ARCH= freebsd.${ARCH} PLIST_SUB+= I386="@comment " .endif PLIST_SUB+= ARCH="${KMK_ARCH}" KMK_BUILDDIR= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE} KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys KMK_FLAGS+= -j${MAKE_JOBS_NUMBER} .include .if ${OPSYS} == FreeBSD .if ${OSVERSION} >= 1400059 BROKEN= Fails to compile with libc++ 14.0.3 .elif ${OSVERSION} >= 1301000 && ${OSVERSION} < 1400000 BROKEN= Fails to compile: error: ran out of registers during register allocation .endif .endif .if ${CHOSEN_COMPILER_TYPE} == clang && ${OPSYS} == FreeBSD && ${OSVERSION} > 1400022 # clang > 11 included in FreeBSD 14 fails to compile this legacy version # of virtualbox-ose, force clang 11 on FreeBSD 14 where a newer clang is # included. BUILD_DEPENDS+= clang${VBOX_LLVM_VER}:devel/llvm${VBOX_LLVM_VER} CC= clang${VBOX_LLVM_VER} CXX= clang++${VBOX_LLVM_VER} VBOX_LLVM_VER?= 11 .endif .if ${PYTHON_MAJOR_VER} >= 3 PLIST_SUB+= PYTHON_PYCDIR=/__pycache__/ \ PYTHON_PYCEXT=.cpython-${PYTHON_SUFFIX}.pyc .else PLIST_SUB+= PYTHON_PYCDIR=/ \ PYTHON_PYCEXT=.pyc .endif .if ${SSL_DEFAULT} != base CONFIGURE_ARGS+= --with-openssl-dir="${OPENSSLBASE}" .endif pre-everything:: .if ${ARCH} == "amd64" .if ${_ELF32} != yes @${ECHO_MSG} 'Requires 32-bit runtime support in kernel.' @${ECHO_MSG} 'Rebuild kernel with "options COMPAT_FREEBSD32" and reboot.' @${FALSE} .elif !exists(/usr/lib32/libc.so) @${ECHO_MSG} 'Requires 32-bit libraries installed under /usr/lib32.' @${ECHO_MSG} 'Do: cd /usr/src; make build32 install32; service ldconfig restart' @${FALSE} .endif .endif post-patch: @${ECHO_CMD} 'VBOX_PATH_APP_PRIVATE_ARCH = ${VBOX_DIR}' > \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_DOCBOOK = ${DBKXSLDIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_DOCBOOK_DTD = ${DBKXMLDIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_SHARED_LIBS = ${VBOX_DIR}' >> \ ${WRKSRC}/LocalConfig.kmk # Please keep this even if using Clang to avoid repeated regressions. # PR 245048 @${ECHO_CMD} "VBOX_WITH_RUNPATH = ${_GCC_RUNTIME:D${_GCC_RUNTIME}\:}${VBOX_DIR}" >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_APP_PRIVATE = ${DATADIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_APP_DOCS = ${DOCSDIR}' >> ${WRKSRC}/LocalConfig.kmk .if ${SSL_DEFAULT} != base @${ECHO_CMD} 'VBOX_WITH_ALT_HASH_CODE = 1' >> ${WRKSRC}/LocalConfig.kmk .endif @${ECHO_CMD} 'VBOX_WITH_EXTPACK_VBOXDTRACE =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_INSTALLER = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_VBOXDRV =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_TESTCASES =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'SDK_VBOX_LIBPNG_INCS = ${PREFIX}/include/libpng' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'SDK_VBOX_LIBPNG_LIBS = png' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_QT}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_QT}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_VALIDATIONKIT =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk .if ${PORT_OPTIONS:MR0LOGGING} @${ECHO_CMD} 'VBOX_WITH_R0_LOGGING = 1' >> ${WRKSRC}/LocalConfig.kmk .endif .if ${PORT_OPTIONS:MWEBSERVICE} @${ECHO_CMD} 'VBOX_WITH_WEBSERVICES = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_GSOAP_INSTALLED = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_GSOAP = ${PREFIX}/lib/gsoap' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_GSOAP_BIN = ${PREFIX}/bin' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_GSOAP_IMPORT = ${PREFIX}/share/gsoap/import' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_GCC_PEDANTIC_CXX = -Wshadow $$(VBOX_GCC_WARN) -Wno-long-long' >> \ ${WRKSRC}/LocalConfig.kmk @${REINPLACE_CMD} -E -e '/soap_socket_errno\(/s/(soap_socket_errno)(\([^)]+\))/\1/' \ ${WRKSRC}/src/VBox/Main/webservice/vboxweb.cpp .endif @${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ -e 's| -mpreferred-stack-boundary=2||' \ -e 's|%%PYTHON_VERSION%%|${PYTHON_VERSION}|' \ ${WRKSRC}/Config.kmk @${REINPLACE_CMD} -e 's| -fpermissive||' ${WRKSRC}/Config.kmk \ ${WRKSRC}/src/VBox/Main/webservice/Makefile.kmk @${ECHO_CMD} 'TOOL_VBoxGccFreeBSD_LD = ${CXX}' >> ${WRKSRC}/LocalConfig.kmk @${SED} -e 's|GXX3|VBoxGccFreeBSD|g' \ ${LOCALBASE}/share/kBuild/tools/GXX3.kmk > \ ${WRKSRC}/tools/kBuildTools/VBoxGccFreeBSD.kmk @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/Config.kmk ${WRKSRC}/configure \ ${WRKSRC}/kBuild/header.kmk ${WRKSRC}/kBuild/units/qt4.kmk \ ${WRKSRC}/kBuild/units/qt5.kmk ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py @${REINPLACE_CMD} \ -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ -e 's|SUPPYTHONLIBS=.*|SUPPYTHONLIBS="${PYTHON_VERSION}${PYTHON_ABIVER}"|' \ ${WRKSRC}/configure .if empty(ICONV_LIB) @${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ ${WRKSRC}/src/VBox/Runtime/Makefile.kmk @${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk .endif @${REINPLACE_CMD} -e 's|/usr/local/lib/virtualbox|${VBOX_DIR}|' \ -e 's|/usr/local|${PREFIX}|' \ ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh @${REINPLACE_CMD} \ -e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \ ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py do-build: cd ${WRKSRC} && ${SH} -c '. ${WRKSRC}/env.sh && \ ${SETENV} ${MAKE_ENV} ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' .if ${PORT_OPTIONS:MPYTHON} ${PYTHON_CMD} -mcompileall \ ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom .endif do-install: .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} ${MKDIR} ${STAGEDIR}${DATADIR}/sdk .endif cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom && \ ${COPYTREE_SHARE} "idl samples" ${STAGEDIR}${DATADIR} ${MKDIR} ${STAGEDIR}${PREFIX}/include/virtualbox cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/include && \ ${COPYTREE_SHARE} "*" ${STAGEDIR}${PREFIX}/include/virtualbox ${MKDIR} ${STAGEDIR}${VBOX_DIR} cd ${KMK_BUILDDIR}/bin && ${COPYTREE_SHARE} \ "*.fd *.r0 *.rc *.so components" ${STAGEDIR}${VBOX_DIR} .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} ${RLN} ${STAGEDIR}${DATADIR}/sdk ${STAGEDIR}${VBOX_DIR} .endif ${INSTALL_SCRIPT} ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh \ ${STAGEDIR}${VBOX_DIR} .for f in ${VBOX_PROGS} ${VBOX_UTILS} ${INSTALL_PROGRAM} ${KMK_BUILDDIR}/bin/${f} ${STAGEDIR}${VBOX_DIR} .endfor .for f in ${VBOX_PROGS} ${VBOX_LINKS} ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f} .endfor .for f in ${VBOX_PROGS} ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f:tl} .endfor .if ${PORT_OPTIONS:MGUESTADDITIONS} ${MKDIR} ${STAGEDIR}${VBOX_DIR}/additions ${INSTALL_DATA} ${DISTDIR}/${GUESTADDITIONS} \ ${STAGEDIR}${VBOX_DIR}/additions/ ${RLN} ${STAGEDIR}${VBOX_DIR}/additions/${GUESTADDITIONS} \ ${STAGEDIR}${VBOX_DIR}/additions/VBoxGuestAdditions.iso .endif .if ${PORT_OPTIONS:MMANUAL} ${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/UserManual*.pdf \ ${STAGEDIR}${DOCSDIR} .endif .if ${PORT_OPTIONS:MNLS} cd ${KMK_BUILDDIR}/obj/VirtualBox/qtnls && \ ${COPYTREE_SHARE} "*.qm" ${STAGEDIR}${DATADIR}/nls .endif .if ${PORT_OPTIONS:MPYTHON} cd ${KMK_BUILDDIR}/bin/sdk/installer && \ ${SETENV} VBOX_INSTALL_PATH="${VBOX_DIR}" \ ${PYTHON_CMD} vboxapisetup.py install --root=${STAGEDIR} @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom && \ ${COPYTREE_SHARE} "*" ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom @${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python ${RLN} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom \ ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python .endif .if ${PORT_OPTIONS:MQT5} ${INSTALL_DATA} \ ${WRKSRC}/src/VBox/Frontends/VirtualBox/images/OSE/VirtualBox_48px.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/VBox.png ${INSTALL_DATA} \ ${WRKSRC}/src/VBox/Installer/freebsd/virtualbox.desktop \ ${STAGEDIR}${PREFIX}/share/applications/virtualbox.desktop .endif .if ${PORT_OPTIONS:MVNC} ${MKDIR} ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH} ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/ExtPack* \ ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/ ${INSTALL_LIB} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/${KMK_ARCH}/* \ ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH}/ .endif .if ${PORT_OPTIONS:MWEBSERVICE} ${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/webservice ${INSTALL_DATA} ${KMK_BUILDDIR}/obj/webservice/vboxweb.wsdl \ ${STAGEDIR}${DATADIR}/sdk/bindings/webservice/ .endif post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/virtualbox/*.so \ ${STAGEDIR}${PREFIX}/lib/virtualbox/components/*.so .include diff --git a/emulators/virtualbox-ose/Makefile b/emulators/virtualbox-ose/Makefile index b82a3073f8be..b3653df75436 100644 --- a/emulators/virtualbox-ose/Makefile +++ b/emulators/virtualbox-ose/Makefile @@ -1,436 +1,437 @@ PORTNAME= virtualbox-ose PORTVERSION= 6.1.36 CATEGORIES= emulators MASTER_SITES= https://download.virtualbox.org/virtualbox/${PORTVERSION}/ DISTFILES= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} ${GUESTADDITIONS} EXTRACT_ONLY= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} MAINTAINER= vbox@FreeBSD.org COMMENT= General-purpose full virtualizer for x86 hardware WWW= https://www.virtualbox.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= yasm:devel/yasm \ xsltproc:textproc/libxslt \ kmk:devel/kBuild \ gtar:archivers/gtar LIB_DEPENDS= libpng.so:graphics/png \ libxslt.so:textproc/libxslt \ libcurl.so:ftp/curl RUN_DEPENDS= ${LOCALBASE}/etc/rc.d/vboxnet:emulators/virtualbox-ose-kmod CPE_VENDOR= oracle CPE_PRODUCT= vm_virtualbox WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} ONLY_FOR_ARCHS= amd64 USES= compiler:c++14-lang cpe gnome iconv pkgconfig ssl tar:bzip2 USE_GNOME= libidl libxml2 HAS_CONFIGURE= yes CONFIGURE_ARGS= --disable-java --passive-mesa CONFIGURE_ARGS+= --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-additions-* \ virtualbox-ose-devel \ virtualbox-ose-legacy \ virtualbox-ose-lite VBOXUSER?= vboxusers VBOXWSUSER?= vboxusers VBOXGROUP?= vboxusers USERS= ${VBOXUSER} GROUPS= ${VBOXGROUP} VBOX_DIR= ${PREFIX}/${VBOX_DIR_REL} VBOX_DIR_REL= lib/virtualbox VBOX_LINKS= VBoxVRDP VBOX_PROGS= VBoxAutostart VBoxBalloonCtrl VBoxBugReport VBoxHeadless \ VBoxManage VBOX_UTILS= VBoxExtPackHelperApp VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT \ VBoxSVC VBoxXPCOMIPCD SUB_FILES= pkg-message OPTIONS_DEFINE= AIO ALSA DBUS DEBUG GUESTADDITIONS MANUAL NLS OPUS PULSEAUDIO \ PYTHON QT5 R0LOGGING UDPTUNNEL VDE VNC WEBSERVICE VPX X11 OPTIONS_DEFAULT= AIO DBUS QT5 UDPTUNNEL VNC WEBSERVICE X11 # Since version 6.1.24 pulseaudio is broken at runtime, preventing # virtual machines from starting if configured to use it. OPTIONS_EXCLUDE+= PULSEAUDIO OPTIONS_SUB= yes AIO_DESC= Enable Asyncronous IO support (check pkg-message) DEBUG_DESC= Debug symbols, additional logs and assertions GUESTADDITIONS_DESC= Build with Guest Additions MANUAL_DESC= Build with user manual NLS_DESC= Native language support (requires QT5) OPUS_DESC= Use libvpx for audio recording (requires VPX) QT5_DESC= Build with QT5 frontend (requires X11) R0LOGGING_DESC= Enable R0 logging (requires DEBUG) UDPTUNNEL_DESC= Build with UDP tunnel support VDE_DESC= Build with VDE support VNC_DESC= Build with VNC support VPX_DESC= Use libvpx for video recording WEBSERVICE_DESC= Build Webservice ALSA_CONFIGURE_OFF= --disable-alsa ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib DBUS_CONFIGURE_OFF= --disable-dbus DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DEBUG_CONFIGURE_ON= --build-debug MANUAL_BUILD_DEPENDS= ${LOCALBASE}/share/xml/docbook/4.4/docbookx.dtd:textproc/docbook-xml MANUAL_CONFIGURE_OFF= --disable-docs NLS_IMPLIES= QT5 OPUS_CONFIGURE_OFF= --disable-libopus OPUS_LIB_DEPENDS= libopus.so:audio/opus OPUS_IMPLIES= VPX PULSEAUDIO_CONFIGURE_OFF= --disable-pulse PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PYTHON_CONFIGURE_OFF= --disable-python QT5_IMPLIES= X11 R0LOGGING_IMPLIES= DEBUG UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel VDE_CONFIGURE_ON= --enable-vde VDE_RUN_DEPENDS= vde_switch:net/vde2 VNC_CONFIGURE_ON= --enable-vnc VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver VPX_CONFIGURE_OFF= --disable-libvpx VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx X11_CONFIGURE_OFF= --build-headless ENV= .export ENV PLIST_SUB= GUEST_VER=${PORTVERSION} \ PYTHON_VERU=${PYTHON_VER:S/./_/}${PYTHON_ABIVER} \ VBOXGROUP=${VBOXGROUP} SUB_LIST= VBOXDIR=${VBOX_DIR} \ VBOXGROUP=${VBOXGROUP} \ VBOXUSER=${VBOXUSER} \ VBOXWSUSER=${VBOXWSUSER} USE_RC_SUBR= vboxheadless vboxwatchdog .include .if ${SLAVE_PORT} == no CONFLICTS_INSTALL+= virtualbox-ose-nox11 OPTIONS_DEFAULT+= PYTHON .else CONFLICTS_INSTALL+= virtualbox-ose .endif .if ${ARCH} == "amd64" _ELF32!= kldstat -q -m elf32 && echo yes || echo no .endif .if ${PORT_OPTIONS:MDEBUG} KMK_BUILDTYPE= debug KMK_FLAGS+= BUILD_TYPE=debug WITH_DEBUG= yes .else KMK_BUILDTYPE= release .endif .if ${PORT_OPTIONS:MGUESTADDITIONS} GUESTADDITIONS= VBoxGuestAdditions_${PORTVERSION}.iso LICENSE+= Additions LICENSE_COMB= multi LICENSE_NAME_Additions= Guest Additions LICENSE_PERMS_Additions= auto-accept LICENSE_DISTFILES_Additions= ${GUESTADDITIONS} .endif .if ${PORT_OPTIONS:MMANUAL} DBKXMLDIR= ${LOCALBASE}/share/xml/docbook/4.4 DBKXSLDIR= ${LOCALBASE}/share/xsl/docbook +USES+= tex USE_TEX= dvipsk:build formats:build .endif .if ${PORT_OPTIONS:MPYTHON} USES+= python USE_PYTHON= distutils noegginfo noflavors PYDISTUTILS_PKGNAME= vboxapi PYDISTUTILS_PKGVERSION= 1.0 .else USES+= python:build .endif .if ${PORT_OPTIONS:MQT5} CONFIGURE_ARGS+= --enable-qt5 PLIST_SUB+= QT="" USES+= gl qmake:no_env qt:5 xorg USE_GL= gl glu USE_QT= buildtools:build core dbus gui linguisttools:build opengl USE_QT+= printsupport widgets x11extras USE_XORG= xcb VBOX_PROGS+= VirtualBox VirtualBoxVM VBOX_UTILS+= VBoxTestOGL VBOX_WITH_QT= 1 .else CONFIGURE_ARGS+= --disable-qt PLIST_SUB+= QT="@comment " .endif .if ${PORT_OPTIONS:MWEBSERVICE} BUILD_DEPENDS+= soapcpp2:devel/gsoap USE_RC_SUBR+= vboxwebsrv VBOX_LINKS+= vboxwebsrv VBOX_UTILS+= vboxwebsrv webtest .endif .if ${PORT_OPTIONS:MX11} USES+= sdl xorg USE_SDL= sdl USE_XORG+= xorgproto x11 xcursor xext xinerama xmu xt VBOX_PROGS+= VBoxSDL .endif .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} PLIST_SUB+= SDK="" .else PLIST_SUB+= SDK="@comment " .endif .if ${ARCH} == i386 KMK_ARCH= freebsd.x86 PLIST_SUB+= I386="" .else KMK_ARCH= freebsd.${ARCH} PLIST_SUB+= I386="@comment " .endif PLIST_SUB+= ARCH="${KMK_ARCH}" KMK_BUILDDIR= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE} KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys KMK_FLAGS+= -j${MAKE_JOBS_NUMBER} .include .if ${CHOSEN_COMPILER_TYPE} == clang # llvm10 in FreeBSD before r364284 miscompiles virtualbox 6.1 causing errors. # force llvm11 from ports .if ${OPSYS} == FreeBSD && ${OSVERSION} < 1300109 BUILD_DEPENDS+= clang${VBOX_LLVM_VER}:devel/llvm${VBOX_LLVM_VER} CC= clang${VBOX_LLVM_VER} CXX= clang++${VBOX_LLVM_VER} VBOX_LLVM_VER?= 11 .endif PATCH_DEPENDS+= ${LOCALBASE}/share/kBuild/tools/GXX3.kmk:devel/kBuild EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-src-VBox-Devices-PC-ipxe-Makefile.kmk .endif .if ${PYTHON_MAJOR_VER} >= 3 PLIST_SUB+= PYTHON_PYCDIR=/__pycache__/ \ PYTHON_PYCEXT=.cpython-${PYTHON_SUFFIX}.pyc .else PLIST_SUB+= PYTHON_PYCDIR=/ \ PYTHON_PYCEXT=.pyc .endif .if ${SSL_DEFAULT} != base CONFIGURE_ARGS+= --with-openssl-dir="${OPENSSLBASE}" .endif pre-everything:: .if ${ARCH} == "amd64" .if ${_ELF32} != yes @${ECHO_MSG} 'Requires 32-bit runtime support in kernel.' @${ECHO_MSG} 'Rebuild kernel with "options COMPAT_FREEBSD32" and reboot.' @${FALSE} .elif !exists(/usr/lib32/libc.so) @${ECHO_MSG} 'Requires 32-bit libraries installed under /usr/lib32.' @${ECHO_MSG} 'Do: cd /usr/src; make build32 install32; service ldconfig restart' @${FALSE} .endif .endif post-patch: @${ECHO_CMD} 'VBOX_PATH_APP_PRIVATE_ARCH = ${VBOX_DIR}' > \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_DOCBOOK = ${DBKXSLDIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_DOCBOOK_DTD = ${DBKXMLDIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_SHARED_LIBS = ${VBOX_DIR}' >> \ ${WRKSRC}/LocalConfig.kmk # Please keep this even if using Clang to avoid repeated regressions. # PR 245048 @${ECHO_CMD} "VBOX_WITH_RUNPATH = ${_GCC_RUNTIME:D${_GCC_RUNTIME}\:}${VBOX_DIR}" >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_APP_PRIVATE = ${DATADIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_APP_DOCS = ${DOCSDIR}' >> ${WRKSRC}/LocalConfig.kmk .if ${SSL_DEFAULT} != base @${ECHO_CMD} 'VBOX_WITH_ALT_HASH_CODE = 1' >> ${WRKSRC}/LocalConfig.kmk .endif @${ECHO_CMD} 'VBOX_WITH_EXTPACK_VBOXDTRACE =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_INSTALLER = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_VBOXDRV =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_TESTCASES =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'SDK_VBOX_LIBPNG_INCS = ${PREFIX}/include/libpng' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'SDK_VBOX_LIBPNG_LIBS = png' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_QT}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_QT}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_VALIDATIONKIT =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk .if ${PORT_OPTIONS:MR0LOGGING} @${ECHO_CMD} 'VBOX_WITH_R0_LOGGING = 1' >> ${WRKSRC}/LocalConfig.kmk .endif .if ${PORT_OPTIONS:MWEBSERVICE} @${ECHO_CMD} 'VBOX_WITH_WEBSERVICES = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_GSOAP_INSTALLED = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_GSOAP = ${PREFIX}/lib/gsoap' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_GSOAP_BIN = ${PREFIX}/bin' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_PATH_GSOAP_IMPORT = ${PREFIX}/share/gsoap/import' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO_CMD} 'VBOX_GCC_PEDANTIC_CXX = -Wshadow $$(VBOX_GCC_WARN) -Wno-long-long' >> \ ${WRKSRC}/LocalConfig.kmk .endif .if empty(PORT_OPTIONS:MX11) @${ECHO} 'VBOX_WITH_VMSVGA3D =' >> ${WRKSRC}/LocalConfig.kmk .endif .if ${CHOSEN_COMPILER_TYPE} == clang @${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk @${REINPLACE_CMD} -e 's| -fpermissive||' ${WRKSRC}/Config.kmk \ ${WRKSRC}/src/VBox/Main/webservice/Makefile.kmk @${ECHO_CMD} 'TOOL_VBoxGccFreeBSD_LD = ${CXX}' >> ${WRKSRC}/LocalConfig.kmk @${SED} -e 's|GXX3|VBoxGccFreeBSD|g' \ ${LOCALBASE}/share/kBuild/tools/GXX3.kmk > \ ${WRKSRC}/tools/kBuildTools/VBoxGccFreeBSD.kmk .endif # Causes a "reinplace" QA warning with default LOCALBASE @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/Config.kmk ${WRKSRC}/configure \ ${WRKSRC}/kBuild/header.kmk ${WRKSRC}/kBuild/units/qt4.kmk \ ${WRKSRC}/kBuild/units/qt5.kmk ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ ${WRKSRC}/src/VBox/HostDrivers/adpctl/VBoxNetAdpCtl.cpp \ ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py @${REINPLACE_CMD} \ -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ -e 's|SUPPYTHONLIBS=.*|SUPPYTHONLIBS="${PYTHON_VERSION}${PYTHON_ABIVER}"|' \ ${WRKSRC}/configure .if empty(ICONV_LIB) @${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ ${WRKSRC}/src/VBox/Runtime/Makefile.kmk @${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk .endif # Causes a "reinplace" QA warning with default PREFIX/VBOX_DIR @${REINPLACE_CMD} -e 's|/usr/local/lib/virtualbox|${VBOX_DIR}|' \ -e 's|/usr/local|${PREFIX}|' \ ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh @${REINPLACE_CMD} \ -e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \ ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py post-patch-AIO-off: @${REINPLACE_CMD} 's|r3/freebsd/fileaio-freebsd.cpp|r3/posix/fileaio-posix.cpp|' \ ${WRKSRC}/src/VBox/Runtime/Makefile.kmk do-build: cd ${WRKSRC} && ${SH} -c '. ${WRKSRC}/env.sh && \ ${SETENV} ${MAKE_ENV} ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' .if ${PORT_OPTIONS:MPYTHON} ${PYTHON_CMD} -mcompileall \ ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom .endif do-install: .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} ${MKDIR} ${STAGEDIR}${DATADIR}/sdk .endif cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom && \ ${COPYTREE_SHARE} "idl samples" ${STAGEDIR}${DATADIR} ${MKDIR} ${STAGEDIR}${PREFIX}/include/virtualbox cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/include && \ ${COPYTREE_SHARE} "*" ${STAGEDIR}${PREFIX}/include/virtualbox ${MKDIR} ${STAGEDIR}${VBOX_DIR} cd ${KMK_BUILDDIR}/bin && ${COPYTREE_SHARE} \ "*.fd *.r0 *.so components" ${STAGEDIR}${VBOX_DIR} .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} ${RLN} ${STAGEDIR}${DATADIR}/sdk ${STAGEDIR}${VBOX_DIR} .endif ${INSTALL_SCRIPT} ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh \ ${STAGEDIR}${VBOX_DIR} .for f in ${VBOX_PROGS} ${VBOX_UTILS} ${INSTALL_PROGRAM} ${KMK_BUILDDIR}/bin/${f} ${STAGEDIR}${VBOX_DIR} .endfor .for f in ${VBOX_PROGS} ${VBOX_LINKS} ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f} .endfor .for f in ${VBOX_PROGS} ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f:tl} .endfor .if ${PORT_OPTIONS:MGUESTADDITIONS} ${MKDIR} ${STAGEDIR}${VBOX_DIR}/additions ${INSTALL_DATA} ${DISTDIR}/${GUESTADDITIONS} \ ${STAGEDIR}${VBOX_DIR}/additions/ ${RLN} ${STAGEDIR}${VBOX_DIR}/additions/${GUESTADDITIONS} \ ${STAGEDIR}${VBOX_DIR}/additions/VBoxGuestAdditions.iso .endif .if ${PORT_OPTIONS:MMANUAL} ${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/UserManual*.pdf \ ${STAGEDIR}${DOCSDIR} .endif .if ${PORT_OPTIONS:MNLS} cd ${KMK_BUILDDIR}/obj/VirtualBox/qtnls && \ ${COPYTREE_SHARE} "*.qm" ${STAGEDIR}${DATADIR}/nls .endif .if ${PORT_OPTIONS:MPYTHON} cd ${KMK_BUILDDIR}/bin/sdk/installer && \ ${SETENV} VBOX_INSTALL_PATH="${VBOX_DIR}" \ ${PYTHON_CMD} vboxapisetup.py install --root=${STAGEDIR} @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom && \ ${COPYTREE_SHARE} "*" ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom @${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python ${RLN} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom \ ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python .endif .if ${PORT_OPTIONS:MQT5} ${INSTALL_DATA} \ ${WRKSRC}/src/VBox/Frontends/VirtualBox/images/OSE/VirtualBox_48px.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/VBox.png ${INSTALL_DATA} \ ${WRKSRC}/src/VBox/Installer/freebsd/virtualbox.desktop \ ${STAGEDIR}${PREFIX}/share/applications/virtualbox.desktop .endif .if ${PORT_OPTIONS:MVNC} ${MKDIR} ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH} ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/ExtPack* \ ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/ ${INSTALL_LIB} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/${KMK_ARCH}/* \ ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH}/ .endif .if ${PORT_OPTIONS:MWEBSERVICE} ${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/webservice ${INSTALL_DATA} ${KMK_BUILDDIR}/obj/webservice/vboxweb.wsdl \ ${STAGEDIR}${DATADIR}/sdk/bindings/webservice/ .endif post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/virtualbox/*.so \ ${STAGEDIR}${PREFIX}/lib/virtualbox/components/*.so .include diff --git a/graphics/epix/Makefile b/graphics/epix/Makefile index cbf0088775c9..d9d3d54a4898 100644 --- a/graphics/epix/Makefile +++ b/graphics/epix/Makefile @@ -1,31 +1,31 @@ PORTNAME= epix DISTVERSION= 1.2.22 CATEGORIES= graphics MASTER_SITES= http://mathcs.holycross.edu/~ahwang/${PORTNAME}/ MAINTAINER= eduardo@FreeBSD.org COMMENT= Creates math plots and line figures using easy-to-learn syntax WWW= https://mathcs.holycross.edu/~ahwang/epix/ePiX.html LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= bash:shells/bash RUN_DEPENDS= bash:shells/bash -USES= gmake makeinfo tar:bzip2 +USES= gmake makeinfo tar:bzip2 tex USE_TEX= dvipsk:build latex texmf:build GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-bash=${LOCALBASE}/bin/bash \ --with-runtime=${CXX} INFO= epix OPTIONS_DEFINE= DOCS post-patch: @${REINPLACE_CMD} -e \ '/usepackage/s|\(pstricks\),\(xcolor\)|\1,tikz,\2|' \ ${WRKSRC}/doc/manual.tex .include diff --git a/graphics/evince/Makefile b/graphics/evince/Makefile index 802ee8cf7c63..02dc4fd87ff7 100644 --- a/graphics/evince/Makefile +++ b/graphics/evince/Makefile @@ -1,98 +1,99 @@ PORTNAME= evince DISTVERSION= 43.1 PORTREVISION= 1 CATEGORIES= graphics print gnome MASTER_SITES= GNOME/sources/${PORTNAME}/${PORTVERSION:C/^([0-9]+)\..*/\1/} DIST_SUBDIR= gnome MAINTAINER= gnome@FreeBSD.org COMMENT= GNOME multi-format document viewer WWW= https://wiki.gnome.org/Apps/Evince LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING FLAVOR?= full FLAVORS= full lite BUILD_DEPENDS= adwaita-icon-theme>=0:x11-themes/adwaita-icon-theme \ gsettings-desktop-schemas>=0:devel/gsettings-desktop-schemas \ itstool:textproc/itstool LIB_DEPENDS= libfribidi.so:converters/fribidi \ libhandy-1.so:x11-toolkits/libhandy \ libpoppler-glib.so:graphics/poppler-glib \ libspectre.so:print/libspectre \ libtiff.so:graphics/tiff RUN_DEPENDS= adwaita-icon-theme>=0:x11-themes/adwaita-icon-theme \ gsettings-desktop-schemas>=0:devel/gsettings-desktop-schemas PORTSCOUT= limitw:1,even SLAVEPORT?= no USES= compiler:c++11-lib cpe desktop-file-utils gettext gnome gstreamer libarchive \ localbase:ldflags meson pkgconfig tar:xz xorg USE_GNOME= cairo gdkpixbuf2 gtk30 USE_LDCONFIG= yes USE_XORG= ice CPE_VENDOR= gnome MESON_ARGS= -Dgtk_doc=false \ -Dpdf=enabled \ -Dps=enabled \ -Dsystemduserunitdir=no .if ${FLAVOR} == lite MESON_ARGS+= -Dintrospection=false \ -Dpreviewer=false \ -Dthumbnail_cache=disabled \ -Dthumbnailer=false USE_GNOME+= libxml2 OPTIONS_EXCLUDE= DBUS NAUTILUS PLIST= ${.CURDIR}/pkg-plist-lite PKGNAMESUFFIX= -lite COMMENT+= without GNOME dependencies CONFLICTS_INSTALL= evince .else USE_GNOME+= introspection:build MESON_ARGS+= -Dintrospection=true CONFLICTS_INSTALL= evince-lite .endif GLIB_SCHEMAS= org.gnome.Evince.gschema.xml PLIST_SUB= VERSION=3.0 OPTIONS_SUB= yes OPTIONS_DEFINE= COMICS DBUS DJVU DVI KEYRING NAUTILUS SPELL XPS OPTIONS_DEFAULT= COMICS DBUS DJVU KEYRING NAUTILUS SPELL XPS COMICS_DESC= Comic book archives support COMICS_MESON_ENABLED= comics DJVU_DESC= DJVU support DJVU_LIB_DEPENDS= libdjvulibre.so:graphics/djvulibre DJVU_MESON_ENABLED= djvu DBUS_MESON_TRUE= dbus DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DVI_DESC= DVI viewer support +DVI_USES= tex DVI_USE= TEX=kpathsea,latex DVI_MESON_ENABLED= dvi KEYRING_DESC= Keyring support KEYRING_LIB_DEPENDS= libsecret-1.so:security/libsecret KEYRING_MESON_ENABLED= keyring NAUTILUS_DESC= Nautilus plugin NAUTILUS_USE= GNOME=nautilus3 NAUTILUS_MESON_TRUE= nautilus SPELL_DESC= spell checking support SPELL_MESON_ENABLED= gspell SPELL_LIB_DEPENDS= libgspell-1.so:textproc/gspell XPS_DESC= XPS support XPS_LIB_DEPENDS= libgxps.so:graphics/libgxps XPS_MESON_ENABLED= xps .include diff --git a/graphics/ipe/Makefile b/graphics/ipe/Makefile index d842224d27fd..73108b33048a 100644 --- a/graphics/ipe/Makefile +++ b/graphics/ipe/Makefile @@ -1,64 +1,64 @@ PORTNAME= ipe PORTVERSION= 7.2.23 DISTVERSIONSUFFIX= -src PORTREVISION= 2 CATEGORIES= graphics MASTER_SITES= https://dl.bintray.com/otfried/generic/ipe/${PORTVERSION:R}/ MAINTAINER= bofh@FreeBSD.org COMMENT= Extensible vector graphics editor with LaTeX support WWW= https://ipe.otfried.org/ LICENSE= GPLv3+ RUN_DEPENDS= xdg-open:devel/xdg-utils LIB_DEPENDS= libcurl.so:ftp/curl \ libfreetype.so:print/freetype2 \ libgsl.so:math/gsl \ libpng.so:graphics/png \ libspiro.so:graphics/libspiro -USES= compiler:c++11-lib gmake gnome jpeg lua:52 pkgconfig shebangfix qt:5 +USES= compiler:c++11-lib gmake gnome jpeg lua:52 pkgconfig shebangfix qt:5 tex USE_GNOME= cairo +USE_LDCONFIG= yes USE_QT= buildtools:build core gui qmake:build widgets USE_TEX= pdftex WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/src SHEBANG_FILES= ${WRKSRC}/ipecurl/ipecurl.sh MAKE_ENV= DL_LIBS="" \ INSTALL_DIR="${MKDIR}" \ INSTALL_FILES="${INSTALL_DATA}" \ INSTALL_SCRIPTS="${INSTALL_SCRIPT}" \ INSTALL_PROGRAMS="${INSTALL_PROGRAM}" \ INSTALL_ROOT="${STAGEDIR}" \ IPEDOCDIR="${DOCSDIR}" \ IPEMANDIR="${MANPREFIX}/man/man1" \ IPEPREFIX="${PREFIX}" \ JPEG_CFLAGS="-I${LOCALBASE}/include" \ JPEG_LIBS="-L${LOCALBASE}/lib -ljpeg" \ LUA_PACKAGE="lua-${LUA_VER}" \ MOC="${MOC}" -USE_LDCONFIG= yes PLIST_SUB= VERSION="${PORTVERSION}" PORTDOCS= * DESKTOP_ENTRIES="Ipe" "" "ipe" "ipe" "" "" OPTIONS_DEFINE= DOCS post-patch: @${REINPLACE_CMD} -e \ 's|\([[:blank:]]\)=|\1?=|' ${WRKSRC}/config.mak post-install: @${LN} -sf ${DATADIR}/${PORTVERSION}/ipe.png \ ${STAGEDIR}${PREFIX}/share/pixmaps @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libipe* .for filename in ipe6upgrade iperender ipeextract ipescript ipetoipe ipepresenter ipe @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${filename} .endfor .include diff --git a/graphics/klatexformula/Makefile b/graphics/klatexformula/Makefile index e8a6a267933e..741629338198 100644 --- a/graphics/klatexformula/Makefile +++ b/graphics/klatexformula/Makefile @@ -1,31 +1,31 @@ PORTNAME= klatexformula PORTVERSION= 4.0.0 PORTREVISION= 3 CATEGORIES= graphics MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION} MAINTAINER= hrs@FreeBSD.org COMMENT= Convert LaTeX formula to image WWW= https://klatexformula.sourceforge.io LICENSE= GPLv2 BUILD_DEPENDS= help2man:misc/help2man USES= cmake compiler:c++11-lang desktop-file-utils ghostscript:run \ - gl qt:5 shared-mime-info tar:bzip2 localbase + gl qt:5 shared-mime-info tar:bzip2 localbase tex USE_GL= gl USE_QT= core dbus gui sql svg widgets x11extras xml \ buildtools:build designer:build linguisttools:build \ qmake:build uitools:build USE_TEX= latex dvipsk USE_LDCONFIG= yes CMAKE_ARGS= -DKLF_INSTALL_POST_UPDATEMIMEDATABASE=off \ -DKLF_INSTALL_SHARE_MAN1_DIR=man/man1 post-patch: ${REINPLACE_CMD} '/CMAKE_SYSTEM_NAME STREQUAL/s,Linux,FreeBSD,' \ ${WRKSRC}/src/klftools/CMakeLists.txt .include diff --git a/graphics/l2p/Makefile b/graphics/l2p/Makefile index 7d4937f24e4e..9d72e69f2d75 100644 --- a/graphics/l2p/Makefile +++ b/graphics/l2p/Makefile @@ -1,30 +1,30 @@ PORTNAME= l2p PORTVERSION= 1.1.1 PORTREVISION= 4 CATEGORIES= graphics print perl5 MASTER_SITES= http://static.redsymbol.net/software/l2p/dist/ \ http://nivit.altervista.org/FreeBSD/ports/distfiles/ MAINTAINER= nivit@FreeBSD.org COMMENT= Create PNG images from LaTeX math expressions WWW= http://www.redsymbol.net/software/l2p/ NO_BUILD= yes OPTIONS_DEFINE= DOCS PLIST_FILES= bin/l2p PORTDOCS= l2p.txt l2p.html SHEBANG_FILES= ${WRKSRC}/${PORTNAME} USE_PERL5= run USE_TEX= latex dvipsk -USES= magick:6,run perl5 shebangfix zip +USES= magick:6,run perl5 shebangfix tex zip do-install: ${INSTALL_SCRIPT} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} .include diff --git a/graphics/py-pyx/Makefile b/graphics/py-pyx/Makefile index de14678a6b86..2d560abc241a 100644 --- a/graphics/py-pyx/Makefile +++ b/graphics/py-pyx/Makefile @@ -1,34 +1,34 @@ PORTNAME= pyx PORTVERSION= 0.15 CATEGORIES= graphics python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTNAME= PyX-${PORTVERSION} MAINTAINER= sunpoet@FreeBSD.org COMMENT= Python package for creating encapsulated PostScript figures WWW= https://pyx-project.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE -USES= python:3.4+ +USES= python:3.4+ tex USE_PYTHON= autoplist concurrent distutils USE_TEX= latex:build OPTIONS_DEFINE= KPATHSEA T1CODE OPTIONS_DEFAULT=KPATHSEA T1CODE KPATHSEA_DESC= Python wrapper around kpathsea T1CODE_DESC= Fast t1 font encoding/decoding KPATHSEA_CFLAGS= -I${LOCALBASE}/include KPATHSEA_LDFLAGS= -L${LOCALBASE}/lib T1CODE_CFLAGS= -I${LOCALBASE}/include post-patch-KPATHSEA-on: @${REINPLACE_CMD} -e 's|build_pykpathsea=0|build_pykpathsea=1|' ${WRKSRC}/setup.cfg post-patch-T1CODE-on: @${REINPLACE_CMD} -e 's|build_t1code=0|build_t1code=1|' ${WRKSRC}/setup.cfg .include diff --git a/graphics/xournalpp/Makefile b/graphics/xournalpp/Makefile index 63df44957f78..818682f46e70 100644 --- a/graphics/xournalpp/Makefile +++ b/graphics/xournalpp/Makefile @@ -1,31 +1,31 @@ PORTNAME= xournalpp DISTVERSIONPREFIX= v DISTVERSION= 1.1.3 PORTREVISION= 1 CATEGORIES= graphics MAINTAINER= yuri@FreeBSD.org COMMENT= Handwriting notetaking software with PDF annotation support WWW= https://github.com/xournalpp/xournalpp LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= help2man:misc/help2man LIB_DEPENDS= libharfbuzz.so:print/harfbuzz \ libpoppler-glib.so:graphics/poppler-glib \ libportaudio.so:audio/portaudio \ libsndfile.so:audio/libsndfile \ libzip.so:archivers/libzip -USES= cmake compiler:c++11-lang gettext-tools gnome lua:53 pkgconfig xorg +USES= cmake compiler:c++11-lang gettext-tools gnome lua:53 pkgconfig tex xorg USE_GITHUB= yes USE_GNOME= atk cairo gdkpixbuf2 glib20 gtk30 librsvg2 libxml2 pango USE_XORG= x11 xi USE_TEX= latex:build LDFLAGS+= -lexecinfo # CAVEAT: crashes when built with gcc: https://github.com/xournalpp/xournalpp/issues/851 .include diff --git a/japanese/ja-tex-xdvik/Makefile b/japanese/ja-tex-xdvik/Makefile index 25e62a3d3e6a..47d4e73bc174 100644 --- a/japanese/ja-tex-xdvik/Makefile +++ b/japanese/ja-tex-xdvik/Makefile @@ -1,69 +1,69 @@ PORTNAME= xdvik PORTVERSION= 22.87 CATEGORIES= japanese print MASTER_SITES= SF/xdvi/${PORTNAME}/${PORTVERSION} PKGNAMEPREFIX= ja-tex- DIST_SUBDIR= TeX MAINTAINER= hrs@FreeBSD.org COMMENT= DVI Previewer(kpathsearch) for X WWW= http://xdvi.sourceforge.net/ LIB_DEPENDS= libfreetype.so:print/freetype2 \ libpaper.so:print/libpaper RUN_DEPENDS= tex-dvipsk>=5.995:print/tex-dvipsk -USES= iconv motif pkgconfig xorg +USES= iconv motif pkgconfig tex xorg USE_TEX= kpathsea texhash texmf web2c USE_XORG= ice sm x11 xi xmu xpm xt GNU_CONFIGURE= yes CONFIGURE_ARGS= --datarootdir=${LOCALBASE}/share \ --enable-shared \ --enable-xi2-scrolling \ --with-default-dvips-path=${LOCALBASE}/bin/dvips \ --with-default-gs-lib-path=${LOCALBASE}/lib \ --with-default-ps2pdf-path=${LOCALBASE}/bin/ps2pdf \ --with-iconv \ --with-kpathsea-includes=${LOCALBASE}/include/kpathsea \ --with-kpathsea-libdir=${LOCALBASE}/lib \ --with-system-freetype2 \ --with-system-kpathsea \ --with-system-libgs \ --with-system-zlib \ --with-xdvi-x-toolkit=motif \ --with-xpm CONFIGURE_ENV= INSTALL_DATA="${INSTALL_DATA}" \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ INSTALL_SCRIPT="${INSTALL_SCRIPT}" CFLAGS+= -I${LOCALBASE}/include -DHAVE_LIBPAPER -g -O0 CONFLICTS_INSTALL= *-xdvi ja-xdvik xdvi xdvi-* xdvik BINARY_ALIAS= freetype-config=true PATCH_WRKSRC= ${WRKDIR}/${DISTNAME} WRKSRC= ${WRKDIR}/${DISTNAME}/texk/xdvik PLIST_SUB= TEXMFDISTDIR=${TEXMFDISTDIR} PORTDOCS= BUGS CHANGES INSTALL README README.CVS README.coding \ README.config README.cross README.distro README.hacking \ README.layout README.xdvik README_maintainer TODO OPTIONS_DEFINE= DOCS TEXHASHDIRS= ${TEXMFDISTDIR} .include post-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/fonts/map/xdvi ${INSTALL_DATA} ${WRKSRC}/xdvi-ptex.map \ ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/fonts/map/xdvi/xdvi-ptex.map .if ${PORT_OPTIONS:MDOCS} @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKDIR}/${DISTNAME} && \ ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} .endif .include diff --git a/japanese/latex-jlisting/Makefile b/japanese/latex-jlisting/Makefile index c7de5d98c038..da728eee5729 100644 --- a/japanese/latex-jlisting/Makefile +++ b/japanese/latex-jlisting/Makefile @@ -1,26 +1,27 @@ PORTNAME= jlisting PORTVERSION= 0.2 CATEGORIES= japanese print MASTER_SITES= OSDN/mytexpert PKGNAMEPREFIX= latex- DISTFILES= jlisting.sty.bz2 MAINTAINER= hiroto.kagotani@gmail.com COMMENT= Support for Japanese text within lstlisting environment WWW= https://sourceforge.jp/projects/mytexpert/ +USES= tex NO_BUILD= yes USE_TEX= latex texhash JLDIR= ${TEXMFLOCALDIR}/tex/latex/jlisting PLIST_FILES= ${JLDIR}/jlisting.sty do-extract: @${MKDIR} ${WRKSRC} (cd ${DISTDIR}/${DIST_SUBDIR} && ${BZCAT} ${DISTFILES} \ > ${WRKSRC}/jlisting.sty) do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${JLDIR} ${INSTALL_DATA} ${WRKSRC}/jlisting.sty ${STAGEDIR}${PREFIX}/${JLDIR} .include diff --git a/japanese/tex-ptex/Makefile b/japanese/tex-ptex/Makefile index fd6f3c7695c4..29b4e97f25e8 100644 --- a/japanese/tex-ptex/Makefile +++ b/japanese/tex-ptex/Makefile @@ -1,106 +1,106 @@ PORTNAME= ptex PORTVERSION= 3.6 PORTREVISION= 2 CATEGORIES= japanese print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= ja-tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ${DISTNAME_TEXMF}${EXTRACT_SUFX} DIST_SUBDIR= TeX EXTRACT_ONLY= texlive-${TEXLIVE_VERSION}-source${EXTRACT_SUFX} MAINTAINER= tex@FreeBSD.org COMMENT= ASCII Japanese pTeX WWW= https://ctan.org/pkg/ptex -USES= localbase tar:xz perl5 pkgconfig +USES= localbase tar:xz perl5 pkgconfig tex USE_TEX= kpathsea web2c ptexenc texmf formats fmtutil TEXHASHDIRS= ${TEXMFDISTDIR} ${TEXMFVARDIR} EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux \ libs/xpdf \ texk/web2c EXTRACT_AFTER_ARGS_TEXMF= \ | ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${EXTRACT_FILES_TEXMF:S,^,${DISTNAME_TEXMF}/,} DISTNAME_TEXMF= texlive-${TEXLIVE_VERSION}-texmf EXTRACT_FILES_TEXMF= \ texmf-dist/doc/ptex \ texmf-dist/doc/platex \ texmf-dist/doc/uptex \ texmf-dist/doc/uplatex \ texmf-dist/doc/fonts/japanese-otf \ texmf-dist/doc/fonts/japanese-otf-uptex \ texmf-dist/fonts/vf/public/japanese-otf \ texmf-dist/fonts/vf/public/japanese-otf-uptex \ texmf-dist/fonts/tfm/public/japanese-otf-uptex \ texmf-dist/fonts/tfm/public/japanese-otf \ texmf-dist/fonts/ofm/public/japanese-otf \ texmf-dist/source/fonts/japanese-otf-uptex \ texmf-dist/source/fonts/japanese-otf \ texmf-dist/source/platex \ texmf-dist/source/uplatex \ texmf-dist/tex/ptex \ texmf-dist/tex/uptex \ texmf-dist/tex/platex \ texmf-dist/tex/uplatex \ texmf-dist/tex/generic/hyph-utf8/patterns/ptex \ texmf-dist/fonts/map/dvipdfmx/japanese-otf \ texmf-dist/fonts/map/dvipdfmx/updmap/kanjix.map WRKSRC= ${WRKDIR}/${DISTNAME}/texk/web2c GNU_CONFIGURE= yes EXCLUDE_ENGINES=aleph etex pdftex luatex luajittex mf mf-nowin \ otangle mp pmp upmp web2c web-progs xetex tex synctex \ mflua mfluajit luahbtex luajithbtex CONFIGURE_ARGS= ${EXCLUDE_ENGINES:S/^/--disable-/} \ --enable-ptex \ --enable-eptex \ --enable-uptex \ --enable-euptex \ --with-system-zlib \ --without-x .for L in kpathsea ptexenc CONFIGURE_ARGS+=--with-system-$L \ --with-$L-include=${LOCALBASE}/include \ --with-$L-libdir=${LOCALBASE}/lib .endfor MAKE_JOBS_UNSAFE= yes TEX_FORMATS= ptex uptex post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete pre-configure: for D in libs/xpdf; do \ cd ${WRKDIR}/${DISTNAME}/$$D && \ ${SETENV} ${CONFIGURE_ENV} ${SH} ${CONFIGURE_SCRIPT} \ ${CONFIGURE_ARGS}; \ done pre-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/texlive-${TEXLIVE_VERSION}-texmf${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS_TEXMF} post-install: ${REINPLACE_CMD} -i '' -e 's|/usr/bin/perl|${PERL}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf-uptex/umkjvf \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutf32list.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf-uptex/script/umkvpkana.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf-uptex/script/mkutfvf_sp.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf-uptex/script/umkpkana.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf-uptex/script/mktfm_sp.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf/mkjvf \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf/script/mkmlcidvf.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf/script/mkutfvf.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf/script/mkjp04tfmvf.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf/script/mkcidvf.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/japanese-otf/script/mktfm.pl ${FIND} -s ${STAGEDIR}${PREFIX}/share -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} .include diff --git a/korean/ko.TeX-fonts-base/Makefile b/korean/ko.TeX-fonts-base/Makefile index 1cf723bdc18e..34cb45c5dbd4 100644 --- a/korean/ko.TeX-fonts-base/Makefile +++ b/korean/ko.TeX-fonts-base/Makefile @@ -1,39 +1,40 @@ PORTNAME= ko.TeX-fonts-base PORTVERSION= 0.1.0.20070927 PORTREVISION= 6 CATEGORIES= korean print MASTER_SITES= http://ftp.ktug.or.kr/KTUG/ko.TeX/current/ DISTNAME= ko.tex-unfonts-base-20070927 MAINTAINER= hyogeollee@gmail.com COMMENT= Korean TeX base fonts WWW= http://project.ktug.or.kr/ko.TeX/ +USES= tex USE_TEX= dvipsk latex CONFLICTS= hlatex NO_BUILD= yes NO_WRKSUBDIR= yes TEXMF= ${PREFIX}/share/texmf-local TEXMF_FONTS= ${TEXMF}/fonts TEXMF_TEX= ${TEXMF}/tex PORTDOCS= COPYING LICENSE MANIFEST OPTIONS_DEFINE= DOCS do-install: (cd ${WRKSRC}/fonts && ${COPYTREE_SHARE} . ${STAGEDIR}${TEXMF_FONTS}) (cd ${WRKSRC}/tex && ${COPYTREE_SHARE} . ${STAGEDIR}${TEXMF_TEX}) ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-local -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-local -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR} .include diff --git a/korean/ko.TeX-fonts-extra/Makefile b/korean/ko.TeX-fonts-extra/Makefile index fb3dd121bfd7..cdde83a504cc 100644 --- a/korean/ko.TeX-fonts-extra/Makefile +++ b/korean/ko.TeX-fonts-extra/Makefile @@ -1,40 +1,41 @@ PORTNAME= ko.TeX-fonts-extra PORTVERSION= 0.1.0 PORTREVISION= 6 CATEGORIES= korean print MASTER_SITES= http://ftp.ktug.or.kr/KTUG/ko.TeX/extrafonts/ DISTFILES= ko.tex-extra-hlfont.tar.gz \ ko.tex-unfonts-extra.tar.gz MAINTAINER= hyogeollee@gmail.com COMMENT= Korean TeX extra fonts WWW= http://project.ktug.or.kr/ko.TeX/ +USES= tex USE_TEX= dvipsk latex CONFLICTS= hlatex NO_BUILD= yes NO_WRKSUBDIR= yes TEXMF= ${PREFIX}/share/texmf-local TEXMF_FONTS= ${TEXMF}/fonts TEXMF_TEX= ${TEXMF}/tex OPTIONS_DEFINE= DOCS PORTDOCS= fonts/* do-install: (cd ${WRKSRC}/fonts && ${COPYTREE_SHARE} . ${STAGEDIR}${TEXMF_FONTS}) (cd ${WRKSRC}/tex && ${COPYTREE_SHARE} . ${STAGEDIR}${TEXMF_TEX}) ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-local -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-local -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} do-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} (cd ${WRKSRC}/doc && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) .include diff --git a/korean/ko.TeX/Makefile b/korean/ko.TeX/Makefile index 8767b73df05b..dfff0b31efe9 100644 --- a/korean/ko.TeX/Makefile +++ b/korean/ko.TeX/Makefile @@ -1,77 +1,77 @@ PORTNAME= ko.TeX PORTVERSION= 0.1.1.20080329 PORTREVISION= 5 CATEGORIES= korean print MASTER_SITES= http://ftp.ktug.or.kr/KTUG/ko.TeX/current/ DISTNAME= ko.tex-macro-20080329 MAINTAINER= hyogeollee@gmail.com COMMENT= Korean TeX macro and utilities WWW= http://project.ktug.or.kr/ko.TeX/ RUN_DEPENDS= ${BASE_MAP}:korean/ko.TeX-fonts-base -USES= shebangfix +USES= shebangfix tex SHEBANG_FILES= util/*.pl USE_TEX= latex CONFLICTS= hlatex NO_WRKSUBDIR= yes TEXMF= ${PREFIX}/share/texmf-local BASE_MAP= ${LOCALBASE}/share/texmf-local/fonts/map/dvips/kotex/base/kotex-base.map KOTEX_BIBTEX= ${TEXMF}/bibtex/bst/kotex KOTEX_DOC= ${TEXMF}/doc/latex/kotex KOTEX_LATEX= ${TEXMF}/tex/latex/kotex KOTEX_MKIDX= ${TEXMF}/makeindex/kotex KOTEX_PLAIN= ${TEXMF}/tex/plain/kotex KOTEX_SFD= ${TEXMF}/fonts/sfd KOTEX_UTIL= ${TEXMF}/scripts/kotex/perl TEXHASH= ${PREFIX}/bin/texhash PLIST_SUB+= TEXHASH=${TEXHASH} DOCS= ChangLog INSTALL LICENSE VERSION manifest.txt news-0.1.0.txt \ news-0.1.1.txt OPTIONS_DEFINE= DOCS do-build: @${MKDIR} ${WRKSRC}/build @${CC} ${CFLAGS} -o ${WRKSRC}/build/hbibtex \ ${WRKSRC}/util/hbibtex.c @${CC} ${CFLAGS} -o ${WRKSRC}/build/hmakeindex \ ${WRKSRC}/util/hmakeindex.c @${RM} -r ${WRKSRC}/latex/euc/unfonts @${RM} -r ${WRKSRC}/latex/utf/unfonts do-install: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR} @${MKDIR} ${STAGEDIR}${KOTEX_DOC} (cd ${WRKSRC}/doc && ${COPYTREE_SHARE} . ${STAGEDIR}${KOTEX_DOC}) @${MKDIR} ${STAGEDIR}${KOTEX_BIBTEX} (cd ${WRKSRC}/bibtex && ${COPYTREE_SHARE} . ${STAGEDIR}${KOTEX_BIBTEX}) @${MKDIR} ${STAGEDIR}${KOTEX_LATEX} (cd ${WRKSRC}/latex && ${COPYTREE_SHARE} . ${STAGEDIR}${KOTEX_LATEX}) @${MKDIR} ${STAGEDIR}${KOTEX_MKIDX} (cd ${WRKSRC}/makeindex && ${COPYTREE_SHARE} . ${STAGEDIR}${KOTEX_MKIDX}) @${MKDIR} ${STAGEDIR}${KOTEX_PLAIN} (cd ${WRKSRC}/plain && ${COPYTREE_SHARE} . ${STAGEDIR}${KOTEX_PLAIN}) @${MKDIR} ${STAGEDIR}${KOTEX_SFD} (cd ${WRKSRC}/sfd && ${COPYTREE_SHARE} . ${STAGEDIR}${KOTEX_SFD}) @${MKDIR} ${STAGEDIR}${KOTEX_UTIL} @${INSTALL_SCRIPT} ${WRKSRC}/util/*.pl ${STAGEDIR}${KOTEX_UTIL} @${INSTALL_PROGRAM} ${WRKSRC}/build/* ${STAGEDIR}${PREFIX}/bin @${CHMOD} a+x ${WRKSRC}/util/*.pl @${INSTALL_SCRIPT} ${WRKSRC}/util/*.pl ${STAGEDIR}${PREFIX}/bin .include diff --git a/lang/mlton/Makefile b/lang/mlton/Makefile index cf49b696640c..57a1c21cb16e 100644 --- a/lang/mlton/Makefile +++ b/lang/mlton/Makefile @@ -1,217 +1,218 @@ # Previously maintained by Jesper Louis Andersen # (jesper.louis.andersen@gmail.com) and Geoffrey Mainland # (mainland@apeiron.net) # # Because MLton is written in SML, it needs an SML compiler to build. # It is easiest to use another (earlier) binary version of MLton as # the SML compiler. So, this Makefile fetches and installs an # already-built version of MLton, BOOT_DIST, to use for bootstrapping. PORTNAME= mlton PORTVERSION= 20210816 CATEGORIES= lang MASTER_SITES+= https://github.com/beyert/mlton-freebsd_bootstrap/raw/c7371c1/:bootstrap DISTFILES+= ${BOOTNAME}.i386-${OPSYS:tl}-13.txz:bootstrap \ ${BOOTNAME}.amd64-${OPSYS:tl}-13.txz:bootstrap \ ${BOOTNAME}.i386-${OPSYS:tl}-12.txz:bootstrap \ ${BOOTNAME}.amd64-${OPSYS:tl}-12.txz:bootstrap \ ${BOOTNAME}.i386-${OPSYS:tl}-11.txz:bootstrap \ ${BOOTNAME}.amd64-${OPSYS:tl}-11.txz:bootstrap MAINTAINER= beyert@cs.ucr.edu COMMENT= Optimizing Standard ML compiler WWW= http://mlton.org/ LICENSE= HPND LICENSE_GROUPS= COPYFREE OSI LICENSE_NAME= Historical Permission Notice and Disclaimer LICENSE_FILE= ${WRKSRC}/LICENSE LICENSE_PERMS= ${_LICENSE_PERMS_DEFAULT} ONLY_FOR_ARCHS= amd64 i386 BUILD_DEPENDS= bash:shells/bash LIB_DEPENDS= libgmp.so:math/gmp RUN_DEPENDS= bash:shells/bash USES= compiler:c11 gmake BOOTNAME= ${BOOTNAMEPREFIX}${PORTNAME}${BOOTNAMESUFFIX}-${BOOTVERSIONPREFIX}${BOOTVERSION}${BOOTVERSIONSUFFIX} BOOTVERSIONSUFFIX= BOOTVERSION= ${PORTVERSION} BOOTOSMAJ= ${OSREL:R} OPTIONS_DEFINE= DOCS EXAMPLES OPTIONS_SINGLE= TARGET BOOTSTRAP OPTIONS_SINGLE_TARGET= NATIVE MINGW32 OPTIONS_SINGLE_BOOTSTRAP= MLTON SMLNJ POLYML WINE OPTIONS_DEFAULT= NATIVE MLTON MLTON_DESC= Bootstrap with MLton (ideal if supported) SMLNJ_DESC= Bootstrap with SML/NJ (can take many hours) POLYML_DESC= Bootstrap with PolyML WINE_DESC= Bootstrap MINGW32 with wine NATIVE_DESC= Use default target for given architecture MINGW32_DESC= Add mingw32 Windows target (requires wine) .include .if ${PORT_OPTIONS:MMINGW32} BROKEN+= not yet implemented MINGW32 option in modern versions of ${PORTNAME} .endif BOOT_WRKSRC= ${WRKSRC}/build BOOT_WRKTMP= ${WRKDIR}/mlton-bootstrap .if ! ${PORT_OPTIONS:MMLTON} MAKE_ARGS= DESTDIR='' MLTON_VERSION=${PORTVERSION} \ PATH=${WRKSRC}/build/bin:${WRKDIR}/bin:${PATH} \ PREFIX=${PREFIX} \ WITH_GMP_DIR=${PREFIX} .else MAKE_ARGS= DESTDIR='' MLTON_VERSION=${PORTVERSION} \ PATH=${WRKSRC}/build/bin:${BOOT_WRKSRC}/bin:${PATH} \ PREFIX=${PREFIX} \ SML_LIB=${BOOT_WRKSRC}/lib/sml WITH_GMP_DIR=${PREFIX} \ PREFIX=${PREFIX} LIB=${BOOT_WRKSRC}/lib \ TDOC=${STAGEDIR}${DOCSDIR} \ TEXM=${STAGEDIR}${EXAMPLESDIR} .endif .if ${PORT_OPTIONS:MDOCS} BUILD_DEPENDS+= htmldoc:textproc/htmldoc MAKE_ARGS+= MLTON_BINARY_RELEASE_WITH_DOCS=true -#USE_TEX= latex:build -USE_TEX= latex:formats +USES+= tex +USE_TEX= latex:build +#USE_TEX= latex:formats INSTALL_TARGET= install-docs install ALL_TARGET= install-docs all .else MAKE_ARGS+= MLTON_BINARY_RELEASE_WITH_DOCS=false INSTALL_TARGET= install ALL_TARGET= all .endif .if ${PORT_OPTIONS:MSMLNJ} BUILD_DEPENDS+= smlnj>=110.65:lang/smlnj BOOT_DIST= MAKE_JOBS_UNSAFE= yes MAKE_ENV+= SMLNJ_DEVEL=yes .if ! ${PORT_OPTIONS:MDOCS} ALL_TARGET= smlnj-mlton all .else ALL_TARGET= smlnj-mlton install-docs all .endif .elif ${PORT_OPTIONS:MPOLYML} BUILD_DEPENDS+= polyc:lang/polyml BOOT_DIST= MAKE_JOBS_UNSAFE= yes #CPPFLAGS+= -L/usr/local/lib -lpolyml -lpolymain #LDFLAGS+= -L/usr/local/lib -lpolyml -lpolymain .if ! ${PORT_OPTIONS:MDOCS} ALL_TARGET= polyml-mlton all .else ALL_TARGET= polyml-mlton install-docs all .endif .elif ${PORT_OPTIONS:MNATIVE} BOOT_DIST= ${BOOTNAME}.${ARCH}-${OPSYS:tl}-${BOOTOSMAJ}.txz .else BOOT_DIST= .endif BOOT_DIST_NEW= ${PKGNAME}${DISTVERSIONSUFFIX}.${ARCH}-${OPSYS:tl}-${OSREL:R}-${HOST}${BOOT_SUFX} .if ${PORT_OPTIONS:MMINGW32} && ${PORT_OPTIONS:MWINE} BUILD_DEPENDS+= wine:emulators/wine \ mingw32-gcc:devel/mingw32-gcc \ ${LOCALBASE}/mingw32/lib/libgmp.a:math/mingw32-libgmp RUN_DEPENDS+= mingw32-gcc:devel/mingw32-gcc \ ${LOCALBASE}/mingw32/lib/libgmp.a:math/mingw32-libgmp SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 PLIST_SUB+= MINGW32CROSS="" .else PLIST_SUB+= MINGW32CROSS="@comment " .endif USE_GITHUB= yes GH_ACCOUNT= MLton GH_PROJECT= mlton GH_TAGNAME= b2fca3d BOOT_CMD= --xz BOOT_SUFX= .txz post-extract: @${MKDIR} ${BOOT_WRKSRC} .if ${PORT_OPTIONS:MMLTON} @${TAR} xf ${DISTDIR}/${BOOT_DIST} ${BOOT_CMD} -C ${BOOT_WRKSRC} @${REINPLACE_CMD} \ 's|/usr/local/lib/mlton|${BOOT_WRKSRC}/lib/mlton|g' \ ${BOOT_WRKSRC}/bin/mlton @${REINPLACE_CMD} 's|$$gcc|$$CC|g' ${BOOT_WRKSRC}/bin/mlton .endif @${REINPLACE_CMD} 's/CC := cc/CC := ${CC}/g' ${WRKSRC}/Makefile.config @${REINPLACE_CMD} 's|gcc|${CC}|g' ${WRKSRC}/doc/examples/ffi/Makefile @${REINPLACE_CMD} \ 's|-lpolymain -lpolyml|-L ${PREFIX}/lib -lpolymain -lpolyml|g' \ ${WRKSRC}/mlton/Makefile .if ${PORT_OPTIONS:MDOCS} @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} .endif .if ${ARCH} == "i386" .if ${OSREL:R} == 13 @${REINPLACE_CMD} -e 's/ram-slop 0\.7/ram-slop 0.8/' \ -e 's|COMPILE_XARGS :=|COMPILE_XARGS := -polyvariance false|' \ ${WRKSRC}/mlton/Makefile .else @${REINPLACE_CMD} -e 's/ram-slop 0\.7/ram-slop 0.7/' \ -e 's|COMPILE_XARGS :=|COMPILE_XARGS := -polyvariance false|' \ ${WRKSRC}/mlton/Makefile .endif @${REINPLACE_CMD} -e 's/ram-slop 0\.7/ram-slop 0.8/' \ -e 's|^OLD_MLTON_RUNTIME_ARGS :=|OLD_MLTON_RUNTIME_ARGS := ram-slop 0.8|' \ -e 's|^OLD_MLTON_COMPILE_ARGS :=|OLD_MLTON_COMPILE_ARGS := -polyvariance false|' \ ${WRKSRC}/Makefile.config .endif @${REINPLACE_CMD} 's|gcc|${CC}|g' ${WRKSRC}/mlnlffigen/gen-cppcmd @${REINPLACE_CMD} 's|"cc"|"${CC}"|g' ${WRKSRC}/bin/mlton-script @${FIND} ${WRKDIR} | ${GREP} '\.bak$$' | ${AWK} '{ system("${RM} "$$0); }' post-install: .if ${PORT_OPTIONS:MDOCS} && ${PORT_OPTIONS:MEXAMPLES} ${MV} ${STAGEDIR}${DOCSDIR}/examples/* ${STAGEDIR}${EXAMPLESDIR}/ .elif ${PORT_OPTIONS:MDOCS} ${RM} -r ${STAGEDIR}${DOCSDIR}/examples ${RMDIR} ${STAGEDIR}${EXAMPLESDIR} .elif ${PORT_OPTIONS:MEXAMPLES} # ${MV} ${STAGEDIR}${DOCSDIR}/examples/* ${STAGEDIR}${EXAMPLESDIR}/ # ${RM} -r ${STAGEDIR}${DOCSDIR} BROKEN+= In port ${PORTNAME}, EXAMPLES requires DOCS .endif @${FIND} ${WRKDIR} | ${GREP} '\.bak$$' | ${AWK} '{ system("${RM} "$$0); }' makebootstrap: all @${ECHO_MSG} "====> Making new bootstrap image (${BOOT_DIST_NEW})" # @${FIND} ${WRKDIR} | ${GREP} '\.bak$$' | ${AWK} '{ system("${RM} "$$0); }' @${MKDIR} ${BOOT_WRKTMP} @cd ${STAGEDIR}${PREFIX} && ${CP} -pR lib bin ${BOOT_WRKTMP}/ @${MKDIR} ${BOOT_WRKTMP}/doc && cd ${WRKSRC}/doc && \ ${CP} -pR license README.adoc CHANGELOG.adoc ${BOOT_WRKTMP}/doc/ @cd ${WRKSRC} && ${CP} -pR LICENSE README.adoc CHANGELOG.adoc \ ${BOOT_WRKTMP}/ @cd ${BOOT_WRKTMP} && \ ${TAR} cfp ${BOOT_WRKTMP}/${BOOT_DIST_NEW} ${BOOT_CMD} \ lib bin doc LICENSE README.adoc CHANGELOG.adoc @${ECHO_MSG} "====> Installing new bootstrap image (${BOOT_DIST_NEW})" @${CP} -p ${BOOT_WRKTMP}/${BOOT_DIST_NEW} ${DISTDIR}/ @${ECHO_MSG} "====> Backing up new bootstrap image (${BOOT_DIST_NEW})" @${MV} ${BOOT_WRKTMP}/${BOOT_DIST_NEW} ${MASTERDIR}/ ## @${RMDIR} ${BOOT_WRKTMP} post-build-MINGW32-on: @${ECHO} Adding mingw32 target... ${WRKSRC}/bin/add-local-cross mingw32 x86 mingw .include diff --git a/lang/scheme48/Makefile b/lang/scheme48/Makefile index 1fbfd622fbff..1bfffd22711f 100644 --- a/lang/scheme48/Makefile +++ b/lang/scheme48/Makefile @@ -1,48 +1,46 @@ PORTNAME= scheme48 PORTVERSION= 1.9.2 CATEGORIES= lang scheme MASTER_SITES= http://www.s48.org/${PORTVERSION}/ MAINTAINER= lichray@gmail.com COMMENT= Scheme Underground's implementation of R5RS WWW= https://www.s48.org LICENSE= BSD3CLAUSE MIT LICENSE_COMB= multi CONFLICTS= scsh ALL_TARGET= enough USES= cpe gmake tar:tgz GNU_CONFIGURE= yes CPE_VENDOR= s48 OPTIONS_DEFINE= DOCS -.include +DOCS_USES= tex +DOCS_CONFIGURE_ON= --docdir="${DOCSDIR}" PLIST_SUB+= VER=${PORTVERSION} post-patch: @${REINPLACE_CMD} \ -e 's/-mthreads/-lpthread/' \ -e 's/-mt/-lpthread/' \ -e 's/-munaligned-double//' \ ${WRKSRC}/configure @${REINPLACE_CMD} \ -e '/INSTALL.*COPYING/d' \ ${WRKSRC}/Makefile.in -.if ${PORT_OPTIONS:MDOCS} -USE_TEX= yes -CONFIGURE_ARGS+=--docdir="${DOCSDIR}" -.else + +post-patch-DOCS-off: @${REINPLACE_CMD} \ -e 's/install-doc$$//' \ -e 's/go doc$$/go/' \ ${WRKSRC}/Makefile.in -.endif -test: +do-test: ${MAKE} -C ${WRKSRC} check .include diff --git a/lang/twelf/Makefile b/lang/twelf/Makefile index b04efb9a2ab1..17803086a9ae 100644 --- a/lang/twelf/Makefile +++ b/lang/twelf/Makefile @@ -1,56 +1,56 @@ PORTNAME= twelf PORTVERSION= 1.7.1 PORTREVISION= 4 DISTVERSIONPREFIX= src- CATEGORIES= lang math MASTER_SITES= http://twelf.plparty.org/releases/ \ http://www-2.cs.cmu.edu/~twelf/dist/ http://www.cs.cmu.edu/~twelf/dist/ MAINTAINER= beyert@cs.ucr.edu COMMENT= Meta-logical framework for deductive systems WWW= http://www.cs.cmu.edu/~twelf LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_FreeBSD_12= invalid target: self BROKEN_FreeBSD_13= invalid target: self RUN_DEPENDS= mlton:lang/mlton BUILD_DEPENDS= mlton:lang/mlton \ texi2html:textproc/texi2html OPTIONS_DEFINE= DOCS USES= gmake ALL_TARGET= mlton PLIST_FILES= bin/${PORTNAME}-server PORTDATA= emacs examples examples-clp examples-delphin tex vim README PORTDOCS= dvi html pdf ps WRKSRC= ${WRKDIR}/twelf DOCS_INFO= twelf DOCS_USE= TEX=dvipsk:build,tex:build -DOCS_USES= makeinfo +DOCS_USES= makeinfo tex post-patch-DOCS-on: @${REINPLACE_CMD} 's|-number|-number-sections|g' \ ${WRKSRC}/doc/guide/Makefile @${REINPLACE_CMD} 's|twelf_\*.html|twelf/\*.html|g' \ ${WRKSRC}/doc/guide/Makefile post-build-DOCS-on: cd ${WRKSRC}/doc/guide && ${MAKE} all ${INSTALL_TARGET} do-install: ${INSTALL_PROGRAM} ${WRKSRC}/bin/${PORTNAME}-server \ ${STAGEDIR}${PREFIX}/bin ${MKDIR} ${STAGEDIR}${DATADIR} cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA}" ${STAGEDIR}${DATADIR} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC}/doc && ${COPYTREE_SHARE} "${PORTDOCS}" ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/doc/info/twelf.info* ${STAGEDIR}${PREFIX}/${INFO_PATH} .include diff --git a/lang/yap/Makefile b/lang/yap/Makefile index 33ab77eee6a9..77b44cbc9fca 100644 --- a/lang/yap/Makefile +++ b/lang/yap/Makefile @@ -1,59 +1,60 @@ PORTNAME= yap PORTVERSION= 6.2.2 PORTREVISION= 11 CATEGORIES= lang MASTER_SITES= https://mirrors.dotsrc.org/mirrors/exherbo/ \ http://ftp.lyx.org/pub/minix/distfiles/backup/ \ http://tenampak.izt.uam.mx/programas/ MAINTAINER= eugen@FreeBSD.org COMMENT= High-performance Prolog compiler WWW= http://www.dcc.fc.up.pt/~vsc/Yap/ LICENSE= ART20 LGPL20 LICENSE_COMB= dual LICENSE_FILE_ART20= ${WRKSRC}/Artistic LICENSE_FILE_LGPL20= ${WRKSRC}/COPYING #BROKEN_riscv64= fails to build: procedure chr_translate/2 is undefined, called from context prolog:once/1 LIB_DEPENDS= libgmp.so:math/gmp USES= gmake localbase readline PORTSCOUT= limit:^6\.2\. OPTIONS_DEFINE= DOCS BUILDDOCS BUILDDOCS_DESC= Rebuild documentation (requires TeX) DOCS_DESC= Install documentation +BUILDDOCS_USES= tex BUILDDOCS_USE= TEX=formats:build,dvipsk:build BUILDDOCS_BUILD_DEPENDS=${LOCALBASE}/bin/texi2html:textproc/texi2html \ ${LOCALBASE}/bin/texi2pdf:print/texinfo DOCS_INSTALL_TARGET= install install_docs GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-max-performance \ --disable-myddas DOCSDIR= ${PREFIX}/share/doc/Yap DATADIR= ${PREFIX}/share/Yap DOCS_PACKAGE= yap-doc-${PORTVERSION} post-build-DOCS-off: # prevent the instalation of three docs files ${REINPLACE_CMD} -e '559,562d' ${WRKSRC}/Makefile .include .if ${ARCH:Mpowerpc*} USES+= compiler:gcc-c++11-lib .endif .if ${PORT_OPTIONS:MDOCS} && !${PORT_OPTIONS:MBUILDDOCS} MASTER_SITES+= http://www.grosbein.net/freebsd/distfiles/:docs \ LOCAL/eugen:docs DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DOCS_PACKAGE}${EXTRACT_SUFX}:docs .endif .include diff --git a/math/R/Makefile b/math/R/Makefile index e39f9caf161d..540bc5beae44 100644 --- a/math/R/Makefile +++ b/math/R/Makefile @@ -1,142 +1,143 @@ PORTNAME= R DISTVERSION= 4.2.2 CATEGORIES= math lang MASTER_SITES= CRAN/src/base/R-${PORTVERSION:C|\..*||} MAINTAINER= jrm@FreeBSD.org COMMENT= Language for statistical computing and graphics WWW= https://www.R-project.org/ LICENSE= GPLv2 ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc powerpc64 powerpc64le BUILD_DEPENDS= texi2any:print/texinfo LIB_DEPENDS= libcurl.so:ftp/curl \ libpcre2-8.so:devel/pcre2 # R packages may require GNU make or cmake to build RUN_DEPENDS= cmake:devel/cmake-core \ gmake:devel/gmake # possible TODO # - Use --with-recommended-packages=no by default # - Add an option for recommended packages # - Create ports for each of the recommended packages # - Create a meta-port for the recommended packages USES= compiler:c++11-lang cpe fortran gmake iconv libtool localbase \ pathfix perl5 readline CPE_VENDOR= r-project USE_LDCONFIG= ${PREFIX}/lib/R/lib USE_PERL5= build GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-java \ --enable-R-shlib \ --with-readline \ rdocdir=${DOCSDIR} INSTALL_TARGET= install-strip PLIST_SUB= FULLVER=${DISTVERSION} \ MAJORVER=${_MAJORVER} OPTIONS_DEFINE= ICU INFO LDOUBLE LETTER MEMPROF NLS OPENMP RPROF X11 OPTIONS_DEFAULT= CAIROPANGO GHOSTSCRIPT ICU INFO JPEG LDOUBLE OPENMP PNG \ RBLAS RPROF TCLTK TIFF X11 OPTIONS_GROUP= NEEDX11 OPTIONS_GROUP_NEEDX11= CAIROPANGO GHOSTSCRIPT JPEG PNG TCLTK TEXDOCS TIFF OPTIONS_SINGLE= BLAS OPTIONS_SINGLE_BLAS= ATLAS NETLIB OPENBLAS RBLAS OPTIONS_SUB= YES CAIROPANGO_DESC= Cairo graphics device and Pango multi-language text GHOSTSCRIPT_DESC= Graphics device for bitmap files via Ghostscript JPEG_DESC= JPEG graphics device LDOUBLE_DESC= Long double data type LETTER_DESC= US letter paper MEMPROF_DESC= Memory profiling via Rprofmem() and tracemem() NEEDX11_DESC= Require X11 NETLIB_DESC= Netlib BLAS implementation PNG_DESC= PNG graphics device RBLAS_DESC= Use R-bundled BLAS implementation RPROF_DESC= R profiling via Rprof() TEXDOCS_DESC= Build/Install TeX-dependent documentation files X11_DESC= X11 graphics device ATLAS_USES= blaslapack:atlas ATLAS_CONFIGURE_ON= --disable-BLAS-shlib CAIROPANGO_IMPLIES= X11 CAIROPANGO_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz CAIROPANGO_USES= gettext gnome jpeg pkgconfig CAIROPANGO_USE= GNOME=cairo,pango CAIROPANGO_CONFIGURE_WITH= cairo GHOSTSCRIPT_IMPLIES= X11 GHOSTSCRIPT_USES= ghostscript ICU_LIB_DEPENDS= libicui18n.so:devel/icu ICU_CONFIGURE_WITH= ICU INFO_INSTALL_TARGET= install-info INFO_INFO= R-admin R-data R-exts R-FAQ R-intro R-ints \ R-lang JPEG_IMPLIES= X11 JPEG_USES= jpeg pkgconfig JPEG_CONFIGURE_WITH= jpeglib JPEG_CONFIGURE_ENV= r_cv_header_jpeglib_h=yes LDOUBLE_CONFIGURE_ENABLE= long-double LETTER_CONFIGURE_ENV= R_PAPERSIZE=letter MEMPROF_CONFIGURE_ENABLE= memory-profiling NETLIB_USES= blaslapack:netlib NETLIB_CONFIGURE_ON= --disable-BLAS-shlib NLS_USES= gettext NLS_CONFIGURE_OFF= --disable-nls OPENBLAS_USES= blaslapack:openblas OPENBLAS_CONFIGURE_ON= --disable-BLAS-shlib OPENMP_CONFIGURE_ENABLE= openmp PNG_IMPLIES= X11 PNG_LIB_DEPENDS= libpng.so:graphics/png PNG_CONFIGURE_WITH= libpng RBLAS_CONFIGURE_ON= --enable-BLAS-shlib \ --without-blas \ --without-lapack RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ --with-lapack="${LAPACKLIB}" RBLAS_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-src_extra_blas_Makefile.in \ ${PATCHDIR}/extra-patch-src_modules_lapack_Makefile.in RPROF_CONFIGURE_ENABLE= R-profiling TCLTK_IMPLIES= X11 TCLTK_USES= tcl tk TCLTK_CONFIGURE_WITH= tcltk tcl_config=${TCL_LIBDIR}/tclConfig.sh \ tk_config=${TK_LIBDIR}/tkConfig.sh +TEXDOCS_USES= tex TEXDOCS_USE= TEX=dvipsk:build,kpathsea:build,pdftex:build .for i in KPSEWHICH MAKEINDEX PDFLATEX PDFTEX TEX TEXI2DVI TEXDOCS_CONFIGURE_ENV_OFF+= ac_cv_path_${i}="" .endfor TEXDOCS_INSTALL_TARGET= install-pdf TIFF_IMPLIES= X11 TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff TIFF_CONFIGURE_WITH= libtiff X11_USES= xorg X11_USE= XORG=ice,sm,x11,xext,xmu,xscrnsaver,xt X11_CONFIGURE_WITH= x _MAJORVER= ${DISTVERSION:R:R} .include post-patch: @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" ${WRKSRC}/configure @${REINPLACE_CMD} \ -e "s|%%FULLVER%%|${DISTVERSION}|" \ -e "s|%%MAJORVER%%|${_MAJORVER}|" \ ${WRKSRC}/src/main/Makefile.in \ ${WRKSRC}/src/extra/blas/Makefile.in \ ${WRKSRC}/src/modules/lapack/Makefile.in post-install-RBLAS-on: @${REINPLACE_CMD} -e "s| -lR| -lR -lRblas|" \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/libR.pc post-install-RBLAS-off: @${REINPLACE_CMD} -e "s| -lR| -lR ${BLASLIB}|" \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/libR.pc .include diff --git a/math/adept/Makefile b/math/adept/Makefile index b439014b83b9..3eb980c3bc99 100644 --- a/math/adept/Makefile +++ b/math/adept/Makefile @@ -1,32 +1,33 @@ PORTNAME= adept DISTVERSION= 2.1.1 CATEGORIES= math MASTER_SITES= http://www.met.reading.ac.uk/clouds/adept/ MAINTAINER= yuri@FreeBSD.org COMMENT= Combined array and automatic differentiation library in C++ WWW= https://www.met.reading.ac.uk/clouds/adept/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/COPYING USES= autoreconf gmake fortran blaslapack:openblas libtool GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-static USE_LDCONFIG= yes INSTALL_TARGET= install-strip OPTIONS_DEFINE= PDFTEXDOCS OPTIONS_SUB= yes PDFTEXDOCS_DESC= Build and install PDF documentation from LaTeX sources +PDFTEXDOCS_USES= tex PDFTEXDOCS_USE= TEX=pdftex:build,dvipsk:build post-build-PDFTEXDOCS-on: @cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} post-install-PDFTEXDOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/doc/*.pdf ${STAGEDIR}${DOCSDIR} .include diff --git a/math/asymptote/Makefile b/math/asymptote/Makefile index f8e5ac1f491e..5ab3abfd08b7 100644 --- a/math/asymptote/Makefile +++ b/math/asymptote/Makefile @@ -1,96 +1,96 @@ PORTNAME= asymptote PORTVERSION= 2.81 PORTREVISION= 1 CATEGORIES= math MASTER_SITES= SF/${PORTNAME}/${PORTVERSION} DISTNAME= ${PORTNAME}-${PORTVERSION}.src PATCH_SITES= https://github.com/vectorgraphics/asymptote/commit/ PATCHFILES+= fa28442195bd99b9bac87e3ff752953ac57ee172.patch:-p1 # backport fix for https://github.com/vectorgraphics/asymptote/issues/328 MAINTAINER= nivit@FreeBSD.org COMMENT= Powerful script-based vector graphics language WWW= https://asymptote.sourceforge.io/ LICENSE= GPLv3 LGPL3 LICENSE_COMB= dual ONLY_FOR_ARCHS= amd64 i386 BROKEN_FreeBSD_12_i386= ./base/plain_filldraw.asy: 21.5: runtime: gmake[2]: *** [Makefile:42: makepen.pdf] Floating point exception (core dumped) LIB_DEPENDS= libboost_filesystem.so:devel/boost-libs \ libcurl.so:ftp/curl \ libsigsegv.so:devel/libsigsegv RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cson>=0.8:devel/py-cson@${PY_FLAVOR} \ ${PY_PILLOW} USES= compiler:c++14-lang gettext-runtime ghostscript gl gmake gnome ncurses perl5 python:3.6+ \ - pyqt:5 shebangfix tar:tgz + pyqt:5 shebangfix tar:tgz tex SHEBANG_FILES= GUI/*.py USE_GL= gl glu glut USE_GNOME= librsvg2:run USE_PERL5= build USE_TEX= dvipsk formats USE_PYQT= pyqt5:run CPPFLAGS+= -I${LOCALBASE}/include GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-lsp # disable the module with Boost-related errors MAKE_ENV= ASYMPTOTE_HOME=${WRKDIR} HOME=${WRKDIR} MAKE_JOBS_UNSAFE= yes # see https://github.com/vectorgraphics/asymptote/issues/331 ALL_TARGET= asy asy-keywords.el INSTALL_TARGET= install-asy SUB_FILES= pkg-message WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} OPTIONS_DEFAULT= FFTW GSL MANPAGES READLINE OPTIONS_DEFINE= BDWGC DOCS EXAMPLES FFTW GSL MANPAGES OFFSCREEN READLINE BDWGC_LIB_DEPENDS= libgc-threaded.so:devel/boehm-gc-threaded BDWGC_DESC= Enable Boehm-Demers-Weiser garbage collector BDWGC_CONFIGURE_ENABLE= gc=${LOCALBASE} DOCS_ALL_TARGET= html DOCS_BUILD_DEPENDS= texi2dvi:print/texinfo DOCS_CONFIGURE_WITH= docdir=${DOCSDIR} DOCS_INSTALL_TARGET= install-html FFTW_CONFIGURE_ENABLE= fftw FFTW_DESC= Use FFTW to compute the Discrete Fourier Transform FFTW_LIB_DEPENDS= libfftw3.so:math/fftw3 GSL_CONFIGURE_ENABLE= gsl GSL_DESC= Enable GNU Scientific library GSL_LIB_DEPENDS= libgsl.so:math/gsl MANPAGES_ALL_TARGET= man MANPAGES_BUILD_DEPENDS= texi2dvi:print/texinfo MANPAGES_INFO= asy-faq OFFSCREEN_CONFIGURE_ENABLE= offscreen OFFSCREEN_DESC= Enable offscreen rendering using OSMesa library OFFSCREEN_LIB_DEPENDS= libOSMesa.so:graphics/libosmesa READLINE_CONFIGURE_ENABLE= readline READLINE_USES= readline TEST_TARGET= test TEST_WRKSRC= ${WRKSRC}/tests PORTEXAMPLES= * post-patch: @${REINPLACE_CMD} 's/-lgc/-lgc-threaded/' ${WRKSRC}/configure @${REINPLACE_CMD} 's,makeinfo,${LOCALBASE}/bin/makeinfo,' \ ${WRKSRC}/doc/png/Makefile.in # Fix the python interpreter in the generated file share/asymptote/GUI/xasyVersion.py: @${REINPLACE_CMD} 's,/usr/bin/env python3,${PYTHON_CMD},' ${WRKSRC}/Makefile.in post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/asy .include diff --git a/math/cadabra2/Makefile b/math/cadabra2/Makefile index ecdedc01c3d2..eb842f4ab1e6 100644 --- a/math/cadabra2/Makefile +++ b/math/cadabra2/Makefile @@ -1,56 +1,56 @@ PORTNAME= cadabra2 DISTVERSION= 2.4.2.4 CATEGORIES= math MAINTAINER= yuri@FreeBSD.org COMMENT= Computer algebra system for solving field theory problems WWW= https://cadabra.science/ LICENSE= LGPL3 LICENSE_FILE= ${WRKSRC}/doc/license.txt BUILD_DEPENDS= ${LOCALBASE}/include/websocketpp/client.hpp:devel/websocketpp LIB_DEPENDS= ${PY_BOOST} \ libboost_system.so:devel/boost-libs \ libharfbuzz.so:print/harfbuzz \ libpcrecpp.so:devel/pcre \ libjsoncpp.so:devel/jsoncpp \ libgmp.so:math/gmp \ libuuid.so:misc/e2fsprogs-libuuid RUN_DEPENDS= ${PYTHON_SITELIBDIR}/sympy/__init__.py:math/py-sympy@${PY_FLAVOR} \ ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib@${PY_FLAVOR} -USES= compiler:c++14-lang cmake:noninja dos2unix gettext-runtime gnome localbase:ldflags pkgconfig python:3.7+ sqlite # USES=python picks random python versions +USES= compiler:c++14-lang cmake:noninja dos2unix gettext-runtime gnome localbase:ldflags pkgconfig python:3.7+ sqlite tex # USES=python picks random python versions USE_GITHUB= yes GH_ACCOUNT= kpeeters DOS2UNIX_FILES= cmake/version.cmake USE_GNOME= glib20 glibmm libsigc++20 USE_TEX= base latex texmf texhash OPTIONS_SUB= yes CMAKE_ON= ENABLE_SYSTEM_JSONCPP USE_PYTHON_3 # OFF doesn't work, still links to python3: https://github.com/kpeeters/cadabra2/issues/76 CMAKE_OFF= ENABLE_MATHEMATICA CXXFLAGS+= -I${LOCALBASE}/include/jsoncpp LDFLAGS+= -ljsoncpp PLIST_SUB= _PY_SONAME=${_PY_SONAME} OPTIONS_DEFINE= GUI OPTIONS_DEFAULT= GUI GUI_USES= desktop-file-utils GUI_USE= GNOME=gtkmm30,gdkpixbuf2 GUI_CMAKE_BOOL= ENABLE_FRONTEND .include .if ${PYTHON_REL} < 30800 _PY_SONAME= .cpython-${PYTHON_SUFFIX}m .else _PY_SONAME= ${PYTHON_EXT_SUFFIX} .endif post-extract: # unbundle @${RM} -r ${WRKSRC}/libs/jsoncpp ${WRKSRC}/libs/websocketpp .include diff --git a/math/coq/Makefile b/math/coq/Makefile index eafe58e358bb..b1c97cd9fa45 100644 --- a/math/coq/Makefile +++ b/math/coq/Makefile @@ -1,70 +1,71 @@ PORTNAME= coq PORTVERSION= 8.6 PORTREVISION= 13 PORTEPOCH= 3 CATEGORIES= math MASTER_SITES= http://coq.inria.fr/distrib/V${PORTVERSION}/files/ \ ftp://ftp.stack.nl/pub/users/johans/coq/ PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= hrs@FreeBSD.org COMMENT= Theorem prover based on lambda-C WWW= https://coq.inria.fr/ LICENSE= LGPL21 LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_armv6= fails to compile: Fatal error: exception Invalid_argument("index out of bounds") BROKEN_armv7= fails to compile: Fatal error: exception Invalid_argument("index out of bounds") BUILD_DEPENDS= camlp5:devel/ocaml-camlp5 \ ocamlfind:devel/ocaml-findlib \ ${LOCALBASE}/${OCAML_SITELIBDIR}/num/META:math/ocaml-num LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 RUN_DEPENDS= ${LOCALBASE}/lib/ocaml/stublibs/dllnums.so:math/ocaml-num USES= emacs gettext-runtime gmake gnome USE_GNOME= atk cairo gdkpixbuf2 glib20 gtk20 gtksourceview2 pango USE_LDCONFIG= ${PREFIX}/lib/coq USE_OCAML= yes HAS_CONFIGURE= yes CONFIGURE_ARGS= -prefix ${PREFIX} \ -mandir ${PREFIX}/man \ -emacslib ${PREFIX}/share/emacs/site-lisp/coq \ -usecamlp5 \ -byteonly MAKE_ENV= VERBOSE=1 USERFLAGS=-unsafe-string ALL_TARGET= world CONFLICTS_INSTALL= coq coq-emacs_* # bin/coq-tex bin/coq_makefile bin/coqc bin/coqchk bin/coqdep bin/coqdoc bin/coqide bin/coqmktop bin/coqtop bin/coqtop.byte bin/coqwc bin/coqworkmgr bin/gallina OPTIONS_DEFINE= DOCS IDE OPTIONS_DEFAULT= IDE OPTIONS_SUB= yes IDE_DESC= Include desktop environment (coqide) IDE_BUILD_DEPENDS= lablgtk2:x11-toolkits/ocaml-lablgtk2 IDE_RUN_DEPENDS= lablgtk2:x11-toolkits/ocaml-lablgtk2 IDE_CONFIGURE_OFF= -coqide no +DOCS_USES= tex DOCS_USE= TEX=latex:build,dvipsk:build,texmf:build DOCS_BUILD_DEPENDS= hevea:textproc/hevea DOCS_CONFIGURE_OFF= -with-doc no STRIP_FILES= lib/coq/dllcoqrun.so # Workaround bsd.ocaml.mk to fix packaging add-plist-post: @${DO_NADA} post-patch: @${REINPLACE_CMD} -e '/show_latex_mes/s/)$$/; true)/' \ ${WRKSRC}/Makefile.doc # Allow passing USERFLAGS down to inner make(1) via environment @${REINPLACE_CMD} -e '/User compilation flag/,+1d' \ ${WRKSRC}/configure.ml post-install: cd ${STAGEDIR}${PREFIX} && ${STRIP_CMD} ${STRIP_FILES} .include diff --git a/math/eukleides/Makefile b/math/eukleides/Makefile index ca322d1377e9..436c7a9ddcae 100644 --- a/math/eukleides/Makefile +++ b/math/eukleides/Makefile @@ -1,60 +1,60 @@ PORTNAME= eukleides PORTVERSION= 1.5.4 PORTREVISION= 6 CATEGORIES= math MASTER_SITES= http://www.eukleides.org/files/ MAINTAINER= ashish@FreeBSD.org COMMENT= Euclidean geometry drawing language WWW= http://www.eukleides.org/ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= pstoedit:graphics/pstoedit \ getopt>=0:misc/getopt -USES= bison gettext iconv gmake readline tar:bzip2 +USES= bison gettext iconv gmake readline tar:bzip2 tex USE_TEX= latex INSTALL_TARGET= install PREFIX=${STAGEDIR}${PREFIX} # Fix build with clang11 CFLAGS+= -fcommon PORTDOCS= de.pdf fr.pdf PORTEXAMPLES= greenwich.euk sundial.euk vonkoch.euk OPTIONS_DEFINE= DOCS EXAMPLES DOCS_USES= makeinfo DOCS_USE= TEX=pdftex:build DOCS_INFO= eukleides post-patch: @${GREP} -lR "#!/bin/bash" ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} -e \ 's|#!/bin/bash|#!/bin/sh|g' @${GREP} -lR "ginstall-info" ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} -e \ 's|ginstall-info|install-info|g' @${EGREP} -lR "%%[[:alpha:]]+%%" ${WRKSRC} |${XARGS} ${REINPLACE_CMD} \ -e "s|%%PREFIX%%|${PREFIX}|g" \ -e "s|%%LOCALBASE%%|${LOCALBASE}|g" \ -e "s|%%EXAMPLESDIR%%|\$${PREFIX}/${EXAMPLESDIR_REL}|g" \ -e "s|%%DOCSDIR%%|\$${PREFIX}/${DOCSDIR_REL}|g" \ -e "s|%%CFLAGS%%|${CFLAGS}|g" @${GREP} -lFR "gcc" ${WRKSRC} |${XARGS} ${REINPLACE_CMD} \ -e "s|gcc|${CC}|g" post-patch-DOCS-off: @${REINPLACE_CMD} -e '/^install:/ s/install_doc//g' \ -e '/^all:/ s/doc//g' ${WRKSRC}/Makefile post-patch-EXAMPLES-off: @${REINPLACE_CMD} -e 's/install_exm$$//g' ${WRKSRC}/Makefile pre-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} post-install: @${RM} ${STAGEDIR}${PREFIX}/bin/*.bak* .include diff --git a/math/giacxcas/Makefile b/math/giacxcas/Makefile index 5fabd7622c34..add892ead9d4 100644 --- a/math/giacxcas/Makefile +++ b/math/giacxcas/Makefile @@ -1,154 +1,154 @@ PORTNAME= giacxcas DISTVERSION= 1.9.0-21 PORTREVISION= 1 CATEGORIES= math MASTER_SITES= http://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source/:giac \ http://cocoa.dima.unige.it/cocoalib/tgz/:cocoa \ http://www-fourier.ujf-grenoble.fr/~parisse/giac/freebsd/ DISTFILES= giac_${DISTVERSION}${EXTRACT_SUFX}:giac \ CoCoALib-${COCOA_LIB_VERSION}.tgz:cocoa \ fltk-giac.tar.gz DIST_SUBDIR= ${PORTNAME} MAINTAINER= yuri@FreeBSD.org COMMENT= Computer algebra system WWW= https://www-fourier.ujf-grenoble.fr/~parisse/giac.html LICENSE= GPLv3 DOC LICENSE_COMB= multi LICENSE_NAME_DOC= French documentation LICENSE_TEXT_DOC= French documentation is for non-commercial use only LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING LICENSE_PERMS_DOC= dist-mirror pkg-mirror auto-accept LICENSE_DISTFILES_DOC= giac_${DISTVERSION}${EXTRACT_SUFX} BUILD_DEPENDS= bash:shells/bash LIB_DEPENDS= libao.so:audio/libao \ libcurl.so:ftp/curl \ libfontconfig.so:x11-fonts/fontconfig \ libgsl.so:math/gsl \ libglpk.so:math/glpk \ libgmp.so:math/gmp \ libecm.so:math/gmp-ecm \ libmpfr.so:math/mpfr \ libmpfi.so:math/mpfi \ libpari.so:math/pari \ libpng.so:graphics/png \ libnauty.so:math/nauty \ libcliquer.so:math/cliquer \ libsamplerate.so:audio/libsamplerate RUN_DEPENDS= xdg-open:devel/xdg-utils USES= blaslapack compiler:c++14-lang desktop-file-utils fortran \ gettext gl gmake gnome jpeg libtool localbase ncurses perl5 \ - python readline shebangfix xorg + python readline shebangfix tex xorg GNU_CONFIGURE= yes USE_GL= gl USE_XORG= x11 xcursor xext xft xi xinerama USE_TEX= latex:build dvipsk:build USE_PERL5= run USE_LDCONFIG= yes # Warning: don't remove the USE_GCC without a runtime test *after* make install #USE_GCC= yes CONFIGURE_ENV= ac_cv_lib_X11_main=yes \ ac_cv_lib_cocoa_main=yes \ ac_cv_lib_fltk_gl_main=yes \ ac_cv_lib_fltk_main=yes \ ac_cv_lib_fltk_images_main=yes \ ac_cv_lib_jpeg_main=yes SHEBANG_FILES= src/pgiac micropython-1.12/docs/conf.py INSTALL_TARGET= install-strip COCOA_LIB_VERSION= 0.99700 CPPFLAGS+= -I${COCOALIB-GIAC}/include \ -I${FLTKDEV-GIAC} \ -Wno-narrowing LDFLAGS+= -L${COCOALIB-GIAC}/lib \ -L${FLTKDEV-GIAC}/lib WRKSRC= ${WRKDIR}/giac-${DISTVERSION:C/-[0-9]*//} FLTKDEV-GIAC= ${WRKDIR}/fltk-1.3.0 COCOALIB-GIAC= ${WRKDIR}/CoCoALib-${COCOA_LIB_VERSION} TEST_TARGET= check DATADIR= ${PREFIX}/share/giac DOCSDIR= ${PREFIX}/share/doc/giac EXAMPLESDIR= ${PREFIX}/share/examples/giac INFO= giac_es giac_us OPTIONS_DEFINE= DOCS EXAMPLES #NB: built of giacxcas with USE_GCC and nlt is successfull if the ntl port is also # installed with USE_GCC CONFIGURE_ARGS+= --disable-ntl CONFIGURE_ARGS+= --disable-micropy # it causes SEGV in xcas in the nlr_push call from execute_from_lexer@main.c PORTDOCS= * PORTEXAMPLES= * post-extract: @${FIND} ${WRKSRC}/examples/Exemples -name "._*" -delete post-patch: @${GREP} -Rl --null /bin/bash ${COCOALIB-GIAC} | ${XARGS} -0 \ ${REINPLACE_CMD} -e 's|/bin/bash|/usr/bin/env bash|' @${REINPLACE_CMD} -e '/^SUBDIR/s|examples||' \ ${WRKSRC}/Makefile.in @${REINPLACE_CMD} -e 's|/usr/bin|${LOCALBASE}/bin|' \ ${WRKSRC}/xcas.applications @${REINPLACE_CMD} -e 's|cp -f \*|$$(INSTALL_DATA) WARNINGS [a-z]*|' \ ${WRKSRC}/doc/el/*/Makefile.in @${REINPLACE_CMD} -e '/browser=/s|"mozilla"|"xdg-open"|' \ ${WRKSRC}/src/global.cc @${FIND} ${WRKSRC} -name "Makefile.in" | ${XARGS} \ ${REINPLACE_CMD} -e 's|$$(prefix)/share/giac/doc|$$(docdir)|' @${FIND} ${COCOALIB-GIAC} -name "Makefile" | ${XARGS} \ ${REINPLACE_CMD} -e \ 's|\($$(MAKE) \)-s |\1|; s|\([[:blank:]]\)@|\1|' @${REINPLACE_CMD} -e '/.SILENT:/s|^|#|' \ ${FLTKDEV-GIAC}/makeinclude.in ${SED} -i ".orig" -Ee 's|char \*last = style \+ strlen\(style\) - 2|char *last = pretty|' \ -Ee 's|\*style = 0|last = style + strnlen(style, ENDOFBUFFER) - 2; *style = 0|' \ ${FLTKDEV-GIAC}/src/fl_set_fonts_xft.cxx pre-configure: ${REINPLACE_CMD} -e 's|/usr/lib /usr/lib64 /usr/lib32 /usr/local /opt/local/lib /sw/lib /usr/sfw/lib|${LOCALBASE}/lib|' \ -e '/libgmp.a/s|find|#find|' \ -e 's|-name libgmp.so|-type f -name "libgmp.so.*"|' \ ${COCOALIB-GIAC}/configuration/gmp-find.sh ${REINPLACE_CMD} -e 's|^protected:|public:|' ${FLTKDEV-GIAC}/FL/Fl_Widget.H .for f in icas.cc path.h ${REINPLACE_CMD} -e 's|/usr/local/share/giac/doc|${DOCSDIR}|' \ ${WRKSRC}/src/${f} .endfor ${FIND} ${WRKSRC}/doc -type f | ${XARGS} ${GREP} -l 'share/giac/doc' | \ ${XARGS} ${REINPLACE_CMD} -e 's|/usr/local/share/giac/doc|${DOCSDIR}|' ${FIND} ${WRKSRC}/micropython-1.12 -type f | ${XARGS} \ ${GREP} -l "/usr/bin/env python3" | ${XARGS} \ ${REINPLACE_CMD} -e 's|/usr/bin/env python3|${PYTHON_CMD}|' ${FIND} ${WRKSRC}/micropython-1.12 -type f | ${XARGS} \ ${GREP} -l "python3 \|'python3'\|= python3\|^python3" | ${XARGS} \ ${REINPLACE_CMD} -e "s|python3 |${PYTHON_CMD} |;s|'python3'|'${PYTHON_CMD}'|" \ -e "s|= python3|= ${PYTHON_CMD}|;s|^python3|${PYTHON_CMD}|" @(cd ${COCOALIB-GIAC} && ${SETENV} ${CONFIGURE_ENV} ./configure \ --with-cxx="${CXX}") @(cd ${FLTKDEV-GIAC} && ${SETENV} ${CONFIGURE_ENV} ./configure \ --prefix=${FLTKDEV-GIAC} \ CXX="${CXX}" CXXFLAGS="${CXXFLAGS}") post-configure: # malloc.h on 13-CURRENT is missing mallinfo and compilation fails after it is discovered @${FIND} ${WRKSRC} -name config.h | ${XARGS} ${REINPLACE_CMD} -e 's|#define HAVE_MALLOC_H 1|/* #undef HAVE_MALLOC_H */|' pre-build: @cd ${COCOALIB-GIAC} && ${DO_MAKE_BUILD} \ CXXFLAGS_SPECIFIC="${CXXFLAGS}" library @cd ${FLTKDEV-GIAC}/src && ${DO_MAKE_BUILD} post-install-EXAMPLES-on: cd ${WRKSRC}/examples && ${COPYTREE_SHARE} "Exemples [a-z]*" \ ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/math/gnuplot-tex-extras/Makefile b/math/gnuplot-tex-extras/Makefile index b221e553bdf8..75221d69d81b 100644 --- a/math/gnuplot-tex-extras/Makefile +++ b/math/gnuplot-tex-extras/Makefile @@ -1,30 +1,30 @@ PORTNAME= gnuplot PORTVERSION= 5.2.8 CATEGORIES= math graphics MASTER_SITES= SF PKGNAMESUFFIX= -tex-extras MAINTAINER= glewis@FreeBSD.org COMMENT= Extra files for Gnuplot TeX support WWW= http://www.gnuplot.info/ RUN_DEPENDS= gnuplot:math/gnuplot -USES= cpe +USES= cpe tex USE_TEX= texmf NO_BUILD= yes PLIST_FILES= ${TEX_FILES:S,^,${TEX_DIR}/,} TEX_DIR= ${LOCALBASE}/${TEXMFDIR}/tex/latex/gnuplot TEX_FILES= gnuplot-lua-tikz.sty \ gnuplot-lua-tikz-common.tex \ gnuplot-lua-tikz.tex \ t-gnuplot-lua-tikz.tex \ gnuplot.cfg do-install: @${MKDIR} ${STAGEDIR}${TEX_DIR} cd ${WRKSRC}/share/LaTeX && ${INSTALL_DATA} ${TEX_FILES} \ ${STAGEDIR}${TEX_DIR} .include diff --git a/math/gnuplot/Makefile b/math/gnuplot/Makefile index a035787eebd9..b2f891a26300 100644 --- a/math/gnuplot/Makefile +++ b/math/gnuplot/Makefile @@ -1,110 +1,110 @@ PORTNAME= gnuplot PORTVERSION= 5.4.1 PORTREVISION= 1 CATEGORIES= math graphics MASTER_SITES= SF MAINTAINER= glewis@FreeBSD.org COMMENT?= Command-line driven graphing utility WWW= http://www.gnuplot.info/ LICENSE= Gnuplot LICENSE_NAME= Gnuplot license LICENSE_FILE= ${WRKSRC}/Copyright LICENSE_PERMS= dist-mirror pkg-mirror auto-accept CONFLICTS_INSTALL?= gnuplot-lite USES+= compiler:c++11-lang cpe groff iconv pkgconfig readline CPE_VENDOR= gnuplot_project GNU_CONFIGURE= yes LDFLAGS+= -L${LOCALBASE}/lib ${ICONV_LIB} CONFIGURE_ARGS+=--with-readline=gnu \ --without-linux-vga \ --without-lisp-files \ --without-tutorial \ --with-bitmap-terminals \ --with-qt=no .if defined(LITE) CONFIGURE_ARGS+=--disable-x11-mbfonts \ --disable-x11-external \ --disable-wxwidgets \ --without-x \ --without-ggi \ --without-gd \ --without-caca \ --without-wx \ --without-gpic \ --without-mif \ --without-cairo \ --without-lua \ --without-latex \ --without-kpsexpand PLIST_SUB+= X11="@comment " .else -USES+= gnome jpeg lua:53 ncurses xorg +USES+= gnome jpeg lua:53 ncurses tex xorg USE_TEX= kpathsea USE_GNOME+= atk cairo gtk30 gdkpixbuf2 USE_WX= 3.0+ USE_XORG+= x11 LIB_DEPENDS+= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libgd.so:graphics/gd \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libtiff.so:graphics/tiff CONFIGURE_ARGS+=--with-gd=${LOCALBASE} \ --with-gpic \ --with-mif \ --with-kpsexpand \ --with-latex \ ac_cv_prog_KPSEXPAND=${LOCALBASE}/bin/kpsexpand \ ac_cv_prog_PLAINTEX=${LOCALBASE}/bin/tex \ ac_cv_prog_LATEX=${LOCALBASE}/bin/latex \ ac_cv_prog_PDFLATEX=${LOCALBASE}/bin/pdflatex PLIST_SUB+= X11="" .endif TEST_TARGET= check PORTDOCS= * PORTEXAMPLES= * OPTIONS_DEFINE= DOCS EXAMPLES GRIDBOX GRIDBOX_DESC= Use the gridbox optimization for hidden3d GRIDBOX_CONFIGURE_OFF= --disable-h3d-quadtree --enable-h3d-gridbox post-patch: @${REINPLACE_CMD} -e \ '/^install:/s/install-am//' ${WRKSRC}/share/LaTeX/Makefile.in @${REINPLACE_CMD} -e \ 's|)/@PACKAGE@/@PKG_MAJOR@|)|g' ${WRKSRC}/src/Makefile.in @${REINPLACE_CMD} -e \ 's|luaL_checkint(|(int)luaL_checkinteger(|' ${WRKSRC}/term/lua.trm post-build-DOCS-on: @cd ${WRKSRC}/docs && ${MAKE} groff pre-install: ${MKDIR} ${STAGEDIR}${DATADIR}/5.4 ; \ ${INSTALL_DATA} ${WRKSRC}/share/gnuplotrc \ ${STAGEDIR}${DATADIR}/5.4/gnuplotrc.sample post-install: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} cd ${WRKSRC}/demo && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR}/psdoc cd ${WRKSRC}/docs && ${INSTALL_DATA} gnuplot.txt gnuplot.dvi \ gnuplot.ps ${STAGEDIR}${DOCSDIR} cd ${WRKSRC}/docs/psdoc && ${INSTALL_DATA} README ps_* ${STAGEDIR}${DOCSDIR}/psdoc .if defined(LITE) post-stage: @cd ${STAGEDIR}${PREFIX} && ${RMDIR} libexec/gnuplot/5.4 libexec/gnuplot .endif .include diff --git a/math/gretl/Makefile b/math/gretl/Makefile index da57208c3464..83b21010d7ec 100644 --- a/math/gretl/Makefile +++ b/math/gretl/Makefile @@ -1,110 +1,111 @@ PORTNAME= gretl PORTVERSION= 2022b CATEGORIES= math finance MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTVERSIONFULL}/ MAINTAINER= yuri@FreeBSD.org COMMENT= GNU Regression, Econometrics, and Time-series Library WWW= http://gretl.sourceforge.net/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libcurl.so:ftp/curl \ libfftw3.so:math/fftw3 \ libgmp.so:math/gmp \ libharfbuzz.so:print/harfbuzz \ libjson-glib-1.0.so:devel/json-glib \ libmpfr.so:math/mpfr USES= compiler:c11 fortran gmake gnome localbase libtool ncurses \ pathfix pkgconfig readline tar:xz GNU_CONFIGURE= yes USE_LDCONFIG= yes BINARY_ALIAS= make=${GMAKE} ALL_TARGET= # empty SSP_CFLAGS?= -fstack-protector # XXX -strong crashes mklang on 12.0+ i386 CONFIGURE_ENV= ac_cv_lib_dl_dlopen="" \ LAPACK_LIBS="${LAPACK} ${BLAS}" PLIST_SUB= GTK_VER=${GTK_VER} OPTIONS_DEFINE= ADDONS ATLAS GUI MPI NLS ODBC OPENMP R UNZIP OPTIONS_DEFAULT= ADDONS GUI OPENMP UNZIP OPTIONS_SUB= yes ADDONS_DESC= Build gretl addons ADDONS_CONFIGURE_ENABLE= build-addons -ADDONS_VARS= USE_TEX="formats dvipsk:build" +ADDONS_USES= tex +ADDONS_USE= TEX=formats,dvipsk:build ATLAS_DESC= Use ATLAS for BLAS and LAPACK ATLAS_LIB_DEPENDS= libatlas.so:math/atlas ATLAS_LIB_DEPENDS_OFF= libblas.so:math/blas \ liblapack.so:math/lapack ATLAS_VARS= BLAS=-lf77blas LAPACK="-lalapack -lcblas" ATLAS_VARS_OFF= BLAS=-lblas LAPACK=-llapack GUI_DESC= Graphical user interface and plugins GUI_CONFIGURE_ON= --enable-gui=yes GUI_CONFIGURE_OFF= --enable-gui=no --enable-xdg=no GUI_USE= GNOME=cairo,gtksourceview3,gdkpixbuf2 GUI_USE_OFF= GNOME=glib20,libxml2 GUI_VARS= GTK_VER=3 GUI_VARS_OFF= GTK_VER=2 GUI_USES= desktop-file-utils shared-mime-info GUI_BUILD_DEPENDS= gnuplot:math/gnuplot GUI_LIB_DEPENDS= libfreetype.so:print/freetype2 \ libfontconfig.so:x11-fonts/fontconfig GUI_RUN_DEPENDS= gnuplot:math/gnuplot MPI_CONFIGURE_WITH= mpi MPI_CONFIGURE_ENV= MPICC=${LOCALBASE}/bin/mpicc MPI_CONFIGURE_ON= --with-mpi-include=${LOCALBASE}/include/mpi.h --with-mpi-lib=${LOCALBASE}/lib/libmpi.so MPI_LIB_DEPENDS= libmpi.so:net/mpich MPI_BROKEN= checking mpi.h usability... no # need to investigate NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext ODBC_CONFIGURE_WITH= odbc ODBC_LIB_DEPENDS= libodbc.so:databases/unixODBC OPENMP_CONFIGURE_ENABLE= openmp OPENMP_USE= GCC=yes R_DESC= libR support R_CONFIGURE_WITH= libR R_BROKEN= Doesn't link to R libraries UNZIP_DESC= UnZip compression support via libgsf UNZIP_CONFIGURE_WITH= gsf UNZIP_USE= GNOME=libgsf .if !empty(MACHINE_CPU:Msse2) CONFIGURE_ARGS+= --enable-sse2=yes .else CONFIGURE_ARGS+= --enable-sse2=no .endif post-patch: @${SED} -i '.orig' -E -e '/#include[[:blank:]]+/\ {x; s/.*/#include /; H; x;}' \ ${WRKSRC}/configure \ ${WRKSRC}/plugin/mailer.c regression-test test check: build @cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ ${MAKE_ARGS} check post-install: # strip @${STRIP_CMD} \ ${STAGEDIR}${PREFIX}/bin/gretlcli \ ${STAGEDIR}${PREFIX}/bin/gretl_x11 \ ${STAGEDIR}${PREFIX}/lib/libgretl-1.0.so.* \ ${STAGEDIR}${PREFIX}/lib/gretl-gtk3/*.so # rm doc @${RMDIR} ${STAGEDIR}${DATADIR}/doc .include diff --git a/math/gri/Makefile b/math/gri/Makefile index c64642d026f8..fb237127cf8f 100644 --- a/math/gri/Makefile +++ b/math/gri/Makefile @@ -1,73 +1,73 @@ PORTNAME= gri PORTVERSION= 2.12.23 PORTREVISION= 11 CATEGORIES= math MASTER_SITES= SF LICENSE= GPLv2 MAINTAINER= ports@FreeBSD.org COMMENT= Extensible plotting language for producing scientific graphs WWW= http://gri.sourceforge.net/ LIB_DEPENDS= libnetcdf.so:science/netcdf -USES= cpe gmake readline shebangfix makeinfo +USES= cpe gmake readline shebangfix makeinfo tex SHEBANG_FILES= doc/examples/FEM.pl src/gri_merge src/gri_unpage GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-FreeBSD CPE_VENDOR= gri_project CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib INFO= gri USE_TEX= formats:build dvipsk:build PORTDOCS= * PORTEXAMPLES= * OPTIONS_DEFINE= DOCS EXAMPLES .include .if ${PORT_OPTIONS:MDOCS} || ${PORT_OPTIONS:MEXAMPLES} USES+= magick:6,build .endif post-patch: @${REINPLACE_CMD} -e \ '/^SUBDIRS/s|doc||' ${WRKSRC}/Makefile.in @${REINPLACE_CMD} -e \ '/gzip/s|^|#| ; \ /EXAMPLES_DIR/s|^|#|' ${WRKSRC}/doc/Makefile.in post-build: .if ${PORT_OPTIONS:MDOCS} || ${PORT_OPTIONS:MEXAMPLES} (cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} \ ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET}) .else (cd ${WRKSRC}/doc && makeinfo gri.texi) .endif post-install: .if ${PORT_OPTIONS:MDOCS} (cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} \ ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}) .else ${INSTALL_MAN} ${WRKSRC}/doc/gri-manpage.1 \ ${STAGEDIR}${MANPREFIX}/man/man1/gri.1 ${INSTALL_MAN} ${WRKSRC}/doc/gri_merge.1-skel \ ${STAGEDIR}${MANPREFIX}/man/man1/gri_merge.1 ${INSTALL_MAN} ${WRKSRC}/doc/gri_unpage.1-skel \ ${STAGEDIR}${MANPREFIX}/man/man1/gri_unpage.1 ${INSTALL_DATA} ${WRKSRC}/doc/gri.info* ${STAGEDIR}${PREFIX}/${INFO_PATH} .endif .if ${PORT_OPTIONS:MEXAMPLES} @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} (cd ${WRKSRC}/doc/examples && ${INSTALL_DATA} model* *.dat *.gri e*.ps \ ${STAGEDIR}${EXAMPLESDIR}) (cd ${WRKSRC}/doc/examples \ && ${INSTALL_SCRIPT} FEM.pl ${STAGEDIR}${EXAMPLESDIR}) .endif .include diff --git a/math/octave/Makefile b/math/octave/Makefile index bad1d23b6d77..7b5ea199e7fa 100644 --- a/math/octave/Makefile +++ b/math/octave/Makefile @@ -1,140 +1,141 @@ PORTNAME= octave PORTVERSION= ${OCTAVE_VERSION} PORTREVISION= 1 CATEGORIES= math MASTER_SITES= GNU MAINTAINER= stephen@FreeBSD.org COMMENT= High-level interactive language for numerical computations WWW= https://www.octave.org/ LICENSE= GPLv3 BUILD_DEPENDS= gnuplot:math/gnuplot \ ${LOCALBASE}/bin/gperf:devel/gperf \ gsed:textproc/gsed \ ${LOCALBASE}/bin/makeinfo:print/texinfo RUN_DEPENDS= gnuplot:math/gnuplot \ gsed:textproc/gsed \ ${LOCALBASE}/bin/makeinfo:print/texinfo LIB_DEPENDS= libGraphicsMagick.so:graphics/GraphicsMagick \ libarpack.so:math/arpack-ng \ libcurl.so:ftp/curl \ libfftw3.so:math/fftw3 \ libfftw3f.so:math/fftw3-float \ libfltk.so:x11-toolkits/fltk \ libftgl.so:graphics/ftgl \ libhdf5.so:science/hdf5 \ libpcre.so:devel/pcre \ libqhull_r.so:math/qhull \ libqrupdate.so:math/qrupdate \ libamd.so:math/suitesparse-amd \ libcamd.so:math/suitesparse-camd \ libccolamd.so:math/suitesparse-ccolamd \ libcholmod.so:math/suitesparse-cholmod \ libcolamd.so:math/suitesparse-colamd \ libsuitesparseconfig.so:math/suitesparse-config \ libcxsparse.so:math/suitesparse-cxsparse \ libklu.so:math/suitesparse-klu \ libspqr.so:math/suitesparse-spqr \ libumfpack.so:math/suitesparse-umfpack \ libglpk.so:math/glpk \ libgl2ps.so:print/gl2ps \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libdrm.so:graphics/libdrm \ libOSMesa.so:graphics/libosmesa \ libsundials_arkode.so:math/sundials \ libportaudio.so:audio/portaudio USES= charsetfix fortran gmake libtool perl5 pkgconfig readline \ tar:xz compiler:c++14-lang \ desktop-file-utils gl iconv ncurses xorg USE_LDCONFIG= ${PREFIX}/lib/${PORTNAME}/${PORTVERSION} USE_PERL5= build GNU_CONFIGURE= yes USE_QT= core gui help network opengl \ qmake:build buildtools:build linguist:build \ printsupport sql widgets \ xml USE_XORG= x11 xext xfixes xft \ xcursor xinerama xrender USE_GL= gl glu OCTAVE_VERSION= ${PORTVERSION} GNU_HOST= ${ARCH}-portbld-freebsd${OSREL} PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION} GNU_HOST=${GNU_HOST} CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib -L${LOCALBASE}/lib/qt5 CONFIGURE_ENV= GPERF="${LOCALBASE}/bin/gperf" \ JAVA_HOME=${JAVA_HOME} \ MAKEINFO=${LOCALBASE}/bin/makeinfo \ MKINFO=${LOCALBASE}/bin/makeinfo \ MOC_QTVER=${MOC} \ UIC_QTVER=${UIC} \ RCC_QTVER=${RCC} \ LRELEASE_QTVER=${LRELEASE} \ QCOLLECTIONGENERATOR_QTVER=${QCOLLECTIONGENERATOR} \ QHELPGENERATOR_QTVER=${QHELPGENERATOR} \ ac_cv_type_max_align_t=yes \ ac_cv_path_SED=${LOCALBASE}/bin/gsed CONFIGURE_ARGS= --host=${GNU_HOST} \ --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ --with-lapack="${LAPACKLIB}" \ --enable-shared \ --disable-jit \ --disable-openmp \ --with-osmesa INFO= octave liboctave INSTALL_TARGET= install-strip TEST_TARGET= check OPTIONS_DEFINE= DOCS JAVA QT5 OPTIONS_RADIO= BLAS OPTIONS_RADIO_BLAS= OPENBLAS NETLIB ATLAS OPTIONS_DEFAULT= JAVA OPENBLAS QT5 OPTIONS_SUB= yes DOCS_CONFIGURE_ENABLE= docs JAVA_CONFIGURE_ENABLE= java QT5_CONFIGURE_WITH= qt=5 qscintilla QT5_LIB_DEPENDS= libqscintilla2_qt5.so:devel/qscintilla2-qt5 +DOCS_USES= tex DOCS_USE= TEX=dvipsk:build,formats:build JAVA_USE= JAVA=yes JAVA_CFLAGS= -I${JAVA_HOME}/include/${OPSYS:tl} QT5_USES= qt:5 OPENBLAS_USES= blaslapack:openblas NETLIB_USES= blaslapack:netlib ATLAS_USES= blaslapack:atlas pre-configure: ${REINPLACE_CMD} 's+"makeinfo"+"${LOCALBASE}/bin/makeinfo"+' ${WRKSRC}/libinterp/corefcn/help.cc ${REINPLACE_CMD} 's/"-qt=$$qt_version"/"-qt=qt$$qt_version"/' ${WRKSRC}/configure #post-install: # (cd ${STAGEDIR}${DATADIR} && ${LN} -s ${PORTVERSION}/imagelib .) # ${RM} -r ${STAGEDIR}${DATADIR}/${PORTVERSION}/etc/tests/fixed/${WRKDIR:C+/++:C+/.*++} post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} .for file in liboctave/liboctave.ps \ refcard/refcard-a4.ps refcard/refcard-legal.ps \ refcard/refcard-letter.ps interpreter/octave.ps ${INSTALL_DATA} ${WRKSRC}/doc/${file} ${STAGEDIR}${DOCSDIR} .endfor @${MKDIR} ${STAGEDIR}${PREFIX}/${INFO_PATH} .for file in interpreter/octave.info liboctave/liboctave.info ${INSTALL_DATA} ${WRKSRC}/doc/${file} ${STAGEDIR}${PREFIX}/${INFO_PATH} .endfor check regression-test: build @(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} check) .include "Makefile.version" .include diff --git a/math/py-plastex/Makefile b/math/py-plastex/Makefile index 148c6bc6804c..86bb20db5cf4 100644 --- a/math/py-plastex/Makefile +++ b/math/py-plastex/Makefile @@ -1,22 +1,22 @@ PORTNAME= plastex PORTVERSION= 2.1 CATEGORIES= math python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTNAME= plasTeX-${PORTVERSION} MAINTAINER= sunpoet@FreeBSD.org COMMENT= LaTeX Document Processing Framework WWW= https://github.com/plastex/plastex LICENSE= MIT RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pillow>=0:graphics/py-pillow@${PY_FLAVOR} -USES= python:3.5+ +USES= python:3.5+ tex USE_PYTHON= autoplist concurrent distutils USE_TEX= base:run NO_ARCH= yes .include diff --git a/math/sage/Makefile b/math/sage/Makefile index 8629b9e8ff76..36e806de3dd8 100644 --- a/math/sage/Makefile +++ b/math/sage/Makefile @@ -1,577 +1,577 @@ PORTNAME= sage PORTVERSION= 9.2 PORTREVISION= 34 CATEGORIES= math MASTER_SITES= https://mirrors.xmission.com/sage/src/ \ http://mirrors.xmission.com/sage/src/ \ https://www-ftp.lip6.fr/pub/math/sagemath/src/ \ https://mirrors.mit.edu/sage/src/ \ https://files.sagemath.org/src/ \ ftp://www-ftp.lip6.fr/pub/math/sagemath/src/ #MASTER_SITES= ftp://www-ftp.lip6.fr/pub/math/sagemath/devel/ PKGNAMESUFFIX= -math MAINTAINER= thierry@FreeBSD.org COMMENT= Open source Mathematics software WWW= https://www.sagemath.org/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING.txt BROKEN= hoping to fix it with Python-3.9 BUILD_DEPENDS= bash:shells/bash \ dash:shells/dash \ cmake:devel/cmake-core \ dreadnaut:math/nauty \ ${PYTHON_PKGNAMEPREFIX}alabaster>0:textproc/py-alabaster@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}attrs>0:devel/py-attrs@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}backcall>0:devel/py-backcall@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}bleach>0:www/py-bleach@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}brial>0:math/py-brial@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}certifi>0:security/py-certifi@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cffi>0:devel/py-cffi@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cvxopt>0:math/py-cvxopt@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cycler>0:devel/py-cycler@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cypari2>0:math/py-cypari2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cysignals>0:devel/py-cysignals@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cython>0:lang/cython@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}dateutil>0:devel/py-dateutil@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}decorator>0:devel/py-decorator@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}defusedxml>0:devel/py-defusedxml@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}docutils>0:textproc/py-docutils@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}entrypoints>0:devel/py-entrypoints@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}fpylll>0:math/py-fpylll@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}gmpy2>0:math/py-gmpy2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}imagesize>0:graphics/py-imagesize@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}importlib-metadata>0:devel/py-importlib-metadata@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipykernel>0:devel/py-ipykernel@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipython>0:devel/ipython@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipython_genutils>0:devel/py-ipython_genutils@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipywidgets>0:devel/py-ipywidgets@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}itsdangerous>0:security/py-itsdangerous@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}Jinja2>0i:devel/py-Jinja2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jedi>0:devel/py-jedi@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jupyter-core>0:devel/py-jupyter-core@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jupyter-client>0:devel/py-jupyter-client@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}kiwisolver>0:math/py-kiwisolver@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}markupsafe>0:textproc/py-markupsafe@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}matplotlib>0:math/py-matplotlib@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}mistune>0:textproc/py-mistune@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}mpmath>0:math/py-mpmath@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}nbconvert>0:devel/py-nbconvert@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}nbformat>0:devel/py-nbformat@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}networkx>0:math/py-networkx@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}nose>0:devel/py-nose@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}notebook>0:www/py-notebook@${PY_FLAVOR}\ ${PYNUMPY} \ ${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pandocfilters>0:textproc/py-pandocfilters@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}parso>0:textproc/py-parso@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}path.py>0:devel/py-path.py@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pexpect>0:misc/py-pexpect@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pickleshare>0:databases/py-pickleshare@${PY_FLAVOR}\ ${PY_PILLOW} \ ${PYTHON_PKGNAMEPREFIX}pkgconfig>0:devel/py-pkgconfig@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pplpy>0:math/py-pplpy@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}prometheus-client>0:net-mgmt/py-prometheus-client@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}prompt-toolkit>0:devel/py-prompt-toolkit@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}psutil>0:sysutils/py-psutil@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ptyprocess>0:sysutils/py-ptyprocess@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pybind11>0:devel/py-pybind11@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pycparser>0:devel/py-pycparser@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pyparsing>0:devel/py-pyparsing@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pyrsistent>0:devel/py-pyrsistent@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pyzmq>0:net/py-pyzmq@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}rpy2>0:math/py-rpy2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}scandir>0:sysutils/py-scandir@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}send2trash>0:deskutils/py-send2trash@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}simplegeneric>0:devel/py-simplegeneric@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}snowballstemmer>0:textproc/py-snowballstemmer@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinx>0:textproc/py-sphinx@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-applehelp>0:textproc/py-sphinxcontrib-applehelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-devhelp>0:textproc/py-sphinxcontrib-devhelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-htmlhelp>0:textproc/py-sphinxcontrib-htmlhelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-jsmath>0:textproc/py-sphinxcontrib-jsmath@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-qthelp>0:textproc/py-sphinxcontrib-qthelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-serializinghtml>0:textproc/py-sphinxcontrib-serializinghtml@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-websupport>0:textproc/py-sphinxcontrib-websupport@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sympy>0:math/py-sympy@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}terminado>0:net/py-terminado@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}testpath>0:devel/py-testpath@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}traitlets>0:devel/py-traitlets@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}tornado>0:www/py-tornado@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}traitlets>0:devel/py-traitlets@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}tzlocal>0:devel/py-tzlocal@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}vcversioner>0:devel/py-vcversioner@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}wcwidth>0:devel/py-wcwidth@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}webencodings>0:converters/py-webencodings@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}widgetsnbextension>0:devel/py-widgetsnbextension@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}zipp>0:devel/py-zipp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}zope.interface>0:devel/py-zope.interface@${PY_FLAVOR}\ fflas-ffpack-config:math/fflas-ffpack \ fricas>0:math/fricas \ gfan:math/gfan \ git:devel/git \ gp2c:math/gp2c \ jmol:science/jmol \ libatomic_ops>0:devel/libatomic_ops \ MathJax>0:www/mathjax \ maxima>0:math/maxima \ p5-XML-Writer>0:textproc/p5-XML-Writer \ p5-XML-LibXML>0:textproc/p5-XML-LibXML \ p5-XML-LibXSLT>0:textproc/p5-XML-LibXSLT\ p5-File-Slurp>0:devel/p5-File-Slurp \ p5-JSON>0:converters/p5-JSON \ p5-SVG>0:textproc/p5-SVG \ p5-MongoDB>0:databases/p5-MongoDB \ p5-Term-ReadLine-Gnu>0:devel/p5-Term-ReadLine-Gnu\ palp>0:math/palp \ pandoc:textproc/hs-pandoc \ pari-elldata>0:math/pari_elldata\ pari-galdata>0:math/pari_galdata\ pari-galpol>0:math/pari_galpol \ pari-nftables>0:math/pari_nftables \ pari-seadata>0:math/pari_seadata\ QuadraticSieve:math/flintqs \ gpatch:devel/patch \ rubiks>0:math/rubiks \ sympow:math/sympow \ tachyon:graphics/tachyon \ three.js>0:www/threejs \ yasm:devel/yasm \ gtar:archivers/gtar \ ffmpeg:multimedia/ffmpeg \ ${LOCALBASE}/lib/libBLT.a:x11-toolkits/blt LIB_DEPENDS= libarb.so:math/arb \ libboost_thread.so:devel/boost-libs \ libbraiding.so:math/libbraiding \ libbrial.so:math/brial \ libCbc.so:math/cbc \ libcdd.so:math/cddlib \ libcliquer.so:math/cliquer \ libcurl.so:ftp/curl \ libeantic.so:math/e-antic \ libec.so:math/eclib \ libecl.so:lang/ecl \ libecm.so:math/gmp-ecm \ libflint.so:math/flint2 \ libfplll.so:math/fplll \ libfreetype.so:print/freetype2 \ libgc.so:devel/boehm-gc \ libgc-threaded.so:devel/boehm-gc-threaded\ libgf2x.so:math/gf2x \ libgivaro.so:math/givaro \ libglpk.so:math/glpk \ libgap.so:math/gap \ libgmp.so:math/gmp \ libgsl.so:math/gsl \ libhomfly.so:math/libhomfly \ libiml.so:math/iml \ libisl.so:devel/isl \ libLfunction.so:math/lcalc \ libffi.so:devel/libffi \ libgd.so:graphics/gd \ libgiac.so:math/giacxcas \ liblinbox.so:math/linbox \ liblrcalc.so:math/lrcalc \ liblrs.so:math/lrslib \ libm4ri.so:math/m4ri \ libm4rie.so:math/m4rie \ libmpc.so:math/mpc \ libmpfi.so:math/mpfi \ libmpfr.so:math/mpfr \ libmpir.so:math/mpir \ libntl.so:math/ntl \ libpari.so:math/pari \ libpcre.so:devel/pcre \ libplanarity.so:math/planarity \ libpng.so:graphics/png \ libppl.so:devel/ppl \ libpynac.so:math/pynac \ libR.so:math/R \ librw.so:math/rankwidth \ libSingular.so:math/singular \ libumfpack.so:math/suitesparse-umfpack \ libsemigroups.so:math/libsemigroups \ libsymmetrica.so:math/symmetrica\ libzmq.so:net/libzmq4 \ libzn_poly-0.9.so:math/zn_poly \ libqd.so:math/qd \ libisl.so:devel/isl \ libblas.so:math/blas \ libicuuc.so:devel/icu \ libtiff.so:graphics/tiff \ liblapack.so:math/lapack \ libedit.so:devel/libedit \ libwebp.so:graphics/webp \ libpcre2-8.so:devel/pcre2 \ libgdbm.so:databases/gdbm \ liblcms2.so:graphics/lcms2 \ libopenjp2.so:graphics/openjpeg RUN_DEPENDS= bash:shells/bash \ dreadnaut:math/nauty \ ${PYTHON_PKGNAMEPREFIX}alabaster>0:textproc/py-alabaster@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}attrs>0:devel/py-attrs@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}backcall>0:devel/py-backcall@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}bleach>0:www/py-bleach@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}brial>0:math/py-brial@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}certifi>0:security/py-certifi@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cffi>0:devel/py-cffi@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cvxopt>0:math/py-cvxopt@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cycler>0:devel/py-cycler@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cypari2>0:math/py-cypari2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cysignals>0:devel/py-cysignals@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}cython>0:lang/cython@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}dateutil>0:devel/py-dateutil@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}decorator>0:devel/py-decorator@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}defusedxml>0:devel/py-defusedxml@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}docutils>0:textproc/py-docutils@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}entrypoints>0:devel/py-entrypoints@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}fpylll>0:math/py-fpylll@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}gmpy2>0:math/py-gmpy2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}imagesize>0:graphics/py-imagesize@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}importlib-metadata>0:devel/py-importlib-metadata@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipykernel>0:devel/py-ipykernel@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipython>0:devel/ipython@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipython_genutils>0:devel/py-ipython_genutils@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ipywidgets>0:devel/py-ipywidgets@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}itsdangerous>0:security/py-itsdangerous@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jedi>0:devel/py-jedi@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jupyter-core>0:devel/py-jupyter-core@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}jupyter-client>0:devel/py-jupyter-client@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}kiwisolver>0:math/py-kiwisolver@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}markupsafe>0:textproc/py-markupsafe@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}matplotlib>0:math/py-matplotlib@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}mistune0>0:textproc/py-mistune0@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}mpmath>0:math/py-mpmath@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}nbconvert>0:devel/py-nbconvert@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}nbformat>0:devel/py-nbformat@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}networkx>0:math/py-networkx@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}nose>0:devel/py-nose@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}notebook>0:www/py-notebook@${PY_FLAVOR}\ ${PYNUMPY} \ ${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pandocfilters>0:textproc/py-pandocfilters@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}parso>0:textproc/py-parso@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}path.py>0:devel/py-path.py@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pexpect>0:misc/py-pexpect@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pickleshare>0:databases/py-pickleshare@${PY_FLAVOR}\ ${PY_PILLOW} \ ${PYTHON_PKGNAMEPREFIX}pkgconfig>0:devel/py-pkgconfig@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pplpy>0:math/py-pplpy@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}prometheus-client>0:net-mgmt/py-prometheus-client@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}prompt-toolkit>0:devel/py-prompt-toolkit@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}psutil>0:sysutils/py-psutil@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}ptyprocess>0:sysutils/py-ptyprocess@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pybind11>0:devel/py-pybind11@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pycparser>0:devel/py-pycparser@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pyparsing>0:devel/py-pyparsing@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pyrsistent>0:devel/py-pyrsistent@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}pyzmq>0:net/py-pyzmq@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}rpy2>0:math/py-rpy2@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}scandir>0:sysutils/py-scandir@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}send2trash>0:deskutils/py-send2trash@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}simplegeneric>0:devel/py-simplegeneric@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}snowballstemmer>0:textproc/py-snowballstemmer@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinx>0:textproc/py-sphinx@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-applehelp>0:textproc/py-sphinxcontrib-applehelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-devhelp>0:textproc/py-sphinxcontrib-devhelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-htmlhelp>0:textproc/py-sphinxcontrib-htmlhelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-jsmath>0:textproc/py-sphinxcontrib-jsmath@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-qthelp>0:textproc/py-sphinxcontrib-qthelp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-serializinghtml>0:textproc/py-sphinxcontrib-serializinghtml@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-websupport>0:textproc/py-sphinxcontrib-websupport@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}sympy>0:math/py-sympy@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}terminado>0:net/py-terminado@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}testpath>0:devel/py-testpath@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}tornado>0:www/py-tornado@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}traitlets>0:devel/py-traitlets@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}tzlocal>0:devel/py-tzlocal@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}vcversioner>0:devel/py-vcversioner@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}wcwidth>0:devel/py-wcwidth@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}webencodings>0:converters/py-webencodings@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}widgetsnbextension>0:devel/py-widgetsnbextension@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}zipp>0:devel/py-zipp@${PY_FLAVOR}\ ${PYTHON_PKGNAMEPREFIX}zope.interface>0:devel/py-zope.interface@${PY_FLAVOR}\ fflas-ffpack-config:math/fflas-ffpack \ fricas>0:math/fricas \ gfan:math/gfan \ git:devel/git \ gp2c:math/gp2c \ jmol:science/jmol \ MathJax>0:www/mathjax \ maxima>0:math/maxima \ p5-Term-ReadLine-Gnu>0:devel/p5-Term-ReadLine-Gnu\ palp>0:math/palp \ pandoc:textproc/hs-pandoc \ pari-elldata>0:math/pari_elldata\ pari-galdata>0:math/pari_galdata\ pari-galpol>0:math/pari_galpol \ pari-nftables>0:math/pari_nftables \ pari-seadata>0:math/pari_seadata\ QuadraticSieve:math/flintqs \ rubiks>0:math/rubiks \ sympow:math/sympow \ tachyon:graphics/tachyon \ three.js>0:www/threejs \ yasm:devel/yasm \ pixz:archivers/pixz USES= autoreconf blaslapack:openblas compiler:c++11-lib fortran \ gettext gmake gnome iconv jpeg libtool localbase magick:6,build \ ncurses ninja:build perl5 pkgconfig python:3.7+ readline shebangfix \ - sqlite tk xorg + sqlite tex tk xorg USE_TEX= latex:build pdftex:build tex:build USE_XORG= x11 xext xscrnsaver USE_GNOME= cairo glib20 pango USE_PYTHON= cython USE_JAVA= yes # for science/jmol CONFLICTS= ${PYTHON_PKGNAMEPREFIX}wheel-0.* SHEBANG_FILES= . SHEBANG_LANG+= dash dash_OLD_CMD= /bin/dash dash_CMD= ${LOCALBASE}/bin/dash DISABLE_BINUTILS= yes LIBS= -lomp -pthread .if !defined{WITH_DEBUG} LDFLAGS+= -s .endif BLDDIR= ${WRKDIR}/build GNU_CONFIGURE= yes CONFIGURE_ENV= SAGE_PORT=yes CC=${CC} GCC=${CC} CXX=${CXX} AS=${AS} LD=${LD} \ SAGE_LOCAL=${PREFIX} SAGE_DESTDIR=${BLDDIR}/ \ DESTDIR=${BLDDIR}/${PREFIX} PATCH=${LOCALBASE}/bin/gpatch CONFIGURE_ARGS= --with-system-gcc=force \ --with-system-python3=yes \ --with-python=${PYTHON_CMD} \ --enable-build-as-root \ --disable-download-from-upstream-url \ --localstatedir=/var MAKE_ENV= MAKE=${GMAKE} DESTDIR=${BLDDIR} ALL_TARGET= build REINPLACE_ARGS= -i '' BINARY_ALIAS= patch=${LOCALBASE}/bin/gpatch OPTIONS_SUB= yes PLIST_SUB= VER=${DISTVERSION} SUB_FILES= pkg-message OPTIONS_DEFINE= DOCS PORTDOCS= * .include WSDIR= ${BLDDIR}${PREFIX} SPKG_INST= configure.ac configure build/sage_bootstrap/uninstall.py \ build/make/install src/bin/sage-env PY2FIX= bin lib/${PYTHON_VERSION} DOC2FIX= .pickle .doctree SE2FIX= ^ECLDIR= ^SINGULAR MAXIMA_PREFIX SHR2FIX= GAP_ROOT_DIR PPLPY_DOCS SINGULARPATH STG2FIX= bin/sage-env-config \ share/jupyter/kernels/sagemath/kernel.json BADLN= kernels/sagemath/doc nbextensions/jsmol \ nbextensions/mathjax nbextensions/threejs # External dependencies not yet handled by SageMath # Note: do not use wheel from ports PY_LIBS= alabaster attrs babel backcall bleach certifi cffi cvxopt cycler \ cypari cysignals cython dateutil decorator defusedxml docutils \ entrypoints fpylll gmpy2 html5lib imagesize importlib_metadata ipykernel ipython \ ipython_genutils ipywidgets itsdangerous jedi jinja2 jsonschema jupyter_client \ jupyter_core kiwisolver markupsafe matplotlib mistune mpmath \ nbconvert nbformat networkx nose notebook numpy packaging pandocfilters \ parso pathpy pexpect pickleshare pillow pkgconfig pplpy \ prometheus_client prompt_toolkit psutil ptyprocess pybind11 pycparser pyparsing \ pygments pyrsistent pytz pyzmq requests rpy2 scandir scipy send2trash simplegeneric \ six snowballstemmer sphinx sphinxcontrib_applehelp sphinxcontrib_devhelp sphinxcontrib_htmlhelp sphinxcontrib_jsmath sphinxcontrib_qthelp sphinxcontrib_serializinghtml sphinxcontrib_websupport sympy terminado testpath tornado traitlets \ tzlocal vcversioner wcwidth webencodings widgetsnbextension zipp zope_interface JS_LIBS= jmol mathjax threejs SPKGCM4= e_antic ecl gap libhomfly linbox maxima pynac rubiks singular post-patch: ${CP} ${FILESDIR}/psutil__arch__bsd__freebsd_socks.c.patch \ ${WRKSRC}/build/pkgs/psutil/patches/ .for sp in ${SPKGCM4} ${CP} ${FILESDIR}/${sp}_spkg-configure.m4 \ ${WRKSRC}/build/pkgs/${sp}/spkg-configure.m4 .endfor .for sp in ${PY_LIBS} ${CP} ${FILESDIR}/py_libs_spkg-configure.m4 \ ${WRKSRC}/build/pkgs/${sp:C/pari2/pari/}/spkg-configure.m4 .endfor #.for sp in ${PY_FILES} # ${SED} -e 's|%%PYTHON_SITELIBDIR%%|${PYTHON_SITELIBDIR}|' ${FILESDIR}/${sp}_spkg-configure.m4.in \ # > ${WRKSRC}/build/pkgs/${sp}/spkg-configure.m4 #.endfor .for sp in ${JS_LIBS} ${SED} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${FILESDIR}/${sp}_spkg-configure.m4.in \ > ${WRKSRC}/build/pkgs/${sp}/spkg-configure.m4 .endfor pre-configure: ${REINPLACE_CMD} -e 's|SAGE_LOCAL="$$prefix"|SAGE_LOCAL="${WSDIR}"|' \ -e 's|lib/pkgconfig|libdata/pkgconfig|' ${WRKSRC}/configure.ac ${REINPLACE_CMD} -e 's|SAGE_LOCAL="@prefix@"|SAGE_LOCAL="${WSDIR}"|' \ ${WRKSRC}/src/bin/sage-env-config.in ${REINPLACE_CMD} -e 's|%%CFLAGS%%|${CFLAGS}|;s|%%LDFLAGS%%|${LDFLAGS}|' \ ${WRKSRC}/build/pkgs/tachyon/patches/Make-arch.patch ${REINPLACE_CMD} -e '/SUITESPARSE_INC_DIR/s|$${SAGE_LOCAL}/include|${LOCALBASE}/include/suitesparse|'\ ${WRKSRC}/build/pkgs/cvxopt/spkg-install.in ${REINPLACE_CMD} -e 's|exec python3|exec ${PYTHON_CMD}|' \ -e 's|exec "$$SAGE_LOCAL"/bin/python3|exec ${PYTHON_CMD}|' \ ${WRKSRC}/src/bin/sage .for f in ${PY_LIBS} ${REINPLACE_CMD} -e 's|python3|${PYTHON_CMD}|;s|py_libs|${f}|' \ ${WRKSRC}/build/pkgs/${f}/spkg-configure.m4 .endfor ${REINPLACE_CMD} -e 's|import attrs|import attr|' \ ${WRKSRC}/build/pkgs/attrs/spkg-configure.m4 ${REINPLACE_CMD} -e 's|import cypari|import cypari2|' \ ${WRKSRC}/build/pkgs/cypari/spkg-configure.m4 ${REINPLACE_CMD} -e 's|import ipython|import IPython|' \ ${WRKSRC}/build/pkgs/ipython/spkg-configure.m4 ${REINPLACE_CMD} -e 's|import pathpy|import path|' \ ${WRKSRC}/build/pkgs/pathpy/spkg-configure.m4 ${REINPLACE_CMD} -e 's|import pillow|import PIL|' \ ${WRKSRC}/build/pkgs/pillow/spkg-configure.m4 ${REINPLACE_CMD} -e 's|import pplpy|import ppl|' \ ${WRKSRC}/build/pkgs/pplpy/spkg-configure.m4 ${REINPLACE_CMD} -e 's|import pyzmq|import zmq|' \ ${WRKSRC}/build/pkgs/pyzmq/spkg-configure.m4 .for f in applehelp devhelp htmlhelp jsmath qthelp serializinghtml websupport ${REINPLACE_CMD} -e 's|import sphinxcontrib_|import sphinxcontrib.|' \ ${WRKSRC}/build/pkgs/sphinxcontrib_${f}/spkg-configure.m4 .endfor ${REINPLACE_CMD} -e 's|import zope_interface|import zope.interface|' \ ${WRKSRC}/build/pkgs/zope_interface/spkg-configure.m4 ${REINPLACE_CMD} -e '/GAP_ROOT=/s|$$SAGE_LOCAL|${LOCALBASE}|' \ ${WRKSRC}/build/pkgs/gap_packages/spkg-install.in ${REINPLACE_CMD} -e "/os.path.join/s|SAGE_LOCAL|'${LOCALBASE}'|"\ ${WRKSRC}/src/sage/libs/gap/util.pyx ${REINPLACE_CMD} -e "/os.path.join(SAGE_LOCAL/s|SAGE_LOCAL|'${LOCALBASE}'|" \ ${WRKSRC}/src/sage/env.py ${REINPLACE_CMD} -e "/^library_dirs/s|SAGE_LOCAL|'${LOCALBASE}'|" \ ${WRKSRC}/src/setup.py .for f in ${SHR2FIX} ${REINPLACE_CMD} -e "/${f}/s|SAGE_SHARE|'${LOCALBASE}/share/'|" \ ${WRKSRC}/src/sage/env.py .endfor ${REINPLACE_CMD} -e "/JMOL_DIR/s|SAGE_SHARE|'${JAVASHAREDIR}'|" \ -e "/JMOL_DIR/s|jmol|classes|" \ ${WRKSRC}/src/sage/env.py ${REINPLACE_CMD} -e "/JSMOL_DIR/s|SAGE_SHARE|'${LOCALBASE}/www'|" \ -e "/JSMOL_DIR/s|jsmol|JSmol|" \ ${WRKSRC}/src/sage/env.py ${REINPLACE_CMD} -e "/MATHJAX_DIR/s|SAGE_SHARE|'${LOCALBASE}/www'|" \ -e "/MATHJAX_DIR/s|mathjax|MathJax|" \ ${WRKSRC}/src/sage/env.py ${REINPLACE_CMD} -e "/THREEJS_DIR/s|SAGE_SHARE|'${LOCALBASE}/www'|" \ ${WRKSRC}/src/sage/env.py .for f in ${SE2FIX} ${REINPLACE_CMD} -e '/${f}/s|$$SAGE_LOCAL|${LOCALBASE}|' \ ${WRKSRC}/src/bin/sage-env .endfor ${REINPLACE_CMD} -e '/LDFLAGS=/s|-rpath,$$SAGE_LOCAL|-rpath,${LOCALBASE}|' \ ${WRKSRC}/src/bin/sage-env .for f in ${SPKG_INST} ${REINPLACE_CMD} -e 's|/var/lib/sage|/share/libdata/${PORTNAME}|' \ ${WRKSRC}/${f} .endfor # Bug with py-docutils > 0.16 ${RM} -r ${WRKSRC}/src/doc/hu (cd ${WRKSRC} && ./bootstrap) ${MKDIR} ${BLDDIR}${PREFIX}/lib/pkgconfig # Removed thereafter post-build: .if ${PORT_OPTIONS:MDOCS} (cd ${WRKSRC} && ${MAKE_ENV} ${MAKE_CMD} doc) .endif .for d in ${PY2FIX} ${FIND} ${WSDIR}/${d} -type f -exec ${GREP} -I -l "${WSDIR}/bin/python" {} \; |\ ${XARGS} ${SED} -i "" -e 's|${WSDIR}/bin/pytho.*|${PYTHON_CMD}|' .endfor .for d in ${PY2FIX} ${FIND} ${WSDIR}/${d} -type f -exec ${GREP} -I -l "/usr/bin/env python" {} \; |\ ${XARGS} ${SED} -i "" -e 's|/usr/bin/env pytho.*|${PYTHON_CMD}|' .endfor ${FIND} ${BLDDIR}/${PYTHON_LIBDIR} -type d -name __pycache__ | \ ${XARGS} ${RM} -r .for f in ${DOC2FIX} ${FIND} ${BLDDIR}${DOCSDIR} -type f -name "*${f}" | ${XARGS} \ ${SED} -i "" -e 's|${BLDDIR}||g' .endfor .for f in ${STG2FIX} ${SED} -i "" -e 's|${BLDDIR}||g' ${BLDDIR}${PREFIX}/${f} .endfor ${RM} ${BLDDIR}${PYTHON_CMD} ${BADLN:C|^|${BLDDIR}${PREFIX}/share/jupyter/|} ${RM} -r ${BLDDIR}${PREFIX}/var ${RM} ${BLDDIR}${PREFIX}/lib64 ${BLDDIR}${PREFIX}/lib/pkgconfig/blas.pc \ ${BLDDIR}${PREFIX}/lib/pkgconfig/cblas.pc \ ${BLDDIR}${PREFIX}/lib/pkgconfig/gsl.pc \ ${BLDDIR}${PREFIX}/lib/pkgconfig/lapack.pc # Cannot use a package system for pip and setuptools ${RM} ${BLDDIR}${PREFIX}/bin/easy_install* ${BLDDIR}${PREFIX}/bin/pip* ${RM} -r ${BLDDIR}${PYTHON_SITELIBDIR}/pip-* ${BLDDIR}${PYTHON_SITELIBDIR}/pip/ ${RM} -r ${BLDDIR}${PYTHON_SITELIBDIR}/setuptools* \ ${BLDDIR}${PYTHON_SITELIBDIR}/easy_install.py \ ${BLDDIR}${PYTHON_SITELIBDIR}/pkg_resources \ ${BLDDIR}${PYTHON_SITELIBDIR}/__pycache__/easy_install* # Remove CONFLICTS with lang/python3 ${RM} ${BLDDIR}${PREFIX}/bin/python ${BLDDIR}${PREFIX}/bin/python3 ${REINPLACE_CMD} -e '/exec/s|python3|${PYTHON_VERSION}|' ${BLDDIR}${PREFIX}/bin/sage # ${TRUE} because compilation of some .py fails: compileall.py -q to see errors (cd ${WSDIR} && (${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \ -d ${PYTHONPREFIX_SITELIBDIR} -f ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;} || \ ${TRUE})) ${FIND} ${BLDDIR}${PREFIX} -name "*.bak" -delete # See https://lists.freebsd.org/pipermail/freebsd-python/2020-June/020710.html .if exists(${PYTHON_SITELIBDIR}/path.py-7.1.dist-info/WHEEL) PLIST_SUB+= EGG="@comment " WHEEL="" .else PLIST_SUB+= EGG="" WHEEL="@comment " .endif do-install: cd "${BLDDIR}" && ${FIND} . | ${CPIO} -pduml ${STAGEDIR} # Remove bad links ${LN} -sf ${DOCSDIR} \ ${STAGEDIR}${PREFIX}/share/jupyter/kernels/sagemath/doc ${LN} -sf ${LOCALBASE}/www/JSmol \ ${STAGEDIR}${PREFIX}/share/jupyter/nbextensions/jsmol ${LN} -sf ${LOCALBASE}/www/MathJax \ ${STAGEDIR}${PREFIX}/share/jupyter/nbextensions/mathjax ${LN} -sf ${LOCALBASE}/www/threejs \ ${STAGEDIR}${PREFIX}/share/jupyter/nbextensions/threejs post-install: ${RM} ${STAGEDIR}${PREFIX}/lib64 ${STAGEDIR}${PREFIX}/libdata/pkgconfig/blas.pc \ ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/distutils-precedence.pth \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/cblas.pc \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/gsl.pc \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/lapack.pc ${RM} -r ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/_distutils_hack .include diff --git a/misc/latex-mk/Makefile b/misc/latex-mk/Makefile index 007347864268..de2995b27fe1 100644 --- a/misc/latex-mk/Makefile +++ b/misc/latex-mk/Makefile @@ -1,24 +1,24 @@ PORTNAME= latex-mk PORTVERSION= 2.1 PORTREVISION= 5 CATEGORIES= misc print MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION} MAINTAINER= hrs@FreeBSD.org COMMENT= Collection of makefile and scripts for LaTeX documents WWW= http://latex-mk.sourceforge.net/ LICENSE= BSD4CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= texi2dvi:print/texinfo +USES= gmake tex USE_TEX= latex -USES= gmake GNU_CONFIGURE= yes INFO= latex-mk NO_ARCH= yes .include diff --git a/net-im/pidgin-latex/Makefile b/net-im/pidgin-latex/Makefile index b96fe890f1f2..0da24d7c9205 100644 --- a/net-im/pidgin-latex/Makefile +++ b/net-im/pidgin-latex/Makefile @@ -1,29 +1,29 @@ PORTNAME= latex PORTVERSION= 1.0 PORTREVISION= 10 CATEGORIES= net-im MASTER_SITES= SF/pidgin-${PORTNAME}/pidgin-${PORTNAME}/${PORTVERSION} PKGNAMEPREFIX= pidgin- DISTNAME= ${PKGNAMEPREFIX}${PORTNAME}-${PORTVERSION} MAINTAINER= mainland@apeiron.net COMMENT= Display LaTeX output in your IMs WWW= https://sourceforge.net/projects/pidgin-latex/ BUILD_DEPENDS= ${LOCALBASE}/include/pidgin/pidgin.h:net-im/pidgin RUN_DEPENDS= pidgin:net-im/pidgin WRKSRC= ${WRKDIR}/${PKGNAMEPREFIX}${PORTNAME} -USES= gmake gnome magick:6,run pkgconfig tar:bzip2 +USES= gmake gnome magick:6,run pkgconfig tar:bzip2 tex USE_TEX= latex USE_GNOME= gtk20 MAKE_ARGS= CC="${CC}" PLIST_FILES= lib/pidgin/LaTeX.so do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/lib/pidgin ${INSTALL_LIB} ${WRKSRC}/LaTeX.so ${STAGEDIR}${PREFIX}/lib/pidgin .include diff --git a/net-mgmt/netmagis-www/Makefile b/net-mgmt/netmagis-www/Makefile index 6606bc6bc6a7..c1e5966d3d83 100644 --- a/net-mgmt/netmagis-www/Makefile +++ b/net-mgmt/netmagis-www/Makefile @@ -1,32 +1,33 @@ PORTNAME= netmagis PORTREVISION= 1 PKGNAMESUFFIX= -www COMMENT= Netmagis web module LICENSE= CECILL-B BROKEN_FreeBSD_13= ld: error: duplicate symbol: mobjlist BROKEN_FreeBSD_14= ld: error: duplicate symbol: mobjlist RUN_DEPENDS= netmagis-config:net-mgmt/netmagis-common \ dot:graphics/graphviz \ pwgen:sysutils/pwgen \ tcltls>=1.4.1:devel/tcltls \ tDOM>=0.8.0:www/tdom \ ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss NO_ARCH= # no +USES= tex USE_TEX= full MASTERDIR= ${.CURDIR}/../netmagis-common PKGMESSAGE= ${.CURDIR}/pkg-message PLIST= ${.CURDIR}/pkg-plist OPTIONS_DEFINE= EXAMPLES post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/htgtcl .include "${MASTERDIR}/Makefile" diff --git a/print/auctex/Makefile b/print/auctex/Makefile index 34ecdc6b763e..5b77190816c7 100644 --- a/print/auctex/Makefile +++ b/print/auctex/Makefile @@ -1,35 +1,34 @@ PORTNAME= auctex PORTVERSION= 13.1 PORTREVISION= 2 CATEGORIES= print elisp MASTER_SITES= GNU PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= hrs@FreeBSD.org COMMENT= Integrated environment for writing LaTeX using GNU Emacs WWW= https://www.gnu.org/software/auctex/ LICENSE= GPLv3 .if ${FLAVOR:U} == devel_full || ${FLAVOR:U} == devel_nox BROKEN= tex.el:0:0: error: wrong-type-argument: (stringp nil) .endif -USES= emacs ghostscript gmake +USES= emacs ghostscript gmake tex USE_TEX= latex texhash TEXHASHDIRS= ${TEXMFDIR} GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-lispdir=${PREFIX}/${EMACS_VERSION_SITE_LISPDIR} \ --with-auto-dir=${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/auctex/auto \ --with-texmf-dir=${PREFIX}/${TEXMFDIR} PORTDOCS= tex-ref.pdf INFO= auctex preview-latex -PLIST_SUB= TEXMFDIR=${TEXMFDIR} SUB_FILES= pkg-message OPTIONS_DEFINE= DOCS DOCS_CONFIGURE_ON= --docdir=${DOCSDIR} DOCS_CONFIGURE_OFF= WITHOUT_AUCTEX_DOCSDIR=yes .include diff --git a/print/catdvi/Makefile b/print/catdvi/Makefile index f2a367b53c01..82cfa1ab8097 100644 --- a/print/catdvi/Makefile +++ b/print/catdvi/Makefile @@ -1,29 +1,29 @@ PORTNAME= catdvi PORTVERSION= 0.14 PORTREVISION= 7 CATEGORIES= print MASTER_SITES= SF MAINTAINER= ports@FreeBSD.org COMMENT= DVI to text/plain translator WWW= http://catdvi.sourceforge.net/ LICENSE= GPLv2 +USES= gmake tex USE_TEX= latex -USES= gmake GNU_CONFIGURE= yes MAKEFILE= GNUmakefile ALL_TARGET= # empty MAKE_JOBS_UNSAFE= yes PLIST_FILES= bin/catdvi man/man1/catdvi.1.gz CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib do-install: ${INSTALL_PROGRAM} ${WRKSRC}/catdvi ${STAGEDIR}${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/catdvi.1 ${STAGEDIR}${MANPREFIX}/man/man1 .include diff --git a/print/dot2tex/Makefile b/print/dot2tex/Makefile index 9a7be57d6075..f2840890e156 100644 --- a/print/dot2tex/Makefile +++ b/print/dot2tex/Makefile @@ -1,32 +1,30 @@ PORTNAME= dot2tex PORTVERSION= 2.11.3 CATEGORIES= print python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= tota@FreeBSD.org COMMENT= Graphviz to LaTeX converter WWW= https://github.com/kjellmf/dot2tex LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyparsing>=1.4.8:devel/py-pyparsing@${PY_FLAVOR} \ dot:graphics/graphviz TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>0:devel/py-nose@${PY_FLAVOR} -USES= python:3.6+ +USES= python:3.6+ tex USE_GITHUB= yes USE_PYTHON= distutils autoplist concurrent -# Enable this before running test target -# bsd.tex.mk doesnt support :test (only) depends -#USE_TEX= latex +USE_TEX= latex:test GH_ACCOUNT= kjellmf NO_ARCH= yes do-test: @cd ${WRKSRC} && ${PYTHON_CMD} -m nose .include diff --git a/print/dvisvg/Makefile b/print/dvisvg/Makefile index 77f03811325e..9b68ad1b5de0 100644 --- a/print/dvisvg/Makefile +++ b/print/dvisvg/Makefile @@ -1,39 +1,39 @@ PORTNAME= dvisvg DISTVERSION= 0.7.1d PORTREVISION= 8 CATEGORIES= print MASTER_SITES= http://dvisvg.sourceforge.net/files/ MAINTAINER= hrs@FreeBSD.org COMMENT= Converter from DVI to SVG WWW= http://dvisvg.sourceforge.net/ LICENSE= GPLv2 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:R} -USES= ghostscript:run +USES= ghostscript:run tex USE_TEX= base texmf texhash ALL_TARGET= # empty # workaround for svgfonts.c not including kpathsea/c-auto.h CFLAGS+= -DHAVE_PROTOTYPES MAKE_ARGS= CC="${CC} ${CFLAGS}" TARGETDIR=${PREFIX} \ LINC=${LOCALBASE}/include \ LLIB=${LOCALBASE}/lib \ BINDIR=${PREFIX}/bin \ CNFDIR=${PREFIX}/${TEXMFDIR}/dvisvg \ post-patch: @${REINPLACE_CMD} -e "s,/usr/share/texmf,${LOCALBASE}/${TEXMFDIR}," \ ${WRKSRC}/version.h do-install: ${INSTALL_SCRIPT} ${WRKSRC}/dvisvg ${STAGEDIR}${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/dvisvg.man \ ${STAGEDIR}${MAN1PREFIX}/man/man1/dvisvg.1 @${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFDIR}/${PORTNAME} .for file in dvisvg.map font2svg.enc font2svg.ps ${INSTALL_DATA} ${WRKSRC}/${file} \ ${STAGEDIR}${PREFIX}/${TEXMFDIR}/${PORTNAME} .endfor .include diff --git a/print/hyperlatex/Makefile b/print/hyperlatex/Makefile index 58c16c8465e8..bbbafc976b01 100644 --- a/print/hyperlatex/Makefile +++ b/print/hyperlatex/Makefile @@ -1,43 +1,43 @@ PORTNAME= Hyperlatex DISTVERSION= 2.9a PORTREVISION= 17 CATEGORIES= print MASTER_SITES= SF/${PORTNAME:tl}/${PORTNAME:tl}/2.9a PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} MAINTAINER= ports@FreeBSD.org COMMENT= Produce HTML and printed documents from LaTeX source WWW= http://hyperlatex.sourceforge.net/ RUN_DEPENDS= ppmtogif:graphics/netpbm -USES= emacs +USES= emacs tex USE_TEX= latex CONFLICTS_INSTALL= Hyperlatex Hyperlatex-emacs_* LATEX_DIR= ${PREFIX}/share/texmf/tex/latex/hyperlatex HYPERLATEX_DIR= ${PREFIX}/share/hyperlatex do-configure: @(cd ${WRKSRC} && \ ${REINPLACE_CMD} -e 's|http://www.cs.uu.nl/\\~{}otfried/img/||' hlx/siteinit.hlx && \ ${REINPLACE_CMD} -e 's|$$HOME/Hyperlatex/Hlx|${HYPERLATEX_DIR}|' bin/hyperlatex && \ ${REINPLACE_CMD} -e '1s|^#$$|#\!/usr/bin/awk|' bin/normalize-eps.awk) do-build: cd ${WRKSRC}/hlx; emacs -batch -q -no-site-file -l hyperlatex.el -f hyperlatex-compile do-install: @${MKDIR} ${STAGEDIR}${HYPERLATEX_DIR} @${MKDIR} ${STAGEDIR}${LATEX_DIR} ${INSTALL_SCRIPT} ${WRKSRC}/bin/hyperlatex ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/bin/ps2image ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/bin/normalize-eps.awk \ ${STAGEDIR}${PREFIX}/bin/normalize-eps ${INSTALL_DATA} ${WRKSRC}/etc/hyperlatex.sty ${STAGEDIR}${LATEX_DIR} cd ${WRKSRC}/hlx; for f in *.el *.elc *.hlx *.xbm *.awk ; do \ if [ -f $$f ]; then ${INSTALL_DATA} $$f \ ${STAGEDIR}${HYPERLATEX_DIR}; fi; done .include diff --git a/print/latex-beamer/Makefile b/print/latex-beamer/Makefile index 30136319c8ad..474ae44168de 100644 --- a/print/latex-beamer/Makefile +++ b/print/latex-beamer/Makefile @@ -1,43 +1,44 @@ PORTNAME= latex-beamer PORTVERSION= 3.57 DISTVERSIONPREFIX= v CATEGORIES= print MAINTAINER= hrs@FreeBSD.org COMMENT= LaTeX class to create a beamer presentation WWW= https://github.com/josephwright/beamer LICENSE= GPLv2 LPPL13c LICENSE_COMB= dual +USES= tex USE_TEX= texmf latex texhash texlua USE_GITHUB= yes GH_ACCOUNT= josephwright GH_PROJECT= beamer TEXHASHDIRS= ${TEXMFDIR} NO_BUILD= YES NO_ARCH= YES PORTDOCS= * OPTIONS_DEFINE= DOCS CLASSDIR= ${TEXMFDIR}/tex/latex/${PORTNAME:S/^latex-//} CLASS_SUBDIRS= base examples DOC_SUBDIRS= AUTHORS.md CHANGELOG.md README.md doc solutions .include do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/${CLASSDIR} ${MV} ${WRKSRC}/doc/examples ${WRKSRC}/examples ${MV} ${WRKSRC}/doc/solutions ${WRKSRC}/solutions cd ${WRKSRC} && for d in ${CLASS_SUBDIRS}; do \ ${PAX} -rw $$d ${STAGEDIR}${PREFIX}/${CLASSDIR}; \ done .if ${PORT_OPTIONS:MDOCS} ${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC} && for d in ${DOC_SUBDIRS}; do \ ${PAX} -rw $$d ${STAGEDIR}${DOCSDIR}; \ done .endif .include diff --git a/print/latex-biber/Makefile b/print/latex-biber/Makefile index 1a35491301a8..3d270361a7f3 100644 --- a/print/latex-biber/Makefile +++ b/print/latex-biber/Makefile @@ -1,63 +1,63 @@ PORTNAME= biber PORTVERSION= 2.17 DISTVERSIONPREFIX= v PORTREVISION= 2 CATEGORIES= print perl5 PKGNAMEPREFIX= latex- DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= BibTeX replacement for users of biblatex WWW= http://biblatex-biber.sourceforge.net/ LICENSE= ART10 GPLv1+ LICENSE_COMB= dual __DEPENDS= ja-p5-Encode-EUCJPASCII>0:japanese/p5-Encode-EUCJPASCII \ p5-Business-ISBN>0:misc/p5-Business-ISBN \ p5-Business-ISMN>0:misc/p5-Business-ISMN \ p5-Business-ISSN>0:misc/p5-Business-ISSN \ p5-Config-AutoConf>0:devel/p5-Config-AutoConf \ p5-Data-Compare>0:devel/p5-Data-Compare \ p5-Data-Dump>0:devel/p5-Data-Dump \ p5-Data-Uniqid>0:devel/p5-Data-Uniqid \ p5-Date-Simple>0:devel/p5-Date-Simple \ p5-DateTime>=0:devel/p5-DateTime \ p5-DateTime-Format-Builder>=0:devel/p5-DateTime-Format-Builder \ p5-DateTime-Calendar-Julian>=0:devel/p5-DateTime-Calendar-Julian \ p5-Encode-HanExtra>0:chinese/p5-Encode-HanExtra \ p5-Encode-JIS2K>0:converters/p5-Encode-JIS2K \ p5-ExtUtils-LibBuilder>0:devel/p5-ExtUtils-LibBuilder \ p5-File-Slurp>0:devel/p5-File-Slurp \ p5-File-Slurper>=0:devel/p5-File-Slurper \ p5-IPC-Cmd>0:devel/p5-IPC-Cmd p5-IPC-Run3>0:devel/p5-IPC-Run3 \ p5-List-AllUtils>0:devel/p5-List-AllUtils \ p5-List-MoreUtils>0:lang/p5-List-MoreUtils \ p5-Log-Log4perl>0:devel/p5-Log-Log4perl \ p5-Module-Build>=0.4206:devel/p5-Module-Build \ p5-Mozilla-CA>0:www/p5-Mozilla-CA \ p5-Parse-RecDescent>=0:devel/p5-Parse-RecDescent \ p5-Regexp-Common>0:textproc/p5-Regexp-Common \ p5-Sort-Key>=0:devel/p5-Sort-Key \ p5-Text-BibTeX>0:textproc/p5-Text-BibTeX \ p5-Text-CSV>=0:textproc/p5-Text-CSV \ p5-Text-Roman>0:textproc/p5-Text-Roman p5-URI>0:net/p5-URI \ p5-Unicode-Collate>0:textproc/p5-Unicode-Collate \ p5-Unicode-LineBreak>0:textproc/p5-Unicode-LineBreak \ p5-XML-LibXML-Simple>0:textproc/p5-XML-LibXML-Simple \ p5-XML-LibXSLT>0:textproc/p5-XML-LibXSLT \ p5-XML-Writer>0:textproc/p5-XML-Writer \ p5-autovivification>0:devel/p5-autovivification \ p5-Class-Accessor>=0:devel/p5-Class-Accessor BUILD_DEPENDS= ${__DEPENDS} RUN_DEPENDS= ${__DEPENDS} -USES= perl5 +USES= perl5 tex USE_GITHUB= yes GH_ACCOUNT= plk USE_PERL5= modbuild USE_TEX= texmf NO_ARCH= yes .include diff --git a/print/latex-ltablex/Makefile b/print/latex-ltablex/Makefile index 8a0ac9c35e7d..c7fcb370b703 100644 --- a/print/latex-ltablex/Makefile +++ b/print/latex-ltablex/Makefile @@ -1,36 +1,35 @@ PORTNAME= ltablex PORTVERSION= 1.0 PORTREVISION= 2 CATEGORIES= print # As of 2012-08-24, some mirrors are returning a tarball with a # different checksum, so I am mirroring it locally instead. # MASTER_SITES= TEX_CTAN/macros/latex/contrib MASTER_SITES= LOCAL/rakuco/latex PKGNAMEPREFIX= latex- DIST_SUBDIR= latex MAINTAINER= rakuco@FreeBSD.org COMMENT= Combines the features of both the tabularx and longtable packages WWW= https://ctan.org/tex-archive/macros/latex/contrib/ltablex/ -USES= zip +USES= tex zip USE_TEX= latex texhash NO_BUILD= yes PLIST_SUB= CLASSDIR=${CLASSDIR} OPTIONS_DEFINE= DOCS -TEXMFDIR= share/texmf CLASSDIR= ${TEXMFDIR}/tex/latex/${PORTNAME} CLASS_FILES= ltablex.sty PORTDOCS= ltablex.pdf ltablex.tex WRKSRC= ${WRKDIR}/${PORTNAME} do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/${CLASSDIR} ${INSTALL_DATA} ${CLASS_FILES:S@^@${WRKSRC}/@} ${STAGEDIR}${PREFIX}/${CLASSDIR} ${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${PORTDOCS:S@^@${WRKSRC}/@} ${STAGEDIR}${DOCSDIR} .include diff --git a/print/latex-resume/Makefile b/print/latex-resume/Makefile index 3ebc38607a2f..84e29bc867ab 100644 --- a/print/latex-resume/Makefile +++ b/print/latex-resume/Makefile @@ -1,34 +1,34 @@ PORTNAME= resume PORTVERSION= 20010823 PORTREVISION= 3 CATEGORIES= print MASTER_SITES= TEX_CTAN/macros/latex/contrib/${PORTNAME} PKGNAMEPREFIX= latex- DISTNAME= res EXTRACT_SUFX= .cls DIST_SUBDIR= ${PKGNAMEPREFIX}${PORTNAME} MAINTAINER= ports@FreeBSD.org COMMENT= Resume class for LaTeX +USES= tex USE_TEX= latex NO_BUILD= yes NO_WRKSUBDIR= yes EXTRACT_CMD= ${CP} EXTRACT_BEFORE_ARGS= # empty EXTRACT_AFTER_ARGS= . -TEXMFDIR= share/texmf MKTEXLSR= ${LOCALBASE}/bin/mktexlsr CLASSDIR= ${TEXMFDIR}/tex/latex/${PORTNAME} CLASS_FILES= ${DISTFILES} PLIST_SUB= MKTEXLSR=${MKTEXLSR} \ CLASSDIR=${CLASSDIR} do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${CLASSDIR} ${INSTALL_DATA} ${CLASS_FILES:S@^@${WRKSRC}/@} \ ${STAGEDIR}${PREFIX}/${CLASSDIR} .include diff --git a/print/latex2rtf/Makefile b/print/latex2rtf/Makefile index 44d173cbaeb4..1917d8aee076 100644 --- a/print/latex2rtf/Makefile +++ b/print/latex2rtf/Makefile @@ -1,26 +1,26 @@ PORTNAME= latex2rtf DISTVERSION= 2.3.17 CATEGORIES= print MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-unix/${PORTVERSION} \ TEX_CTAN MAINTAINER= ports@FreeBSD.org COMMENT= Translator from LaTeX to RTF WWW= http://latex2rtf.sourceforge.net/ USES= cpe shebangfix makeinfo SHEBANG_FILES= ${WRKSRC}/scripts/latex2png CPE_VENDOR= latex2rtf_project OPTIONS_DEFINE= LATEX2PNG LATEX2PNG_DESC= Install latex2png utility OPTIONS_SUB= yes -LATEX2PNG_USES= magick:6,run +LATEX2PNG_USES= magick:6,run tex LATEX2PNG_USE= TEX=dvipsk,latex,xetex MAKE_ARGS+= MANDIR=${PREFIX}/man/man1 CFGDIR=${DATADIR}/cfg \ BINDIR=${PREFIX}/bin .include diff --git a/print/lilypond/Makefile b/print/lilypond/Makefile index 3a78c1078592..3a89d76d7a02 100644 --- a/print/lilypond/Makefile +++ b/print/lilypond/Makefile @@ -1,91 +1,91 @@ PORTNAME= lilypond DISTVERSION= 2.22.2 PORTREVISION= 1 CATEGORIES= print audio MASTER_SITES= http://lilypond.org/download/source/v${DISTVERSION:R}/ MAINTAINER= m.ne@gmx.net COMMENT= GNU music typesetter WWW= https://lilypond.org/ LICENSE= GPLv3 BUILD_DEPENDS= bash:shells/bash \ dblatex:textproc/dblatex \ fontforge:print/fontforge \ help2man:misc/help2man \ pdftexi2dvi:print/texinfo \ pngtopnm:graphics/netpbm \ rsync:net/rsync \ t1ascii:print/t1utils \ texi2html:textproc/texi2html \ zip:archivers/zip LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libgmp.so:math/gmp \ libharfbuzz.so:print/harfbuzz \ libltdl.so:devel/libltdl RUN_DEPENDS= ${LOCALBASE}/share/fonts/dejavu/DejaVuSans-Bold.ttf:x11-fonts/dejavu \ mftrace:print/mftrace USES= bison:build compiler:c++11-lib cpe ghostscript gmake gnome \ - magick:7,build perl5 pkgconfig python:3.5+ + magick:7,build perl5 pkgconfig python:3.5+ tex USE_CXXSTD= c++11 USE_GNOME= pango USE_PERL5= build USE_TEX= latex texmf GNU_CONFIGURE= yes CONFIGURE_ARGS+= --with-texgyre-dir=${LOCALBASE}/${TEXMFDISTDIR}/fonts/opentype/public/tex-gyre CONFIGURE_ENV+= ac_cv_prog_MAKEINFO="${LOCALBASE}/bin/makeinfo" \ FLEX=${FLEX} \ HOME=${WRKDIR} \ YACC=${YACC} MAKEFILE= GNUmakefile ALL_TARGET= all CONFLICTS_INSTALL= lilypond-devel BINARY_ALIAS= python=${PYTHON_VERSION} INFO= lilypond-changes lilypond-contributor lilypond-essay \ lilypond-extending lilypond-internals lilypond-learning \ lilypond-notation lilypond-snippets lilypond-usage \ music-glossary PLIST_SUB= DISTVERSION=${DISTVERSION} OPTIONS_DEFINE= GUILE2 NLS URW OPTIONS_SUB= yes GUILE2_DESC= guile2 instead guile (incurs performance penalty) URW_DESC= Use bundled URW fonts GUILE2_LIB_DEPENDS= libgc-threaded.so:devel/boehm-gc-threaded \ libguile-2.2.so:lang/guile2 GUILE2_LIB_DEPENDS_OFF= libguile.so:lang/guile1 GUILE2_CONFIGURE_ENV= GUILE_FLAVOR=guile-2.2 NLS_USES= gettext NLS_USES_OFF= gettext-tools URW_BUILD_DEPENDS= urw-base35-fonts>0:x11-fonts/urw-base35-fonts URW_RUN_DEPENDS_OFF= urw-base35-fonts>0:x11-fonts/urw-base35-fonts URW_CONFIGURE_WITH= urwotf-dir=${LOCALBASE}/share/fonts/urw-base35-fonts post-patch: @${REINPLACE_CMD} -e 's||"/usr/include/FlexLexer.h"|' \ ${WRKSRC}/lily/include/includable-lexer.hh @${REINPLACE_CMD} -e 's|$save_CXXFLAGS -Werror=suggest-override|$save_CXXFLAGS|' \ ${WRKSRC}/configure @${SED} -e 's|%%FONTDIR%%|${WRKDIR}/fontconfig/cache/|' \ ${FILESDIR}/fonts.conf > ${WRKDIR}/.fonts.conf post-patch-NLS-off: @${REINPLACE_CMD} -e '/po \\$$/d' ${WRKSRC}/${MAKEFILE}.in post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lilypond (cd ${STAGEDIR}/${DATADIR} && ${LN} -fs ${DISTVERSION} current) .include diff --git a/print/mftrace/Makefile b/print/mftrace/Makefile index 0ae813457223..a5ade679df62 100644 --- a/print/mftrace/Makefile +++ b/print/mftrace/Makefile @@ -1,44 +1,44 @@ PORTNAME= mftrace PORTVERSION= 1.2.18 PORTREVISION= 2 CATEGORIES= print MASTER_SITES= http://lilypond.org/download/sources/mftrace/ \ LOCAL/nivit/${PORTNAME}/ MAINTAINER= nivit@FreeBSD.org COMMENT= Scalable PostScript (Type1) Fonts for MetaFont WWW= https://lilypond.org/mftrace/ RUN_DEPENDS= t1asm:print/t1utils \ fontforge:print/fontforge .if defined(WITH_AUTOTRACE) BUILD_DEPENDS+= autotrace:graphics/autotrace RUN_DEPENDS+= autotrace:graphics/autotrace .else BUILD_DEPENDS+= potrace:graphics/potrace RUN_DEPENDS+= potrace:graphics/potrace .endif # Python3 ready +USES= gmake python tex USE_TEX= base texmf GNU_CONFIGURE= yes -USES= gmake python MAKEFILE= GNUmakefile PLIST_FILES= \ bin/gf2pbm \ bin/mftrace \ %%PYTHON_SITELIBDIR%%/afm.py \ %%PYTHON_SITELIBDIR%%/tfm.py \ man/man1/mftrace.1.gz do-install: ${INSTALL_PROGRAM} ${WRKSRC}/gf2pbm ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/mftrace ${STAGEDIR}${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/mftrace.1 ${STAGEDIR}${MANPREFIX}/man/man1 @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR} ${INSTALL_SCRIPT} ${WRKSRC}/tfm.py ${STAGEDIR}${PYTHON_SITELIBDIR} ${INSTALL_SCRIPT} ${WRKSRC}/afm.py ${STAGEDIR}${PYTHON_SITELIBDIR} .include diff --git a/print/muttprint/Makefile b/print/muttprint/Makefile index 4ccee9e8ea05..6620a42365a0 100644 --- a/print/muttprint/Makefile +++ b/print/muttprint/Makefile @@ -1,73 +1,73 @@ PORTNAME= muttprint PORTVERSION= 0.73 PORTREVISION= 4 CATEGORIES= print mail MASTER_SITES= SF/muttprint/muttprint/muttprint-${PORTVERSION} MAINTAINER= guru@unixarea.de COMMENT= Utility to print mail for most any mail client WWW= http://muttprint.sourceforge.net/ LICENSE= GPLv2 BUILD_DEPENDS= docbook2pdf:textproc/docbook-utils \ docbook-sgml>0:textproc/docbook-sgml RUN_DEPENDS= psnup:print/psutils \ p5-TimeDate>=0:devel/p5-TimeDate \ p5-Text-Iconv>=0:converters/p5-Text-Iconv GNU_CONFIGURE= yes -USES= autoreconf gmake perl5 +USES= autoreconf gmake perl5 tex USE_TEX= latex dvipsk NO_BUILD= yes REINPLACE_ARGS= -i "" OPTIONS_DEFINE= CUPS X11 DOCS XFACE OPTIONS_DEFAULT= X11 X11_DESC= graphics/ImageMagick[-nox11] dependency XFACE_DESC= mail/faces dependency (requires gtk12) CUPS_RUN_DEPENDS= lpr-cups:print/cups XFACE_RUN_DEPENDS= uncompface:mail/faces .if !defined(PAPERSIZE) PAPERSIZE= letter .endif .include .if ${PORT_OPTIONS:MCUPS} PRINT_COMMAND=CUPS .else PRINT_COMMAND=lpr -P$$PRINTER .endif .if ${PORT_OPTIONS:MX11} USES+= magick:6,run .else USES+= magick:6,run,nox11 .endif pre-everything:: @${ECHO} @${ECHO} Set PAPERSIZE=a4 if you need that paper size. @${ECHO} post-patch: @${RM} ${WRKSRC}/pics/*.orig .if ${PAPERSIZE}==a4 @${REINPLACE_CMD} 's|%%PAPERSIZE%%|${PAPERSIZE:tu}|' \ ${WRKSRC}/muttprint .else @${REINPLACE_CMD} 's|%%PAPERSIZE%%|${PAPERSIZE}|' \ ${WRKSRC}/muttprint .endif @${REINPLACE_CMD} 's|%%PRINT_COMMAND%%|${PRINT_COMMAND}| ; \ s|%%PREFIX%%|${PREFIX}|' \ ${WRKSRC}/muttprint .if ${PORT_OPTIONS:MCUPS} @${REINPLACE_CMD} 's|lpr $$CUPS_OPTIONS|${PREFIX}/bin/lpr $$CUPS_OPTIONS|' ${WRKSRC}/muttprint .endif .include diff --git a/print/sgf2tex/Makefile b/print/sgf2tex/Makefile index 2eafe2315124..78f293fc2ab2 100644 --- a/print/sgf2tex/Makefile +++ b/print/sgf2tex/Makefile @@ -1,23 +1,23 @@ PORTNAME= sgf2tex PORTVERSION= 3.3 PORTREVISION= 6 CATEGORIES= print MASTER_SITES= http://sporadic.stanford.edu/bump/ MAINTAINER= spcoltri@omcl.org COMMENT= Convert a Go game record in SGF format into TeX and provide fonts to make a dvi WWW= http://match.stanford.edu/~bump/sgf2tex.html -USES= shebangfix +USES= shebangfix tex SHEBANG_FILES= sgf2tex USE_TEX= tex PLIST_SUB= MKTEXLSR=${MKTEXLSR} MAKE_ENV= TEX_BIN=${TEX_BIN} TEX_BIN= ${LOCALBASE}/bin/etex MKTEXLSR= ${LOCALBASE}/bin/mktexlsr post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/sgfsplit .include diff --git a/print/tex-basic-engines/Makefile b/print/tex-basic-engines/Makefile index 4f9669774855..ef57e961bceb 100644 --- a/print/tex-basic-engines/Makefile +++ b/print/tex-basic-engines/Makefile @@ -1,59 +1,59 @@ PORTNAME= basic-engines PORTVERSION= ${TEXLIVE_VERSION} CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR} PKGNAMEPREFIX= tex- DISTNAME= texlive-${PORTVERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= Basic TeX Engines WWW= https://tug.org/texlive/ LIB_DEPENDS= libpng.so:graphics/png -USES= libtool localbase pkgconfig tar:xz +USES= libtool localbase pkgconfig tar:xz tex USE_TEX= kpathsea web2c GNU_CONFIGURE= yes CONFIGURE_ARGS= ${EXCLUDE_ENGINES:S/^/--disable-/} \ --disable-missing \ --with-system-kpathsea \ --with-system-zlib \ --with-x=no \ --without-mf-x-toolkit .for L in libpng CONFIGURE_ARGS+= --with-$L-include=${LOCALBASE}/include \ --with-$L-libdir=${LOCALBASE}/lib \ --with-system-$L .endfor INSTALL_TARGET= install-strip EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux libs/xpdf texk/web2c WRKSRC= ${WRKDIR}/${DISTNAME}/texk/web2c EXCLUDE_ENGINES= aleph luatex luajittex mf mf-nowin ptex eptex uptex \ euptex xetex otangle mp pmp upmp web2c web-progs \ synctex \ luahbtex \ luajithbtex \ mflua \ mfluajit \ latex post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete post-configure: cd ${WRKDIR}/${DISTNAME}/libs/xpdf && \ ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \ CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" \ CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}" \ LIBS="${LIBS}" \ ${CONFIGURE_ENV} ${SH} ${CONFIGURE_SCRIPT} \ ${CONFIGURE_ARGS} .include diff --git a/print/tex-dvipdfmx/Makefile b/print/tex-dvipdfmx/Makefile index c1e4608535a1..28e62b1be43f 100644 --- a/print/tex-dvipdfmx/Makefile +++ b/print/tex-dvipdfmx/Makefile @@ -1,66 +1,66 @@ PORTNAME= dvipdfmx PORTVERSION= ${TEXLIVE_VERSION} CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ${DISTNAME_TEXMF}${EXTRACT_SUFX} DIST_SUBDIR= TeX EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= tex@FreeBSD.org COMMENT= DVI Previewer(kpathsearch) for X WWW= http://project.ktug.or.kr/dvipdfmx/ LICENSE= GPLv2 LIB_DEPENDS= libpng.so:graphics/png \ libpaper.so:print/libpaper RUN_DEPENDS= ${LOCALBASE}/share/fonts/adobe-cmaps/ai0/CMap/Identity-H:print/adobe-cmaps -USES= localbase:ldflags pkgconfig tar:xz +USES= localbase:ldflags pkgconfig tar:xz tex USE_TEX= kpathsea web2c texmf dvipsk luatex texhash TEXHASHDIRS= ${TEXMFDISTDIR} ${TEXMFDIR} EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= am \ m4 \ build-aux \ texk/dvipdfm-x EXTRACT_AFTER_ARGS_TEXMF= \ | ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${EXCLUDE_FILES_TEXMF:S,^,--exclude ${DISTNAME_TEXMF}/,} \ ${EXTRACT_FILES_TEXMF:S,^,${DISTNAME_TEXMF}/,} DISTNAME_TEXMF= texlive-${TEXLIVE_VERSION}-texmf EXCLUDE_FILES_TEXMF= \ texmf-dist/fonts/map/dvipdfmx/jfontmaps \ texmf-dist/fonts/map/dvipdfmx/japanese-otf \ texmf-dist/fonts/map/dvipdfmx/ptex \ texmf-dist/fonts/map/dvipdfmx/updmap/kanjix.map EXTRACT_FILES_TEXMF= \ texmf-dist/doc/dvipdfmx/ \ texmf-dist/dvipdfmx/ \ texmf-dist/fonts/cmap/dvipdfmx/ \ texmf-dist/fonts/map/dvipdfmx/ \ texmf-dist/fonts/map/dvipdfm/ WRKSRC= ${WRKDIR}/${DISTNAME}/texk/dvipdfm-x GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-system-kpathsea \ --with-kpathsea-includes=${LOCALBASE}/include \ --with-kpathsea-libdir=${LOCALBASE}/lib \ --with-system-libpaper \ --with-libpaper-includes=${LOCALBASE}/include \ --with-libpaper-libdir=${LOCALBASE}/lib \ --with-system-libpng \ --with-system-zlib pre-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/texlive-${TEXLIVE_VERSION}-texmf${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS_TEXMF} post-install: ${LN} -f -s ${LOCALBASE}/share/fonts/adobe-cmaps \ ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/fonts/cmap/adobe-cmaps .include diff --git a/print/tex-dvipsk/Makefile b/print/tex-dvipsk/Makefile index d822c440205d..87fb526889fc 100644 --- a/print/tex-dvipsk/Makefile +++ b/print/tex-dvipsk/Makefile @@ -1,61 +1,61 @@ PORTNAME= dvipsk PORTVERSION= ${TEXLIVE_YEAR}.1 CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ${DISTNAME_TEXMF}${EXTRACT_SUFX} DIST_SUBDIR= TeX EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= tex@FreeBSD.org COMMENT= Convert a TeX DVI file to PostScript LICENSE= GPLv2 LIB_DEPENDS= libpaper.so:print/libpaper -USES= gmake localbase:ldflags pkgconfig tar:xz +USES= gmake localbase:ldflags pkgconfig tar:xz tex USE_TEX= kpathsea texhash texmf web2c GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-kpathsea-includes=${LOCALBASE}/include \ --with-kpathsea-libdir=${LOCALBASE}/lib \ --with-paper \ --with-system-kpathsea \ --with-system-libpng \ --with-system-zlib EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= am m4 build-aux texk/dvipsk texk/lcdf-typetools EXTRACT_AFTER_ARGS_TEXMF= | ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission \ --no-same-owner \ ${EXCLUDE_FILES:S,^,--exclude ,} \ ${EXTRACT_FILES_TEXMF:S,^,${DISTNAME_TEXMF}/,} DISTNAME_TEXMF= texlive-${TEXLIVE_VERSION}-texmf EXTRACT_FILES_TEXMF= texmf-dist/doc/dvips/ texmf-dist/dvips/ \ texmf-dist/fonts/map/dvips/ \ texmf-dist/fonts/enc/dvips/ \ texmf-dist/tex/generic/dvips/ EXCLUDE_FILES= texmf-dist/dvips/xdvi WRKSRC= ${WRKDIR}/${DISTNAME}/texk/dvipsk INFO= dvips PLIST_FILES= bin/afm2tfm \ bin/dvips \ man/man1/afm2tfm.1.gz \ man/man1/dvips.1.gz pre-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/texlive-${TEXLIVE_VERSION}-texmf${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS_TEXMF} post-install: ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} .include diff --git a/print/tex-formats/Makefile b/print/tex-formats/Makefile index 86f962578189..3cca71cec4d9 100644 --- a/print/tex-formats/Makefile +++ b/print/tex-formats/Makefile @@ -1,24 +1,25 @@ PORTNAME= formats PORTVERSION= ${TEXLIVE_VERSION} PORTREVISION= 1 CATEGORIES= print MASTER_SITES= #empty PKGNAMEPREFIX= tex- DISTFILES= #empty EXTRACT_ONLY= #empty MAINTAINER= tex@FreeBSD.org COMMENT= Formats for basic TeX engines and the 'latex' command WWW= https://tug.org/texlive/ +USES= tex USE_TEX= basic fmtutil texhash texmf web2c NO_ARCH= yes NO_BUILD= yes NO_INSTALL= yes TEXHASHDIRS= ${TEXMFVARDIR} TEX_FORMATS= amstex context csplain eplain latex-bin metafont mex mptopdf \ pdftex tex .include diff --git a/print/tex-jadetex/Makefile b/print/tex-jadetex/Makefile index 2b91b1121888..fd92fa5ec159 100644 --- a/print/tex-jadetex/Makefile +++ b/print/tex-jadetex/Makefile @@ -1,33 +1,33 @@ PORTNAME= jadetex PORTVERSION= 3.13 PORTREVISION= 4 CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-texmf DIST_SUBDIR= TeX EXTRACT_ONLY= MAINTAINER= tex@FreeBSD.org COMMENT= TeX backend for Jade, DSSSL processor for SGML/XML documents WWW= http://jadetex.sourceforge.net/ -USES= tar:xz +USES= tar:xz tex USE_TEX= texmf pdftex xmltex fmtutil TEXHASHDIRS= ${TEXMFDISTDIR} ${TEXMFVARDIR} EXTRACT_AFTER_ARGS=| ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= \ texmf-dist/doc/otherformats/jadetex \ texmf-dist/source/jadetex/base \ texmf-dist/tex/jadetex/base NO_ARCH= yes NO_BUILD= yes TEX_FORMATS= jadetex do-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS} .include diff --git a/print/tex-luatex/Makefile b/print/tex-luatex/Makefile index 13973fc159bd..e072e78b3e7d 100644 --- a/print/tex-luatex/Makefile +++ b/print/tex-luatex/Makefile @@ -1,101 +1,101 @@ PORTNAME= luatex PORTVERSION= 1.12.0 CATEGORIES= print MASTER_SITES= ftp://tug.org/historic/systems/texlive/2015/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ${DISTNAME_TEXMF}${EXTRACT_SUFX} DIST_SUBDIR= TeX EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= tex@FreeBSD.org COMMENT= Extended version of pdfTeX using Lua LIB_DEPENDS= libpng.so:graphics/png \ libmpfr.so:math/mpfr \ libzzip.so:devel/zziplib -USES= gnome libtool pkgconfig shebangfix tar:xz xorg +USES= gnome libtool pkgconfig shebangfix tar:xz tex xorg USE_TEX= kpathsea web2c texmf formats texlua texluajit fmtutil USE_XORG= pixman USE_GNOME= cairo USE_LDCONFIG= yes TEXHASHDIRS= ${TEXMFDISTDIR} ${TEXMFVARDIR} EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux \ libs/xpdf \ libs/lua53 \ libs/luajit \ libs/pplib \ texk/web2c EXTRACT_AFTER_ARGS_TEXMF=| ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${EXTRACT_FILES_TEXMF:S,^,${DISTNAME_TEXMF}/,} DISTNAME_TEXMF= texlive-${TEXLIVE_VERSION}-texmf EXTRACT_FILES_TEXMF= \ texmf-dist/doc/lualatex \ texmf-dist/doc/luatex \ texmf-dist/scripts/context/lua \ texmf-dist/source/luatex \ texmf-dist/source/lualatex \ texmf-dist/fonts/map/luatex \ texmf-dist/tex/luatex \ texmf-dist/tex/generic/config/luatex-unicode-letters.tex \ texmf-dist/tex/generic/config/luatexiniconfig.tex \ texmf-dist/tex/generic/context/luatex \ texmf-dist/tex/latex/latexconfig/lualatexquotejobname.tex \ texmf-dist/tex/latex/latexconfig/lualatexiniconfig.tex \ texmf-dist/tex/lualatex WRKSRC= ${WRKDIR}/${DISTNAME}/texk/web2c GNU_CONFIGURE= yes EXCLUDE_ENGINES=aleph etex pdftex mf mf-nowin \ ptex eptex uptex euptex \ otangle mp pmp upmp web2c web-progs xetex tex synctex \ mflua mfluajit luahbtex luajithbtex CONFIGURE_ARGS= ${EXCLUDE_ENGINES:S/^/--disable-/} \ --enable-luatex \ --enable-luajittex \ --with-system-zlib \ --with-system-zziplib .for L in cairo gmp kpathsea libpng mpfr pixman ptexenc CONFIGURE_ARGS+=--with-system-$L \ --with-$L-include=${LOCALBASE}/include \ --with-$L-libdir=${LOCALBASE}/lib .endfor CONFIGURE_ARGS+=CC="${CC}" \ CXX="${CXX}" CPPFLAGS+= -I${LOCALBASE}/include MAKE_JOBS_UNSAFE= yes TEX_FORMATS= luatex # buildenv and dumpenv in Makefile uses hard-coded TEXMFCNF. post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete cd ${WRKSRC}/.. && \ ${LN} -s -f ${LOCALBASE}/${TEXMFDISTDIR}/web2c kpathsea pre-configure: for D in libs/xpdf libs/pplib; do \ cd ${WRKDIR}/${DISTNAME}/$$D && \ ${SETENV} ${CONFIGURE_ENV} ${SH} ${CONFIGURE_SCRIPT} \ ${CONFIGURE_ARGS}; \ done cd ${WRKDIR}/${DISTNAME}/libs/pplib && \ ${MAKE} pre-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/texlive-${TEXLIVE_VERSION}-texmf${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS_TEXMF} ${REINPLACE_CMD} -i '' -e 's|/bin/bash|${PREFIX}/bin/bash|' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/lualatex/wallcalendar/doc/examples/diff-cal.sh post-install: ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} ${ECHO_CMD} "share/texmf-var/web2c/luatex/lollipop.log" >> ${TMPPLIST} ${ECHO_CMD} "share/texmf-var/web2c/luatex/lollipop.fmt" >> ${TMPPLIST} .include diff --git a/print/tex-ptexenc/Makefile b/print/tex-ptexenc/Makefile index 17a1c1cf8c13..17dbb100e72f 100644 --- a/print/tex-ptexenc/Makefile +++ b/print/tex-ptexenc/Makefile @@ -1,30 +1,31 @@ PORTNAME= ptexenc PORTVERSION= 1.3.9 CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/Source/${TEXLIVE_YEAR} PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= Library for Japanese pTeX and its tools LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYRIGHT -USES= iconv libtool pathfix pkgconfig tar:xz +USES= iconv libtool pathfix pkgconfig tar:xz tex USE_TEX= kpathsea USE_LDCONFIG= yes + WRKSRC= ${WRKDIR}/${DISTNAME}/texk/ptexenc EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S/^/${DISTNAME}\//} EXTRACT_FILES= build-aux texk/ptexenc GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-kanji-iconv \ --with-system-kpathsea \ --with-kpathsea-includes=${LOCALBASE}/include \ --with-kpathsea-libdir=${LOCALBASE}/lib LIBS+= -L${ICONV_PREFIX}/lib ${ICONV_LIB} CPPFLAGS+= -I${ICONV_PREFIX}/include INSTALL_TARGET= install-strip .include diff --git a/print/tex-xdvik/Makefile b/print/tex-xdvik/Makefile index 3f0434c4f513..25530754c828 100644 --- a/print/tex-xdvik/Makefile +++ b/print/tex-xdvik/Makefile @@ -1,62 +1,62 @@ PORTNAME= xdvik PORTVERSION= 22.87.06 CATEGORIES= print MASTER_SITES= SF/xdvi/${PORTNAME}/${PORTVERSION} PKGNAMEPREFIX= tex- DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= DVI Previewer(kpathsearch) for X WWW= http://xdvi.sourceforge.net/ LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libpaper.so:print/libpaper RUN_DEPENDS= tex-dvipsk>=5.995:print/tex-dvipsk -USES= iconv motif pkgconfig xorg +USES= iconv motif pkgconfig tex xorg USE_TEX= kpathsea texhash texmf web2c USE_XORG= ice sm x11 xext xi xmu xpm xt GNU_CONFIGURE= yes CONFIGURE_ARGS= --datarootdir=${LOCALBASE}/share \ --enable-shared \ --enable-xi2-scrolling \ --with-default-dvips-path=${LOCALBASE}/bin/dvips \ --with-default-gs-lib-path=${LOCALBASE}/lib \ --with-default-ps2pdf-path=${LOCALBASE}/bin/ps2pdf \ --with-iconv \ --with-kpathsea-includes=${LOCALBASE}/include/kpathsea \ --with-kpathsea-libdir=${LOCALBASE}/lib \ --with-system-freetype2 \ --with-system-kpathsea \ --with-system-libgs \ --with-system-zlib \ --with-xdvi-x-toolkit=motif \ --with-xpm CONFIGURE_ENV= INSTALL_DATA="${INSTALL_DATA}" \ INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ INSTALL_SCRIPT="${INSTALL_SCRIPT}" CFLAGS+= -I${LOCALBASE}/include -DHAVE_LIBPAPER -g -O0 CONFLICTS_INSTALL= *-xdvi ja-xdvik xdvi xdvi-* xdvik BINARY_ALIAS= freetype-config=true PATCH_WRKSRC= ${WRKDIR}/${DISTNAME} WRKSRC= ${WRKDIR}/${DISTNAME}/texk/xdvik PLIST_SUB= TEXMFDISTDIR=${TEXMFDISTDIR} PORTDOCS= BUGS CHANGES ChangeLog INSTALL README* TODO OPTIONS_DEFINE= DOCS TEXHASHDIRS= ${TEXMFDISTDIR} post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKDIR}/${DISTNAME} && \ ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} .include diff --git a/print/tex-xetex/Makefile b/print/tex-xetex/Makefile index 121e10ae05b0..65125e6ff5e3 100644 --- a/print/tex-xetex/Makefile +++ b/print/tex-xetex/Makefile @@ -1,110 +1,110 @@ PORTNAME= xetex PORTVERSION= 0.99993 PORTREVISION= 2 CATEGORIES= print MASTER_SITES= ftp://tug.org/historic/systems/texlive/2015/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-source DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ${DISTNAME_TEXMF}${EXTRACT_SUFX} DIST_SUBDIR= TeX EXTRACT_ONLY= texlive-${TEXLIVE_VERSION}-source${EXTRACT_SUFX} MAINTAINER= tex@FreeBSD.org COMMENT= TeX System with Unicode and Modern Font Technologies LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libgraphite2.so:graphics/graphite2 \ libicuio.so:devel/icu \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libpng.so:graphics/png \ libTECkit.so:textproc/teckit -USES= compiler:c++11-lib gnome perl5 pkgconfig python:build tar:xz xorg +USES= compiler:c++11-lib gnome perl5 pkgconfig python:build tar:xz tex xorg USE_CXXSTD= gnu++11 USE_GNOME= cairo USE_PERL5= build USE_TEX= kpathsea web2c texmf formats fmtutil dvipdfmx USE_XORG= pixman TEXHASHDIRS= ${TEXMFDISTDIR} ${TEXMFVARDIR} EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= build-aux \ libs/pplib \ libs/xpdf \ texk/web2c EXTRACT_AFTER_ARGS_TEXMF= \ | ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${EXTRACT_FILES_TEXMF:S,^,${DISTNAME_TEXMF}/,} DISTNAME_TEXMF= texlive-${TEXLIVE_VERSION}-texmf EXTRACT_FILES_TEXMF= \ texmf-dist/doc/xelatex \ texmf-dist/doc/xetex \ texmf-dist/fonts/misc/xetex \ texmf-dist/source/xelatex \ texmf-dist/tex/xelatex \ texmf-dist/tex/xetex WRKSRC= ${WRKDIR}/${DISTNAME}/texk/web2c GNU_CONFIGURE= yes EXCLUDE_ENGINES=aleph etex pdftex luatex luajittex mf mf-nowin \ mflua mfluajit luahbtex luajithbtex ptex eptex uptex euptex \ otangle mp pmp upmp web2c web-progs tex synctex CONFIGURE_ARGS= ${EXCLUDE_ENGINES:S/^/--disable-/} \ --enable-xetex \ --with-system-freetype2 \ --with-freetype2-includes=${LOCALBASE}/include/freetype2 \ --with-freetype2-libdir=${LOCALBASE}/lib \ --with-system-graphite2 \ --with-graphite2-includes=${LOCALBASE}/include/graphite2 \ --with-graphite2-libdir=${LOCALBASE}/lib \ --with-system-harfbuzz \ --with-system-teckit \ --with-teckit-includes=${LOCALBASE}/include/teckit \ --with-teckit-libdir=${LOCALBASE}/lib \ --with-system-zziplib \ --with-system-zlib .for L in cairo gmp kpathsea libpng mpfr pixman ptexenc icu CONFIGURE_ARGS+=--with-system-$L \ --with-$L-include=${LOCALBASE}/include \ --with-$L-libdir=${LOCALBASE}/lib .endfor CONFIGURE_ARGS+=CC="${CC}" \ CXX="${CXX}" CPPFLAGS+= -I${LOCALBASE}/include/harfbuzz -I${LOCALBASE}/include MAKE_JOBS_UNSAFE= yes TEX_FORMATS= xetex post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete pre-configure: for D in libs/xpdf libs/pplib; do \ cd ${WRKDIR}/${DISTNAME}/$$D && \ ${SETENV} ${CONFIGURE_ENV} ${SH} ${CONFIGURE_SCRIPT} \ ${CONFIGURE_ARGS}; \ done cd ${WRKDIR}/${DISTNAME}/libs/pplib && \ ${MAKE} pre-install: ${MKDIR} ${STAGEDIR}${PREFIX}/share ${CAT} ${DISTDIR}/${DIST_SUBDIR}/texlive-${TEXLIVE_VERSION}-texmf${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS_TEXMF} post-stage: ${REINPLACE_CMD} -i '' -e 's|/usr/bin/env python|${PYTHON_CMD}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/xelatex/xepersian/dkun-0.3.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/xelatex/xepersian/dkun-0.4.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/xelatex/xepersian/undk-0.6.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/xelatex/xepersian/unldk-0.2.py ${REINPLACE_CMD} -i '' -e 's|/usr/bin/perl|${PERL}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/xelatex/arabxetex/makemaps.pl ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} .include diff --git a/print/tex-xmltex/Makefile b/print/tex-xmltex/Makefile index 284e31ae6a71..a3f9d881e701 100644 --- a/print/tex-xmltex/Makefile +++ b/print/tex-xmltex/Makefile @@ -1,31 +1,31 @@ PORTNAME= xmltex PORTVERSION= 1.9 PORTREVISION= 3 CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMEPREFIX= tex- DISTNAME= texlive-${TEXLIVE_VERSION}-texmf DIST_SUBDIR= TeX EXTRACT_ONLY= MAINTAINER= tex@FreeBSD.org COMMENT= Non-validating XML parser, written in TeX -USES= tar:xz +USES= tar:xz tex USE_TEX= texmf pdftex fmtutil TEXHASHDIRS= ${TEXMFDISTDIR} EXTRACT_AFTER_ARGS=| ${TAR} -xf - -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${EXTRACT_FILES:S,^,${DISTNAME}/,} EXTRACT_FILES= \ texmf-dist/tex/xmltex \ texmf-dist/doc/otherformats/xmltex NO_ARCH= yes NO_BUILD= yes TEX_FORMATS= xmltex do-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS} .include diff --git a/print/texinfo/Makefile b/print/texinfo/Makefile index 4477799a6470..01cb7f28a985 100644 --- a/print/texinfo/Makefile +++ b/print/texinfo/Makefile @@ -1,67 +1,66 @@ PORTNAME= texinfo PORTVERSION= 6.8 PORTREVISION= 3 PORTEPOCH= 1 CATEGORIES= print MASTER_SITES= GNU \ LOCAL/sunpoet/texinfo:DEFAULT,local DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ htmlxref.cnf-${HTMLXREF_CNF_RELDATE}:local \ texi2dvi-${TEXI2DVI_RELDATE}:local \ texinfo.tex-${TEXINFO_TEX_RELDATE}:local DIST_SUBDIR= texinfo EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= sunpoet@FreeBSD.org COMMENT= Typeset documentation system with multiple format output WWW= https://www.gnu.org/software/texinfo/ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= help2man:misc/help2man \ ${RUN_DEPENDS} RUN_DEPENDS= p5-Locale-libintl>=0:devel/p5-Locale-libintl \ p5-Text-Unidecode>=0:converters/p5-Text-Unidecode \ p5-Unicode-EastAsianWidth>=0:textproc/p5-Unicode-EastAsianWidth OPTIONS_DEFINE= NLS OPTIONS_SUB= yes -USES= charsetfix cpe gmake iconv:wchar_t libtool ncurses perl5 tar:xz +USES= charsetfix cpe gmake iconv:wchar_t libtool ncurses perl5 tar:xz tex CONFIGURE_ARGS= --with-external-libintl-perl \ --with-external-Text-Unidecode \ --with-external-Unicode-EastAsianWidth CONFIGURE_ENV= PERL_EXT_CC="${CC}" GNU_CONFIGURE= yes INSTALL_TARGET= install-strip install-tex MAKE_ARGS= PERL=${PERL} TEXMF=${LOCALBASE}/${TEXMFDIR} PKGDEINSTALL= ${PKGINSTALL} -USE_TEX= yes INFO= info-stnd texinfo # Use the date on https://ftp.gnu.org/gnu/texinfo/ HTMLXREF_CNF_RELDATE= 20220110 TEXI2DVI_RELDATE= 20220408 TEXINFO_TEX_RELDATE= 20220409 CPE_VENDOR= gnu CPE_VERSION= ${PORTVERSION:R} NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext post-patch: @${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/texinfo.tex-${TEXINFO_TEX_RELDATE} ${WRKSRC}/doc/texinfo.tex @${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/htmlxref.cnf-${HTMLXREF_CNF_RELDATE} ${WRKSRC}/util/htmlxref.cnf @${INSTALL_SCRIPT} ${DISTDIR}/${DIST_SUBDIR}/texi2dvi-${TEXI2DVI_RELDATE} ${WRKSRC}/util/texi2dvi @${REINPLACE_CMD} -e '/rm -f $$(DESTDIR)/ s|$$| $$(DESTDIR)$$(xsdir)/XSParagraph.*|' ${WRKSRC}/tp/Texinfo/XS/Makefile.in @${REINPLACE_CMD} -e 's|free (.*)|Safe&|' ${WRKSRC}/tp/Texinfo/XS/misc.c @${REINPLACE_CMD} -e 's/tinfo/tinfow/g' ${WRKSRC}/configure post-install: ${INSTALL_DATA} ${WRKSRC}/util/htmlxref.cnf ${STAGEDIR}${DATADIR} .include diff --git a/print/texlive-base/Makefile b/print/texlive-base/Makefile index 8678a0f793c0..b0d5988525ec 100644 --- a/print/texlive-base/Makefile +++ b/print/texlive-base/Makefile @@ -1,163 +1,163 @@ PORTNAME= texlive PORTVERSION= ${TEXLIVE_VERSION} PORTREVISION= 12 CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR} PKGNAMESUFFIX= -base DISTNAME= ${PORTNAME}-${PORTVERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= TeX Live Typesetting System, base binaries WWW= https://tug.org/texlive/ LIB_DEPENDS= libicuio.so:devel/icu \ libt1.so:devel/t1lib \ libTECkit.so:textproc/teckit \ libgd.so:graphics/gd \ libgraphite2.so:graphics/graphite2 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libpng.so:graphics/png \ libzzip.so:devel/zziplib \ libpoppler.so:graphics/poppler \ libpotrace.so:graphics/libpotrace RUN_DEPENDS= p5-File-HomeDir>=0:devel/p5-File-HomeDir \ p5-YAML-Tiny>=0:textproc/p5-YAML-Tiny \ psbook:print/psutils USES= compiler:c++11-lib cpe ghostscript gnome localbase pkgconfig perl5 \ - python:run shebangfix tar:xz xorg + python:run shebangfix tar:xz tex xorg CPE_VENDOR= tug USE_CXXSTD= gnu++11 USE_GNOME= cairo USE_PERL5= run USE_TEX= web2c kpathsea ptexenc tlmgr texhash-bootstrap USE_XORG=x11 SHEBANG_FILES= texk/texlive/linked_scripts/accfonts/mkt1font \ texk/texlive/linked_scripts/accfonts/vpl2ovp \ texk/texlive/linked_scripts/accfonts/vpl2vpl \ texk/texlive/linked_scripts/arara/arara.sh \ texk/texlive/linked_scripts/bibexport/bibexport.sh \ texk/texlive/linked_scripts/convbkmk/convbkmk.rb \ texk/texlive/linked_scripts/ctanupload/ctanupload.pl \ texk/texlive/linked_scripts/ebong/*.py \ texk/texlive/linked_scripts/dtxgen/dtxgen \ texk/texlive/linked_scripts/dviasm/*.py \ texk/texlive/linked_scripts/exceltex/exceltex \ texk/texlive/linked_scripts/findhyph/findhyph \ texk/texlive/linked_scripts/fragmaster/fragmaster.pl \ texk/texlive/linked_scripts/git-latexdiff/git-latexdiff \ texk/texlive/linked_scripts/installfont/installfont-tl \ texk/texlive/linked_scripts/kotex-utils/jamo-normalize.pl \ texk/texlive/linked_scripts/latexpand/latexpand \ texk/texlive/linked_scripts/lilyglyphs/*.py \ texk/texlive/linked_scripts/ltxfileinfo/ltxfileinfo \ texk/texlive/linked_scripts/mathspic/mathspic.pl \ texk/texlive/linked_scripts/mf2pt1/mf2pt1.pl \ texk/texlive/linked_scripts/multibibliography/multibibliography.pl \ texk/texlive/linked_scripts/pygmentex/*.py \ texk/texlive/linked_scripts/pythontex/*.py \ texk/texlive/linked_scripts/rubik/rubikrotation.pl \ texk/texlive/linked_scripts/spix/spix.py \ texk/texlive/linked_scripts/splitindex/splitindex.pl \ texk/texlive/linked_scripts/svn-multi/svn-multi.pl \ texk/texlive/linked_scripts/texdirflatten/texdirflatten \ texk/texlive/linked_scripts/texliveonfly/texliveonfly.py \ texk/texlive/linked_scripts/ulqda/ulqda.pl \ texk/texlive/linked_scripts/urlbst/urlbst \ texk/texlive/linked_scripts/yplan/yplan \ texk/texlive/linked_scripts/webquiz/webquiz.py \ texk/texlive/linked_scripts/petri-nets/pn2pdf \ texk/texlive/linked_scripts/pdflatexpicscale/pdflatexpicscale.pl \ texk/texlive/linked_scripts/pdfxup/pdfxup \ texk/texlive/linked_scripts/tlcockpit/tlcockpit.sh \ texk/texlive/linked_scripts/ctan-o-mat/ctan-o-mat.pl \ texk/texlive/linked_scripts/pdftex-quiet/pdftex-quiet \ texk/texlive/linked_scripts/clojure-pamphlet/pamphletangler \ texk/texlive/linked_scripts/latex-papersize/latex-papersize.py \ texk/texlive/linked_scripts/makedtx/makedtx.pl \ texk/texlive/linked_scripts/pdfbook2/pdfbook2 # during build phase gnu configure is run a lot GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-native-texlive-build \ --disable-web-progs \ --disable-psutils \ --enable-shared \ --disable-t1utils \ --disable-dvipdfmx \ --disable-dvipdfm-x \ --disable-xdvipdfmx \ --enable-build-in-source-tree \ --datarootdir=${LOCALBASE}/share \ --with-system-freetype2 \ --with-freetype2-includes=${LOCALBASE}/include/freetype2 \ --with-freetype2-libdir=${LOCALBASE}/lib \ --with-system-gd \ --with-system-cairo \ --with-system-harfbuzz \ --with-system-graphite2 \ --with-system-pixman \ --with-system-t1lib \ --without-system-xpdf \ --with-system-zziplib \ --with-system-zlib .for L in gmp icu kpathsea libgs libpng libpaper mpfr ptexenc potrace teckit CONFIGURE_ARGS+=--with-system-$L \ --with-$L-include=${LOCALBASE}/include \ --with-$L-libdir=${LOCALBASE}/lib .endfor MAKE_ENV= CONFIG_SITE=${CONFIG_SITE} INSTALL_TARGET= install-strip CONFLICTS_INSTALL= detex dvi2tty ps2eps BINARY_ALIAS= freetype-config=true EXTRACT_AFTER_ARGS= ${EXCLUDE_FILES:S,^,--exclude ,} INFO= dvipng tlbuild PLIST_SUB= INSTALL_DATA="${INSTALL_DATA}" OPTIONS_DEFINE= X11 OPTIONS_DEFAULT=X11 X11_USE= TEX=xpdfopen:run EXCLUDE_FILES= ${DISTNAME}/texk/web2c \ ${DISTNAME}/texk/kpathsea \ ${DISTNAME}/texk/ptexenc \ ${DISTNAME}/texk/xdvik \ ${DISTNAME}/texk/dvipdfm-x \ ${DISTNAME}/texk/dvipsk \ ${DISTNAME}/utils/t1utils \ ${DISTNAME}/utils/xpdfopen post-extract: @${FIND} ${WRKSRC} -name '*.orig' -delete post-patch: ${REINPLACE_CMD} -e 's|/usr/bin/python -O|${python_CMD}|' \ ${WRKSRC}/texk/texlive/linked_scripts/de-macro/de-macro ${REINPLACE_CMD} -e 's|exec texconfig|exec ${PREFIX}/bin/texconfig|' \ ${WRKSRC}/texk/texlive/linked_scripts/texlive-extra/texconfig-sys.sh ${REINPLACE_CMD} -e 's|exec fmtutil|exec ${PREFIX}/bin/fmtutil|' \ ${WRKSRC}/texk/texlive/linked_scripts/texlive/fmtutil-sys.sh ${REINPLACE_CMD} -e 's|exec updmap|exec ${PREFIX}/bin/updmap|' \ ${WRKSRC}/texk/texlive/linked_scripts/texlive/updmap-sys.sh ${REINPLACE_CMD} -e '/tlmgr/d' \ ${WRKSRC}/texk/texlive/linked_scripts/Makefile.in post-install-fmtutil: for D in ${TEXHASHDIRS}; do \ ${MKDIR} ${STAGEDIR}${PREFIX}/$$D; \ done ${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFCONFIGDIR}/web2c ${INSTALL_DATA} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/web2c/fmtutil.cnf \ ${STAGEDIR}${PREFIX}/${FMTUTIL_CNF} post-install: post-install-fmtutil .ORDER: post-install-fmtutil do-texhash .include diff --git a/print/texlive-docs/Makefile b/print/texlive-docs/Makefile index ea7016aa5778..80dfc4d40ec8 100644 --- a/print/texlive-docs/Makefile +++ b/print/texlive-docs/Makefile @@ -1,110 +1,110 @@ PORTNAME= texlive PORTVERSION= ${TEXLIVE_VERSION} CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMESUFFIX= -docs DISTNAME= ${PORTNAME}-${PORTVERSION}-texmf DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= TeX Live Typesetting System, documentation WWW= https://tug.org/texlive/ -USES= perl5 tar:xz +USES= perl5 tar:xz tex USE_TEX= texmf EXTRACT_AFTER_ARGS= | ${TAR} xf - \ ${EXCLUDE_FILES:S,^,--exclude ${DISTNAME}/,} NO_BUILD= yes EXCLUDE_FILES= \*/doc/man texmf-dist/doc/aleph texmf-dist/doc/lualatex \ texmf-dist/doc/luatex texmf-dist/doc/xelatex \ texmf-dist/doc/xetex texmf-dist/doc/otherformats/jadetex \ texmf-dist/doc/otherformats/xmltex texmf-dist/doc/ptex \ texmf-dist/doc/platex texmf-dist/doc/uptex \ texmf-dist/doc/uplatex texmf-dist/doc/fonts/japanese-otf \ texmf-dist/doc/fonts/japanese-otf-uptex \ texmf-dist/doc/fonts/jfontmaps texmf-dist/doc/dvips \ texmf-dist/doc/dvipdfmx NO_ARCH= yes do-extract: @${MKDIR} ${WRKDIR} do-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS} -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner \ ${DISTNAME}/texmf-dist/doc ${REINPLACE_CMD} -i '' -e 's|/usr/bin/fontforge|${PREFIX}/bin/fontforge|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/aesupp/genfonts.pe \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/berenisadf/ff-ybd.pe \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/report/kernclasses.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/utility/metafont/bulk_eps_import.py ${REINPLACE_CMD} -i '' -e 's|/usr/bin/perl -w|${PERL}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/aesupp/ggen.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shipunov/scripts/abs2rel.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shipunov/scripts/biokey2html1.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shipunov/scripts/biokey2html2.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shipunov/scripts/biokey2html3.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shipunov/scripts/txt2qq.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/ucs/makeunidef.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/support/ctan-o-mat/lib/md2ltx.pl ${REINPLACE_CMD} -i '' -e 's|/usr/bin/perl -T|${PERL}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/ucs/discovermacro.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/ucs/latexout.pl ${REINPLACE_CMD} -i '' -e 's|/usr/bin/perl|${PERL}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/dad/dad-to-utf8.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/dad/utf8-to-dad.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/utility/KerningNumerals.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/test/MES-Conformance/mes-list-expand.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/test/MES-Conformance/CheckConformance.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/phaistos/getglyphs \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/generic/pst-mirror/createEPS/scripts/filtre.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/gridslides/compile.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/latex-web-companion/ch7/sgmlspl.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/ucs/unsupported/u2ps \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/support/gustprog/porzadki.pl ${REINPLACE_CMD} -i '' -e 's|/usr/bin/env python|${PYTHON_CMD}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/utility/hex_range.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/xcharter/altone.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/aramaic-serto/serto.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/scanpages/replicate.py ${REINPLACE_CMD} -i '' -e 's|/usr/bin/python|${PYTHO_CMD}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/test/ranges/Arabic/unicode_joining.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/test/ranges/Arabic/arabic_test.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/gnu-freefont/tools/test/ranges/Arabic/generate_arabic_shaping.py ${REINPLACE_CMD} -i '' -e 's|/usr/bin/texlua|${PREFIX}/bin/texlua|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/generic/m-tx/buildmtxdoc.lua ${REINPLACE_CMD} -i '' -e 's|/bin/bash|${PREFIX}/bin/bash|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/fonts/drm/allfonts.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/generic/e-french/bin/linux/makefrindex \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/metapost/featpost/bash/COMPILE.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/metapost/featpost/bash/makehtmlindex.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/metapost/featpost/bash/laproof.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/uspace/uspace-ctanify.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/hvfloat/runAll.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/hvfloat/runEXA.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/hepnames/mkmacrotables \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/bardiag/example/compile.all \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/tlc-article/bin/deploy \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/pdfreview/pdfreview.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/pdfreview/pdfshrink.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/beamerappendixnote/build.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shipunov/scripts/biokey2html.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/seminar/run.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/biblatex-abnt/test.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/shdoc/shreformat.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/biblatex-software/mkbiblatexstubs.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/latex/ctable/inst \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/cstex/cspsfonts-gen/mkfc \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/cstex/cspsfonts-gen/mkf \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/support/chklref/release.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/doc/support/latexdiff/contrib/latexdiff-wrap ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} .include diff --git a/print/texlive-full/Makefile b/print/texlive-full/Makefile index 1f396983dcdf..42ea07565b9b 100644 --- a/print/texlive-full/Makefile +++ b/print/texlive-full/Makefile @@ -1,19 +1,19 @@ PORTNAME= texlive DISTVERSION= ${TEXLIVE_VERSION} CATEGORIES= print PKGNAMESUFFIX= -full MAINTAINER= tex@FreeBSD.org COMMENT= TeX Live, Full Version WWW= https://tug.org/texlive/ +USES= metaport tex USE_TEX= full texhash -USES= metaport OPTIONS_DEFINE= DOCS SOURCE DOCS_USE= TEX=docs SOURCE_DESC= Install source files SOURCE_USE= TEX=source .include diff --git a/print/texlive-texmf-source/Makefile b/print/texlive-texmf-source/Makefile index 1cdc80a9c7be..23966d841ca5 100644 --- a/print/texlive-texmf-source/Makefile +++ b/print/texlive-texmf-source/Makefile @@ -1,68 +1,68 @@ PORTNAME= texlive PORTVERSION= ${TEXLIVE_VERSION} CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVEVEYEAR}/ PKGNAMESUFFIX= -texmf-source DISTNAME= ${PORTNAME}-${PORTVERSION}-texmf DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= TeX Live Typesetting System, texmf Tree (source) WWW= https://tug.org/texlive/ -USES= cpe perl5 python:build tar:xz +USES= cpe perl5 python:build tar:xz tex CPE_VENDOR= tug USE_PERL5= build -USE_TEX= texmf>=${PORTVERSION} +USE_TEX= texmf CONFLICTS_INSTALL= texlive-base-202[0-9]* EXTRACT_AFTER_ARGS= | ${TAR} xf - \ ${INCLUDE_FILES:S,^,--include ${DISTNAME}/,} \ ${EXCLUDE_FILES:S,^,--exclude ${DISTNAME}/,} NO_BUILD= yes INCLUDE_FILES= texmf-dist/source EXCLUDE_FILES= texmf-dist/source/fonts/japanese-otf \ texmf-dist/source/fonts/japanese-otf-uptex \ texmf-dist/source/fonts/uptex texmf-dist/source/jadetex \ texmf-dist/source/lambda texmf-dist/source/lualatex \ texmf-dist/source/luatex texmf-dist/source/platex \ texmf-dist/source/uplatex texmf-dist/source/xelatex \ texmf-dist/source/xmltex TEXHASHDIRS= ${TEXMFDISTDIR} do-extract: @${MKDIR} ${WRKDIR} do-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS} -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner ${REINPLACE_CMD} -i '' -e 's|/bin/bash|${PREFIX}/bin/bash|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/ae/clean \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/ae/install \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/fifinddo-info/makevars/bashvars.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/fifinddo-info/makevars/texvars.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/stex/bin/installFonts.sh \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/avremu/test-suite/test-suite ${REINPLACE_CMD} -i '' -e 's|/usr/bin/env python|${PYTHON_CMD}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/gentium-tug/type1/kerncorrection.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/gentium-tug/type1/afmcreator.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/fonts/gentium-tug/type1/greekcorrection.py ${REINPLACE_CMD} -i '' -e 's|/usr/bin/perl|${PERL}|g' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/generic/hyph-utf8/contributed/make-exhyph.pl \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/generic/ruhyphen/sorthyph \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/generic/ruhyphen/reduce-patt \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/stex/bin/sms \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/stex/bin/checksum \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/stex/bin/filedate \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/proposal/bin/checksum \ ${STAGEDIR}${PREFIX}/share/texmf-dist/source/latex/proposal/bin/filedate ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} .include diff --git a/print/texlive-texmf/Makefile b/print/texlive-texmf/Makefile index c934a36d7898..effaebcb9425 100644 --- a/print/texlive-texmf/Makefile +++ b/print/texlive-texmf/Makefile @@ -1,331 +1,331 @@ PORTNAME= texlive PORTVERSION= ${TEXLIVE_VERSION} CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMESUFFIX= -texmf DISTFILES= ${PORTNAME}-${PORTVERSION}${PKGNAMESUFFIX}${EXTRACT_SUFX} DIST_SUBDIR= TeX EXTRACT_ONLY= MAINTAINER= tex@FreeBSD.org COMMENT= TeX Live Typesetting System, texmf Tree WWW= https://tug.org/texlive/ -USES= cpe python:run shebangfix tar:xz +USES= cpe python:run shebangfix tar:xz tex CPE_VENDOR= tug USE_TEX= base basic:extract texhash tlmgr:run EXTRACT_AFTER_ARGS= | ${TAR} xf - \ ${EXCLUDE_FILES:S,^,--exclude ${PORTNAME}-${PORTVERSION}${PKGNAMESUFFIX}/,} DISABLE_SIZE= yes # XXX bug 262056: distfile too large NO_ARCH= yes NO_BUILD= yes NO_WRKSUBDIR= yes EXCLUDE_FILES= \*/doc/man texmf-dist/ls-R texmf-dist/bibtex/csf/base \ texmf-dist/doc texmf-dist/dvipdfm texmf-dist/dvipdfmx \ texmf-dist/dvips texmf-dist/fonts/cmap/dvipdfmx \ texmf-dist/fonts/cmap/uptex texmf-dist/fonts/enc/dvips \ texmf-dist/fonts/map/dvipdfm texmf-dist/fonts/map/dvipdfmx \ texmf-dist/fonts/map/dvips texmf-dist/fonts/map/luatex \ texmf-dist/fonts/misc/xetex \ texmf-dist/fonts/ofm/public/japanese-otf \ texmf-dist/fonts/ovp/public/japanese-otf-uptex \ texmf-dist/fonts/source/ptex texmf-dist/fonts/tfm/ptex \ texmf-dist/fonts/tfm/public/japanese-otf \ texmf-dist/fonts/tfm/public/japanese-otf-uptex \ texmf-dist/fonts/tfm/uptex texmf-dist/fonts/type1/ptex \ texmf-dist/fonts/vf/ptex \ texmf-dist/fonts/vf/public/japanese-otf \ texmf-dist/fonts/vf/public/japanese-otf-uptex \ texmf-dist/fonts/vf/uptex texmf-dist/scripts/xetex \ texmf-dist/source \ texmf-dist/tex/generic/config/luatex-unicode-letters.tex \ texmf-dist/tex/generic/config/luatexiniconfig.tex \ texmf-dist/tex/generic/context/luatex \ texmf-dist/tex/generic/dvips \ texmf-dist/tex/generic/hyph-utf8/patterns/ptex \ texmf-dist/tex/generic/xetexconfig texmf-dist/tex/jadetex \ texmf-dist/tex/lambda texmf-dist/tex/latex/base \ texmf-dist/tex/latex/latexconfig/dvilualatex.ini \ texmf-dist/tex/latex/latexconfig/lualatex-patch-kernel.tex \ texmf-dist/tex/latex/latexconfig/lualatex-reset-codes.tex \ texmf-dist/tex/latex/latexconfig/lualatex.ini \ texmf-dist/tex/latex/latexconfig/lualatexiniconfig.tex \ texmf-dist/tex/latex/latexconfig/lualatexquotejobname.tex \ texmf-dist/tex/latex/latexconfig/xelatex.ini \ texmf-dist/tex/lualatex texmf-dist/tex/luatex \ texmf-dist/tex/plain/config/aleph.ini \ texmf-dist/tex/plain/config/dviluatex.ini \ texmf-dist/tex/plain/config/luatex.ini \ texmf-dist/tex/plain/config/xetex.ini texmf-dist/tex/platex \ texmf-dist/tex/ptex texmf-dist/tex/uplatex texmf-dist/tex/uptex \ texmf-dist/tex/xelatex texmf-dist/tex/xetex \ texmf-dist/tex/xmltex texmf-dist/web2c/fmtutil-hdr.cnf \ texmf-dist/tex/cslatex \ texmf-dist/web2c/fmtutil.cnf texmf-dist/web2c/texmf.cnf \ texmf-dist/web2c/updmap-hdr.cfg texmf-dist/web2c/updmap.cfg \ texmf-dist/xdvi texmf-dist/scripts/a2ping/a2ping.pl \ texmf-dist/scripts/accfonts/mkt1font \ texmf-dist/scripts/accfonts/vpl2ovp \ texmf-dist/scripts/accfonts/vpl2vpl \ texmf-dist/scripts/adhocfilelist/adhocfilelist.sh \ texmf-dist/scripts/albatross/albatross.sh \ texmf-dist/scripts/arara/arara.sh \ texmf-dist/scripts/authorindex/authorindex \ texmf-dist/scripts/bibexport/bibexport.sh \ texmf-dist/scripts/bundledoc/arlatex \ texmf-dist/scripts/bundledoc/bundledoc \ texmf-dist/scripts/cachepic/cachepic.tlu \ texmf-dist/scripts/cjk-gs-integrate/cjk-gs-integrate.pl \ texmf-dist/scripts/checkcites/checkcites.lua \ texmf-dist/scripts/context/perl/mptopdf.pl \ texmf-dist/scripts/context/stubs/unix/context \ texmf-dist/scripts/context/stubs/unix/contextjit \ texmf-dist/scripts/context/stubs/unix/luatools \ texmf-dist/scripts/context/stubs/unix/mtxrun \ texmf-dist/scripts/context/stubs/unix/mtxrunjit \ texmf-dist/scripts/context/stubs/unix/texexec \ texmf-dist/scripts/context/stubs/unix/texmfstart \ texmf-dist/scripts/context/lua \ texmf-dist/scripts/convbkmk/convbkmk.rb \ texmf-dist/scripts/crossrefware/bibdoiadd.pl \ texmf-dist/scripts/crossrefware/bibzbladd.pl \ texmf-dist/scripts/crossrefware/ltx2crossrefxml.pl \ texmf-dist/scripts/ctanify/ctanify \ texmf-dist/scripts/ctanupload/ctanupload.pl \ texmf-dist/scripts/de-macro/de-macro \ texmf-dist/scripts/dosepsbin/dosepsbin.pl \ texmf-dist/scripts/dtxgen/dtxgen \ texmf-dist/scripts/dviasm/dviasm.py \ texmf-dist/scripts/ebong/ebong.py \ texmf-dist/scripts/epspdf/epspdf.tlu \ texmf-dist/scripts/epspdf/epspdftk.tcl \ texmf-dist/scripts/epstopdf/epstopdf.pl \ texmf-dist/scripts/exceltex/exceltex \ texmf-dist/scripts/fig4latex/fig4latex \ texmf-dist/scripts/findhyph/findhyph \ texmf-dist/scripts/fontools/afm2afm \ texmf-dist/scripts/fontools/autoinst \ texmf-dist/scripts/fontools/ot2kpx \ texmf-dist/scripts/fragmaster/fragmaster.pl \ texmf-dist/scripts/getmap/getmapdl.lua \ texmf-dist/scripts/git-latexdiff/git-latexdiff \ texmf-dist/scripts/glossaries/makeglossaries \ texmf-dist/scripts/hyperxmp/hyperxmp-add-bytecount.pl \ texmf-dist/scripts/installfont/installfont-tl \ texmf-dist/scripts/jfontmaps/kanji-config-updmap-sys.sh \ texmf-dist/scripts/jfontmaps/kanji-config-updmap.pl \ texmf-dist/scripts/jfontmaps/kanji-fontmap-creator.pl \ texmf-dist/scripts/kotex-utils/jamo-normalize.pl \ texmf-dist/scripts/kotex-utils/komkindex.pl \ texmf-dist/scripts/kotex-utils/ttf2kotexfont.pl \ texmf-dist/scripts/latex-git-log/latex-git-log \ texmf-dist/scripts/latex2man/latex2man \ texmf-dist/scripts/latexdiff/latexdiff-vc.pl \ texmf-dist/scripts/latexdiff/latexdiff.pl \ texmf-dist/scripts/latexdiff/latexrevise.pl \ texmf-dist/scripts/latexfileversion/latexfileversion \ texmf-dist/scripts/latexindent/latexindent.pl \ texmf-dist/scripts/latexmk/latexmk.pl \ texmf-dist/scripts/latexpand/latexpand \ texmf-dist/scripts/light-latex-make/llmk.lua \ texmf-dist/scripts/lilyglyphs/lily-glyph-commands.py \ texmf-dist/scripts/lilyglyphs/lily-image-commands.py \ texmf-dist/scripts/lilyglyphs/lily-rebuild-pdfs.py \ texmf-dist/scripts/listbib/listbib \ texmf-dist/scripts/listings-ext/listings-ext.sh \ texmf-dist/scripts/ltxfileinfo/ltxfileinfo \ texmf-dist/scripts/ltximg/ltximg.pl \ texmf-dist/scripts/lua2dox/lua2dox_filter \ texmf-dist/scripts/luaotfload/luaotfload-tool.lua \ texmf-dist/scripts/m-tx/m-tx.lua \ texmf-dist/scripts/match_parens/match_parens \ texmf-dist/scripts/mathspic/mathspic.pl \ texmf-dist/scripts/mf2pt1/mf2pt1.pl \ texmf-dist/scripts/mkgrkindex/mkgrkindex \ texmf-dist/scripts/mkjobtexmf/mkjobtexmf.pl \ texmf-dist/scripts/mkpic/mkpic \ texmf-dist/scripts/multibibliography/multibibliography.pl \ texmf-dist/scripts/musixtex/musixflx.lua \ texmf-dist/scripts/musixtex/musixtex.lua \ texmf-dist/scripts/attachfile2/pdfatfi.pl \ texmf-dist/scripts/pax/pdfannotextractor.pl \ texmf-dist/scripts/pdfcrop/pdfcrop.pl \ texmf-dist/scripts/pdfjam/pdf180 \ texmf-dist/scripts/pdfjam/pdf270 \ texmf-dist/scripts/pdfjam/pdf90 \ texmf-dist/scripts/pdfjam/pdfbook \ texmf-dist/scripts/pdfjam/pdfflip \ texmf-dist/scripts/pdfjam/pdfjam \ texmf-dist/scripts/pdfjam/pdfjam-pocketmod \ texmf-dist/scripts/pdfjam/pdfjam-slides3up \ texmf-dist/scripts/pdfjam/pdfjam-slides6up \ texmf-dist/scripts/pdfjam/pdfjoin \ texmf-dist/scripts/pdfjam/pdfnup \ texmf-dist/scripts/pdfjam/pdfpun \ texmf-dist/scripts/pedigree-perl/pedigree.pl \ texmf-dist/scripts/perltex/perltex.pl \ texmf-dist/scripts/pfarrei/a5toa4.tlu \ texmf-dist/scripts/pfarrei/pfarrei.tlu \ texmf-dist/scripts/pkfix-helper/pkfix-helper \ texmf-dist/scripts/pkfix/pkfix.pl \ texmf-dist/scripts/pmx/pmx2pdf.lua \ texmf-dist/scripts/pmxchords/pmxchords.lua \ texmf-dist/scripts/ps2eps/ps2eps.pl \ texmf-dist/scripts/pst-pdf/ps4pdf \ texmf-dist/scripts/pst2pdf/pst2pdf.pl \ texmf-dist/scripts/ptex2pdf/ptex2pdf.lua \ texmf-dist/scripts/purifyeps/purifyeps \ texmf-dist/scripts/pygmentex/pygmentex.py \ texmf-dist/scripts/pythontex/depythontex.py \ texmf-dist/scripts/pythontex/pythontex.py \ texmf-dist/scripts/rubik/rubikrotation.pl \ texmf-dist/scripts/simpdftex/simpdftex \ texmf-dist/scripts/spix/spix.py \ texmf-dist/scripts/splitindex/splitindex.pl \ texmf-dist/scripts/sty2dtx/sty2dtx.pl \ texmf-dist/scripts/svn-multi/svn-multi.pl \ texmf-dist/scripts/tex4ht/ht.sh \ texmf-dist/scripts/tex4ht/htcontext.sh \ texmf-dist/scripts/tex4ht/htlatex.sh \ texmf-dist/scripts/tex4ht/htmex.sh \ texmf-dist/scripts/tex4ht/httex.sh \ texmf-dist/scripts/tex4ht/httexi.sh \ texmf-dist/scripts/tex4ht/htxelatex.sh \ texmf-dist/scripts/tex4ht/htxetex.sh \ texmf-dist/scripts/tex4ht/mk4ht.pl \ texmf-dist/scripts/texcount/texcount.pl \ texmf-dist/scripts/texdef/texdef.pl \ texmf-dist/scripts/texdiff/texdiff \ texmf-dist/scripts/texdirflatten/texdirflatten \ texmf-dist/scripts/texdoc/texdoc.tlu \ texmf-dist/scripts/texdoctk/texdoctk.pl \ texmf-dist/scripts/texfot/texfot.pl \ texmf-dist/scripts/texlive/allcm.sh \ texmf-dist/scripts/texlive/allneeded.sh \ texmf-dist/scripts/texlive/dvi2fax.sh \ texmf-dist/scripts/texlive/dvired.sh \ texmf-dist/scripts/texlive/e2pall.pl \ texmf-dist/scripts/texlive/fmtutil-sys.sh \ texmf-dist/scripts/texlive/fmtutil.pl \ texmf-dist/scripts/texlive/fontinst.sh \ texmf-dist/scripts/texlive/kpsetool.sh \ texmf-dist/scripts/texlive/kpsewhere.sh \ texmf-dist/scripts/texlive/ps2frag.sh \ texmf-dist/scripts/texlive/pslatex.sh \ texmf-dist/scripts/texlive/rubibtex.sh \ texmf-dist/scripts/texlive/rumakeindex.sh \ texmf-dist/scripts/texlive/rungs.tlu \ texmf-dist/scripts/texlive/texconfig-dialog.sh \ texmf-dist/scripts/texlive/texconfig-sys.sh \ texmf-dist/scripts/texlive/texconfig.sh \ texmf-dist/scripts/texlive/texlinks.sh \ texmf-dist/scripts/texlive/tlmgr.pl \ texmf-dist/scripts/texlive/updmap-sys.sh \ texmf-dist/scripts/texlive/updmap.pl \ texmf-dist/scripts/texliveonfly/texliveonfly.py \ texmf-dist/scripts/texloganalyser/texloganalyser \ texmf-dist/scripts/thumbpdf/thumbpdf.pl \ texmf-dist/scripts/tikztosvg/tikztosvg \ texmf-dist/scripts/typeoutfileinfo/typeoutfileinfo.sh \ texmf-dist/scripts/ulqda/ulqda.pl \ texmf-dist/scripts/urlbst/urlbst texmf-dist/scripts/vpe/vpe.pl \ texmf-dist/scripts/yplan/yplan \ texmf-dist/scripts/bib2gls/bib2gls.sh \ texmf-dist/scripts/bib2gls/convertgls2bib.sh \ texmf-dist/scripts/checklistings/checklistings.sh \ texmf-dist/scripts/chklref/chklref.pl \ texmf-dist/scripts/clojure-pamphlet/pamphletangler \ texmf-dist/scripts/cluttex/cluttex.lua \ texmf-dist/scripts/crossrefware/bbl2bib.pl \ texmf-dist/scripts/crossrefware/bibmradd.pl \ texmf-dist/scripts/crossrefware/biburl2doi.pl \ texmf-dist/scripts/ctan-o-mat/ctan-o-mat.pl \ texmf-dist/scripts/ctanbib/ctanbib \ texmf-dist/scripts/diadia/diadia.lua \ texmf-dist/scripts/dviinfox/dviinfox.pl \ texmf-dist/scripts/glossaries/makeglossaries-lite.lua \ texmf-dist/scripts/jfmutil/jfmutil.pl \ texmf-dist/scripts/ketcindy/ketcindy.pl \ texmf-dist/scripts/l3build/l3build.lua \ texmf-dist/scripts/latex-papersize/latex-papersize.py \ texmf-dist/scripts/latex2nemeth/latex2nemeth \ texmf-dist/scripts/lwarp/lwarpmk.lua \ texmf-dist/scripts/make4ht/make4ht \ texmf-dist/scripts/makedtx/makedtx.pl \ texmf-dist/scripts/pdfbook2/pdfbook2 \ texmf-dist/scripts/pdflatexpicscale/pdflatexpicscale.pl \ texmf-dist/scripts/pdftex-quiet/pdftex-quiet \ texmf-dist/scripts/pdfxup/pdfxup \ texmf-dist/scripts/petri-nets/pn2pdf \ texmf-dist/scripts/ptex-fontmaps/kanji-config-updmap-sys.sh \ texmf-dist/scripts/ptex-fontmaps/kanji-config-updmap-user.sh \ texmf-dist/scripts/ptex-fontmaps/kanji-config-updmap.pl \ texmf-dist/scripts/ptex-fontmaps/kanji-fontmap-creator.pl \ texmf-dist/scripts/srcredact/srcredact.pl \ texmf-dist/scripts/tex4ebook/tex4ebook \ texmf-dist/scripts/tex4ht/xhlatex.sh \ texmf-dist/scripts/texlive-extra/allcm.sh \ texmf-dist/scripts/texlive-extra/allneeded.sh \ texmf-dist/scripts/texlive-extra/dvi2fax.sh \ texmf-dist/scripts/texlive-extra/dvired.sh \ texmf-dist/scripts/texlive-extra/e2pall.pl \ texmf-dist/scripts/texlive-extra/fontinst.sh \ texmf-dist/scripts/texlive-extra/ps2frag.sh \ texmf-dist/scripts/texlive-extra/pslatex.sh \ texmf-dist/scripts/texlive-extra/rubibtex.sh \ texmf-dist/scripts/texlive-extra/rumakeindex.sh \ texmf-dist/scripts/texlive-extra/texconfig-dialog.sh \ texmf-dist/scripts/texlive-extra/texconfig-sys.sh \ texmf-dist/scripts/texlive-extra/texconfig.sh \ texmf-dist/scripts/texlive-extra/texlinks.sh \ texmf-dist/scripts/texlive/fmtutil-user.sh \ texmf-dist/scripts/texlive/mktexlsr \ texmf-dist/scripts/texlive/mktexmf \ texmf-dist/scripts/texlive/mktexpk \ texmf-dist/scripts/texlive/mktextfm \ texmf-dist/scripts/texlive/updmap-user.sh \ texmf-dist/scripts/texosquery/texosquery-jre5.sh \ texmf-dist/scripts/texosquery/texosquery-jre8.sh \ texmf-dist/scripts/texosquery/texosquery.sh \ texmf-dist/scripts/texplate/texplate.sh \ texmf-dist/scripts/tlcockpit/tlcockpit.sh \ texmf-dist/scripts/tlshell/tlshell.tcl \ texmf-dist/scripts/webquiz/webquiz.py \ texmf-dist/scripts/wordcount/wordcount.sh \ texmf-dist/scripts/xindex/xindex.lua \ texmf-dist/texconfig/tcfmgr \ texmf-dist/texconfig/tcfmgr.map \ PKG_CREATE_VERBOSE= yes TEXHASHDIRS= ${TEXMFDIR} ${TEXMFDISTDIR} do-install: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-${PORTVERSION}${PKGNAMESUFFIX}${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS} -C ${STAGEDIR}${PREFIX}/share \ --strip-components 1 --no-same-permission --no-same-owner ${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/tex/latex/base ${REINPLACE_CMD} -i '' 's/\\def\\magyar@sugg@ie@low#1#2#3/\\def\\magyar@sugg@ie@low\\protect #1#2#3/' ${STAGEDIR}${PREFIX}/share/texmf-dist/tex/generic/babel-hungarian/magyar.ldf ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${PREFIX}/share/texmf-dist -type d -empty | ${SORT} -r | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} post-install: @${REINPLACE_CMD} -i '' -e '1s|/bin/bash|${bash_CMD}|' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/scripts/logicpuzzle/createlpsudoku \ ${STAGEDIR}${PREFIX}/share/texmf-dist/scripts/logicpuzzle/lpsmag \ ${STAGEDIR}${PREFIX}/share/texmf-dist/scripts/pgf/pgfrevisionfile.sh @${REINPLACE_CMD} -i '' -e '1s|/usr/bin/perl|${perl_CMD}|' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/scripts/mycv/mycv_split_contents.pl @${REINPLACE_CMD} -i '' -E -e '1s|/usr/bin/env python[23]?|${python_CMD}|; \ 1s|/usr/bin/python|${python_CMD}|;' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/asymptote/GUI/*.py \ ${STAGEDIR}${PREFIX}/share/texmf-dist/scripts/webquiz/webquiz \ ${STAGEDIR}${PREFIX}/share/texmf-dist/scripts/*/*.py @${REINPLACE_CMD} -i '' -E -e '/ec\.tex/d' \ ${STAGEDIR}${PREFIX}/share/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-zh-latn-pinyin.tex \ ${STAGEDIR}${PREFIX}/share/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-liturgic.tex .include diff --git a/print/texlive-tlmgr/Makefile b/print/texlive-tlmgr/Makefile index aec9c80a26fa..e313be560d5c 100644 --- a/print/texlive-tlmgr/Makefile +++ b/print/texlive-tlmgr/Makefile @@ -1,61 +1,59 @@ PORTNAME= texlive PORTVERSION= ${TEXLIVE_VERSION} PORTREVISION= 1 CATEGORIES= print perl5 MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ PKGNAMESUFFIX= -tlmgr DISTFILES= ${PORTNAME}-${PORTVERSION}-extra${EXTRACT_SUFX} \ ${PORTNAME}-${PORTVERSION}-source${EXTRACT_SUFX} \ ${TLPKG_FILE}.tar.gz DIST_SUBDIR= TeX EXTRACT_ONLY= ${PORTNAME}-${PORTVERSION}-extra${EXTRACT_SUFX} MAINTAINER= tex@FreeBSD.org COMMENT= TeXLive manager modules -RUN_DEPENDS= tex-kpathsea>=6.3.3:devel/tex-kpathsea - -USES= cpe perl5 tar:xz +USES= cpe perl5 tar:xz tex CPE_VENDOR= tug USE_PERL5= run USE_TEX= kpathsea NO_ARCH= yes NO_BUILD= yes TLPKG_FILE= ${PORTNAME}-${PORTVERSION}-tlpdb-full EXTRACT_AFTER_ARGS_SOURCE= | ${TAR} -xf - -C ${WRKDIR} \ --no-same-permission --no-same-owner \ ${PORTNAME}-${PORTVERSION}-source/texk/texlive/linked_scripts/texlive PATCH_WRKSRC= ${WRKDIR} post-extract: ${CAT} ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-${PORTVERSION}-source${EXTRACT_SUFX} \ ${EXTRACT_AFTER_ARGS_SOURCE} do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/scripts/texlive ${INSTALL_SCRIPT} \ ${WRKDIR}/${PORTNAME}-${PORTVERSION}-source/texk/texlive/linked_scripts/texlive/tlmgr.pl \ ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/scripts/texlive cd ${STAGEDIR}${PREFIX}/bin && \ ${LN} -s ../${TEXMFDISTDIR}/scripts/texlive/tlmgr.pl tlmgr @${MKDIR} ${STAGEDIR}${PREFIX}/${SITE_PERL_REL}/TeXLive ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}-${PORTVERSION}-extra/tlpkg/TeXLive/*.pm \ ${STAGEDIR}${PREFIX}/${SITE_PERL_REL}/TeXLive ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}-${PORTVERSION}-extra/tlpkg/TeXLive/trans.pl \ ${STAGEDIR}${PREFIX}/${SITE_PERL_REL}/TeXLive @${MKDIR} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR} ${TOUCH} ${STAGEDIR}${PREFIX}/${TEXMFDISTDIR}/.texlive-tlmgr ${MKDIR} ${STAGEDIR}/var/db/tlpkg ${TOUCH} ${STAGEDIR}/var/db/tlpkg/tlmgr.log ${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/${TLPKG_FILE}.tar.gz -C \ ${STAGEDIR}/var/db/tlpkg/ texlive.tlpdb ${INSTALL_DATA} ${LOCALBASE}/share/texmf-dist/web2c/texmf.cnf \ ${STAGEDIR}/var/db/tlpkg ${MKDIR} ${STAGEDIR}/var/db/tlpkg/backups ${MKDIR} ${STAGEDIR}/var/db/tlpkg/tlpobj ${LN} -s /var/db/tlpkg ${STAGEDIR}${PREFIX}/share/tlpkg .include diff --git a/print/texvc/Makefile b/print/texvc/Makefile index 648648fdac93..7bbd7d208840 100644 --- a/print/texvc/Makefile +++ b/print/texvc/Makefile @@ -1,31 +1,31 @@ PORTNAME= texvc PORTVERSION= 20050202 PORTREVISION= 6 CATEGORIES= print MASTER_SITES= SF/wikipedia/Support%20files/${PORTNAME}%20Linux-x86%20source%20%2B%20binary DISTNAME= ${PORTNAME}-linux-x86-${PORTVERSION} MAINTAINER= ports@FreeBSD.org COMMENT= Convert latex equations to HTML, MathML, PNG WWW= https://www.mediawiki.org/wiki/Texvc USES= gmake USE_OCAML= yes NO_OCAML_RUNDEPENDS= yes BUILD_WRKSRC= ${WRKSRC}/src PLIST_FILES= bin/texvc OPTIONS_DEFINE= RASTER OPTIONS_DEFAULT:= ${OPTIONS_DEFINE} RASTER_DESC= rasterization support -RASTER_USES= ghostscript:run magick:6,run +RASTER_USES= ghostscript:run magick:6,run tex RASTER_USE= TEX=latex,dvipsk MAKE_JOBS_UNSAFE= yes do-install: ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/texvc ${STAGEDIR}${PREFIX}/bin .include diff --git a/print/typetools/Makefile b/print/typetools/Makefile index 4e15b4b9a99d..eb0b432b893a 100644 --- a/print/typetools/Makefile +++ b/print/typetools/Makefile @@ -1,22 +1,23 @@ PORTNAME= typetools PORTVERSION= 2.108 CATEGORIES= print MASTER_SITES= http://www.lcdf.org/type/ DISTNAME= lcdf-${PORTNAME}-${PORTVERSION} MAINTAINER= bofh@FreeBSD.org COMMENT= Tools for manipulating fonts WWW= https://www.lcdf.org/type/ #typetools LICENSE= GPLv2 +USES= tex USE_TEX= kpathsea GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-kpathsea=${LOCALBASE} DATADIR= ${PREFIX}/share/lcdf-${PORTNAME} CONFLICTS_INSTALL= texlive-base .include diff --git a/print/xpdfopen/Makefile b/print/xpdfopen/Makefile index 78e65f2e998c..90d40890f04e 100644 --- a/print/xpdfopen/Makefile +++ b/print/xpdfopen/Makefile @@ -1,28 +1,27 @@ PORTNAME= xpdfopen PORTVERSION= 0.86 PORTREVISION= 1 CATEGORIES= print MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/ DISTNAME= texlive-${TEXLIVE_VERSION}-source DIST_SUBDIR= TeX MAINTAINER= tex@FreeBSD.org COMMENT= Command line utility for PDF viewers -USES= localbase:ldflags tar:xz xorg -USE_TEX= yes +USES= localbase:ldflags tar:xz tex xorg USE_XORG= x11 xmu EXTRACT_FILES= build-aux utils/xpdfopen GNU_CONFIGURE= yes EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,} WRKSRC= ${WRKDIR}/${DISTNAME}/utils/xpdfopen PLIST_FILES= bin/pdfclose \ bin/pdfopen \ man/man1/pdfclose.1.gz \ man/man1/pdfopen.1.gz .include diff --git a/print/xtexsh/Makefile b/print/xtexsh/Makefile index f4374b2658a1..dab3dc0d2250 100644 --- a/print/xtexsh/Makefile +++ b/print/xtexsh/Makefile @@ -1,48 +1,48 @@ PORTNAME= xtexsh DISTVERSION= 1.4-2 PORTREVISION= 6 CATEGORIES= print MASTER_SITES= http://www.mat.univie.ac.at/~gerald/ftp/xtexsh/ MAINTAINER= ports@FreeBSD.org COMMENT= Tcl/Tk-based simple TeX interface WWW= https://www.mat.univie.ac.at/~gerald/ftp/xtexsh/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/LICENSE -USES= desktop-file-utils gnome shebangfix tk +USES= desktop-file-utils gnome shebangfix tex tk USE_TEX= latex SHEBANG_FILES= xtexsh WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:R} NO_BUILD= yes NO_ARCH= yes PORTDOCS= * OPTIONS_DEFINE= DOCS post-patch: @${REINPLACE_CMD} -e 's|"/etc|"${PREFIX}/etc|; \ s|exec bash|exec sh|' ${WRKSRC}/xtexsh do-install: ${INSTALL_SCRIPT} ${WRKSRC}/xtexsh ${STAGEDIR}${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/xtexsh.1.gz ${STAGEDIR}${PREFIX}/man/man1 ${INSTALL_DATA} ${WRKSRC}/xtexshrc ${STAGEDIR}${PREFIX}/etc ${INSTALL_DATA} ${WRKSRC}/xtexsh.desktop ${STAGEDIR}${PREFIX}/share/applications @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/locolor/16x16/apps ${INSTALL_DATA} ${WRKSRC}/xtexsh-mini.png \ ${STAGEDIR}${PREFIX}/share/icons/locolor/16x16/apps/xtexsh.png @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/locolor/32x32/apps ${INSTALL_DATA} ${WRKSRC}/xtexsh.png \ ${STAGEDIR}${PREFIX}/share/icons/locolor/32x32/apps/xtexsh.png ${INSTALL_DATA} ${WRKSRC}/xtexsh.png ${STAGEDIR}${PREFIX}/share/pixmaps do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/index.html ${STAGEDIR}${DOCSDIR} .include diff --git a/science/code_saturne/Makefile b/science/code_saturne/Makefile index f26fe6722f13..f4c0d88a3ffc 100644 --- a/science/code_saturne/Makefile +++ b/science/code_saturne/Makefile @@ -1,129 +1,130 @@ PORTNAME= code_saturne PORTVERSION= 7.1.1 DISTVERSIONPREFIX= v PORTREVISION= 3 CATEGORIES= science parallel MAINTAINER= thierry@FreeBSD.org COMMENT= EDF's general purpose Computational Fluid Dynamics (CFD) software WWW= https://www.code-saturne.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= gsed:textproc/gsed LIB_DEPENDS= libsysinfo.so:devel/libsysinfo \ libcgns.so:science/cgnslib \ libhdf5.so:science/hdf5 \ libmedC.so:french/med RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>0:math/py-matplotlib@${PY_FLAVOR} \ xmgrace:math/grace \ bash:shells/bash \ xterm:x11/xterm USE_GITHUB= yes GH_ACCOUNT= code-saturne USES= autoreconf bison compiler:c11 fortran gettext gnome gmake \ iconv localbase libtool pyqt:5 python:3.7+ shebangfix xorg USE_GNOME= libxml2 USE_PYQT= pyqt5 sip USE_XORG= x11 SHEBANG_FILES= install_saturne.py tests/unittests.py bin/*.py build-aux/*.py CFLAGS+= -D__XSI_VISIBLE CPPFLAGS+= -I${LOCALBASE}/include -I${LOCALBASE}/include/libxml2 GNU_CONFIGURE= yes CONFIGURE_ARGS= --without-salome --without-salome-yacs --without-salome-kernel \ --without-salome-gui --enable-python CONFIGURE_ENV= ac_cv_path_SED=${LOCALBASE}/bin/gsed USE_LDCONFIG= yes INSTALL_TARGET= install-strip BINARY_ALIAS= python=${PYTHON_CMD} \ pyrcc5=pyrcc5-${PYTHON_VER} \ pyuic5=pyuic5-${PYTHON_VER} OPTIONS_DEFINE= DOCS EXAMPLES BATCH BLAS HYPRE MPICH MUMPS PETSC SCOTCH OPTIONS_DEFAULT= BATCH BLAS HYPRE METIS MPICH MUMPS PETSC SCOTCH OPTIONS_RADIO= METIS OPTIONS_RADIO_METIS= METIS PARMETIS OPTIONS_SUB= yes BLAS_DESC= Support of BLAS BLAS_USES= blaslapack BLAS_CONFIGURE_ON= --with-blas=yes --with-blas-type=BLAS \ --with-blas-include=${LOCALBASE}/include/cblas \ --with-blas-lib=${LOCALBASE}/lib BLAS_LIB_DEPENDS= libcblas.so:math/cblas BATCH_DESC= Use Torque to submit batches BATCH_RUN_DEPENDS= pbs-config:sysutils/torque HYPRE_DESC= Support of HYPRE HYPRE_BUILD_DEPENDS= hypre>0:science/hypre HYPRE_RUN_DEPENDS= hypre>0:science/hypre HYPRE_CONFIGURE_ON= --with-hypre="${LOCALBASE}" MPICH_USES= mpi MPICH_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py>0:net/py-mpi4py@${PY_FLAVOR} MPICH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py>0:net/py-mpi4py@${PY_FLAVOR} MPICH_CONFIGURE_WITH= mpi METIS_DESC= Support of METIS METIS_LIB_DEPENDS= libmetis.so:math/metis METIS_CONFIGURE_ON= --with-metis-include="${LOCALBASE}/include" MUMPS_DESC= Support of MUMPS MUMPS_LIB_DEPENDS= libsmumps.so:math/mumps MUMPS_CONFIGURE_ON= --with-mumps="${LOCALBASE}" MUMPS_CONFIGURE_ENV= MUMPS_LIBS="-lmpiseq -llapack" PARMETIS_DESC= Support of ParMETIS PARMETIS_LIB_DEPENDS= libparmetis.so:math/parmetis PARMETIS_CONFIGURE_ON= --with-metis-include="${LOCALBASE}/include/parmetis" \ --with-metis-lib="${LOCALBASE}/lib/parmetis" PARMETIS_CONFIGURE_ENV= LIBS=-lexecinfo PETSC_DESC= Support of PETSc PETSC_LIB_DEPENDS= libpetsc.so:science/PETSc PETSC_CONFIGURE_ON= --with-petsc="${LOCALBASE}" SCOTCH_DESC= Support of Scotch SCOTCH_LIB_DEPENDS= libscotch.so:cad/scotch SCOTCH_CONFIGURE_ON= --with-scotch-include="${LOCALBASE}/include" TEST_TARGET= check .if defined(PACKAGE_BUILDING) TERM= vt100 # Force for pointyhat to override su .else TERM?= vt100 # Default value needed for tput in jail or tinderbox .endif .include .if ${ARCH} == "i386" # /wrkdirs/usr/ports/science/code_saturne/work/code_saturne-5.3.0/src/apps/.libs # /libsaturne.so: # undefined reference to `__atomic_compare_exchange' CONFIGURE_ARGS+= --disable-openmp .endif .if ${PORT_OPTIONS:MDOCS} +USES+= tex USE_TEX= tex:build BUILD_DEPENDS+= fig2dev:print/fig2dev \ doxygen:devel/doxygen \ dot:graphics/graphviz \ dvips:print/tex-dvipsk \ ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} BINARY_ALIAS+= sphinx-build=sphinx-build-${PYTHON_VER} ALL_TARGET= all pdf DOCS= AUTHORS ChangeLog README .endif pre-configure: ${REINPLACE_CMD} -e 's|/usr/bin/env python|${PYTHON_CMD}|' \ ${WRKSRC}/Makefile.am post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/code_saturne/cs_solver post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DOCS:C|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/science/dynare/Makefile b/science/dynare/Makefile index aeed27100f1e..03965b522b4e 100644 --- a/science/dynare/Makefile +++ b/science/dynare/Makefile @@ -1,55 +1,55 @@ PORTNAME= dynare DISTVERSION= 5.2 PORTREVISION= 2 CATEGORIES= science # economics MASTER_SITES= https://www.dynare.org/release/source/ MAINTAINER= yuri@FreeBSD.org COMMENT= Software platform for handling a wide class of economic models WWW= https://www.dynare.org/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BROKEN_aarch64= cannot open module file 'ieee_arithmetic.mod' for reading at (1): No such file or directory BUILD_DEPENDS= ${LOCALBASE}/include/boost/tokenizer.hpp:devel/boost-libs LIB_DEPENDS= libhdf5.so:science/hdf5 \ libmatio.so:math/matio \ libopenblas.so:math/openblas \ libsz.so:science/libaec RUN_DEPENDS= epstool:graphics/epstool \ gnuplot:math/gnuplot \ pstoedit:graphics/pstoedit \ xfig:graphics/xfig # README says that these executables are required for the test suite -USES= bison compiler:c++17-lang fortran gmake localbase tar:xz +USES= bison compiler:c++17-lang fortran gmake localbase tar:xz tex USE_TEX= pdftex GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-matlab \ --disable-doc FCFLAGS+= -fPIC # required because configure tests with -shared SUB_FILES= pkg-message OPTIONS_DEFINE= OCTAVE OPTIONS_DEFAULT= OCTAVE OPTIONS_SUB= yes OCTAVE_DESC= Integrate with Octave (main way to use Dynare) OCTAVE_CONFIGURE_ENABLE= octave OCTAVE_CONFIGURE_ON= --disable-mex-kalman-steady-state # Kalman Steady State MEX file for Octave - requires the non-free library slicot-5.0 OCTAVE_BUILD_DEPENDS= octave:math/octave OCTAVE_LIB_DEPENDS= libfftw3.so:math/fftw3 \ libfftw3f.so:math/fftw3-float \ libgsl.so:math/gsl \ libumfpack.so:math/suitesparse-umfpack OCTAVE_RUN_DEPENDS= octave:math/octave post-install: # remove empty directories, see https://git.dynare.org/Dynare/dynare/-/issues/1835 @${FIND} ${STAGEDIR}${PREFIX} -type d -empty -delete .include diff --git a/science/mpqc/Makefile b/science/mpqc/Makefile index 01343110d953..7373b6b3dc81 100644 --- a/science/mpqc/Makefile +++ b/science/mpqc/Makefile @@ -1,113 +1,114 @@ PORTNAME= mpqc PORTVERSION= 2.3.1 PORTREVISION= 47 CATEGORIES= science parallel MASTER_SITES= SF MAINTAINER= yuri@FreeBSD.org COMMENT= Massively Parallel Quantum Chemistry Program WWW= https://mpqc.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= dot:graphics/graphviz LIB_DEPENDS= libint.so:science/libint RUN_DEPENDS= wish:x11-toolkits/tk-wrapper \ dot:graphics/graphviz USES= fortran gmake libtool localbase perl5 shebangfix tar:bzip2 CONFLICTS_BUILD= ga # devel/ga: it links to libarmci.so, has HAVE_ARMCI defined, and hits some bug GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-production \ --enable-shared \ --with-cc-optflags="${CFLAGS}" \ --with-cxx-optflags="${CXXFLAGS}" \ --with-sc-datadir=${DATADIR} ALL_TARGET= default INSTALL_TARGET= install install_devel DESTDIRNAME= installroot SHEBANG_FILES= src/bin/mpqc/ccarunproc src/bin/mpqc/mpqcrunproc USE_LDCONFIG= yes USE_CXXSTD= c++98 # workaround https://github.com/ValeevGroup/mpqc/issues/57 OPTIONS_DEFINE= ATLAS DOXYGEN EXAMPLES ICC MPI OPTIFLAGS OPTIONS_DEFAULT= DOXYGEN MPI OPTIONS_SUB= yes ICC_DESC= Build with ICC compiler instead ATLAS_DESC= Link with ATLAS instead of BLAS OPTIFLAGS_DESC= Build with optimized flags ATLAS_USES= blaslapack:atlas ATLAS_USES_OFF= blaslapack:netlib DOXYGEN_CONFIGURE_ENABLE= doxygen-man DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \ dot:graphics/graphviz +DOXYGEN_USES= tex DOXYGEN_USE= TEX=base,dvipsk,pdftex ICC_BUILD_DEPENDS= ${LOCALBASE}/intel_cc_80/bin/icc:lang/icc MPI_CONFIGURE_ENABLE= parallel MPI_LIB_DEPENDS= libmpich.so:net/mpich MPI_LDFLAGS= -lmpich # build fails to supply libmpich.so to link OPTIFLAGS_CFLAGS= -ffast-math OPTIFLAGS_CXXFLAGS= -ffast-math .include .if ${PORT_OPTIONS:MICC} CC= ${LOCALBASE}/intel_cc_80/bin/icc CXX= ${LOCALBASE}/intel_cc_80/bin/icpc CFLAGS= -O3 -tpp7 -xMKW -Vaxlib CXXFLAGS= -O3 -tpp7 -xMKW -Vaxlib LIBS+= -lsvml .endif post-patch: @${REINPLACE_CMD} \ -e 's/-lblas/${BLASLIB}/' -e 's/-llapack/${LAPACKLIB}/' \ -e 's/pthread_join(0,0)/pthread_create(0,0,0,0)/' \ -e 's|/usr/bin/wish|${LOCALBASE}/bin/wish|' \ ${WRKSRC}/configure @${REINPLACE_CMD} \ 's|#include |#include <${WRKSRC}/src/lib/chemistry/qc/mbptr12/f77sym.h>|' \ ${WRKSRC}/src/lib/chemistry/qc/mbptr12/blas.h \ ${WRKSRC}/src/lib/chemistry/qc/mbptr12/lapack.h post-configure: # workaround: https://github.com/ValeevGroup/mpqc/issues/56 @${REINPLACE_CMD} -e ' \ s|/\* #undef USING_NAMESPACE_STD \*/|#define USING_NAMESPACE_STD 1|; \ s|/\* #undef HAVE_SGETN \*/|#define HAVE_SGETN 1|' \ ${WRKSRC}/src/lib/scconfig.h do-build-DOXYGEN-on: @(cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS}) ${RM} ${WRKSRC}/doc/man/man1/_* ${WRKSRC}/doc/man/man3/_* do-install-DOXYGEN-on: @(cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} \ install install_man) ${MV} ${STAGEDIR}${PREFIX}/html ${STAGEDIR}${DOCSDIR} do-install-EXAMPLES-on: @(cd ${WRKSRC}/doc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} \ install_samples) ${MV} ${STAGEDIR}${PREFIX}/examples/mp2 ${STAGEDIR}${EXAMPLESDIR} ${RMDIR} ${STAGEDIR}${PREFIX}/examples post-install: (cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} scpr molrender mpqc scls) ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so validate: (cd ${WRKSRC}/src/bin/mpqc/validate && \ ${MAKE_CMD} check0 && \ ${MAKE_CMD} check0_run && \ ${MAKE_CMD} check0_chk) .include diff --git a/textproc/bibtex2html/Makefile b/textproc/bibtex2html/Makefile index 55e341b73fb5..0dd8cd983514 100644 --- a/textproc/bibtex2html/Makefile +++ b/textproc/bibtex2html/Makefile @@ -1,34 +1,35 @@ PORTNAME= bibtex2html PORTVERSION= 1.99 CATEGORIES= textproc print MASTER_SITES= http://www.lri.fr/~filliatr/ftp/bibtex2html/ MAINTAINER= gerald@FreeBSD.org COMMENT= Tools for searching BibTeX and translating from BibTeX to HTML WWW= https://www.lri.fr/~filliatr/bibtex2html/ LICENSE= GPLv2 BUILD_DEPENDS= ocaml:lang/ocaml USES= gmake perl5 GNU_CONFIGURE= yes OPTIONS_DEFINE= PDFDOCS PDFDOCS_DESC= ${DOCS_DESC} PDFDOCS_CONFIGURE_ENABLE= doc +PDFDOCS_USES= tex PDFDOCS_USE= TEX=latex:build PDFDOCS_BUILD_DEPENDS= hevea:textproc/hevea PDFDOCS_INSTALL_TARGET= install install-doc PLIST_FILES= bin/aux2bib bin/bib2bib bin/bibtex2html \ man/man1/bibtex2html.1.gz man/man1/bib2bib.1.gz man/man1/aux2bib.1.gz .include .if ${PORT_OPTIONS:MPDFDOCS} PORTDOCS= * .endif .include diff --git a/textproc/bibtool/Makefile b/textproc/bibtool/Makefile index 5dbaddb95f82..2f69d90c8055 100644 --- a/textproc/bibtool/Makefile +++ b/textproc/bibtool/Makefile @@ -1,39 +1,40 @@ PORTNAME= bibtool PORTVERSION= 2.68 CATEGORIES= textproc print MASTER_SITES= TEX_CTAN/biblio/bibtex/utils/${PORTNAME} DISTNAME= BibTool-${PORTVERSION} MAINTAINER= ports@FreeBSD.org COMMENT= Command line manipulation of BibTeX files WWW= https://ctan.org/tex-archive/biblio/bibtex/utils/bibtool/ LICENSE= GPLv2+ BROKEN= does not build: Failed to load "fontloader" module "basics-gen" +USES= tex USE_TEX= latex:build luatex:build GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-kpathsea CONFIGURE_ENV= LOCALBASE=${LOCALBASE} WRKSRC= ${WRKDIR}/BibTool MAKEFILE= makefile INSTALL_TARGET= install install.man PORTDOCS= bibtool.pdf ref_card.pdf c_lib.pdf OPTIONS_DEFINE= DOCS post-patch: ${REINPLACE_CMD} 's/bibtex$$/&8/' ${WRKSRC}/doc/Makefile post-build: cd ${WRKSRC} && ${MAKE} doc && ${MAKE} doc post-install: ${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC}/doc && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME} .include diff --git a/textproc/dblatex/Makefile b/textproc/dblatex/Makefile index d6b42199b50b..86e8f409c66f 100644 --- a/textproc/dblatex/Makefile +++ b/textproc/dblatex/Makefile @@ -1,34 +1,34 @@ PORTNAME= dblatex DISTVERSION= 0.3.12 CATEGORIES= textproc MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION} DISTNAME= ${PORTNAME}3-${PORTVERSION} MAINTAINER= bofh@FreeBSD.org COMMENT= DocBook to LaTeX/ConTeXt Publishing WWW= http://dblatex.sourceforge.net/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYRIGHT BUILD_DEPENDS= ${LOCALBASE}/share/texmf-dist/tex/generic/iftex/ifxetex.sty:print/texlive-texmf RUN_DEPENDS= docbook-xml>0:textproc/docbook-xml \ xsltproc:textproc/libxslt -USES= python:3.5+ tar:bzip2 +USES= python:3.5+ tar:bzip2 tex USE_PYTHON= autoplist distutils noflavors PYDISTUTILS_INSTALLARGS+= --catalogs=${LOCALBASE}/share/xml/catalog.ports \ --prefix=${PREFIX} USE_TEX= dvipsk:run tex NO_ARCH= yes OPTIONS_DEFINE= DOCS post-patch: @${REINPLACE_CMD} -e '/SHELL_SCRIPT/ s|#!.*|#!${PYTHON_CMD}|' ${WRKSRC}/setup.py post-patch-DOCS-off: @${REINPLACE_CMD} -e '/pdfdocs),/d ; /htmldoc)/d' ${WRKSRC}/setup.py .include diff --git a/textproc/docbook-utils/Makefile b/textproc/docbook-utils/Makefile index 26bbe2782bb0..bcf5cd0a94ef 100644 --- a/textproc/docbook-utils/Makefile +++ b/textproc/docbook-utils/Makefile @@ -1,45 +1,46 @@ PORTNAME= docbook-utils PORTVERSION= 0.6.14 PORTREVISION= 13 CATEGORIES= textproc MASTER_SITES= SOURCEWARE/docbook-tools/new-trials/SOURCES MAINTAINER= ports@FreeBSD.org COMMENT= Generates various output formats from DocBook SGML documents WWW= http://sources.redhat.com/docbook-tools/ BUILD_DEPENDS+= docbook-sgml>0:textproc/docbook-sgml \ dsssl-docbook-modular>0:textproc/dsssl-docbook-modular \ nsgmls:textproc/jade RUN_DEPENDS+= dsssl-docbook-modular>0:textproc/dsssl-docbook-modular \ nsgmls:textproc/jade \ sgmlspl:textproc/p5-SGMLSpm \ lynx:www/lynx CONFLICTS= docbook2X linux-j # bin/docbook2man bin/docbook2texi bin/jw -USES= perl5 gmake shebangfix +USES= perl5 gmake shebangfix tex USE_PERL5= run USE_TEX= jadetex + GNU_CONFIGURE= yes MAKE_ARGS+= docdir="${DOCSDIR}" htmldir="${DOCSDIR}/html" NO_ARCH= yes SHEBANG_FILES= bin/sgmldiff.in perl_OLD_CMD= @perl_bindir@/perl PORTDOCS= * OPTIONS_DEFINE= DOCS post-patch: @${REINPLACE_CMD} -e 's|/etc/sgml/catalog|${PREFIX}/share/sgml/catalog|g' \ ${WRKSRC}/doc/HTML/Makefile.in @${REINPLACE_CMD} -e 's|/etc/sgml|${LOCALBASE}/share/sgml|g' \ -e 's|/usr/bin/|${LOCALBASE}/bin/|g' \ ${WRKSRC}/doc/refentry/*.sgml \ ${WRKSRC}/backends/txt pre-configure: ${RM} ${WRKSRC}/config.cache .include diff --git a/textproc/docproj-legacy/Makefile b/textproc/docproj-legacy/Makefile index d52cf626b1a7..fcd8f3db6783 100644 --- a/textproc/docproj-legacy/Makefile +++ b/textproc/docproj-legacy/Makefile @@ -1,72 +1,73 @@ PORTNAME= docproj PORTVERSION= 3.1 CATEGORIES= textproc PKGNAMESUFFIX= -legacy MAINTAINER= doceng@FreeBSD.org COMMENT= Meta-port for the FreeBSD Legacy Documentation Project WWW= https://www.freebsd.org/docproj RUN_DEPENDS= ${LOCALBASE}/share/xml/dtd/xhtml/xhtml.soc:textproc/xhtml \ ${LOCALBASE}/share/xml/xmlcharent/catalog:textproc/xmlcharent \ ${LOCALBASE}/share/xsl/iso-schematron/xslt1/iso_schematron_skeleton_for_xslt1.xsl:textproc/iso-schematron-xslt \ docbook-xsl-ns>=1.78.1_4:textproc/docbook-xsl-ns \ docbook>0:textproc/docbook \ links:www/links1 \ p5-XML-Parser>=2.41:textproc/p5-XML-Parser \ peps:graphics/peps \ pngtopnm:graphics/netpbm \ scr2png:graphics/scr2png \ scr2txt:textproc/scr2txt \ xsltproc:textproc/libxslt \ zip:archivers/zip USES= ghostscript:run metaport perl5 USE_PERL5= run OPTIONS_DEFINE= CJK DBLATEX FOP GIT GROFF IGOR JING TRANSLATOR OPTIONS_DEFAULT= CJK GIT GROFF IGOR TRANSLATOR CJK_DESC= CJK support DBLATEX_DESC= dblatex PDF renderer (experimental, requires TeXLive) FOP_DESC= FOP PDF renderer (requires Java) GIT_DESC= Git support GROFF_DESC= Groff support from ports IGOR_DESC= Igor automated proofreader for documentation JING_DESC= Jing for advanced RELAX NG validation TRANSLATOR_DESC= Tools for translators CJK_RUN_DEPENDS= html2text:textproc/html2text DBLATEX_RUN_DEPENDS= dblatex:textproc/dblatex +DBLATEX_USES= tex DBLATEX_USE= TEX=xetex FOP_RUN_DEPENDS= ${_FONTS} \ fop:textproc/fop GIT_RUN_DEPENDS= git:devel/git GROFF_USES= groff:run IGOR_RUN_DEPENDS= igor:textproc/igor JING_RUN_DEPENDS= jing:textproc/jing TRANSLATOR_RUN_DEPENDS= itstool:textproc/itstool \ msgcat:devel/gettext-tools _FONTS= ${LOCALBASE}/share/fonts/dejavu/DejaVuSansMono.ttf:x11-fonts/dejavu \ ${LOCALBASE}/share/fonts/Droid/DroidSans.ttf:x11-fonts/droid-fonts-ttf \ ${LOCALBASE}/share/fonts/GentiumPlus/GentiumPlus-Regular.ttf:x11-fonts/gentium-plus \ ${LOCALBASE}/share/fonts/Lohit/Lohit-Bengali.ttf:x11-fonts/lohit _FONTS_CJK= ${LOCALBASE}/share/fonts/ipa/ipam.otf:japanese/font-ipa \ ${LOCALBASE}/share/fonts/nanum-ttf/NanumBarunGothic.ttf:korean/nanumfonts-ttf \ ${LOCALBASE}/share/fonts/TrueType/gkai00mp.ttf:chinese/arphicttf .include .if ${PORT_OPTIONS:MFOP} || ${PORT_OPTIONS:MDBLATEX} ONLY_FOR_ARCHS= amd64 i386 CJK_RUN_DEPENDS+= ${_FONTS_CJK} .endif # generate MINIMALDOCPORTS for src/release/Makefile.inc.docports. # (XXX: incomplete yet) minimaldocports: @${ECHO_CMD} "MINIMALDOCPORTS= \\" @${MAKE} all-depends-list | ${SED} -e 's,^${PORTSDIR}/, ,' -e 's,$$, \\,' .include diff --git a/textproc/eqe/Makefile b/textproc/eqe/Makefile index 2e0b47cb1e30..42dd523fdfe9 100644 --- a/textproc/eqe/Makefile +++ b/textproc/eqe/Makefile @@ -1,45 +1,47 @@ PORTNAME= eqe PORTVERSION= 1.3.0 PORTREVISION= 5 CATEGORIES= textproc MASTER_SITES= http://rlehy.free.fr/ MAINTAINER= ports@FreeBSD.org COMMENT= LaTeX equation editor WWW= http://rlehy.free.fr/ LICENSE= GPLv2 # only LICENSE_FILE= ${WRKSRC}/GPL.txt BUILD_DEPENDS= p5-Gtk2>=0:x11-toolkits/p5-Gtk2 \ p5-File-Slurp>=0:devel/p5-File-Slurp \ p5-Template-Toolkit>=0:www/p5-Template-Toolkit -USES= magick:6,build perl5 shebangfix tar:bzip2 -SHEBANG_FILES= src/eqe src/eqedit +USES= magick:6,build perl5 shebangfix tar:bzip2 tex USE_TEX= tex + NO_ARCH= yes +SHEBANG_FILES= src/eqe src/eqedit + OPTIONS_DEFINE= DOCS MAKE_ARGS= PREFIX=${PREFIX} PORTDOCS= TODO changelog README FAQ copyright post-patch: @${REINPLACE_CMD} -e 's,^\(install:\) install-doc,\1,' \ ${WRKSRC}/Makefile post-install: @pod2man ${WRKSRC}/doc/eqe.pod ${WRKSRC}/doc/eqe.1 @pod2man ${WRKSRC}/doc/eqedit.pod ${WRKSRC}/doc/eqedit.1 ${INSTALL_MAN} ${WRKSRC}/doc/eqe.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 ${INSTALL_MAN} ${WRKSRC}/doc/eqedit.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} .for f in ${PORTDOCS} ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR} .endfor .include diff --git a/textproc/foiltex/Makefile b/textproc/foiltex/Makefile index a2b39e4a7cc9..550c72f71942 100644 --- a/textproc/foiltex/Makefile +++ b/textproc/foiltex/Makefile @@ -1,63 +1,64 @@ PORTNAME= foiltex PORTVERSION= 2.1.4b PORTREVISION= 5 CATEGORIES= textproc MASTER_SITES= TEX_CTAN/macros/latex/contrib/${PORTNAME} DISTFILES= foiltex.dtx foiltex.ins MAINTAINER= ports@FreeBSD.org COMMENT= Collection of LaTeX files for making foils WWW= https://ctan.org/pkg/foiltex # Converted from NO_CDROM LICENSE= foiltex LICENSE_NAME= foiltex LICENSE_TEXT= Redistribution on a not-for-profit basis only LICENSE_PERMS= dist-mirror pkg-mirror auto-accept +USES= tex USE_TEX= latex NO_WRKSUBDIR= yes NO_ARCH= yes LATEX_CMD= ${LOCALBASE}/bin/latex FOIL_DIR= share/texmf/tex/latex/${PORTNAME} FOIL_FILES= foil17.clo foil20.clo foil25.clo foil30.clo foils.cls \ foils.sty foilshrt.clo fltfonts.def PORTDOCS= foiltex.dtx foiltex.dvi PORTEXAMPLES= sampfoil.tex PLIST_FILES= ${FOIL_FILES:S,^,${FOIL_DIR}/,} OPTIONS_DEFINE= DOCS EXAMPLES do-extract: ${MKDIR} ${WRKSRC} ${CP} ${DISTDIR}/foiltex.ins ${WRKSRC}/foiltex.ins ${CP} ${DISTDIR}/foiltex.dtx ${WRKSRC}/foiltex.dtx do-build: @cd ${WRKSRC} && ${LATEX_CMD} foiltex.ins && \ ${LATEX_CMD} foiltex.dtx && \ ${LATEX_CMD} foiltex.dtx && \ ${LATEX_CMD} foiltex.dtx do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${FOIL_DIR} .for file in ${FOIL_FILES} ${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${PREFIX}/${FOIL_DIR} .endfor do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} .for file in ${PORTDOCS} ${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${DOCSDIR} .endfor do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} .for file in ${PORTEXAMPLES} ${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${EXAMPLESDIR} .endfor .include diff --git a/textproc/gastex/Makefile b/textproc/gastex/Makefile index bb382a23ed85..1c9cd96850f8 100644 --- a/textproc/gastex/Makefile +++ b/textproc/gastex/Makefile @@ -1,35 +1,36 @@ PORTNAME= gastex PORTVERSION= 3.0 CATEGORIES= textproc MASTER_SITES= http://www.lsv.ens-cachan.fr/~gastin/gastex/ DISTFILES= gastex.sty gastex.pro DIST_SUBDIR= ${PORTNAME}-${PORTVERSION} EXTRACT_ONLY= # none MAINTAINER= ports@FreeBSD.org COMMENT= Graphs and Automata Simplified in TeX WWW= https://www.lsv.ens-cachan.fr/~gastin/gastex/ -NO_ARCH= yes +USES= tex USE_TEX= latex:run + +NO_ARCH= yes NO_BUILD= yes EXAMPLES_DISTFILES= ex-gastex.tex -TEXMFDIR?= share/texmf GASTEXDIR= ${PREFIX}/${TEXMFDIR}/tex/latex/gastex GASDVIDIR= ${PREFIX}/${TEXMFDIR}/dvips/gastex OPTIONS_DEFINE= EXAMPLES do-install: @${MKDIR} ${STAGEDIR}${GASTEXDIR} @${MKDIR} ${STAGEDIR}${GASDVIDIR} ${INSTALL_DATA} ${_DISTDIR}/gastex.sty ${STAGEDIR}${GASTEXDIR} ${INSTALL_DATA} ${_DISTDIR}/gastex.pro ${STAGEDIR}${GASDVIDIR} post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${_DISTDIR}/ex-gastex.tex ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/textproc/gladtex/Makefile b/textproc/gladtex/Makefile index de33ceafdede..5cfa8d76753b 100644 --- a/textproc/gladtex/Makefile +++ b/textproc/gladtex/Makefile @@ -1,30 +1,30 @@ PORTNAME= gladtex PORTVERSION= 1.3 PORTREVISION= 4 CATEGORIES= textproc math www MASTER_SITES= SF/${PORTNAME} MAINTAINER= nivit@FreeBSD.org COMMENT= Program to replace LaTeX formulas in HTML files with images WWW= http://gladtex.sourceforge.net/ LICENSE= GPLv2 LIB_DEPENDS= libgif.so:graphics/giflib \ libpng.so:graphics/png +USES= perl5 tex USE_TEX= latex dvipsk + BINPATH= ${PREFIX}/bin INCPATH= "-I${LOCALBASE}/include" LIBPATH= "-L${LOCALBASE}/lib" MAKE_ENV+= BINPATH=${BINPATH} INCPATH="${INCPATH}" LIBPATH="${LIBPATH}" -USES= perl5 - do-install: ${INSTALL_SCRIPT} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${BINPATH}; \ ${INSTALL_PROGRAM} ${WRKSRC}/eqn2img ${STAGEDIR}${BINPATH} ${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 ${STAGEDIR}${MANPREFIX}/man/man1/ .include diff --git a/textproc/hs-lhs2tex/Makefile b/textproc/hs-lhs2tex/Makefile index 170e94e90ddc..2d173a4e6545 100644 --- a/textproc/hs-lhs2tex/Makefile +++ b/textproc/hs-lhs2tex/Makefile @@ -1,22 +1,20 @@ PORTNAME= lhs2tex PORTVERSION= 1.24 PORTREVISION= 2 CATEGORIES= textproc haskell MAINTAINER= haskell@FreeBSD.org COMMENT= Preprocessor for typesetting Haskell sources with LaTeX WWW= https://www.andres-loeh.de/lhs2tex/ LICENSE= GPLv2 -USES= cabal - -USE_TEX= latex dvipsk - +USES= cabal tex USE_CABAL= regex-base-0.94.0.2_1 \ regex-compat-0.95.2.1_2 \ regex-posix-0.96.0.1_1 +USE_TEX= latex dvipsk CABAL_EXECUTABLES= lhs2TeX .include diff --git a/textproc/latex2html/Makefile b/textproc/latex2html/Makefile index 6de790c91fde..08c004aa818e 100644 --- a/textproc/latex2html/Makefile +++ b/textproc/latex2html/Makefile @@ -1,41 +1,40 @@ PORTNAME= latex2html PORTVERSION= 2016 PORTREVISION= 1 CATEGORIES= textproc MASTER_SITES= TEX_CTAN/support/${PORTNAME} MAINTAINER= hrs@FreeBSD.org COMMENT= Convert LaTeX documents to HTML WWW= https://www.latex2html.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${LOCALBASE}/bin/anytopnm:graphics/netpbm RUN_DEPENDS:= ${BUILD_DEPENDS} CONFLICTS= ja-latex2html -USES= ghostscript perl5 +USES= ghostscript perl5 tex USE_TEX= latex dvipsk texhash GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-perl=${PERL} \ --disable-gif \ --shlibdir=${DATADIR} \ --with-texpath=${PREFIX}/${TEXMFDIR}/tex/latex/html \ --without-mktexlsr SUB_FILES= pkg-message -PLIST_SUB= TEXMFDIR=${TEXMFDIR} TEXHASHDIRS= ${TEXMFDIR} PORTDOCS= FAQ INSTALL README OPTIONS_DEFINE= DOCS post-install: ${INSTALL_MAN} ${WRKSRC}/latex2html.1 ${STAGEDIR}${MANPREFIX}/man/man1 post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} .include diff --git a/textproc/metauml/Makefile b/textproc/metauml/Makefile index da2dcecd611a..a06867767ba6 100644 --- a/textproc/metauml/Makefile +++ b/textproc/metauml/Makefile @@ -1,45 +1,46 @@ PORTNAME= metauml PORTVERSION= 0.2.5 PORTREVISION= 5 CATEGORIES= textproc MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTVERSION}/:lib \ SF/${PORTNAME}/${PORTNAME}_manual/${PORTVERSION}/:man \ SF/${PORTNAME}/${PORTNAME}_lop/1.0/:patterns DISTFILES= ${PORTNAME}_lib_${PORTVERSION}.tgz:lib \ ${PORTNAME}_manual_${PORTVERSION}.pdf:man \ lop-release.tgz:patterns DIST_SUBDIR= ${PORTNAME} EXTRACT_ONLY= ${PORTNAME}_lib_${PORTVERSION}.tgz lop-release.tgz MAINTAINER= tota@FreeBSD.org COMMENT= MetaPost library for typesetting UML diagrams WWW= http://metauml.sourceforge.net/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/thrunk/License +USES= tex USE_TEX= latex -PLIST_SUB= TEXMFDIR=${TEXMFDIR} MKTEXLSR=${MKTEXLSR} MPDIR=${MPDIR} -TEXMFDIR= share/texmf +PLIST_SUB= MKTEXLSR=${MKTEXLSR} MPDIR=${MPDIR} + MKTEXLSR= ${LOCALBASE}/bin/mktexlsr MPDIR= ${TEXMFDIR}/metapost/${PORTNAME} NO_BUILD= yes WRKSRC= ${WRKDIR}/${PORTNAME}_lib PORTDOCS= ${PORTNAME}_manual_${PORTVERSION}.pdf PORTEXAMPLES= *.1 *.jpg *.mp lop lop.html lop.pdf lop.tex OPTIONS_DEFINE= DOCS EXAMPLES do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${MPDIR} ${INSTALL_DATA} ${WRKSRC}/thrunk/*.mp ${STAGEDIR}${PREFIX}/${MPDIR} @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/${PORTDOCS} ${STAGEDIR}${DOCSDIR} @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} .for example in ${PORTEXAMPLES} ${INSTALL_DATA} ${WRKDIR}/${example} ${STAGEDIR}${EXAMPLESDIR} .endfor .include diff --git a/textproc/p5-LaTeX-Driver/Makefile b/textproc/p5-LaTeX-Driver/Makefile index 3d44ce7586ac..52017c54c91c 100644 --- a/textproc/p5-LaTeX-Driver/Makefile +++ b/textproc/p5-LaTeX-Driver/Makefile @@ -1,30 +1,30 @@ PORTNAME= LaTeX-Driver PORTVERSION= 1.2.0 CATEGORIES= textproc perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- MAINTAINER= perl@FreeBSD.org COMMENT= Perl module of LaTeX Driver WWW= https://metacpan.org/release/LaTeX-Driver LICENSE= ART10 GPLv1+ LICENSE_COMB= dual BUILD_DEPENDS= ${RUN_DEPENDS} RUN_DEPENDS= p5-Capture-Tiny>=0:devel/p5-Capture-Tiny \ p5-Class-Accessor>=0:devel/p5-Class-Accessor \ p5-Exception-Class>=0:devel/p5-Exception-Class \ p5-File-Slurp>=0:devel/p5-File-Slurp \ p5-File-pushd>=0:devel/p5-File-pushd \ p5-IPC-ShellCmd>=0:devel/p5-IPC-ShellCmd \ p5-Readonly>=0:devel/p5-Readonly PORTSCOUT= skipv:0.2002 NO_ARCH= yes -USES= perl5 +USES= perl5 tex USE_PERL5= configure USE_TEX= latex .include diff --git a/textproc/ppower4/Makefile b/textproc/ppower4/Makefile index 3ec5f5fb36f5..c9da90b4af17 100644 --- a/textproc/ppower4/Makefile +++ b/textproc/ppower4/Makefile @@ -1,56 +1,57 @@ PORTNAME= ppower4 PORTVERSION= 0.9.4 PORTREVISION= 8 CATEGORIES= textproc java MASTER_SITES= TEX_CTAN/support/${PORTNAME} DISTFILES= pp4sty.zip pp4p.jar manual.pdf leveldemo.zip DIST_SUBDIR= ${PORTNAME} EXTRACT_ONLY= pp4sty.zip leveldemo.zip MAINTAINER= ports@FreeBSD.org COMMENT= Post processor for PDF presentations made with (La)TeX WWW= https://ctan.org/tex-archive/support/ppower4/ LICENSE= GPLv2 # version not really specified -USES= zip -USE_TEX= latex +USES= tex zip USE_JAVA= yes +USE_TEX= latex + +NO_ARCH= yes NO_BUILD= yes +SUB_FILES= ppower4.sh +SUB_LIST= JARFILE=${JAR_DIR}/pp4p.jar + NO_WRKSUBDIR= yes -NO_ARCH= yes JAR_DIR= ${JAVASHAREDIR}/${PORTNAME} STY_DIR= ${PREFIX}/share/texmf/tex/latex/${PORTNAME} STY_FILES= ${WRKSRC}/pause.sty ${WRKSRC}/background.sty \ ${WRKSRC}/pp4link.sty ${WRKSRC}/mpmulti.sty EXAMPLE_FILES= ${WRKSRC}/leveldemo.tex .for i in 1 2 3 4 5 6 7 EXAMPLE_FILES+= ${WRKSRC}/example.${i} .endfor PLIST_SUB= STY_DIR="${STY_DIR:S,^${PREFIX}/,,}" \ JAR_DIR="${JAR_DIR:S,^${PREFIX}/,,}" -SUB_FILES= ppower4.sh -SUB_LIST= JARFILE=${JAR_DIR}/pp4p.jar - OPTIONS_DEFINE= DOCS EXAMPLES OPTIONS_SUB= yes do-install: @${MKDIR} ${STAGEDIR}${STY_DIR} ${INSTALL_DATA} ${STY_FILES} ${STAGEDIR}${STY_DIR} @${MKDIR} ${STAGEDIR}${JAR_DIR} ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/pp4p.jar ${STAGEDIR}${JAR_DIR} ${INSTALL_SCRIPT} ${WRKDIR}/ppower4.sh ${STAGEDIR}${PREFIX}/bin/ppower4 do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/manual.pdf \ ${STAGEDIR}${DOCSDIR} do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${EXAMPLE_FILES} ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/textproc/sowing/Makefile b/textproc/sowing/Makefile index 1d0233daff4a..d902f8901730 100644 --- a/textproc/sowing/Makefile +++ b/textproc/sowing/Makefile @@ -1,38 +1,38 @@ PORTNAME= sowing PORTVERSION= 1.1.18 PORTREVISION= 1 CATEGORIES= textproc MASTER_SITES= http://ftp.mcs.anl.gov/pub/sowing/ MAINTAINER= ports@FreeBSD.org COMMENT= Text processing tools to generate documentation from source files WWW= http://web.engr.illinois.edu/~wgropp/projects/software/sowing/ BUILD_DEPENDS= ppmtogif:graphics/netpbm RUN_DEPENDS= ppmtogif:graphics/netpbm -USES= ghostscript gmake perl5 +USES= ghostscript gmake perl5 tex USE_TEX= latex dvipsk + GNU_CONFIGURE= yes CONFIGURE_ARGS= --datadir=${DATADIR} -CONFLICTS_INSTALL= bib2html # bin/bib2html - +MAKE_JOBS_UNSAFE= yes ALL_TARGET= all-redirect -MAKE_JOBS_UNSAFE= yes +CONFLICTS_INSTALL= bib2html # bin/bib2html post-patch: @${REINPLACE_CMD} -e \ 's|\([[:blank:]]\)\($$(exec_prefix)\)|\1$$(DESTDIR)\2| ; \ s|\([[:blank:]]\)\($$(bindir)\)|\1$$(DESTDIR)\2| ; \ s|\([[:blank:]]\)\($$(datadir)\)|\1$$(DESTDIR)\2| ; \ s|\([[:blank:]]\)\($$(man1dir)\)|\1$$(DESTDIR)\2|' \ ${WRKSRC}/Makefile.in .if defined(MAINTAINER_MODE) regression-test: install @(cd ${BUILD_WRKSRC} && ${DO_MAKE_BUILD} testing) .endif .include diff --git a/textproc/textogif/Makefile b/textproc/textogif/Makefile index 6fc9aa84101c..58a45089f750 100644 --- a/textproc/textogif/Makefile +++ b/textproc/textogif/Makefile @@ -1,26 +1,28 @@ PORTNAME= textogif PORTVERSION= 1.1 PORTREVISION= 4 CATEGORIES= textproc math www MASTER_SITES= http://www.fourmilab.ch/webtools/textogif/download/ \ http://nivi.interfree.it/distfiles/${PORTNAME}/ DISTNAME= ${PORTNAME}_${PORTVERSION} MAINTAINER= nivit@FreeBSD.org COMMENT= Perl script to convert LaTeX formulas into GIFs WWW= https://www.fourmilab.ch/webtools/textogif/ RUN_DEPENDS= ppmtogif:graphics/netpbm -NO_BUILD= yes -USE_TEX= latex dvipsk -USES= perl5 shebangfix +USES= perl5 shebangfix tex USE_PERL5= run -NO_WRKSUBDIR= yes +USE_TEX= latex dvipsk SHEBANG_FILES= textogif +NO_BUILD= yes + +NO_WRKSUBDIR= yes + do-install: ${INSTALL_SCRIPT} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin .include diff --git a/textproc/xmlto/Makefile b/textproc/xmlto/Makefile index a3976b083bd0..78dbd29ad44a 100644 --- a/textproc/xmlto/Makefile +++ b/textproc/xmlto/Makefile @@ -1,89 +1,90 @@ PORTNAME= xmlto PORTVERSION= 0.0.28 CATEGORIES= textproc MASTER_SITES= https://releases.pagure.org/xmlto/:xmlto \ LOCAL/mandree/:xmlto \ http://www.antennahouse.com/XSLsample/sample-xsl-xhtml2fo/:xsl \ LOCAL/mandree/:xsl DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:xmlto \ xhtml2fo.xsl:xsl DIST_SUBDIR= ${PORTNAME} EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= mandree@FreeBSD.org COMMENT= Front-end to an XSL toolchain WWW= https://pagure.io/xmlto/ LICENSE= GPLv2 BUILD_DEPENDS= ${BASH_CMD}:shells/bash \ ${GETOPT_CMD}:misc/getopt \ xmllint:textproc/libxml2 \ xsltproc:textproc/libxslt \ docbook-xsl>0:textproc/docbook-xsl \ paperconf:print/libpaper \ w3m:www/w3m \ docbook-xml>0:textproc/docbook-xml RUN_DEPENDS:= ${BUILD_DEPENDS} SUB_FILES= pkg-message OPTIONS_DEFINE= DOCS OPTIONS_GROUP= BACKEND OPTIONS_GROUP_BACKEND= DBLATEX FOP PASSIVETEX BACKEND_DESC= Postprocessor backends to enable DBLATEX_DESC= Add dependency on DBlatex (DB for DocBook) FOP_DESC= Add dependency on FOP (requires Java) PASSIVETEX_DESC= Add dependency on XMLTeX/PassiveTeX USES= tar:bzip2 GNU_CONFIGURE= yes CONFIGURE_ARGS= BASH=${BASH_CMD} GETOPT=${GETOPT_CMD} PDFXMLTEX=${PDFXMLTEX_CMD} MAKE_ENV+= HOME=/dev/null BASH_CMD= ${LOCALBASE}/bin/bash GETOPT_CMD= ${LOCALBASE}/bin/getopt XSL_DIR= ${LOCALBASE}/share/xsl/docbook PDFXMLTEX_CMD= ${LOCALBASE}/bin/pdftex PORTDOCS= AUTHORS ChangeLog NEWS THANKS # these documentation files do not convey information useful for # the FreeBSD port at this time, or are provided by the ports framework: # PORTDOCS+= COPYING FAQ README .include .if ${PORT_OPTIONS:MPASSIVETEX} +USES+= tex USE_TEX+= xmltex .endif .if ${PORT_OPTIONS:MFOP} RUN_DEPENDS+= fop>=0.90:textproc/fop CONFIGURE_ARGS+= --with-backend=fop .endif .if ${PORT_OPTIONS:MDBLATEX} RUN_DEPENDS+= ${LOCALBASE}/bin/dblatex:textproc/dblatex .if ! ${PORT_OPTIONS:MFOP} CONFIGURE_ARGS+= --with-backend=dblatex .endif .endif post-patch: ${SED} -i '' -e 's/type -t/which/;' \ ${WRKSRC}/format/docbook/epub \ ${WRKSRC}/format/docbook/txt \ ${WRKSRC}/format/fo/dvi \ ${WRKSRC}/format/fo/pdf \ ${WRKSRC}/format/xhtml1/txt ${REINPLACE_CMD} -e '/^GEN_MANPAGE/{s/\$$/;}' ${WRKSRC}/Makefile.in post-install: ${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/xhtml2fo.xsl ${STAGEDIR}${DATADIR}/ .if ${PORT_OPTIONS:MDOCS} ${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} .endif .include diff --git a/textproc/yodl/Makefile b/textproc/yodl/Makefile index 1792876ef943..d4aa70fb224f 100644 --- a/textproc/yodl/Makefile +++ b/textproc/yodl/Makefile @@ -1,94 +1,95 @@ PORTNAME= yodl PORTVERSION= 3.10.00 PORTREVISION= 3 CATEGORIES= textproc MAINTAINER= bofh@FreeBSD.org COMMENT= Easy to use but powerful document formatting/preparation language WWW= https://fbb-git.gitlab.io/yodl/ LICENSE= GPLv3 RUN_DEPENDS= bash:shells/bash \ ${LOCALBASE}/bin/getopt:misc/getopt BUILD_DEPENDS= icmake:devel/icmake \ bash:shells/bash \ gsed:textproc/gsed USES= cpe perl5 shebangfix compiler:c++14-lang CPE_VENDOR= ${PORTNAME}_project USE_PERL5= build USE_GITLAB= yes GL_ACCOUNT= fbb-git GL_COMMIT= 5fa97b175c85581d01329013cfdb4239f019b023 SHEBANG_LANG= icmake icmake_OLD_CMD= /usr/bin/icmake icmake_CMD= ${LOCALBASE}/bin/icmake SHEBANG_FILES= ${WRKSRC}/macros/rawmacros/create \ ${WRKSRC}/macros/rawmacros/keepdiff \ ${WRKSRC}/macros/rawmacros/makeyoin \ ${WRKSRC}/macros/rawmacros/repairs \ ${WRKSRC}/macros/rawmacros/separator \ ${WRKSRC}/macros/rawmacros/separator.pl \ ${WRKSRC}/macros/rawmacros/startdoc \ ${WRKSRC}/macros/rawmacros/startdoc.pl \ ${WRKSRC}/contrib/build.pl \ ${WRKSRC}/src/yodl/replace \ ${WRKSRC}/scripts/configreplacements \ ${WRKSRC}/scripts/macroseparator.pl \ ${WRKSRC}/scripts/stdmacros \ ${WRKSRC}/scripts/yodl2whatever.in \ ${WRKSRC}/build DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}-${PORTVERSION} PORTDOCS= * PLIST_SUB+= PORTVERSION="${PORTVERSION}" WRKSRC_SUBDIR= ${PORTNAME} OPTIONS_DEFINE= DOCS +DOCS_USES= tex DOCS_USE= TEX=latex:build,dvipsk:build post-patch: @${REINPLACE_CMD} -e 's|"/usr"|"${PREFIX}"| ; \ s|"/share/yodl"|"/share/${PORTNAME}-${PORTVERSION}"| ; \ s|"/share/man"|"/man"| ; \ s|"/share/doc/yodl"|"/share/doc/${PORTNAME}-${PORTVERSION}"| ; \ s|"/share/doc/yodl-doc"|"/share/doc/${PORTNAME}-${PORTVERSION}/doc"| ; \ s|"gcc"|"${CC}"| ; \ s|"g++"|"${CXX}"|' \ ${WRKSRC}/INSTALL.im @${REINPLACE_CMD} -e 's|yodlconverters.1|yodlconverters.1.gz| ; \ s|".1"|".1.gz"|' \ ${WRKSRC}/icmake/install @${REINPLACE_CMD} -e 's|#!/usr/bin/icmake|#!${LOCALBASE}/bin/icmake| ; \ s|"-O2 -Wall"|"-Wall ${CFLAGS}"|' \ ${WRKSRC}/build @${REINPLACE_CMD} -e 's|sed |${LOCALBASE}/bin/gsed | ; \ s|getopt |${LOCALBASE}/bin/getopt |' \ ${WRKSRC}/scripts/configreplacements \ ${WRKSRC}/scripts/yodl2whatever.in \ ${WRKSRC}/scripts/yodlstriproff \ ${WRKSRC}/macros/rawmacros/repairs do-build: @cd ${WRKSRC} && ./build programs strip @cd ${WRKSRC} && ./build macros @cd ${WRKSRC} && ./build man do-build-DOCS-on: @cd ${WRKSRC} && ./build manual do-install: @cd ${WRKSRC} && ./build install programs ${STAGEDIR} @cd ${WRKSRC} && ./build install macros ${STAGEDIR} @cd ${WRKSRC} && ./build install man ${STAGEDIR} do-install-DOCS-on: @cd ${WRKSRC} && ./build install manual ${STAGEDIR} @cd ${WRKSRC} && ./build install docs ${STAGEDIR} .include diff --git a/www/twiki-MathModePlugin/Makefile b/www/twiki-MathModePlugin/Makefile index 07ab5d557b92..62b4956707e6 100644 --- a/www/twiki-MathModePlugin/Makefile +++ b/www/twiki-MathModePlugin/Makefile @@ -1,19 +1,18 @@ PORTNAME= MathModePlugin SVNREV= 15934 PORTREVISION= 1 MASTER_SITES= http://protey.ru/freebsd/distfiles/ \ LOCAL/skv COMMENT= Include LaTeX formatted math in your TWiki pages WWW= https://twiki.org/cgi-bin/view/Plugins/MathModePlugin -USES= magick:6,run - +USES= magick:6,run tex USE_TEX= base latex post-patch: ${REINPLACE_CMD} -i '' -e 's!=/usr/bin!=${LOCALBASE}/bin!g; s!=/bin!=/usr/bin!g;' \ ${WRKSRC}/pub/TWiki/MathModePlugin/latex2img .include "${.CURDIR}/../twiki/bsd.twiki.mk" .include