svn commit: r419666 - in head/math/R: . files
John Marino
marino at FreeBSD.org
Fri Aug 5 02:30:19 UTC 2016
Author: marino
Date: Fri Aug 5 02:30:18 2016
New Revision: 419666
URL: https://svnweb.freebsd.org/changeset/ports/419666
Log:
math/R: maintainer rework
See PR for signficant changes to math/R port including options,
build defaults, and patch updates.
PR: 211393
Submitted by: Joseph Mingrone (maintainer)
Deleted:
head/math/R/files/patch-configure
head/math/R/files/patch-src__nmath__standalone__test.c
Modified:
head/math/R/Makefile
head/math/R/compiler.mk
head/math/R/distinfo
head/math/R/files/patch-src_extra_tre_tre-internal.h
Modified: head/math/R/Makefile
==============================================================================
--- head/math/R/Makefile Fri Aug 5 01:51:43 2016 (r419665)
+++ head/math/R/Makefile Fri Aug 5 02:30:18 2016 (r419666)
@@ -3,7 +3,7 @@
PORTNAME?= R
PORTVERSION= 3.3.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= math lang
MASTER_SITES= http://cran.r-project.org/%SUBDIR%/ \
ftp://cran.r-project.org/pub/R/%SUBDIR%/ \
@@ -29,16 +29,19 @@ LICENSE= GPLv2
LIB_DEPENDS= libcurl.so:ftp/curl \
libpcre.so:devel/pcre
+CONFIGURE_ARGS= --disable-java \
+ --with-readline \
+ rdocdir=${DOCSDIR}
GNU_CONFIGURE= yes
-USES= fortran iconv objc:compiler perl5
-USE_PERL5= build
-USE_LDCONFIG= ${PREFIX}/lib/R/lib
-CONFIGURE_ARGS= --disable-java --enable-memory-profiling rdocdir=${DOCSDIR}
INSTALL_TARGET= install-strip
+ONLY_FOR_ARCHS= i386 amd64
+USES= fortran iconv libtool localbase objc:compiler perl5 \
+ readline
+USE_PERL5= build
-OPTIONS_DEFINE= DOCS ICU INFO LETTER LIBR LDOUBLE LTO MISSING NLS \
- OPENMP THREADS X11
-OPTIONS_GROUP= NEEDX11
+OPTIONS_DEFINE= DOCS ICU INFO LDOUBLE LETTER LIBR MEMPROF NLS RPROF X11
+OPTIONS_GROUP= NEEDGCC NEEDX11
+OPTIONS_GROUP_NEEDGCC= LTO OPENMP
OPTIONS_GROUP_NEEDX11= GHOSTSCRIPT JPEG CAIROPANGO PDF PNG TCLTK TIFF
OPTIONS_SINGLE= BLAS
OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETLIB RBLAS
@@ -46,109 +49,83 @@ OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETL
OPTIONS_SUB= YES
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
INFO_DESC= GNU info manuals
JPEG_DESC= JPEG graphics device
-LDOUBLE_DESC= Enable long double data type
-LETTER_DESC= US Letter paper
-LIBR_DESC= Build dynamic (shared) R library
-LTO_DESC= Try to produce faster code through LTO
-MISSING_DESC= Use libmissing rather than libquadmath
-NEEDX11_DESC= X11-Implying Options
+LDOUBLE_DESC= Long double data type
+LETTER_DESC= US letter paper
+LIBR_DESC= Shared R library
+LTO_DESC= Use Link Time Optimization
+MEMPROF_DESC= Memory profiling via Rprofmem() and tracemem()
+NEEDGCC_DESC= Require GCC
+NEEDX11_DESC= Require X11
NETLIB_DESC= Netlib BLAS implementation
OPENBLAS_DESC= OpenBLAS BLAS implementation
PDF_DESC= PDF manuals (requires TeX)
PNG_DESC= PNG graphics device
RBLAS_DESC= Use R-bundled BLAS implementation
+RPROF_DESC= R profiling via Rprof()
X11_DESC= X11 graphics device
-OPTIONS_DEFAULT= GHOSTSCRIPT ICU INFO JPEG LTO LIBR OPENBLAS OPENMP \
- CAIROPANGO PNG TCLTK TIFF THREADS X11
-
-OPTIONS_DEFAULT_armv6+= MISSING
-OPTIONS_DEFAULT_powerpc+= MISSING
-OPTIONS_DEFAULT_powerpc64+= MISSING
-OPTIONS_DEFAULT_sparc64+= MISSING
+OPTIONS_DEFAULT= CAIROPANGO GHOSTSCRIPT ICU INFO JPEG LDOUBLE LIBR PNG \
+ RBLAS RPROF TCLTK TIFF X11
ATLAS_USES= blaslapack:atlas
-.if defined(BATCH) || defined(PACKAGE_BUILDING)
-ATLAS_IGNORE= Choose a BLAS option other than ATLAS for package building.
-.endif
-
+ALTAS_CONFIGURE_ON= --disable-BLAS-shlib
+ATLAS_VARS= MANUAL_PACKAGE_BUILD=\
+"Choose a BLAS option other than ATLAS for package building."
+CAIROPANGO_IMPLIES= X11
+CAIROPANGO_CONFIGURE_WITH=cairo
+CAIROPANGO_USES= gettext jpeg pkgconfig
+CAIROPANGO_USE= gnome=pango,cairo
DOCS_BUILD_DEPENDS= texi2any:print/texinfo
-
GHOSTSCRIPT_IMPLIES= X11
GHOSTSCRIPT_USES= ghostscript
-
ICU_CONFIGURE_WITH= ICU
ICU_LIB_DEPENDS= libicui18n.so:devel/icu
-
INFO_IMPLIES= DOCS
INFO_INSTALL_TARGET= install-info
INFO_INFO= R-FAQ R-admin R-data R-exts R-ints R-intro R-lang
-
JPEG_IMPLIES= X11
JPEG_CONFIGURE_WITH= jpeglib
-
+JPEG_CONFIGURE_ENV= r_cv_header_jpeglib_h=yes
+JPEG_USES= jpeg
+LDOUBLE_CONFIGURE_ENABLE=long-double
LETTER_CONFIGURE_ENV= R_PAPERSIZE=letter
-
LIBR_CONFIGURE_ENABLE= R-shlib
-
-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_math.h>
-MISSING_VARS_OFF= LIBM='-lquadmath -lm' \
- LIBMH=<quadmath.h>
-
+LTO_USE= gcc=yes
+MEMPROF_CONFIGURE_ENABLE=memory-profiling
NETLIB_USES= blaslapack:netlib
-
+NETLIB_CONFIGURE_ON= --disable-BLAS-shlib
NLS_CONFIGURE_OFF= --disable-nls
NLS_USES= gettext
-
OPENBLAS_USES= blaslapack:openblas
-
+OPENBLAS_CONFIGURE_ON= --disable-BLAS-shlib
OPENMP_CONFIGURE_ENABLE=openmp
-
-CAIROPANGO_IMPLIES= X11
-CAIROPANGO_CONFIGURE_WITH=cairo
-CAIROPANGO_USES= gettext jpeg pkgconfig
-CAIROPANGO_USE= gnome=pango,cairo
-
+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_LIB_DEPENDS= libpng.so:graphics/png
PNG_CONFIGURE_WITH= libpng
-
RBLAS_CONFIGURE_ON= --without-blas \
- --without-lapack
+ --without-lapack \
+ --enable-BLAS-shlib
RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \
--with-lapack="${LAPACKLIB}"
-
+RPROF_CONFIGURE_ENABLE= R-profiling
TCLTK_IMPLIES= X11
TCLTK_USES= tcl tk:84+
TCLTK_CONFIGURE_WITH= tcltk
-
-THREADS_CONFIGURE_ON= --enable-threads=posix
-THREADS_CONFIGURE_OFF= --disable-threads
-
TIFF_IMPLIES= X11
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff
TIFF_CONFIGURE_WITH= libtiff
-
X11_CONFIGURE_WITH= x
X11_USE= xorg=ice,sm,x11,xext,xmu,xscrnsaver,xt
@@ -160,70 +137,21 @@ PLIST_SUB= R_SOVERSION="${R_SOVERSION}"
RBLAS_SOVERSION="${RBLAS_SOVERSION}" \
RLAPACK_SOVERSION="${RLAPACK_SOVERSION}"
-.include "compiler.mk"
.include <bsd.port.options.mk>
+.include "compiler.mk"
-.if ${OPSYS} == FreeBSD && ${OSVERSION} > 1000052 && \
-(${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == ia64 || ${ARCH} == pc98 || \
-${ARCH} == sparc64)
-.for i in coshl erfcl erfl lgammal powl sinhl tanhl tgammal
-CFLAGS+= -fno-builtin-${i}
-LDFLAGS+= -fno-builtin-${i}
-.endfor
+# 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}
+USE_LDCONFIG= ${PREFIX}/lib/R/lib
.endif
post-patch:
-.if ${OPSYS} == FreeBSD
-.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:]]*<complex.h>|{x;s|^.*$$|#include "missing_complex.h"|;H;x;}' \
- ${WRKSRC}/src/main/complex.c
-.endif # !PORT_OPTIONS:MMISSING
-.endif # ${OPSYS} == FreeBSD
- @${REINPLACE_CMD} -e \
-'\|#[[:blank:]]*include[[:blank:]]*<math.h>|{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
+ ${WRKSRC}/configure
post-install:
.for L in R Rblas Rlapack
Modified: head/math/R/compiler.mk
==============================================================================
--- head/math/R/compiler.mk Fri Aug 5 01:51:43 2016 (r419665)
+++ head/math/R/compiler.mk Fri Aug 5 02:30:18 2016 (r419666)
@@ -1,2 +1,10 @@
# Compiler settings required for R and the R-cran ports.
+.if ${OPSYS} == FreeBSD
+. if ${OSVERSION} < 1000015
USE_GCC= yes
+. endif
+.else
+. if ${OPSYS} == DragonFly
+USE_GCC= 6
+. endif
+.endif
Modified: head/math/R/distinfo
==============================================================================
--- head/math/R/distinfo Fri Aug 5 01:51:43 2016 (r419665)
+++ head/math/R/distinfo Fri Aug 5 02:30:18 2016 (r419666)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1467276607
+TIMESTAMP = 1470250856
SHA256 (R-3.3.1.tar.gz) = 3dc59ae5831f5380f83c169bac2103ad052efe0ecec4ffa74bde4d85a0fda9e2
SIZE (R-3.3.1.tar.gz) = 29848329
Modified: head/math/R/files/patch-src_extra_tre_tre-internal.h
==============================================================================
--- head/math/R/files/patch-src_extra_tre_tre-internal.h Fri Aug 5 01:51:43 2016 (r419665)
+++ head/math/R/files/patch-src_extra_tre_tre-internal.h Fri Aug 5 02:30:18 2016 (r419666)
@@ -1,22 +1,10 @@
---- src/extra/tre/tre-internal.h.orig 2016-05-05 10:54:54 UTC
+--- src/extra/tre/tre-internal.h.orig 2016-07-23 16:50:17 UTC
+++ src/extra/tre/tre-internal.h
-@@ -17,6 +17,7 @@
- #include <wctype.h>
+@@ -18,6 +18,7 @@
#endif /* !HAVE_WCTYPE_H */
-+#include <limits.h>
#include <ctype.h>
++#include <stdint.h>
#include "tre.h"
-@@ -47,7 +48,11 @@
- #ifdef TRE_WCHAR
-
- /* Wide characters. */
-+#if WCHAR_MAX <= INT_MAX
- typedef wint_t tre_cint_t;
-+#else /* WCHAR_MAX > INT_MAX */
-+#define TRE_CHAR_MAX INT_MAX
-+#endif
- /* Workaround problem seen on AIX, (2010 & 2015), e.g.,
- https://stat.ethz.ch/pipermail/r-devel/2015-October/071902.html
- WCHAR_MAX = UINT32_MAX on AIX and that is "not possible to work"
+ #ifdef TRE_DEBUG
More information about the svn-ports-all
mailing list