Changeset View
Changeset View
Standalone View
Standalone View
math/R/Makefile
# Created by: Maurice Castro <maurice@serc.rmit.edu.au> | # Created by: Maurice Castro <maurice@serc.rmit.edu.au> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME?= R | PORTNAME= R | ||||
PORTVERSION= 3.3.1 | PORTVERSION= 3.3.2 | ||||
PORTREVISION= 4 | |||||
CATEGORIES= math lang | CATEGORIES= math lang | ||||
MASTER_SITES= http://cran.r-project.org/%SUBDIR%/ \ | MASTER_SITES= CRAN/src/base/R-${PORTVERSION:C|\..*||} | ||||
ftp://cran.r-project.org/pub/R/%SUBDIR%/ \ | |||||
http://cran.at.r-project.org/%SUBDIR%/ \ | |||||
http://cran.au.r-project.org/%SUBDIR%/ \ | |||||
http://cran.br.r-project.org/%SUBDIR%/ \ | |||||
http://cran.ch.r-project.org/%SUBDIR%/ \ | |||||
http://cran.es.r-project.org/%SUBDIR%/ \ | |||||
http://cran.dk.r-project.org/%SUBDIR%/ \ | |||||
http://cran.uk.r-project.org/%SUBDIR%/ \ | |||||
http://cran.us.r-project.org/%SUBDIR%/ \ | |||||
ftp://ftp.u-aizu.ac.jp/pub/lang/R/CRAN/%SUBDIR%/ \ | |||||
http://lib.stat.cmu.edu/R/CRAN/%SUBDIR%/ \ | |||||
http://cran.stat.ucla.edu/%SUBDIR%/ \ | |||||
http://probability.ca/cran/%SUBDIR%/ | |||||
MASTER_SITE_SUBDIR= src/base/R-${PORTVERSION:C|\..*||} | |||||
MAINTAINER= jrm@FreeBSD.org | MAINTAINER= jrm@FreeBSD.org | ||||
COMMENT= Language for statistical computing and graphics | COMMENT= Language for statistical computing and graphics | ||||
LICENSE= GPLv2 | LICENSE= GPLv2 | ||||
LIB_DEPENDS= libcurl.so:ftp/curl \ | LIB_DEPENDS= libcurl.so:ftp/curl \ | ||||
libpcre.so:devel/pcre | libpcre.so:devel/pcre | ||||
CONFIGURE_ARGS= --disable-java \ | CONFIGURE_ARGS= --disable-java \ | ||||
--with-readline \ | --with-readline \ | ||||
rdocdir=${DOCSDIR} | rdocdir=${DOCSDIR} | ||||
GNU_CONFIGURE= yes | GNU_CONFIGURE= yes | ||||
INSTALL_TARGET= install-strip | INSTALL_TARGET= install-strip | ||||
ONLY_FOR_ARCHS= i386 amd64 | ONLY_FOR_ARCHS= i386 amd64 | ||||
USES= fortran iconv libtool localbase objc:compiler pathfix perl5 \ | USES= fortran iconv libtool localbase objc:compiler pathfix \ | ||||
readline | perl5 readline | ||||
USE_PERL5= build | USE_PERL5= build | ||||
OPTIONS_DEFINE= DOCS ICU INFO LDOUBLE LETTER LIBR MEMPROF NLS RPROF X11 | OPTIONS_DEFINE= ICU INFO LDOUBLE LETTER LIBR MEMPROF NLS RPROF X11 | ||||
OPTIONS_GROUP= NEEDGCC NEEDX11 | OPTIONS_GROUP= NEEDGCC NEEDX11 | ||||
OPTIONS_GROUP_NEEDGCC= LTO OPENMP | OPTIONS_GROUP_NEEDGCC= LTO OPENMP | ||||
OPTIONS_GROUP_NEEDX11= GHOSTSCRIPT JPEG CAIROPANGO PDF PNG TCLTK TIFF | OPTIONS_GROUP_NEEDX11= ALLDOCS GHOSTSCRIPT JPEG CAIROPANGO PNG TCLTK TIFF | ||||
OPTIONS_SINGLE= BLAS | OPTIONS_SINGLE= BLAS | ||||
OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETLIB RBLAS | OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETLIB RBLAS | ||||
OPTIONS_SUB= YES | OPTIONS_SUB= YES | ||||
ATLAS_DESC= ATLAS BLAS implementation | ATLAS_DESC= ATLAS BLAS implementation | ||||
GHOSTSCRIPT_DESC= Graphics device for bitmap files via Ghostscript | GHOSTSCRIPT_DESC= Graphics device for bitmap files via Ghostscript | ||||
CAIROPANGO_DESC= Cairo graphics device and Pango multi-language text | CAIROPANGO_DESC= Cairo graphics device and Pango multi-language text | ||||
ALLDOCS_DESC= All documentation (TeX build dependency) | |||||
INFO_DESC= GNU info manuals | INFO_DESC= GNU info manuals | ||||
JPEG_DESC= JPEG graphics device | JPEG_DESC= JPEG graphics device | ||||
LDOUBLE_DESC= Long double data type | LDOUBLE_DESC= Long double data type | ||||
LETTER_DESC= US letter paper | LETTER_DESC= US letter paper | ||||
LIBR_DESC= Shared R library | LIBR_DESC= Shared R library | ||||
LTO_DESC= Use Link Time Optimization | LTO_DESC= Use Link Time Optimization | ||||
MEMPROF_DESC= Memory profiling via Rprofmem() and tracemem() | MEMPROF_DESC= Memory profiling via Rprofmem() and tracemem() | ||||
NEEDGCC_DESC= Require GCC | NEEDGCC_DESC= Require GCC | ||||
NEEDX11_DESC= Require X11 | NEEDX11_DESC= Require X11 | ||||
NETLIB_DESC= Netlib BLAS implementation | NETLIB_DESC= Netlib BLAS implementation | ||||
OPENBLAS_DESC= OpenBLAS BLAS implementation | OPENBLAS_DESC= OpenBLAS BLAS implementation | ||||
PDF_DESC= PDF manuals (requires TeX) | |||||
PNG_DESC= PNG graphics device | PNG_DESC= PNG graphics device | ||||
RBLAS_DESC= Use R-bundled BLAS implementation | RBLAS_DESC= Use R-bundled BLAS implementation | ||||
RPROF_DESC= R profiling via Rprof() | RPROF_DESC= R profiling via Rprof() | ||||
X11_DESC= X11 graphics device | X11_DESC= X11 graphics device | ||||
OPTIONS_DEFAULT= CAIROPANGO GHOSTSCRIPT ICU INFO JPEG LDOUBLE LIBR PNG \ | OPTIONS_DEFAULT= CAIROPANGO GHOSTSCRIPT ICU INFO JPEG LDOUBLE LIBR PNG \ | ||||
RBLAS RPROF TCLTK TIFF X11 | RBLAS RPROF TCLTK TIFF X11 | ||||
ALLDOCS_BUILD_DEPENDS= texi2any:print/texinfo | |||||
mat: OPTIONS_UNSET is a global setting, only to be used in /etc/make.conf
If the DOCS option… | |||||
.for i in KPSEWHICH MAKEINDEX PDFLATEX PDFTEX TEX TEXI2DVI | |||||
ALLDOCS_CONFIGURE_ENV_OFF+= ac_cv_path_${i}="" | |||||
.endfor | |||||
ALLDOCS_INSTALL_TARGET= install-pdf | |||||
ALLDOCS_USE= tex=dvipsk:build,kpathsea:build,pdftex:build | |||||
ATLAS_USES= blaslapack:atlas | ATLAS_USES= blaslapack:atlas | ||||
ALTAS_CONFIGURE_ON= --disable-BLAS-shlib | ALTAS_CONFIGURE_ON= --disable-BLAS-shlib | ||||
ATLAS_VARS= MANUAL_PACKAGE_BUILD=\ | ATLAS_VARS= MANUAL_PACKAGE_BUILD=\ | ||||
"Choose a BLAS option other than ATLAS for package building." | "Choose a BLAS option other than ATLAS for package building." | ||||
CAIROPANGO_IMPLIES= X11 | CAIROPANGO_IMPLIES= X11 | ||||
CAIROPANGO_CONFIGURE_WITH=cairo | CAIROPANGO_CONFIGURE_WITH=cairo | ||||
CAIROPANGO_USES= gettext jpeg pkgconfig | CAIROPANGO_USES= gettext jpeg pkgconfig | ||||
CAIROPANGO_USE= gnome=pango,cairo | CAIROPANGO_USE= gnome=pango,cairo | ||||
DOCS_BUILD_DEPENDS= texi2any:print/texinfo | |||||
GHOSTSCRIPT_IMPLIES= X11 | GHOSTSCRIPT_IMPLIES= X11 | ||||
GHOSTSCRIPT_USES= ghostscript | GHOSTSCRIPT_USES= ghostscript | ||||
ICU_CONFIGURE_WITH= ICU | ICU_CONFIGURE_WITH= ICU | ||||
ICU_LIB_DEPENDS= libicui18n.so:devel/icu | ICU_LIB_DEPENDS= libicui18n.so:devel/icu | ||||
INFO_IMPLIES= DOCS | INFO_BUILD_DEPENDS= texi2any:print/texinfo | ||||
INFO_INSTALL_TARGET= install-info | INFO_INSTALL_TARGET= install-info | ||||
INFO_INFO= R-FAQ R-admin R-data R-exts R-ints R-intro R-lang | INFO_INFO= R-FAQ R-admin R-data R-exts R-ints R-intro R-lang | ||||
JPEG_IMPLIES= X11 | JPEG_IMPLIES= X11 | ||||
JPEG_CONFIGURE_WITH= jpeglib | JPEG_CONFIGURE_WITH= jpeglib | ||||
JPEG_CONFIGURE_ENV= r_cv_header_jpeglib_h=yes | JPEG_CONFIGURE_ENV= r_cv_header_jpeglib_h=yes | ||||
JPEG_USES= jpeg | JPEG_USES= jpeg | ||||
LDOUBLE_CONFIGURE_ENABLE=long-double | LDOUBLE_CONFIGURE_ENABLE=long-double | ||||
LETTER_CONFIGURE_ENV= R_PAPERSIZE=letter | LETTER_CONFIGURE_ENV= R_PAPERSIZE=letter | ||||
LIBR_CONFIGURE_ENABLE= R-shlib | LIBR_CONFIGURE_ENABLE= R-shlib | ||||
LTO_CONFIGURE_ENABLE= lto | LTO_CONFIGURE_ENABLE= lto | ||||
LTO_USE= gcc=yes | LTO_USE= gcc=yes | ||||
MEMPROF_CONFIGURE_ENABLE=memory-profiling | MEMPROF_CONFIGURE_ENABLE=memory-profiling | ||||
NETLIB_USES= blaslapack:netlib | NETLIB_USES= blaslapack:netlib | ||||
NETLIB_CONFIGURE_ON= --disable-BLAS-shlib | NETLIB_CONFIGURE_ON= --disable-BLAS-shlib | ||||
NLS_CONFIGURE_OFF= --disable-nls | NLS_CONFIGURE_OFF= --disable-nls | ||||
NLS_USES= gettext | NLS_USES= gettext | ||||
OPENBLAS_USES= blaslapack:openblas | OPENBLAS_USES= blaslapack:openblas | ||||
OPENBLAS_CONFIGURE_ON= --disable-BLAS-shlib | OPENBLAS_CONFIGURE_ON= --disable-BLAS-shlib | ||||
OPENMP_CONFIGURE_ENABLE=openmp | OPENMP_CONFIGURE_ENABLE=openmp | ||||
OPENMP_USE= compiler:openmp | OPENMP_USE= compiler:openmp | ||||
PDF_IMPLIES= DOCS X11 | |||||
PDF_USE= tex=dvipsk:build,kpathsea:build,pdftex:build | |||||
PDF_INSTALL_TARGET= install-pdf | |||||
.for i in KPSEWHICH MAKEINDEX PDFLATEX PDFTEX TEX TEXI2DVI | |||||
PDF_CONFIGURE_ENV_OFF+= ac_cv_path_${i}="" | |||||
.endfor | |||||
PNG_IMPLIES= X11 | PNG_IMPLIES= X11 | ||||
PNG_LIB_DEPENDS= libpng.so:graphics/png | PNG_LIB_DEPENDS= libpng.so:graphics/png | ||||
PNG_CONFIGURE_WITH= libpng | PNG_CONFIGURE_WITH= libpng | ||||
RBLAS_CONFIGURE_ON= --without-blas \ | RBLAS_CONFIGURE_ON= --without-blas \ | ||||
--without-lapack \ | --without-lapack \ | ||||
--enable-BLAS-shlib | --enable-BLAS-shlib | ||||
RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ | RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ | ||||
--with-lapack="${LAPACKLIB}" | --with-lapack="${LAPACKLIB}" | ||||
Show All 13 Lines | |||||
PLIST_SUB= R_SOVERSION="${R_SOVERSION}" \ | PLIST_SUB= R_SOVERSION="${R_SOVERSION}" \ | ||||
RBLAS_SOVERSION="${RBLAS_SOVERSION}" \ | RBLAS_SOVERSION="${RBLAS_SOVERSION}" \ | ||||
RLAPACK_SOVERSION="${RLAPACK_SOVERSION}" | RLAPACK_SOVERSION="${RLAPACK_SOVERSION}" | ||||
.include <bsd.port.options.mk> | .include <bsd.port.options.mk> | ||||
.include "compiler.mk" | .include "compiler.mk" | ||||
# OPT_USE= ldconfig=${PREFIX}/lib/R/lib is broken. | |||||
# It adds /lib/R/lib (without PREFIX) to ${PREFIX}/libdata/R. | |||||
.if ${PORT_OPTIONS:MLIBR} || ${PORT_OPTIONS:MRBLAS} | .if ${PORT_OPTIONS:MLIBR} || ${PORT_OPTIONS:MRBLAS} | ||||
USE_LDCONFIG= ${PREFIX}/lib/R/lib | USE_LDCONFIG= ${PREFIX}/lib/R/lib | ||||
.endif | .endif | ||||
post-patch: | post-patch: | ||||
@${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" \ | @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" ${WRKSRC}/configure | ||||
${WRKSRC}/configure | |||||
## TODO: Add missing soname and soversion to shared libraries | |||||
post-install: | post-install: | ||||
.for L in R Rblas Rlapack | .for L in R Rblas Rlapack | ||||
@if [ -d ${STAGEDIR}${PREFIX}/lib/R/lib ] ; then \ | if [ -d ${STAGEDIR}${PREFIX}/lib/R/lib ]; then \ | ||||
cd ${STAGEDIR}${PREFIX}/lib/R/lib; if [ -f lib${L}.so ] ; then \ | cd ${STAGEDIR}${PREFIX}/lib/R/lib; \ | ||||
${LN} -sf lib${L}.so lib${L}.so.${${L:tu}_SOVERSION} ; fi; fi | if [ -f lib${L}.so ]; then \ | ||||
${LN} -sf lib${L}.so lib${L}.so.${${L:tu}_SOVERSION}; \ | |||||
fi; \ | |||||
fi | |||||
.endfor | .endfor | ||||
post-install-ALLDOCS-off: | |||||
[ -n "${DOCSDIR}" ] && \ | |||||
${RM} -r ${STAGEDIR}${DOCSDIR}/html && \ | |||||
${RM} -r ${STAGEDIR}${DOCSDIR}/manual; \ | |||||
${FIND} ${STAGEDIR}${PREFIX}/lib/R/library -type d \ | |||||
\( -name html -or -name doc -or -name help \) -delete; | |||||
.include <bsd.port.mk> | .include <bsd.port.mk> |
OPTIONS_UNSET is a global setting, only to be used in /etc/make.conf
If the DOCS option doesn't do what you need, then call it BIGDOCS, or ALLDOCS, and don't add it as the DEFAULT.