Index: Makefile =================================================================== --- Makefile (revision 418238) +++ Makefile (working copy) @@ -1,17 +1,180 @@ # Created by: Eric van Gyzen # $FreeBSD$ -PORTNAME= libRmath +PORTNAME= libRmath +PORTVERSION= 3.3.1 +PORTREVISION= 2 +CATEGORIES= math lang +MASTER_SITES= http://cran.r-project.org/%SUBDIR%/ \ + 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|\..*||} +DISTNAME= R-${DISTVERSION}${DISTVERSIONSUFFIX} -COMMENT= The standalone math library from R +MAINTAINER= jrm@ftfl.ca +COMMENT= Standalone math library from R -BROKEN= fails to configure +LICENSE= GPLv2 -DESCR= ${.CURDIR}/pkg-descr -LIBRMATH_SLAVEPORT= yes -MASTERDIR= ${.CURDIR}/../R -PLIST= ${.CURDIR}/pkg-plist +LIB_DEPENDS= libcurl.so:ftp/curl \ + libpcre.so:devel/pcre -BROKEN_powerpc64= Does not build +BUILD_WRKSRC= ${WRKSRC}/src/nmath/standalone -.include "${MASTERDIR}/Makefile" +RMATH_SOVERSION= 0 +GNU_CONFIGURE= yes +USES= fortran readline +USE_LDCONFIG= yes +CONFIGURE_ARGS= --without-cairo --without-ICU --disable-java \ + --without-jpeglib --without-libintl-prefix \ + --without-libpng --disable-nls --without-readline \ + --without-tcltk --without-libtiff --without-x +CONFIGURE_ENV+= ac_cv_header_iconv_h=no +PLIST_SUB= RMATH_SOVERSION="${RMATH_SOVERSION}" + +R_LD_LIBRARY_PATH= ${_GCC_RUNTIME}:${LOCALBASE}/lib +MAKE_JOBS_UNSAFE= yes + +OPTIONS_DEFINE= MISSING DOCS LTO OPENMP LDOUBLE + +OPTIONS_SINGLE= BLAS +OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETLIB RBLAS + +ATLAS_DESC= ATLAS BLAS implementation +LDOUBLE_DESC= Enable long double data type +LTO_DESC= Try to produce faster code through LTO +MISSING_DESC= Use libmissing rather than libquadmath +NETLIB_DESC= Netlib BLAS implementation +OPENBLAS_DESC= OpenBLAS BLAS implementation +RBLAS_DESC= Use R-bundled BLAS implementation + +OPTIONS_DEFAULT= OPENBLAS + +ATLAS_USES= blaslapack:atlas +ATLAS_VARS= MANUAL_PACKAGE_BUILD="Choose a BLAS option other than ATLAS for package building." + +LDOUBLE_CONFIGURE_ENABLE=long-double + +LTO_CONFIGURE_ENABLE= lto + +.for i in acos asin atan cos cosh exp log pow sin sinh tan tanh +MISSING_CONFIGURE_ENV+= ac_cv_have_decl_c${i}=yes +.endfor +MISSING_LIB_DEPENDS= libmissing.so:math/libmissing +MISSING_VARS= LIBM="-L${LOCALBASE}/lib -lmissing -lm" \ + LIBMH= +MISSING_VARS_OFF= LIBM='-lquadmath -lm' \ + LIBMH= + +NETLIB_USES= blaslapack:netlib + +OPENBLAS_USES= blaslapack:openblas + +OPENMP_CONFIGURE_ENABLE=openmp + +.for i in KPSEWHICH MAKEINDEX PDFLATEX PDFTEX TEX TEXI2DVI +CONFIGURE_ENV+= ac_cv_path_${i}="" +.endfor + +RBLAS_CONFIGURE_ON= --without-blas \ + --without-lapack +RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ + --with-lapack="${LAPACKLIB}" + +.include "compiler.mk" +.include + +.if ${OSVERSION} > 1000052 && \ +(${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == ia64 || ${ARCH} == pc98 || \ +${ARCH} == sparc64) +.for _f in coshl erfcl erfl lgammal powl sinhl tanhl tgammal +CFLAGS+= -fno-builtin-${_f} +LDFLAGS+= -fno-builtin-${_f} +.endfor +.endif + +.if ${PORT_OPTIONS:MMISSING} +.for _f in acos asin atan cos cosh exp log pow sin sinh tan tanh +CONFIGURE_ENV+= ac_cv_have_decl_c${_f}=yes +.endfor +LIB_DEPENDS+= libmissing.so:math/libmissing +LIBM= -L${LOCALBASE}/lib -lmissing -lm +LIBMH= "missing_math.h" +.if defined(LIBRMATH_SLAVEPORT) +CPPFLAGS+= -I${LOCALBASE}/include +.endif +.else +LIBM= -lquadmath -lm +LIBMH= +.endif + +post-patch: +.if !${PORT_OPTIONS:MMISSING} +.if ${OSVERSION} < 1000016 + @${REINPLACE_CMD} -e \ +'s/# define EXP expl/# define EXP(x) (long double)expq((__float128)(x))/' \ + ${WRKSRC}/src/nmath/pnchisq.c \ + ${WRKSRC}/src/nmath/pgamma.c + @${REINPLACE_CMD} -e \ +'s/# define LOG logl/# define LOG(x) (long double)logq((__float128)(x))/' \ + ${WRKSRC}/src/nmath/pnchisq.c \ + ${WRKSRC}/src/nmath/pgamma.c +.endif +.if ${OSVERSION} < 1000034 + @${REINPLACE_CMD} -Ee 's/(log)(1p)?l\(/(long double)\1\2q((__float128)/'\ + ${WRKSRC}/src/nmath/dnbeta.c \ + ${WRKSRC}/src/nmath/pnbeta.c +.endif + @${REINPLACE_CMD} -Ee \ +'s/powl\((.*)(long double)/(long double)powq((__float128)\1__float128/' \ + ${WRKSRC}/src/main/format.c +.else # !PORT_OPTIONS:MMISSING +.if ${OSVERSION} > 1000052 && \ +(${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == ia64 || ${ARCH} == pc98 || \ +${ARCH} == sparc64) + @${REINPLACE_CMD} -e '\|^FLIBS="$$ac_cv_f77_libs"|s|"|&${LIBM} |' \ + ${WRKSRC}/configure +.endif + @${REINPLACE_CMD} -e \ +'\|#[[:blank:]]*include[[:blank:]]*|{x;s|^.*$$|#include "missing_complex.h"|;H;x;}' \ + ${WRKSRC}/src/main/complex.c +.endif # !PORT_OPTIONS:MMISSING + @${REINPLACE_CMD} -e \ +'\|#[[:blank:]]*include[[:blank:]]*|{x;s|^.*$$|#include ${LIBMH}|;H;x;}'\ + ${WRKSRC}/src/nmath/nmath.h \ + ${WRKSRC}/src/include/Rmath.h0.in + @${REINPLACE_CMD} -e 's|(libdir)/pkgconfig|(prefix)/libdata/pkgconfig|g'\ + ${WRKSRC}/src/nmath/standalone/Makefile.in \ + ${WRKSRC}/src/unix/Makefile.in + @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" \ + ${WRKSRC}/configure \ + ${WRKSRC}/src/library/profile/Rprofile.unix \ + ${WRKSRC}/src/scripts/javareconf.in + +.if ! ${PORT_OPTIONS:MMISSING} +pre-configure: + @if [ ! -f ${_GCC_RUNTIME}/libquadmath.a ] ; then \ + IGNORE="\n\n\n%s\n\n\n" "libquadmath is not available for your\ + compiler and architecture: please enable the MISSING option."; \ + fi +.endif + +do-install: + ${INSTALL_DATA} ${WRKSRC}/src/include/Rmath.h ${STAGEDIR}${PREFIX}/include + ${INSTALL_DATA} ${BUILD_WRKSRC}/libRmath.a ${STAGEDIR}${PREFIX}/lib + ${INSTALL_LIB} ${BUILD_WRKSRC}/libRmath.so \ + ${STAGEDIR}${PREFIX}/lib/libRmath.so.${RMATH_SOVERSION} + @(cd ${STAGEDIR}${PREFIX}/lib; ${LN} -sf libRmath.so.${RMATH_SOVERSION} libRmath.so) + +.include Index: compiler.mk =================================================================== --- compiler.mk (revision 0) +++ compiler.mk (working copy) @@ -0,0 +1,2 @@ +# Compiler settings required for R and the R-cran ports. +USE_GCC= yes Property changes on: compiler.mk ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: distinfo =================================================================== --- distinfo (revision 0) +++ distinfo (working copy) @@ -0,0 +1,3 @@ +TIMESTAMP = 1468186527 +SHA256 (R-3.3.1.tar.gz) = 3dc59ae5831f5380f83c169bac2103ad052efe0ecec4ffa74bde4d85a0fda9e2 +SIZE (R-3.3.1.tar.gz) = 29848329 Property changes on: distinfo ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property